/* Scroll owns the opening sequence; wheel and touch keep their native flow. */
body.site-compact .story{height:auto}
body.site-compact.has-webgl.scroll-scene .story{height:420svh}
body.site-compact .story .stage{position:relative;height:100svh;min-height:700px;max-height:none}
body.site-compact.has-webgl.scroll-scene .story .stage{position:sticky;top:0;height:100svh;min-height:0}
.story .hero-copy{top:clamp(130px,21svh,205px)}
.story .hero-actions{gap:22px;flex-wrap:wrap}
.story .hero-explore{min-height:44px;display:inline-flex;align-items:center;gap:15px;border-bottom:1px solid #65989f;color:#c2d9dd;font-size:14px}
.story .hero-explore span{font-size:21px;color:var(--accent)}
.story .stage-bottom{display:flex;bottom:95px;z-index:5;pointer-events:none}
.story .stage-bottom .scroll-cue{display:flex}
.story .progress-track{display:block;bottom:72px;z-index:5;height:2px}
.story #progress-line{height:2px}
.story .chapter-nav{bottom:14px;z-index:5}
.story .chapter-nav button{min-height:44px}
.story .chapter-copy{top:clamp(135px,21svh,210px)}
.story .bridge-heading{top:clamp(115px,15svh,165px)}
.story .bridge-heading h2{font-size:clamp(32px,3.4vw,48px)}
.story .bridge-heading .eyebrow{font-size:11px;margin-bottom:13px}
.bridge-visual{border:0;box-shadow:none;perspective:1400px}
.bridge-main{display:block;position:relative;width:100%;border:1px solid #85b0b655;border-radius:9px;box-shadow:0 35px 80px #0008;z-index:2;overflow:hidden}
.bridge-visual .bridge-main>img{display:block;width:100%;height:auto}
.bridge-secondary{position:absolute;inset:6% auto auto -11%;width:56%;transform:rotateY(17deg) rotateZ(-7deg);border:1px solid #88b7bc88;border-radius:7px;box-shadow:0 20px 60px #0005;overflow:hidden;z-index:1;opacity:var(--bridge-extras,0)}
.bridge-phone{position:absolute;right:-9%;bottom:-6%;width:21%;padding:5px;background:#1d3440;border:1px solid #90afb8;border-radius:25px;transform:rotateY(-13deg) rotateZ(6deg);box-shadow:0 25px 55px #0008;overflow:hidden;z-index:3;opacity:var(--bridge-extras,0)}
.bridge-phone img{display:block;width:100%;height:auto;border-radius:20px}
.story .bridge-label{position:absolute;bottom:-29px;left:0;font-size:10px;letter-spacing:.05em;line-height:1.5;color:#bdd7db}
.story .scene-halo{background:radial-gradient(ellipse at 76% 43%,#154450 0%,#0c242e 36%,#08151c 75%)}
body:not(.scroll-scene) .story .chapter-nav,body:not(.scroll-scene) .story .progress-track,body:not(.scroll-scene) .story .stage-bottom{display:none}
body:not(.has-webgl) .story .stage{height:auto;min-height:650px}
body:not(.has-webgl) .story #scene{display:none}
body.reduced-motion .story .dashboard-bridge{display:none}
@media(max-height:760px) and (min-width:761px){
 .story .hero-copy{top:115px}.story .hero-copy h1{font-size:clamp(39px,4.2vw,61px)}
 .story .hero-description{font-size:14px;max-width:390px;margin-bottom:20px}
 .story .hero-contexts{margin-top:15px}.story .hero-contexts button{font-size:12px}
 .story .chapter-copy{top:125px}.story .chapter-copy h2{font-size:40px}
 .story .bridge-heading{top:105px}.story .bridge-heading h2{font-size:32px}
}
@media(max-width:760px){
 body.site-compact.has-webgl.scroll-scene .story{height:400svh}
 body.site-compact .story .stage{height:100svh;min-height:680px}
 .story .hero-copy{top:105px;left:6%;width:88%;max-width:none}
 .story .hero-copy h1{font-size:clamp(32px,8.8vw,44px);line-height:1.04;margin-bottom:15px}
 .story .hero-copy .eyebrow{font-size:10px;margin-bottom:16px}
 .story .hero-description{font-size:13px;line-height:1.5;margin-bottom:16px;max-width:340px}
 .story .hero-actions{gap:15px;flex-wrap:nowrap}.story .hero-actions .primary-cta{font-size:12px;min-height:44px;padding:11px 13px}
 .story .hero-explore{font-size:12px;gap:8px}
 .story .hero-contexts{margin-top:12px;gap:16px}.story .hero-contexts button{font-size:11px;padding:7px 0}
 .story #scene{position:absolute;inset:0;width:100%;height:100%;margin:0}
 .story .chapter-copy{top:105px;left:6%;width:88%}
 .story .chapter-copy h2{font-size:clamp(30px,8vw,39px);margin-bottom:13px}
 .story .chapter-copy .eyebrow{font-size:10px;margin-bottom:16px}
 .story .chapter-copy>p:last-child{font-size:13px;line-height:1.55;max-width:330px}
 .has-webgl .story .chapter-copy,.has-webgl .story .dashboard-bridge{display:block!important}
 .story .stage-bottom{display:flex!important;bottom:84px;left:6%;right:6%}.story .scroll-cue{font-size:10px;align-items:center}
 .story .progress-track{display:block!important;bottom:66px;left:6%;right:6%}
 .story .chapter-nav{left:6%;right:6%;bottom:8px;display:flex!important;gap:10px}
 .story .chapter-nav button{font-size:10px;min-height:44px;padding:5px 0;gap:0}
 .story .chapter-nav button span{display:none}
 .story .bridge-heading{top:119px;text-align:center;left:6%;right:6%}
 .story .bridge-heading .eyebrow{justify-content:center;font-size:9px;margin-bottom:15px}
 .story .bridge-heading h2{font-size:32px;line-height:1.1}
 .bridge-secondary{left:-5%;width:66%;top:-8%;transform:rotateZ(-8deg)}
 .bridge-phone{right:-4%;bottom:-20%;width:24%;border-radius:13px;padding:3px;transform:rotateZ(5deg)}
 .bridge-phone img{border-radius:10px}
 .story .bridge-label{font-size:9px;bottom:-45px;max-width:70%;line-height:1.5}
 body:not(.scroll-scene) .story .chapter-nav,body:not(.scroll-scene) .story .stage-bottom,body:not(.scroll-scene) .story .progress-track{display:none!important}
 body:not(.has-webgl) .story .hero-copy{position:relative;top:auto;padding-top:110px;padding-bottom:45px}
 body.site-compact:not(.has-webgl) .story .stage{height:auto;min-height:0}
}
@media(max-width:760px) and (max-height:720px){
 .story .hero-copy{top:94px}.story .hero-copy h1{font-size:32px}.story .hero-copy .eyebrow{margin-bottom:12px}
 .story .hero-description{font-size:12px;margin-bottom:12px}.story .hero-contexts{margin-top:6px}
 .story .chapter-copy{top:99px}.story .chapter-copy h2{font-size:30px}
 .story .bridge-heading{top:103px}.story .bridge-heading h2{font-size:28px}
}
@media(prefers-reduced-motion:reduce){body.site-compact.has-webgl .story{height:auto}.story .stage{position:relative}.reduced-motion .story .chapter-copy,.reduced-motion .story .dashboard-bridge{display:none!important}}
