/* A native sticky stage, driven by scroll distance rather than wheel interception. */
.scroll-story{--story-top:95px;--story-height:calc(100svh - var(--story-top));position:relative;background:#0b1d33}
.story-stage{position:relative;isolation:isolate;overflow:hidden;min-height:var(--story-height)}
.story-backdrop{position:absolute;inset:0;background:linear-gradient(90deg,#07182ed9,#0b213b9c),url('assets/architecture.png') center 48%/cover;z-index:-1}
.story-opening{position:relative;min-height:var(--story-height);display:flex;align-items:center;justify-content:center;color:white;padding:45px 0 75px}
.story-opening .hero{padding:0 6%;background:transparent;color:white;width:100%}
.story-opening .hero-top{justify-content:center;margin-bottom:26px}
.story-opening .eyebrow{color:#c9d6e8;font-size:10px;letter-spacing:1.7px}
.story-opening .square{background:#a6bee5}
.story-opening .hero-grid{display:block;text-align:center;padding:0}
.story-opening h1{font-size:clamp(48px,5.5vw,88px);line-height:1.1;letter-spacing:-3.5px;font-weight:500;max-width:1050px;margin:0 auto 25px}
.story-opening h1 span{color:#c2d4f2}
.story-opening .hero-copy{padding:0}
.story-opening .hero-copy h2{color:#edf2fa;font-size:18px;line-height:1.5;margin:0 auto 23px;font-weight:400}
.story-opening .hero-copy h2 br{display:none}
.story-opening .hero-copy>p{display:none}
.story-opening .button{background:#fff;color:#142946;border-color:#fff;min-height:50px}
.story-opening .button:hover{background:#e8eef7}
.story-opening .hero-secondary{display:inline-flex;margin:0 0 0 25px;color:#e3ebf6}
.story-cue{position:absolute;bottom:28px;left:6%;right:6%;display:flex;align-items:center;gap:20px;font-size:10px;letter-spacing:1.6px;color:#b6c6dc}
.cue-line{width:80px;height:1px;background:#ffffff45;transform-origin:left}
.story-cue>span:last-child{margin-left:auto}
.story-panel{position:relative;min-height:var(--story-height);background:#f9fafb;color:#121c2b;display:flex;align-items:center;justify-content:center;padding:50px 6%;box-shadow:0 -25px 70px #05122218}
.panel-inner{text-align:center;width:100%;max-width:1100px}
.panel-eyebrow{font-size:10px;letter-spacing:1.8px;color:#69778a;margin-bottom:24px}
#story-statement{font-size:clamp(36px,4.75vw,73px);font-weight:500;line-height:1.12;letter-spacing:-2.8px;margin:0 auto 25px}
.audience-handoff #story-statement{font-size:clamp(47px,5.4vw,82px);line-height:1.06;letter-spacing:-4px;margin-bottom:0}
.audience-handoff .statement-line:nth-child(2){color:#315de2}
.statement-line{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
.statement-line>span{display:block;transform-origin:50% 100%}
.statement-line:nth-child(2),.statement-line:nth-child(4){color:#2855ad}
.panel-description{font-size:15px;line-height:1.65;color:#657083;margin-bottom:22px}
.panel-next{font-size:13px;display:inline-flex;gap:22px;align-items:center;border-bottom:1px solid #cbd4df;padding-bottom:9px}
.panel-index{position:absolute;right:6%;bottom:28px;font-size:10px;letter-spacing:1.6px;color:#728098}
.scroll-story-ready{height:calc(var(--story-height) + 285svh)}
.scroll-story-ready .story-stage{position:sticky;top:var(--story-top);height:var(--story-height);min-height:0}
.scroll-story-ready .story-opening{height:100%;min-height:0;will-change:transform,opacity}
.scroll-story-ready .story-panel{position:absolute;inset:0;min-height:0;will-change:transform;transform:translate3d(0,102%,0) scaleX(.92);border-radius:16px 16px 0 0}
.scroll-story-ready .story-backdrop{will-change:transform}
.scroll-story-ready .statement-line>span{will-change:transform,opacity}
@media(min-width:761px) and (max-height:680px){.story-opening h1{font-size:54px;margin-bottom:18px}.story-opening .hero-top{margin-bottom:18px}.story-opening{padding:30px 0 55px}.panel-eyebrow{margin-bottom:16px}#story-statement{font-size:42px;margin-bottom:18px}.panel-description{margin-bottom:14px}.story-panel{padding:25px 6%}}
@media(max-width:760px){.scroll-story{--story-top:78px}.story-opening{padding:45px 0 70px}.story-opening h1{font-size:clamp(39px,9vw,60px);letter-spacing:-1.9px;line-height:1.12;margin-bottom:24px}.story-opening .hero-top{margin-bottom:24px}.story-opening .eyebrow{font-size:9px;letter-spacing:1px;max-width:300px;line-height:1.8}.story-opening .hero-copy h2{font-size:16px;line-height:1.7;max-width:300px}.story-opening .hero-copy h2 br{display:block}.story-opening .hero-secondary{display:flex;width:max-content;margin:22px auto 0}.story-opening .button{font-size:14px}.story-panel{padding:35px 6%}#story-statement{font-size:clamp(32px,8.2vw,50px);letter-spacing:-1.4px;line-height:1.18}.panel-eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:25px}.panel-description{font-size:14px}.story-cue{font-size:9px}.cue-line{width:45px}.scroll-story-ready{height:calc(var(--story-height) + 155svh)}}
@media(max-width:760px){.audience-handoff #story-statement{font-size:clamp(40px,10.5vw,56px);letter-spacing:-2.2px;line-height:1.06}}
@media(prefers-reduced-motion:reduce){.scroll-story-ready{height:auto}.scroll-story-ready .story-stage{position:relative;top:auto;height:auto}.scroll-story-ready .story-panel{position:relative;transform:none!important;border-radius:0!important}.scroll-story-ready .story-opening,.scroll-story-ready .statement-line>span,.scroll-story-ready .story-backdrop{transform:none!important;opacity:1!important}.panel-inner>*{opacity:1!important;transform:none!important}.story-cue{display:none}}
