*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#030406;color:#f7f8fa;font-family:Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid #ff5368;outline-offset:5px}.filter-defs{position:absolute}.skip{position:fixed;left:15px;top:-70px;background:#cb102b;padding:15px;z-index:100}.skip:focus{top:12px}
header{position:fixed;inset:0 0 auto;height:94px;padding:16px 4.5%;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:20;background:linear-gradient(#030406d9,transparent)}.brand img{width:174px;height:auto;display:block;filter:url(#dark-logo)}nav{display:flex;gap:32px;align-items:center;font-size:14px}nav button{background:none;border:0;padding:12px 0}nav a{padding:12px 0}.active{border-bottom:2px solid #ec1631}.contact{border:1px solid #d8d8dc;border-radius:18px;padding:14px 22px;background:#03040645}.menu{display:none}.journey{height:380svh}.hero{height:100svh;min-height:680px;position:sticky;top:0;isolation:isolate;overflow:hidden;background:#030406}
.visual{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.artboard{position:absolute;width:1536px;height:1024px;transform-origin:0 0;background:#030406}.artboard>img{position:absolute;inset:0;width:1536px;height:1024px}.stage-photo{opacity:0}.step-photo{opacity:0;clip-path:polygon(43% 61%,100% 63%,100% 77%,43% 77%)}.podium-photo{clip-path:polygon(53.3% 45.8%,59.8% 45.8%,60.2% 60.1%,53.3% 60.1%);opacity:0}.visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#03040628,transparent 50%),linear-gradient(0deg,#030406a0,transparent 16%)}
.screen-surface{position:absolute;top:0;left:0;width:640px;height:360px;transform-origin:0 0;opacity:0;overflow:hidden;background:#101116;backface-visibility:hidden}.screen-art{display:block;width:100%;height:100%}.screen-art text{font:500 17px Arial,sans-serif;fill:#f5f2f4;text-anchor:middle;letter-spacing:1.6px}.screen-art .screen-wordmark{font-size:40px;font-weight:700;letter-spacing:5px}.light-effects{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.trail{fill:none;stroke:#ff293f;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}.trail.glow{stroke-width:13;filter:url(#trail-glow);opacity:.8}.trail-head{opacity:0}.lamps ellipse{fill:url(#lamp-glow);opacity:0}
.copy{position:absolute;left:4.5%;top:21%;width:41%;max-width:650px}.eyebrow{font-size:12px;font-weight:700;letter-spacing:2.8px;color:#fb2942;margin:0 0 24px}h1{font-size:clamp(42px,5.3vw,82px);line-height:1.02;letter-spacing:-3px;margin:0 0 25px;font-weight:750}h1>span:not(.last-line),.last-line>span{color:#ef1430}.last-line{font-size:.8em;white-space:nowrap}.intro{font-size:clamp(16px,1.45vw,22px);color:#bfc3cc;line-height:1.5;max-width:510px;margin:0 0 28px}.actions{display:flex;align-items:center;gap:28px}.primary{background:#e70e2a;border:1px solid #f92841;border-radius:22px;padding:17px 24px;font-weight:600;font-size:15px;min-height:50px}.primary:hover{background:#c80f27}.actions a{font-size:14px;border-bottom:1px solid #878994;padding:10px 0;white-space:nowrap}.story-caption{display:flex;align-items:center;gap:12px;border-left:2px solid #bf1730;padding-left:14px;margin-top:25px;max-width:420px;min-height:40px}.caption-number{color:#fc3049;font-size:11px;letter-spacing:1px}.story-caption p{font-size:14px;line-height:1.4;color:#c6c6cf;margin:0}
.bottom{position:absolute;bottom:22px;left:4.5%;right:4.5%;padding-top:14px;border-top:1px solid #ffffff25;display:flex;align-items:center;justify-content:space-between;gap:16px}.story-controls{display:flex;align-items:center;gap:9px}.story-controls button{background:none;border:0;border-bottom:2px solid transparent;min-height:44px;padding:10px 4px;font-size:12px;color:#b8bac2}.story-controls button[aria-pressed=true]{color:#fff;border-bottom-color:#ee1936}.story-controls>span{font-size:12px;color:#6a6a75}.motion-controls{display:flex;gap:20px;align-items:center}.motion-controls button,.motion-controls a{background:none;border:0;padding:12px 0;font-size:11px;min-height:44px;color:#b8bac2}button:disabled{opacity:.45;cursor:default}
#story-summary{background:#edf0f4;color:#101b30;padding:90px 6%;scroll-margin-top:90px}h2{font-size:clamp(34px,4vw,60px);letter-spacing:-1.8px;line-height:1.1;margin:0 0 40px}.summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.summary-grid article{border-top:1px solid #aeb7c4;padding-top:22px}.summary-grid span{font-size:11px;letter-spacing:2px;color:#ad1830}h3{font-size:22px}.summary-grid p{line-height:1.6;color:#4a5566;max-width:340px}.prototype-note{margin-top:55px;font-size:13px;line-height:1.7;max-width:780px;color:#687183}.back{display:inline-block;margin-top:15px;border-bottom:1px solid #aaa;padding:10px 0}.static .journey{height:100svh}.static .hero{position:relative}
dialog{background:#121823;color:#f5f5f7;border:1px solid #ffffff30;border-radius:18px;max-width:min(520px,90vw);padding:42px;box-shadow:0 30px 100px #000a}dialog::backdrop{background:#000b;backdrop-filter:blur(6px)}dialog h2{font-size:36px;margin-bottom:20px}dialog p{line-height:1.7}.close{position:absolute;top:8px;right:8px;width:44px;height:44px;background:none;border:0;font-size:28px}
@media(max-width:1100px){nav{gap:18px}.contact{display:none}.copy{width:43%}.actions{gap:16px}.primary{padding:15px 18px}.scroll-cue{display:none}.motion-controls{gap:14px}h1{letter-spacing:-2px}.story-caption{margin-top:18px}}
@media(min-width:701px) and (max-height:760px){.copy{top:18%}h1{font-size:min(5.1vw,66px);margin-bottom:17px}.intro{font-size:17px;margin-bottom:20px}.eyebrow{margin-bottom:17px}.story-caption{margin-top:15px}.bottom{bottom:10px}}
@media(max-width:700px){header{height:68px;padding:10px 5%;background:#030406ed}.brand img{width:132px}.menu{display:block;width:44px;height:44px;background:#141823;border:1px solid #ffffff35;border-radius:9px;font-size:21px}nav{display:none;position:absolute;top:67px;left:0;right:0;background:#101520;padding:15px 6%;box-shadow:0 20px 40px #0008}nav.open{display:flex;flex-direction:column;align-items:stretch;gap:2px}nav a,nav button{text-align:left;padding:14px;min-height:44px;font-size:16px}.contact{display:none}
.journey{height:245svh}.hero{min-height:720px;height:100svh}.copy{top:87px;left:6%;width:88%;max-width:none}.eyebrow{font-size:9px;letter-spacing:2px;margin-bottom:15px}h1{font-size:clamp(38px,10vw,50px);letter-spacing:-1.8px;line-height:1.02;margin-bottom:16px}.last-line{font-size:1em}.intro{font-size:14px;max-width:95%;line-height:1.45;margin-bottom:17px}.actions{gap:20px}.primary{padding:12px 17px;min-height:46px;font-size:12px;border-radius:16px}.actions a{font-size:12px}.story-caption{margin-top:14px;min-height:32px;max-width:100%;padding-left:10px}.story-caption p{font-size:12px}.visual{top:405px;bottom:103px}.visual:after{background:linear-gradient(0deg,#030406 0%,transparent 15%,transparent 88%,#030406 100%)}.bottom{bottom:9px;left:6%;right:6%;flex-direction:column;align-items:stretch;padding-top:4px;gap:0}.story-controls{justify-content:space-between;gap:3px}.story-controls button{font-size:11px;padding:8px 2px}.motion-controls{justify-content:space-between}.motion-controls button{font-size:11px;padding:7px 0}.motion-controls .scroll-cue{display:block;font-size:10px}.summary-grid{grid-template-columns:1fr;gap:24px}#story-summary{padding:58px 6%;scroll-margin-top:68px}.static .journey{height:max(100svh,720px)}dialog{padding:34px 25px}}
@media(max-width:360px){h1{font-size:35px}.intro{font-size:13px}.actions{gap:13px}.actions a{font-size:11px}.visual{top:390px}.story-caption p{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.journey{height:100svh}#replay-intro{display:none}}

/* Outdoor launch: shadowed opening and staggered illumination. */
.shadow-photo{opacity:.78}.light-zone{opacity:0;clip-path:inset(0 0 27% 0)}
.podium-photo{clip-path:polygon(48.8% 46.5%,55.4% 46.5%,55.4% 60.3%,48.8% 60.3%)}
.step-photo{clip-path:polygon(40.9% 61.4%,84% 64%,84.5% 72.5%,40.9% 70.4%)}
.visual:after{background:linear-gradient(90deg,#03040680,transparent 48%),linear-gradient(0deg,#030406cc,transparent 24%)}
.screen-art .screen-kicker{font-size:11px;letter-spacing:2px;fill:#d59ca8}.screen-art .screen-title{font-size:27px;font-weight:700;letter-spacing:1px}.screen-art .screen-subtitle{font-size:13px;letter-spacing:1px}.screen-art text{font-size:13px;letter-spacing:1px}.bottom{background:linear-gradient(transparent,#0304069c)}.story-controls{gap:18px}.story-controls button{padding:10px 7px}
.story-caption{min-height:52px}
@media(max-width:700px){.desktop-break{display:none}.visual{top:365px}.story-controls{gap:1px}.story-controls button{font-size:11px;min-width:40px;padding:8px 3px}.story-caption{min-height:42px}.visual:after{background:linear-gradient(0deg,#030406,transparent 17%,transparent 88%,#030406)}.bottom{background:#030406}}
@media(max-width:360px){.visual{top:355px}h1{font-size:33px}.story-caption p{font-size:11px}}

/* Keep text clear of stage lighting; retain the open stage on the right. */
header{background:transparent;border-bottom:0}nav{font-weight:600;text-shadow:0 2px 7px #000,0 0 18px #000}nav button{font-weight:600}.stage-branding{position:absolute;inset:0;width:1536px;height:1024px;pointer-events:none}
.visual:after{background:linear-gradient(90deg,#020307f5 0%,#020307df 27%,#020307a3 40%,transparent 58%),linear-gradient(0deg,#030406c9,transparent 25%)}
.intro,.story-caption p{color:#e0e3ea}.copy{max-width:540px}.service-copy h1{font-size:clamp(42px,4.7vw,70px);max-width:520px;line-height:1.06}.service-copy .eyebrow{line-height:1.6}.service-copy .intro{max-width:470px;min-height:96px}.screen-art .service-screen-title{font-size:24px;font-weight:700;letter-spacing:.1px}.screen-art .current-step{font-size:18px;fill:#fff}.screen-art .service-step text{font-size:11px}
@media(max-width:700px){.copy{max-width:none}.service-copy h1{font-size:clamp(33px,9.5vw,43px);line-height:1.04}.service-copy .intro{min-height:0;font-size:13px}.service-copy .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:10px}.visual:after{background:linear-gradient(0deg,#030406,transparent 17%,transparent 88%,#030406)}.service-copy .story-caption{margin-top:10px}.story-controls button{min-width:44px}.visual{top:380px}}
