/* PRECISION STUDIO / V22 — coherent interface, fixed render surfaces. */
:root{--bg:#080e11;--panel:#0e171c;--text:#edf0e9;--muted:#a5b3b8;--line:rgba(203,218,218,.15);--lime:#c4e97b;--v22-radius:8px;color-scheme:dark}
html{overflow-x:clip;scroll-padding-top:88px}
body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
*,*:before,*:after{box-sizing:border-box}
main,section,article,aside{min-width:0}
button,a,input{ -webkit-tap-highlight-color:transparent }
button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--lime);outline-offset:5px}
.nav{height:76px;background:rgba(8,14,17,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(14px);box-shadow:none}
.nav-links a{font-size:11px;letter-spacing:.045em}
.nav-links a[aria-current]{color:var(--lime)}
.grain,.btf-prelude-grain{opacity:.018}
.hero{grid-template-columns:minmax(0,48fr) minmax(0,52fr);min-height:max(720px,calc(100svh - 76px));background:#080e11}
.hero-copy{padding:100px clamp(28px,4.8vw,84px) 34px;min-width:0;min-height:0}
.hero h1{font-size:clamp(76px,7.9vw,142px);line-height:.89;letter-spacing:-.075em;font-weight:760;margin:26px 0 30px;filter:none}
.hero-the{font-size:.44em;letter-spacing:-.045em}
.hero-flow{color:#eef2e9!important;text-shadow:none;background:none;-webkit-text-fill-color:currentColor}
.hero-index{font-size:9px;letter-spacing:.16em;color:#9aadb2}
.hero-subrow{margin-top:0;gap:17px}.hero-subrow p{font-size:clamp(14px,1.25vw,18px);line-height:1.6;color:#acbbc0}
.hero-subrow strong{color:#edf0e9}.hero-actions{gap:12px;margin-top:26px}
.btn{min-height:49px;border-radius:4px;padding:14px 20px;letter-spacing:0;font-weight:650;font-size:12px;box-shadow:none;transition:background .2s,border-color .2s,transform .2s}
.btn-lime{background:var(--lime);color:#111a12;border:1px solid var(--lime)}
.btn-lime:hover{background:#d5efa4;transform:translateY(-2px);box-shadow:none}
.btn-outline{background:rgba(255,255,255,.015);border-color:rgba(223,233,231,.23)}
.hero-footer{padding-top:20px;margin-top:30px;color:#7f959d}
.hero-stage{min-width:0;min-height:620px;overflow:hidden;isolation:isolate;border-color:var(--line);background:radial-gradient(ellipse at 52% 44%,#233c3c 0,#13252a 40%,#0c171d 76%);box-shadow:inset 0 1px rgba(255,255,255,.04)}
.hero-stage:after{background:linear-gradient(0deg,rgba(5,12,16,.6),transparent 26%,transparent 85%,rgba(5,12,16,.16));pointer-events:none}
.hero-stage canvas,.experience-frame canvas,.journey-render canvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block;max-width:100%;opacity:1}
.hero-stage.webgl-fallback canvas,.experience-frame.webgl-fallback canvas{display:none!important}
.v20-hero-plate,.v20-scene-plate{display:none!important}
.stage-orbit,.experience-crosshair{display:none}
.stage-top,.stage-bottom{background:transparent!important;border-color:rgba(208,227,225,.16)!important;color:#9fb9bf;font-size:9px;letter-spacing:.12em}
.stage-top{top:28px;left:26px;right:26px}.stage-bottom{bottom:26px;left:26px;right:26px}
.stage-chip{border-radius:5px;background:rgba(13,27,32,.76)!important;backdrop-filter:blur(6px);box-shadow:none;animation:none;padding:11px 13px}
.stage-chip-a{top:20%;left:6%}.stage-chip-b{right:5%;top:71%}.stage-chip-c{left:6%;bottom:13%}
.stage-chip small{font-size:7px;letter-spacing:.14em}.stage-chip strong{font-size:10px;letter-spacing:.02em}
.hero-v2-counter{font-size:8px;color:#7f989e;letter-spacing:.12em}.hero-glow{opacity:.35}
.section-wrap{padding-top:clamp(76px,8vw,118px);padding-bottom:clamp(76px,8vw,118px)}
.section-label{font-size:9px;letter-spacing:.14em;color:#91a4ab;border-color:var(--line);margin-bottom:38px}
.manifesto h2,.about-content h2,.contact h2{font-weight:700;letter-spacing:-.058em}
.three-stats{border-color:var(--line);margin-top:58px}.three-stats strong{font-weight:500;font-variant-numeric:tabular-nums}
.ticker{background:#101b20;border-color:var(--line);padding-block:21px}.ticker-track{animation-duration:42s}.ticker-track span{font-size:16px;letter-spacing:.06em}.ticker-track b{color:var(--lime)}
.v16-pathways-heading h2,.experience-heading h2,.expertise-heading h2,.projects-heading h2,.lab-heading h2,.playbook-heading h2,.v17-lens-heading h2{letter-spacing:-.055em;font-weight:720}
.v16-path-card,.exp-card,.project-card,.lab-card,.brief-card,.method-card,.v17-lens-shell,.playbook-layout,.lab-shell{border-color:var(--line);background:linear-gradient(125deg,#132128,#0d171c);box-shadow:0 12px 36px rgba(0,0,0,.16);border-radius:var(--v22-radius)}
.v16-path-card{padding:27px;gap:13px;background:radial-gradient(circle at var(--pointer-x) var(--pointer-y),rgba(197,233,123,.045),transparent 52%),linear-gradient(125deg,#132128,#0d171c)}
.v16-path-card:hover{border-color:rgba(196,233,123,.46);box-shadow:0 18px 38px rgba(0,0,0,.19)}
.v16-path-symbol{font-size:40px;opacity:.72}.v16-path-card p{line-height:1.6;color:#9cafb6}
.exp-card,.project-card{transition:border-color .24s,transform .28s}.exp-card:hover,.project-card:hover{border-color:rgba(196,233,123,.44)}
.exp-card h3,.project-card h3{letter-spacing:-.025em;font-weight:650}
.project-dialog,.brief-dialog,#v9-brief-dialog,#v7-graphics-dialog{background:#101b21;border:1px solid rgba(215,230,228,.23);border-radius:12px;max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 32px 100px rgba(0,0,0,.5)}
dialog::backdrop{background:rgba(2,8,12,.79);backdrop-filter:blur(5px)}
.v8-case-grid>div{background:rgba(239,248,249,.025);border-color:var(--line);border-radius:5px}
.experience-v2{padding-block:84px 100px;background:linear-gradient(180deg,#080e11,#0d181d 50%,#080e11)}
.experience-frame{width:min(calc(100% - 64px),1240px);height:590px!important;min-height:0!important;border:1px solid rgba(206,225,225,.2);border-radius:9px 9px 0 0;background:radial-gradient(ellipse at 50% 44%,#243f42,#0f2029 70%);overflow:hidden;isolation:isolate}
.experience-frame[data-scene-mode='warehouse']{background:radial-gradient(ellipse at 50% 44%,#284440,#14292d 68%)}
.experience-frame[data-scene-mode='data']{background:radial-gradient(ellipse at 50% 44%,#172e42,#08131d 72%)}
.experience-frame[data-scene-mode='automation'],.experience-frame[data-scene-mode='energy']{background:radial-gradient(ellipse at 50% 44%,#1b3236,#0a161d 72%)}
.experience-frame:before,.experience-frame:after,.experience-grid-overlay,.v8-view-wipe{display:none}
.experience-topline{left:23px;right:23px;top:22px;letter-spacing:.12em;font-size:8px;color:#bad0d3}.experience-bg-glow{opacity:.35}
.v22-showroom-panel{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);gap:24px 40px;width:min(calc(100% - 64px),1240px);margin:0 auto;padding:28px 30px;background:#101f26;border:1px solid rgba(206,225,225,.2);border-top:0;border-radius:0 0 9px 9px;min-width:0}
.v22-showroom-panel .experience-bottom{position:relative!important;inset:auto!important;display:flex;gap:15px;align-items:center;background:none!important;padding:0!important;min-width:0;width:auto!important;max-width:none!important}
.v22-showroom-panel .experience-current{min-width:0}.experience-current h3{font-size:22px;line-height:1.25;letter-spacing:-.028em;font-weight:650}.experience-current p{font-size:12px;line-height:1.6;color:#a1b8c1;max-width:400px}
.v22-showroom-panel .v8-inspection{position:relative!important;inset:auto!important;width:auto!important;min-height:0!important;margin:0;padding:0 0 0 28px!important;border:0!important;border-left:1px solid rgba(211,230,230,.16)!important;border-radius:0;background:none!important;box-shadow:none;backdrop-filter:none}
.v22-showroom-panel .v8-inspection:before{display:none}.v8-inspection h4{font-size:21px;letter-spacing:-.025em;font-weight:620;line-height:1.2}.v8-inspection p{max-width:520px;font-size:12px;line-height:1.6}.v8-inspection-footer{border-color:var(--line);padding-top:10px;margin-top:15px}
.v22-showroom-panel .v8-inspection-rail{position:relative!important;inset:auto!important;grid-column:1/-1;display:flex!important;align-items:center;gap:10px;width:auto!important;min-width:0!important;margin:0;padding-top:21px;border-top:1px solid var(--line)}
.v8-inspection-rail>span{font-size:8px;letter-spacing:.14em;color:#93aab2;margin-right:auto}.v8-focus-btn{min-height:44px;border-radius:4px;min-width:105px;background:#142831;border-color:rgba(210,233,235,.17);font-size:11px;flex:0 1 140px}.v8-focus-btn[aria-pressed='true']{background:#233a30;border-color:var(--lime)}
.experience-arrows button{border-radius:50%;width:42px;height:42px;min-width:42px;border-color:rgba(210,233,235,.25)}
.experience-scenes{width:min(calc(100% - 64px),1240px);margin:14px auto 0;gap:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:0;background:none}
.experience-scenes button{border:1px solid var(--line);border-radius:5px;min-width:0;min-height:67px;padding:18px 16px;font-size:10px;letter-spacing:.04em;background:#0e1b21}
.experience-scenes button.active{background:#203329;color:#e3f0d6;border-color:rgba(196,233,123,.54)}
.v21-material-strip{width:min(calc(100% - 64px),1240px);background:none;border:0;border-radius:0;padding:10px 0;box-shadow:none}.v21-material-label{font-size:8px;letter-spacing:.09em}.v21-material-caption{font-size:11px;color:#98b0b8}.v21-material-btn{border-radius:4px;min-height:40px}
.lab-panel,.playbook-panel,.v17-lens-main{background:transparent}.lab-results{border-color:var(--line);border-radius:6px;background:#0b151b}.lab-tab,.playbook-tab{border-color:var(--line);background:#101f26}
.lab-tab[aria-selected='true'],.playbook-tab[aria-selected='true']{background:#233329}.lab-controls input[type='range']{accent-color:var(--lime)}
.results-two strong,#route-total,#route-perkm{font-variant-numeric:tabular-nums;white-space:nowrap;max-width:100%;font-size:clamp(27px,3.6vw,49px);letter-spacing:-.045em}
.results-two>div{min-width:0}.lab-foot{background:#0b151b;border-color:var(--line)}
.v17-lens-graphic{background:radial-gradient(ellipse at 50% 48%,rgba(96,164,153,.10),transparent 60%)}
.playbook-display{opacity:.78}.contact{border-color:var(--line)}.contact h2{line-height:.96}.footer{padding-top:26px;padding-bottom:30px;border-color:var(--line);color:#8ca3ad}
.btf-prelude{background:#0a1218}.btf-prelude-shade{background:linear-gradient(90deg,rgba(5,12,17,.82),rgba(5,12,17,.30) 42%,transparent 72%)}
.btf-prelude-copy h2{font-weight:720;letter-spacing:-.07em}.btf-prelude-copy.btf-switch{animation:none!important}.btf-prelude-finish{display:none!important}
.btf-prelude-grain{display:none}.btf-prelude-timeline button{min-height:44px}.btf-prelude-controls button{min-height:40px}
.btf-prelude.is-exiting{transform:translateY(-2%);transition:opacity .7s ease,transform .85s ease,visibility 0s .85s}
.threshold-halo,.v7-light-beam{opacity:.20}.journey-instrument{opacity:.62}.journey-panel,.journey-toolbar{border-color:var(--line);background:rgba(10,24,31,.85)}
@media(min-width:1600px){.hero-stage{min-height:720px}.hero-copy{padding-top:130px}.experience-frame{height:670px!important}}
@media(max-width:1050px){.hero-copy{padding-left:30px;padding-right:25px}.hero h1{font-size:clamp(65px,8vw,92px)}.hero-actions{flex-wrap:wrap}.stage-chip-c{display:none}.experience-scenes button{font-size:9px;padding:16px 10px}}
@media(max-width:850px){
 .hero{grid-template-columns:minmax(0,1fr);min-height:0}.hero-copy,body[data-edition='mobile'] .hero-copy{padding:74px 24px 24px!important;min-height:0!important}
 .hero h1{font-size:clamp(75px,16.5vw,125px);letter-spacing:-.07em;line-height:.89;margin-block:23px 25px}.hero-the{font-size:.43em}
 .hero-stage,body[data-edition='mobile'] .hero-stage{height:450px!important;min-height:0!important;margin-top:0!important;border-left:0;border-top:1px solid var(--line)}
 .hero-footer{display:none}.hero-actions,body[data-edition='mobile'] .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.hero-actions .btn{font-size:11px;padding:14px 9px;min-width:0!important;justify-content:center}
 .stage-top,.stage-bottom{left:22px;right:22px}.stage-chip-a{top:18%;left:5%}.stage-chip-b{right:5%;top:75%}.stage-chip-c{display:none}
 .section-wrap{padding-block:74px}.v16-pathways-heading h2{font-size:clamp(30px,6vw,46px)}
 .experience-v2{padding-block:70px 80px}.experience-heading{padding-inline:24px}.experience-heading h2{font-size:clamp(43px,9vw,68px)}
 .experience-frame,body[data-edition='mobile'] .experience-frame{height:420px!important;min-height:0!important;width:calc(100% - 40px)}
 body[data-edition='mobile'] .experience-frame>#experience-canvas{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;touch-action:pan-y}
 body[data-edition='mobile'] .experience-bg-glow{height:100%!important;inset:0!important}
 .v22-showroom-panel{width:calc(100% - 40px);grid-template-columns:1fr;gap:23px;padding:23px 20px}
 .v22-showroom-panel .v8-inspection,body[data-edition='mobile'] .v22-showroom-panel .v8-inspection{inset:auto!important;min-height:0!important;padding:21px 0 0!important;border-left:0!important;border-top:1px solid var(--line)!important}
 body[data-edition='mobile'] .v22-showroom-panel .v8-inspection h4{font-size:21px!important}.v8-inspection-counter{margin-top:6px!important}
 .v22-showroom-panel .v8-inspection-rail,body[data-edition='mobile'] .v22-showroom-panel .v8-inspection-rail{inset:auto!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;width:auto!important;gap:8px;padding-top:17px}
 .v8-inspection-rail>span{display:none}.v8-focus-btn{min-width:0;padding:12px 8px;min-height:48px}
 body[data-edition='mobile'] .v22-showroom-panel .experience-bottom{inset:auto!important;padding:0!important}
 .experience-current h3,body[data-edition='mobile'] .experience-current h3{font-size:21px!important;max-width:none!important}.experience-current p,body[data-edition='mobile'] .experience-current p{font-size:12px!important;max-width:none!important}
 .experience-arrows{gap:7px}.experience-topline span:last-child{display:none}
 .experience-scenes,body[data-edition='mobile'] .experience-scenes{width:calc(100% - 40px);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;margin-top:13px}
 .experience-scenes button,body[data-edition='mobile'] .experience-scenes button{min-height:62px!important;padding:13px 10px!important;font-size:9px!important}
 .v21-material-strip{width:calc(100% - 40px);padding:12px 0}.v21-material-caption{flex-basis:100%}
 .v17-mobile-dock{background:rgba(13,26,33,.96);border-color:var(--line);box-shadow:0 -6px 25px rgba(0,0,0,.22)}
 .v17-mobile-dock a{min-width:0;min-height:51px}.v17-mobile-dock span{font-size:8px}
 .results-two strong,#route-total,#route-perkm{font-size:clamp(25px,8vw,39px)}
 .btf-prelude-copy{left:24px;right:24px;bottom:clamp(188px,25vh,240px)!important;width:auto;max-width:none;top:auto;transform:none}.btf-prelude-copy h2{font-size:clamp(39px,11.5vw,66px)}
 .btf-prelude-copy p{font-size:13px;line-height:1.45}.btf-prelude-copy.btf-switch{animation:none!important}.btf-prelude-shade{background:linear-gradient(0deg,rgba(5,12,17,.88),transparent 65%)}
 .btf-prelude-timeline button small{font-size:6px}.btf-prelude-controls{gap:8px;flex-wrap:wrap}.btf-prelude-controls button{font-size:8px;padding:8px 10px;min-height:40px}
 .btf-prelude-top{padding-top:calc(18px + env(safe-area-inset-top,0px))}.btf-prelude-bottom{padding-bottom:calc(17px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:390px){.hero h1{font-size:clamp(64px,19.5vw,77px)}.hero-copy,body[data-edition='mobile'] .hero-copy{padding-inline:20px!important}.hero-stage,body[data-edition='mobile'] .hero-stage{height:395px!important}.stage-chip-a{display:none}.stage-bottom{font-size:7px}.experience-frame,body[data-edition='mobile'] .experience-frame{height:385px!important}.v22-showroom-panel{padding:20px 16px}.experience-arrows button{width:36px;height:36px;min-width:36px}.experience-current h3{font-size:18px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.hero-stage{transform:none!important}.reveal{opacity:1!important;transform:none!important}}
