/* Scrollytelling layer. Base branding and layouts remain in styles.css. */
html.scroll-story-enabled{scroll-behavior:auto}
.motion-toggle{position:fixed;right:20px;bottom:18px;z-index:25;background:#0b285bec;color:#e8f0ff;border:1px solid #829cc355;border-radius:24px;padding:10px 16px;font-size:12px;box-shadow:0 4px 20px #00132d20;min-height:42px}
.motion-toggle:disabled{cursor:default;opacity:.9}
.journey-caption{position:absolute;left:4%;right:10%;bottom:-24px;border-top:1px solid #91b2ed33;padding:17px 0 0;pointer-events:none}
#journey-step{font-size:10px;letter-spacing:2px;color:var(--yellow);display:block;margin-bottom:6px}
#journey-title{font-family:Manrope,sans-serif;font-size:20px;letter-spacing:-.4px;display:block}
.hero .journey-caption p{font-size:12px;line-height:1.5;margin:8px 0 12px;min-height:18px;color:#aebfdf}
.journey-track{height:2px;background:#86a8df33;overflow:hidden}.journey-track i{display:block;width:100%;height:100%;background:var(--yellow);transform:scaleX(0);transform-origin:left;will-change:transform}
.journey-stops{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#9cb2d4;margin-top:9px}
.hero-visual{isolation:isolate}.scene-label{z-index:2}.journey-caption{z-index:3}
.section-route{position:relative;height:30px;margin:0 0 25px;border-top:1px dashed #bed0ef;overflow:visible}.section-route i{position:absolute;height:2px;left:0;right:0;top:-1px;background:var(--blue);transform-origin:left}.section-route b{position:absolute;left:0;top:-15px;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--yellow);color:var(--navy);font-size:20px;box-shadow:0 0 0 5px white}
.steps-section,.people,.benefits,.ecosystem,.final-cta{overflow:clip}.steps,.benefit-grid,.use-cases{perspective:1200px}.steps article,.benefit-grid article,.use-cases article{backface-visibility:hidden}
.scroll-story-enabled .hero{height:calc(100svh - 96px);min-height:560px;max-height:980px;padding-top:clamp(25px,5vh,65px);padding-bottom:65px;align-items:center;overflow:hidden}
.scroll-story-enabled .hero h1{font-size:clamp(52px,min(5.7vw,10vh),88px)}
.scroll-story-enabled .hero-visual{height:100%;min-height:0;align-self:stretch}
.scroll-story-enabled #scene{inset:-35px -20px 50px -60px}
.scroll-story-enabled .label-top{top:5%;right:3%}
.scroll-story-enabled .label-bottom{bottom:150px;left:0}
.scroll-story-enabled .hero-copy{perspective:1000px}
.motion-reduced .journey-caption{position:relative;left:auto;right:auto;bottom:auto;margin-top:420px}
.motion-reduced .hero-visual{min-height:560px;align-self:start}
.motion-reduced #scene{inset:0 0 165px}
.motion-reduced .scene-label{max-width:calc(100% - 32px)}
.motion-reduced .label-bottom{bottom:165px;left:16px}
.motion-reduced .section-route i{transform:scaleX(1)}
@media(min-width:901px) and (max-height:740px){.scroll-story-enabled .hero{min-height:500px;padding-top:20px;padding-bottom:40px}.scroll-story-enabled .hero h1{font-size:56px;margin-bottom:16px}.scroll-story-enabled .hero-copy>p{font-size:14px;line-height:1.6;margin-bottom:18px}.scroll-story-enabled .rating{margin-top:18px}.scroll-story-enabled .platforms{margin-top:10px}.scroll-story-enabled .hero-copy .eyebrow{margin-bottom:15px}.scroll-story-enabled .hero .scroll-hint{bottom:10px}.scroll-story-enabled #journey-title{font-size:17px}.scroll-story-enabled .journey-caption{bottom:-20px}}
@media(max-width:900px){
 .scroll-story-enabled .hero{display:flex;height:auto;max-height:none;min-height:0;padding:38px 0 0;overflow:visible;align-items:stretch}
 .scroll-story-enabled .hero-copy{padding:0 6%}
 .scroll-story-enabled .hero h1{font-size:clamp(49px,12vw,75px)}
 .scroll-story-enabled .hero-visual{width:100%;height:calc(100svh - 78px);max-height:none;min-height:0;margin:32px 0 0;flex-shrink:0;background:radial-gradient(ellipse at 70% 40%,#144099 0,transparent 68%),#071d4b;align-self:stretch;overflow:clip}
 .scroll-story-enabled #scene{inset:20px 0 195px}
 .scroll-story-enabled .scene-label{max-width:calc(100% - 40px)}
 .scroll-story-enabled .scene-label>div{min-width:0}
 .scroll-story-enabled .label-top{top:16px;right:20px}.scroll-story-enabled .label-bottom{bottom:210px;left:20px}
 .journey-caption{left:4%;right:4%;bottom:15px;padding-top:14px}#journey-title{font-size:19px}.hero .journey-caption p{font-size:12px;max-width:100%;margin-bottom:13px}
 .journey-stops{font-size:9px}.visual-orbit{top:50px}
 .scroll-story-enabled .journey-caption{bottom:64px}
 .motion-toggle{right:12px;bottom:12px;font-size:11px;padding:9px 12px;min-height:40px}
 .scroll-story-enabled .hero .scroll-hint{position:relative;left:auto;bottom:auto;align-self:flex-start;margin:16px 6%;font-size:8px}
 .section-route{margin-top:34px;margin-bottom:15px}
 .motion-reduced .journey-caption{margin-top:330px}.motion-reduced .hero-visual{min-height:490px}
}
@media(max-width:900px) and (max-height:540px){.scroll-story-enabled #scene{inset:0 0 160px}.scroll-story-enabled .scene-label{display:none}.journey-caption{bottom:8px}#journey-title{font-size:16px}.hero .journey-caption p{font-size:11px;margin:4px 0 7px}}
@media(prefers-reduced-motion:reduce){html:not(.motion-full) .section-route i{transform:scaleX(1)}html:not(.motion-full) .journey-track i{will-change:auto}}
