:root{--scroll-progress:0;--motion-y:0px}
.scroll-progress{position:fixed;inset:0 0 auto;z-index:90;height:2px;background:#1118270d;pointer-events:none;opacity:0;transition:opacity .35s}.scroll-progress i{display:block;width:100%;height:100%;transform:scaleX(var(--scroll-progress));transform-origin:left;background:linear-gradient(90deg,#39f7e2,#6678ff 55%,#ff4fce);box-shadow:0 0 14px #39f7e2}.scroll-progress.is-visible{opacity:1}
.section-rail{position:fixed;z-index:45;right:17px;top:50%;display:flex;flex-direction:column;gap:13px;transform:translateY(-50%);opacity:0;pointer-events:none;transition:opacity .35s}.section-rail.is-visible{opacity:1;pointer-events:auto}.section-rail a{position:relative;display:flex;align-items:center;justify-content:flex-end;gap:9px;min-width:58px;color:#73808b}.section-rail a i{width:5px;height:5px;border-radius:50%;background:#9aa4a8;box-shadow:0 0 0 0 #39f7e200;transition:.25s}.section-rail a span{position:absolute;right:14px;padding:4px 7px;border-radius:4px;background:#101828;color:#fff;font:700 7px ui-monospace,SFMono-Regular,monospace;letter-spacing:.12em;opacity:0;transform:translateX(7px);transition:.2s}.section-rail a:hover span,.section-rail a.active span{opacity:1;transform:none}.section-rail a.active i{height:22px;border-radius:5px;background:#168e84;box-shadow:0 0 14px #39f7e277}
.scroll-cue{position:absolute;left:clamp(24px,7vw,108px);bottom:24px;display:flex;align-items:center;gap:12px;color:#7b858f;font:700 8px ui-monospace,SFMono-Regular,monospace;letter-spacing:.15em}.scroll-cue i{position:relative;width:1px;height:34px;overflow:hidden;background:#9ba6a64a}.scroll-cue i::after{content:"";position:absolute;inset:-100% 0 auto;height:70%;background:#168e84;animation:scrollCue 1.8s ease-in-out infinite}
main{overflow:clip}.hero{position:relative;--hero-copy-y:0px;--hero-lab-y:0px;--hero-tilt:0deg;--hero-grid-x:0px;--hero-grid-y:0px}.hero-copy,.hero-lab{will-change:transform}.particle-window .grid-lines{transform:translate3d(var(--hero-grid-x),var(--hero-grid-y),0);transition:transform .05s linear}
.motion-reveal{--reveal-delay:0ms;opacity:0;transform:translate3d(0,58px,0);filter:blur(9px);transition:opacity .85s cubic-bezier(.2,.8,.2,1) var(--reveal-delay),transform .85s cubic-bezier(.2,.8,.2,1) var(--reveal-delay),filter .85s ease var(--reveal-delay)}.motion-reveal.is-revealed{opacity:1;transform:translate3d(0,0,0);filter:blur(0)}
.section-heading.motion-reveal,.lab-intro.motion-reveal,.practice-copy.motion-reveal{transform:translate3d(-45px,46px,0)}.section-heading.motion-reveal.is-revealed,.lab-intro.motion-reveal.is-revealed,.practice-copy.motion-reveal.is-revealed{transform:none}
.motion-card{--card-shift:0px;will-change:transform}.motion-card.is-revealed{transform:translate3d(0,var(--card-shift),0)}.hero .hero-copy.motion-reveal.is-revealed{transform:translate3d(0,var(--hero-copy-y),0)}.hero .hero-lab.motion-reveal.is-revealed{transform:translate3d(0,var(--hero-lab-y),0) rotate(var(--hero-tilt));transform-origin:50% 30%}
.explore-section,.open-tools{position:relative;isolation:isolate;overflow:hidden}.explore-section::before,.open-tools::before{content:"";position:absolute;z-index:-1;width:44vw;height:44vw;border-radius:50%;background:radial-gradient(circle,#4ce4d313,transparent 66%);left:calc(var(--glow-x,55%));top:calc(var(--glow-y,45%));transform:translate(-50%,-50%);pointer-events:none;transition:left .15s linear,top .15s linear}.open-tools::before{background:radial-gradient(circle,#765dff12,transparent 66%)}
.section[data-motion-section]{--section-progress:0;--kicker-shift:0px;--heading-shift:0px}.section[data-motion-section] .kicker{transform:translateX(var(--kicker-shift))}.section[data-motion-section] .section-heading h2,.section[data-motion-section] .lab-intro h2,.section[data-motion-section] .practice-copy h2{transform:translateY(var(--heading-shift))}
.site-header{transition:height .3s,box-shadow .3s,background .3s}.site-header.is-condensed{height:62px;background:#f4f3edf4;box-shadow:0 12px 40px #1018280d}.site-header nav a.active{color:#11877c}.site-header nav a.active::after{content:"";display:block;height:2px;margin-top:6px;background:#168e84}
@keyframes scrollCue{0%{transform:translateY(0)}100%{transform:translateY(285%)}}
@media(max-width:1050px){.section-rail{display:none}.scroll-cue{display:none}.hero-copy,.hero-lab{transform:none}.motion-reveal{transform:translate3d(0,34px,0);filter:blur(5px)}}
@media(prefers-reduced-motion:reduce){.scroll-cue i::after{animation:none}.motion-reveal,.motion-reveal.is-revealed,.hero-copy,.hero-lab,.motion-card,.section[data-motion-section] .kicker,.section[data-motion-section] .section-heading h2,.section[data-motion-section] .lab-intro h2,.section[data-motion-section] .practice-copy h2{transform:none!important;filter:none!important;opacity:1!important;transition:none!important}}
