/* Proyecto 3C — processes in focus */
.hero-monogram{position:absolute;right:-.03em;top:4%;font-family:BarlowC,sans-serif;font-size:clamp(240px,34vw,560px);font-weight:700;line-height:1;color:transparent;-webkit-text-stroke:1px #ffffff18;pointer-events:none;letter-spacing:-.07em;z-index:1}.hero-tech{backdrop-filter:blur(14px);background:linear-gradient(135deg,#0c1724b8,#0c17244d);box-shadow:0 18px 70px #0004}.hero-images .hero-image.active{animation:hero-drift 8.5s ease-out both}.hero-shade{background:linear-gradient(90deg,#080d13f5 0%,#080d13be 34%,#080d1350 72%),linear-gradient(0deg,#080d13cc,transparent 40%)}@keyframes hero-drift{from{transform:scale(1.07)}to{transform:scale(1)}}
.service-stage{border:1px solid #ffffff1c;box-shadow:0 24px 70px #0003}.service-panel{grid-template-columns:1.15fr 1fr;min-height:635px}.service-panel.active .service-media>img{animation:process-reveal .8s var(--ease) both;filter:none}.service-panel.active .service-content{animation:process-content .5s var(--ease) both}.service-media{isolation:isolate;min-height:480px}.service-media>img{object-position:center}.service-media:after{background:linear-gradient(0deg,#050b13ee 0%,transparent 33%,transparent 75%,#050b1359)}.media-grid{opacity:.1}.media-category{font-size:11px;letter-spacing:.2em;padding:9px 11px;background:#08101dcc;backdrop-filter:blur(12px)}.media-caption{display:block;bottom:28px;left:28px;right:28px;max-width:calc(100% - 160px)}.media-caption>span{font-family:BarlowC,sans-serif;font-size:clamp(28px,3vw,40px);line-height:1.05;display:block}.media-caption small{display:block;margin-top:9px;color:#d1dbe4;font-size:10px;letter-spacing:.07em}.expand-process{position:absolute;bottom:28px;right:24px;z-index:4;display:flex;flex-direction:column;align-items:center;gap:8px;background:#102131b3;backdrop-filter:blur(12px);border:1px solid #fff5;color:white;padding:13px 14px;cursor:pointer;font:500 10px Space,sans-serif;transition:background .2s,border-color .2s}.expand-process svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.4}.expand-process:hover{background:#ff7843;color:#111;border-color:#ff7843}.expand-process:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}.service-content{padding:38px 34px}.service-content h3{font-size:clamp(37px,3.5vw,52px);margin:18px 0}.process-sequence{display:grid;grid-template-columns:repeat(3,1fr);list-style:none;padding:0;margin:24px 0;gap:12px;counter-reset:none}.process-sequence li{position:relative;border-top:1px solid #fff3;padding:11px 0 0;font-size:11px;line-height:1.5;color:#ced8e2}.process-sequence li span{display:block;color:var(--accent);font-size:12px;margin-bottom:4px}.process-sequence li:not(:last-child):after{content:'→';position:absolute;right:2px;top:9px;color:#6f899d}.service-content .features{margin:20px 0}.service-content details{margin:18px 0}.service-tabs{gap:0;border:1px solid #ffffff1b}.service-tab{border:0;border-right:1px solid #ffffff14;border-bottom:1px solid #ffffff14;transition:background .2s,box-shadow .2s}.service-tab.active{box-shadow:inset 0 -3px var(--accent)}
@keyframes process-reveal{from{clip-path:inset(0 100% 0 0);transform:scale(1.045)}to{clip-path:inset(0);transform:scale(1)}}@keyframes process-content{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.engineering{padding:88px 0 100px;background:radial-gradient(ellipse at 20% 55%,#18334a 0%,#0a141f 55%);border-top:1px solid #ffffff15;overflow:hidden}.engineering-grid{grid-template-columns:1fr 1fr;gap:70px;margin-bottom:48px}.engineering-grid h2{margin-bottom:0}.engineering-content{position:relative;z-index:2}.transformation{display:grid;grid-template-columns:1.2fr 1fr;gap:0;border:1px solid #8baab536;box-shadow:0 24px 60px #0003;background:#070e17a6}.transformation-visual{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-width:0;background:radial-gradient(ellipse at center,#1c344999,transparent 70%);border-right:1px solid #8baab536}.drawing-top,.drawing-bottom{padding:23px 26px;display:flex;justify-content:space-between;gap:15px;align-items:center;font-size:10px;letter-spacing:.14em;color:#aad7e8}.drawing-bottom small{font-size:10px;letter-spacing:0;color:#9faebb;text-align:right;max-width:165px}.part-drawing{width:100%;height:auto;display:block;overflow:visible}.flat-part{fill:none;stroke:#7bd6ef;stroke-width:1.7;transition:opacity .6s,transform .8s;transform-origin:center}.fold-guide,.dimensions{stroke-dasharray:5 5;stroke-width:1;opacity:.6}.formed-part{opacity:0;transform:translateY(32px) scale(.94);transition:opacity .6s,transform .8s cubic-bezier(.2,.7,.2,1);transform-origin:50% 65%}.part-face{fill:url(#metal-face)}.part-back{fill:#748d9d}.part-side{fill:#3d5769}.part-hole,.back-hole{fill:#07111b;stroke:#c4d4df;stroke-width:1.5}.part-edge{stroke:#deedf6;stroke-width:1.3;fill:none}.drawing-callouts{stroke:#6ba4b7;stroke-width:1;fill:#68dfed;opacity:.6}.drawing-callouts path{fill:none;stroke-dasharray:4 4}.transformation[data-phase='1'] .flat-part,.transformation[data-phase='2'] .flat-part{opacity:0;transform:translateY(24px) scale(.92)}.transformation[data-phase='1'] .formed-part,.transformation[data-phase='2'] .formed-part{opacity:1;transform:none}.transformation[data-phase='2'] .part-face{fill:url(#orange-face)}.transformation[data-phase='2'] .part-back{fill:#d76332}.transformation[data-phase='2'] .part-side{fill:#823414}.transformation[data-phase='2'] .part-edge{stroke:#ffc196}.transformation[data-phase='2'] .part-hole,.transformation[data-phase='2'] .back-hole{stroke:#eaa478}.transformation-controls{padding:37px 40px;display:flex;flex-direction:column;align-items:flex-start}.transformation-controls h3{font:700 clamp(32px,3.8vw,48px)/1.05 BarlowC,sans-serif;margin:12px 0 15px;color:#fff}.transformation-controls h3 em{font-style:normal;color:var(--accent)}.transformation-intro{font-size:13px;line-height:1.65;color:#aabac7;max-width:350px;margin:0 0 18px}.phase-buttons{width:100%;border-top:1px solid #ffffff20}.phase-buttons button{display:flex;align-items:center;text-align:left;gap:15px;width:100%;padding:15px 12px;border:0;border-bottom:1px solid #ffffff20;background:none;color:#a9bbc9;font:inherit;cursor:pointer;transition:background .2s,color .2s}.phase-buttons button span{font-size:11px;color:#7693a7}.phase-buttons strong{font-size:16px;font-weight:500}.phase-buttons i{margin-left:auto;font-style:normal}.phase-buttons button[aria-pressed='true']{background:#67d7ef12;color:#fff;box-shadow:inset 3px 0 #68dfed}.phase-buttons button[aria-pressed='true'] span,.phase-buttons button[aria-pressed='true'] i{color:var(--cyan)}.phase-buttons button:hover{background:#ffffff0a}.phase-buttons button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}#phase-description{font-size:12px;color:#c1cdd6;line-height:1.7;min-height:62px;margin:18px 0}.transformation-controls .text-link{font-size:12px;margin-top:auto}
.viewer-open{overflow:hidden}.process-viewer{width:min(1040px,calc(100vw - 48px));max-width:none;max-height:calc(100dvh - 48px);padding:0;margin:auto;background:#0c1520;color:#fff;border:1px solid #697c8955;box-shadow:0 32px 130px #000c;overflow-y:auto}.process-viewer::backdrop{background:#020812dd;backdrop-filter:blur(10px)}.process-viewer[open]{animation:process-content .25s ease-out}.viewer-top{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid #ffffff20;position:sticky;top:0;z-index:3;background:#0c1520}.viewer-top .eyebrow{margin:0;color:#a5b6c5;font-size:10px}.viewer-close{border:0;color:white;background:none;display:flex;gap:20px;align-items:center;cursor:pointer;font:500 12px Space,sans-serif;padding:8px}.viewer-close span{font-size:27px;line-height:1}.viewer-image{position:relative;background:#03070c;min-height:150px}.viewer-image img{display:block;width:100%;max-height:59dvh;object-fit:contain;height:auto}.viewer-image>span{position:absolute;bottom:12px;left:18px;font-size:10px;color:#d1dbe4;padding:5px 8px;background:#050c17bc}.viewer-info{display:flex;gap:26px;align-items:center;justify-content:space-between;padding:22px 28px}.viewer-info h2{font:700 36px/1 BarlowC,sans-serif;margin:7px 0 10px}.viewer-info p{font-size:12px;color:#b8c7d3;line-height:1.65;margin:0;max-width:700px}#viewer-position{font-size:10px;color:var(--accent);letter-spacing:.2em}.viewer-nav{display:flex;gap:8px;flex-shrink:0}.viewer-nav button{min-width:44px;min-height:44px;font-size:20px}.viewer-close:focus-visible{outline:2px solid var(--cyan)}
@media(min-width:1450px){.service-panel{min-height:625px}}
@media(max-width:1100px){.service-content{padding:30px 26px}.service-panel{grid-template-columns:1fr 1fr}.transformation-controls{padding:30px 26px}.engineering-grid{gap:40px}.drawing-top,.drawing-bottom{padding:20px}}
@media(max-width:800px){.hero-monogram{top:20%;font-size:80vw;opacity:.7}.service-panel{grid-template-columns:1fr}.service-media{min-height:0;aspect-ratio:3/2}.service-content{padding:30px 25px}.service-content h3{font-size:40px}.process-sequence{margin:22px 0;gap:13px}.process-sequence li{font-size:11px}.engineering{padding:65px 0}.engineering-grid{grid-template-columns:1fr;gap:20px;margin-bottom:30px}.transformation{grid-template-columns:1fr}.transformation-visual{border-right:0;border-bottom:1px solid #8baab536}.part-drawing{max-height:350px}.transformation-controls{padding:30px 26px}.transformation-controls h3{font-size:38px}.drawing-top,.drawing-bottom{padding:18px}.transformation-controls .text-link{margin-top:3px}#phase-description{min-height:62px}.process-viewer{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.viewer-top{padding:10px 15px}.viewer-top .eyebrow{font-size:9px;letter-spacing:.1em}.viewer-info{padding:19px;gap:10px;align-items:flex-start}.viewer-info h2{font-size:29px}.viewer-nav{gap:5px}.viewer-nav button{min-width:37px;padding:8px}.viewer-image img{max-height:52dvh}.viewer-info p{font-size:11px}.media-caption{left:20px;bottom:22px;max-width:calc(100% - 145px)}.media-caption>span{font-size:30px}.expand-process{bottom:22px;right:18px;padding:10px}.media-caption small{font-size:9px}.service-media .media-category{top:18px;left:20px}}
@media(max-width:800px){.transformation{display:flex;flex-direction:column}.transformation-controls{display:contents}.transformation-controls>.eyebrow{display:none}.transformation-controls h3{order:1;margin:26px 24px 12px}.transformation-intro{order:2;margin:0 24px 22px}.phase-buttons{order:3;display:grid;grid-template-columns:repeat(3,1fr);width:auto;margin:0 16px}.phase-buttons button{padding:12px 7px;flex-direction:column;gap:4px;align-items:flex-start}.phase-buttons strong{font-size:12px}.phase-buttons i{display:none}.phase-buttons button[aria-pressed='true']{box-shadow:inset 0 -2px var(--cyan)}.transformation-visual{order:4;border-bottom:0}.part-drawing{max-height:270px}.drawing-top{padding:15px 18px;font-size:8px}.drawing-bottom{padding:15px 18px;font-size:8px}.drawing-bottom small{font-size:8px;max-width:130px}#phase-description{order:5;margin:5px 24px 12px;min-height:62px}.transformation-controls .text-link{order:6;align-self:flex-start;margin:0 24px 24px}}
@media(min-width:801px) and (max-height:650px){.viewer-top{padding:6px 20px}.viewer-image img{max-height:calc(100dvh - 245px)}.viewer-info{padding:14px 24px}.viewer-info h2{font-size:30px;margin:4px 0 8px}.viewer-info p{font-size:11px;line-height:1.5}}
@media(prefers-reduced-motion:reduce){.hero-images .hero-image.active,.service-panel.active .service-media>img,.service-panel.active .service-content,.process-viewer[open]{animation:none}.flat-part,.formed-part,.phase-buttons button{transition:none}}
