/* Engineering drawing language and lightweight pointer interaction. */
:root{--technical-accent:43,149,180;--cursor-x:65%;--cursor-y:35%}
body{background-color:#f0f4f5;background-image:linear-gradient(rgba(35,99,127,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(35,99,127,.055) 1px,transparent 1px),linear-gradient(rgba(35,99,127,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(35,99,127,.025) 1px,transparent 1px);background-size:120px 120px,120px 120px,24px 24px,24px 24px}
.technical-glow{position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(500px circle at var(--cursor-x) var(--cursor-y),rgba(var(--technical-accent),.11),transparent 75%)}
body[data-division=fabric]{--technical-accent:32,148,150}body[data-division=print]{--technical-accent:93,116,185}
header{background:#ffffffed;backdrop-filter:blur(16px);box-shadow:0 1px 0 #37748b16}
.hero{isolation:isolate;background:#061a2a}
.hero-image{opacity:.22;filter:grayscale(.8);background-position:right center}
.hero-shade{background:linear-gradient(90deg,#061a2afa 10%,#061a2adb 45%,#061a2a70 100%)}
.hero-grid{position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#73d8ed12 1px,transparent 1px),linear-gradient(90deg,#73d8ed12 1px,transparent 1px),linear-gradient(#73d8ed06 1px,transparent 1px),linear-gradient(90deg,#73d8ed06 1px,transparent 1px);background-size:100px 100px,100px 100px,20px 20px,20px 20px;mask-image:linear-gradient(90deg,transparent 20%,#000 75%)}
.hero-tech{--tech-x:0px;--tech-y:0px;position:absolute;width:min(59vw,850px);height:100%;right:-3%;top:0;pointer-events:none;display:flex;align-items:center;justify-content:center;opacity:.86;transform:translate3d(var(--tech-x),var(--tech-y),0);transition:transform .65s cubic-bezier(.2,.7,.3,1)}
.hero-tech svg{width:100%;height:auto;overflow:visible;filter:drop-shadow(0 0 14px #35b9d41a)}
.cad-construction{fill:none;stroke:#6dc9e4;stroke-width:.7;opacity:.3}.cad-outline{fill:#0c2f4350;stroke:#91e2f2;stroke-width:1.2;stroke-linejoin:round}.cad-detail{fill:none;stroke:#70c3de;stroke-width:1;opacity:.8}.cad-dashed{fill:none;stroke:#8ed4e4;stroke-width:.8;stroke-dasharray:5 7;opacity:.5}.cad-label{fill:#99d8e6;font:10px monospace;letter-spacing:2px}.cad-mark{fill:#9fe8f1}.cad-inner{transform-origin:420px 340px;animation:cad-rotate 75s linear infinite}.cad-scan{animation:cad-scan 9s ease-in-out infinite;opacity:.25}.hero-content{z-index:2}.hero-content .eyebrow{color:#aae5ee}h1{text-shadow:0 5px 35px #04152480}.hero-bottom,.hero-index{z-index:2}
.technical-toggle{position:absolute;right:6%;top:28px;z-index:3;background:#071f30b3;border:1px solid #6ea5bc66;color:#b7deeb;padding:9px 12px;font:9px monospace;letter-spacing:1.2px;display:flex;gap:10px;align-items:center}.technical-toggle::before{content:'';width:5px;height:5px;border-radius:50%;background:#84e0e7;box-shadow:0 0 10px #84e0e780}.technical-toggle[aria-pressed=false]::before{background:#7e97a4;box-shadow:none}.technical-toggle:hover{border-color:#a5e9f1}
.hero-axis{position:absolute;right:8%;bottom:100px;color:#8dbacc;font:9px monospace;letter-spacing:1.5px;display:flex;gap:15px;align-items:center;opacity:.8}.hero-axis svg{width:45px;height:45px}.hero-axis span{max-width:125px;line-height:1.7}
.intro,.capabilities,.film-strip{position:relative}.intro::before,.capabilities::before,.film-strip::before{content:'+';position:absolute;left:2.2%;top:44px;font:20px monospace;color:#4e92ac80}.intro h2 span{color:#677f8c}.tabs{background:#ffffff75;border-top:1px solid #9cbac944}.tabs button{transition:background .2s,color .2s}.tabs button:hover{background:rgba(var(--technical-accent),.07)}.tabs button[aria-selected=true]{background:rgba(var(--technical-accent),.12);border-bottom-color:rgb(var(--technical-accent))}
.division-picture{border:1px solid #b8d0da;box-shadow:8px 8px 0 #bfd0d42e}.division-copy{padding:15px 0}.tags span{background:#f8fcfce6;font-family:monospace;border-color:#afc7d1}.process-card{position:relative;background:#fffffff2;border-color:#bdcfd7;transition:transform .25s,border-color .25s,box-shadow .25s}.process-card::after{content:'';position:absolute;right:7px;bottom:7px;width:10px;height:10px;border-right:1px solid #4c9cb4;border-bottom:1px solid #4c9cb4;pointer-events:none;opacity:.5}.process-card:hover,.process-card:focus-within{transform:translateY(-4px);border-color:rgb(var(--technical-accent));box-shadow:0 12px 25px #123b5110}.process-card .small{font-family:monospace;font-size:9px;letter-spacing:1px}
.precision,.contact{position:relative;isolation:isolate;overflow:hidden;background-color:#081f32;background-image:linear-gradient(#5cbcd70b 1px,transparent 1px),linear-gradient(90deg,#5cbcd70b 1px,transparent 1px);background-size:48px 48px}.precision::before,.contact::before{content:'';position:absolute;z-index:-1;pointer-events:none;width:600px;height:600px;border:1px solid #65bdcf18;border-radius:50%;right:-180px;top:-180px;box-shadow:0 0 0 45px #65bdcf08,0 0 0 100px #65bdcf07,0 0 0 160px #65bdcf04}.quality li{position:relative;border-top:1px solid #58879b5e;padding-top:18px}.quality li::after{content:'+';position:absolute;top:-9px;right:0;color:#80c7d7;font:14px monospace}.quality li span{font-family:monospace;color:#89cedd}.film-strip{padding-top:70px}.film-feature{border:1px solid #6898ab}.film-feature::after{content:'';position:absolute;inset:10px;border:1px solid #a8d2df40;pointer-events:none}.contact form{box-shadow:10px 10px 0 #02172550;border-top:3px solid #79cbdf}.contact input:focus,.contact select:focus,.contact textarea:focus{outline:2px solid #3394ad;outline-offset:2px}footer{background:#f4f8f9b3}
body.motion-paused .cad-inner,body.motion-paused .cad-scan{animation-play-state:paused}body.motion-paused .hero-tech{transform:none}body.motion-paused .technical-glow{display:none}
@keyframes cad-rotate{to{transform:rotate(360deg)}}@keyframes cad-scan{0%,100%{transform:translateY(-120px);opacity:0}20%,80%{opacity:.3}50%{transform:translateY(170px)}}
@media(min-width:1100px){.hero-content{pointer-events:none}.hero-content a,.hero-content button{pointer-events:auto}}
@media(max-width:1000px){.hero-tech{width:80vw;right:-28%;opacity:.5}.hero-axis{display:none}.technical-toggle{font-size:8px;top:20px}.hero-grid{mask-image:linear-gradient(90deg,transparent,#000)}}
@media(max-width:700px){.hero-tech{width:110vw;right:-53%;opacity:.3;top:15%}.hero-shade{background:linear-gradient(90deg,#061a2af0,#061a2ab3)}.technical-toggle{top:17px;padding:7px 9px}.hero-content{padding-top:65px}.hero-grid{background-size:80px 80px,80px 80px,20px 20px,20px 20px}.intro::before,.capabilities::before,.film-strip::before{display:none}.process-card:hover{transform:none}.film-strip{padding-top:50px}.contact form{box-shadow:6px 6px 0 #02172550}}
@media(prefers-reduced-motion:reduce){.cad-inner,.cad-scan{animation:none}.hero-tech{transform:none!important}.technical-glow{display:none}.process-card:hover{transform:none}}

.hero-background-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:none;opacity:.58;filter:saturate(.65);transition:opacity .5s}.hero-shade{background:linear-gradient(90deg,rgba(3,18,31,.97) 0%,rgba(3,18,31,.9) 32%,rgba(3,18,31,.42) 76%,rgba(3,18,31,.5) 100%),linear-gradient(0deg,#03121fe0,transparent 28%)}.hero-tech{opacity:.23}.hero-grid{opacity:.6}.motion-film-cta{padding:13px 18px 13px 13px;gap:14px;border:1px solid #95e5ef;background:#0b3146e8;box-shadow:0 0 0 4px #6bd2e80c,0 7px 25px #0003;backdrop-filter:blur(8px);text-align:left;transition:background .2s,border-color .2s,transform .2s}.motion-film-cta strong{display:block;font-size:14px;font-weight:700;color:#fff;line-height:1.3}.motion-film-cta small{display:block;font-size:8px;letter-spacing:1.6px;color:#91d7e6;margin-top:6px}.motion-film-cta .play{width:43px;height:43px;flex-shrink:0;background:#a2e8f0;color:#082335;border-color:#b9f3f7;font-size:14px;box-shadow:0 0 20px #8fe4ee26}.motion-film-cta .film-cta-arrow{font-size:19px;color:#b2edf4;margin-left:8px}.motion-film-cta:hover{background:#18516a;border-color:#d2faff;transform:translateY(-2px)}.actions{align-items:stretch}.actions>.button{align-self:stretch}.hero-content .actions{width:max-content;max-width:100%}body.motion-paused .hero-background-film{opacity:.3}@media(max-width:1000px){.motion-film-cta strong{font-size:12px}.motion-film-cta{padding:12px;gap:10px}.actions{gap:16px}.motion-film-cta .film-cta-arrow{margin-left:0}}@media(max-width:700px){.hero-background-film{opacity:.4;object-position:60% center}.hero-shade{background:linear-gradient(90deg,#03121ff2,#03121fa1),linear-gradient(0deg,#03121fc9,transparent)}.hero-content .actions{width:100%;max-width:340px;align-items:flex-start;gap:15px}.actions>.button{align-self:flex-start}.motion-film-cta{width:100%;justify-content:flex-start;padding:12px 15px}.motion-film-cta strong{font-size:13px}.motion-film-cta .film-cta-arrow{margin-left:auto}.hero-tech{opacity:.14}}
