.spotlight{position:relative;isolation:isolate}.spotlight:before,.spotlight:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s var(--ease-out)}.spotlight:before{padding:1px;background:radial-gradient(260px circle at var(--mx, 50%) var(--my, 0%),color-mix(in oklab,var(--brand) 85%,transparent),transparent 65%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);z-index:1}.spotlight:after{background:radial-gradient(420px circle at var(--mx, 50%) var(--my, 0%),color-mix(in oklab,var(--brand) 9%,transparent),transparent 60%);z-index:-1}.spotlight:hover:before,.spotlight:hover:after,.spotlight:focus-within:before{opacity:1}.rail-packet{position:absolute;top:0;bottom:0;width:40%;border-radius:999px;background:linear-gradient(90deg,transparent,var(--brand),transparent);animation:rail-packet 1.6s var(--ease-out) infinite}@keyframes rail-packet{0%{left:-40%}to{left:100%}}.route-flow{animation:route-flow 1.2s linear infinite}@keyframes route-flow{to{stroke-dashoffset:-16}}.beacon-ring{animation:beacon 1.8s var(--ease-out) infinite}@keyframes beacon{0%{transform:scale(1);opacity:.55}to{transform:scale(2.6);opacity:0}}.roll-col{transition:transform .6s var(--ease-out)}@media (prefers-reduced-motion: reduce){.rail-packet,.route-flow,.beacon-ring{animation:none}.roll-col{transition:none}}html.motion-on [data-reveal]{transition:opacity var(--dur-reveal) var(--ease-out),transform var(--dur-reveal) var(--ease-emphasized);transition-delay:calc(var(--i, 0) * var(--stagger))}html.motion-on [data-reveal]:not([data-shown]){opacity:0}html.motion-on [data-reveal=up]:not([data-shown]){transform:translate3d(0,var(--reveal-distance),0)}html.motion-on [data-reveal=scale]:not([data-shown]){transform:scale(.96)}.marquee{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,var(--bg) 8%,var(--bg) 92%,transparent);mask-image:linear-gradient(90deg,transparent,var(--bg) 8%,var(--bg) 92%,transparent)}.marquee-track{display:flex;width:-moz-max-content;width:max-content;animation:marquee var(--marquee-dur, 40s) linear infinite}.marquee[data-reverse] .marquee-track{animation-direction:reverse}.marquee-group{display:flex;flex-shrink:0;align-items:center;gap:var(--marquee-gap, 12px);padding-right:var(--marquee-gap, 12px)}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translate3d(-50%,0,0)}}html:not(.motion-on) .marquee{-webkit-mask-image:none;mask-image:none}html:not(.motion-on) .marquee-track{animation:none;width:auto}html:not(.motion-on) .marquee-group{flex-wrap:wrap;flex-shrink:1;padding-right:0}html:not(.motion-on) .marquee-group[aria-hidden]{display:none}.story-pinned .story-band{min-height:var(--story-step, 70vh)}.story-pinned .story-step{opacity:.38;transition:opacity var(--dur-slow) var(--ease-out)}.story-pinned .story-step[aria-current],.story-pinned .story-step:hover,.story-pinned .story-step:focus-visible{opacity:1}.story-stage{position:sticky;top:var(--story-top, 15vh)}.story-bar{height:2px;margin-bottom:16px;overflow:hidden;border-radius:var(--radius-full);background:var(--border)}.story-bar>span{display:block;height:100%;background:var(--brand);transform-origin:left center;transform:scaleX(var(--story-p, 0))}.story-scene{animation:story-in var(--dur-story) var(--ease-emphasized)}@keyframes story-in{0%{opacity:0;transform:translate3d(0,12px,0) scale(.985)}}.magnetic{transition:transform var(--dur-slow) var(--ease-out);will-change:transform}[data-motion-paused] *,[data-motion-paused] *:before,[data-motion-paused] *:after{animation-play-state:paused!important}@supports (animation-timeline: view()){html.motion-on .parallax{animation:parallax linear both;animation-timeline:view();animation-range:entry 0% exit 100%}@keyframes parallax{0%{transform:translate3d(0,calc(var(--depth, 1) * 32px),0)}to{transform:translate3d(0,calc(var(--depth, 1) * -32px),0)}}}
