:root{--void:#05070d;--deep:#080c15;--panel:#0d121e;--line:#1a2233;--line-bright:#26314a;--ink:#eef2f8;--ink-dim:#98a3b8;--ink-faint:#5c6883;--accent:#5ea9ff;--accent-deep:#2f6fd0;--accent-glow:#5ea9ff8c;--font-display:"Space Grotesk", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--gutter:clamp(1.25rem, 5vw, 5.5rem);--measure:68rem;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html,body{background:var(--void);color:var(--ink);font-family:var(--font-display);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0;overflow-x:hidden}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(120% 55% at 50% 62%,#5ea9ff24 0%,#5ea9ff0a 38%,#0000 70%),linear-gradient(#04060b 0%,#05070d 45%,#070b14 72%,#05070d 100%);position:fixed;inset:0}#root{isolation:isolate;position:relative}::selection{background:var(--accent);color:var(--void)}a{color:inherit;text-decoration:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.skip{z-index:100;background:var(--accent);color:var(--void);font-family:var(--font-mono);padding:.75rem 1.25rem;font-size:.8rem;position:absolute;top:0;left:-9999px}.skip:focus{left:var(--gutter);top:.75rem}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.scene{z-index:0;pointer-events:none;position:fixed;inset:0}.scene canvas{width:100%;height:100%;display:block}.page{z-index:1;position:relative}.shell{width:100%;max-width:var(--measure);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(4.5rem,11vh,7.5rem);position:relative}.section__label{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:.85rem;margin:0 0 clamp(2.5rem,6vw,4rem);font-size:.72rem;font-weight:400;display:flex}.section__label:after{content:"";background:linear-gradient(90deg, var(--line-bright), transparent);flex:1;height:1px}.section__label b{color:var(--accent);font-weight:500}.nav{z-index:10;padding:clamp(1rem, 2.5vw, 1.75rem) var(--gutter);font-family:var(--font-mono);letter-spacing:.1em;mix-blend-mode:normal;transition:background .4s var(--ease);justify-content:space-between;align-items:center;gap:1rem;font-size:.75rem;display:flex;position:fixed;top:0;left:0;right:0}.nav[data-stuck=true]{background:linear-gradient(#04060bf0 0%,#04060bb8 70%,#0000 100%);border-bottom:1px solid #0000}.nav__mark{font:inherit;letter-spacing:.16em;color:var(--ink);cursor:default;transition:opacity .35s var(--ease);background:0 0;border:0;align-items:center;gap:.55rem;padding:.3rem 0;font-weight:500;display:inline-flex;position:relative}.nav__mark[data-active=false]{opacity:.55;pointer-events:none}.nav__mark[data-active=true]{cursor:pointer;opacity:1}.nav__initials,.nav__top{transition:opacity .3s var(--ease), transform .3s var(--ease)}.nav__top{opacity:0;color:var(--accent);white-space:nowrap;align-items:center;gap:.35rem;display:inline-flex;position:absolute;left:1.15rem;transform:translateY(4px)}.toast[data-visible=true]{opacity:1;visibility:visible;transform:translate(-50%)}.nav__top svg{width:10px;height:10px}.nav__mark[data-active=true]:hover .nav__initials,.nav__mark[data-active=true]:focus-visible .nav__initials{opacity:0;transform:translateY(-4px)}.nav__mark[data-active=true]:hover .nav__top,.nav__mark[data-active=true]:focus-visible .nav__top{opacity:1;transform:translateY(0)}.nav__dot{background:var(--accent);width:6px;height:6px;box-shadow:0 0 10px var(--accent-glow);border-radius:50%}.nav__links{gap:clamp(1rem,3vw,2.25rem);display:flex}.nav__link{color:var(--ink-dim);transition:color .25s var(--ease);padding-block:.2rem;position:relative}.nav__link:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:1px;transition:transform .35s var(--ease);position:absolute;bottom:0;left:0;transform:scaleX(0)}.nav__link:hover,.nav__link[aria-current=true]{color:var(--ink)}.nav__link:hover:after,.nav__link[aria-current=true]:after{transform:scaleX(1)}.act{position:relative}.act__pin{flex-direction:column;justify-content:center;height:100svh;display:flex;position:sticky;top:0;overflow:hidden}.act__pin:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(130% 90% at 22% 78%,#04060be0 0%,#04060b8c 34%,#0000 68%);position:absolute;inset:0}.act__pin>*{width:100%;max-width:var(--measure);padding-inline:var(--gutter);margin-inline:auto}.launch{justify-content:flex-end;padding-bottom:clamp(5rem,14vh,9rem)}.reveal{opacity:1;transition:opacity .7s var(--ease), transform .7s var(--ease);transform:none}.act[data-revealed=false] .reveal{opacity:0;transform:translateY(26px)}.act[data-revealed=true] .reveal{transition-delay:calc(var(--i,0) * 90ms)}@media (prefers-reduced-motion:reduce){.act[data-revealed=false] .reveal{opacity:1;transform:none}}.ascent__line{letter-spacing:-.03em;max-width:24ch;color:var(--ink);will-change:transform, opacity;margin:0;font-size:clamp(1.4rem,4.4vw,2.9rem);font-weight:400;line-height:1.16}.groups{flex-direction:column;gap:clamp(1.5rem,4vh,2.6rem);display:flex}.group{border-top:1px solid var(--line);will-change:transform, opacity;grid-template-columns:minmax(7rem,13rem) 1fr;align-items:baseline;gap:clamp(.5rem,2vw,2rem);padding-top:clamp(.9rem,2vh,1.3rem);display:grid}.group__label{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);font-size:.7rem}.group__items{flex-wrap:wrap;gap:.4rem clamp(1rem,3vw,2.2rem);margin:0;padding:0;list-style:none;display:flex}.group__items li{letter-spacing:-.02em;color:var(--ink);font-size:clamp(1rem,2.6vw,1.5rem);font-weight:500}@media (width<=620px){.group{grid-template-columns:1fr;gap:.5rem}}.hero__eyebrow{font-family:var(--font-mono);letter-spacing:.24em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:.7rem;margin:0 0 clamp(1rem,2.5vw,1.6rem);font-size:.74rem;display:flex}.hero__title{will-change:transform, opacity;letter-spacing:-.045em;color:var(--ink);margin:0;font-size:clamp(3.1rem,13.5vw,9.5rem);font-weight:500;line-height:.88}.hero__title span{display:block}.hero__meta{font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-dim);flex-wrap:wrap;align-items:baseline;gap:.6rem 1.4rem;margin-top:clamp(1.4rem,3.5vw,2.2rem);font-size:clamp(.78rem,1.6vw,.92rem);display:flex}.hero__meta i{color:var(--ink-faint);font-style:normal}.hero__hint{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;align-items:center;gap:.6rem;font-size:.66rem;display:flex;position:absolute;bottom:clamp(1.25rem,3vh,2rem);left:50%;transform:translate(-50%)}.hero__hint>span:first-child{background:var(--line-bright);width:26px;height:1px;position:relative;overflow:hidden}.hint-coarse{display:none}@media (hover:none) and (pointer:coarse){.hint-fine{display:none}.hint-coarse{display:inline}}.hero__hint>span:first-child:after{content:"";background:var(--accent);transform-origin:0;animation:sweep 2.6s var(--ease) infinite;position:absolute;inset:0}@keyframes sweep{0%{transform-origin:0;transform:scaleX(0)}45%{transform-origin:0;transform:scaleX(1)}55%{transform-origin:100%;transform:scaleX(1)}to{transform-origin:100%;transform:scaleX(0)}}.copy{will-change:transform, opacity;color:var(--ink);font-family:var(--font-display);letter-spacing:-.035em;cursor:pointer;text-align:left;word-break:break-word;background:0 0;border:0;align-items:center;gap:clamp(.75rem,2vw,1.25rem);margin-top:clamp(.5rem,2vh,1.5rem);padding:0;font-size:clamp(1.35rem,6.2vw,3.6rem);font-weight:500;display:inline-flex;position:relative}.copy__text{background-image:linear-gradient(var(--accent), var(--accent));transition:background-size .45s var(--ease);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;position:relative}.copy:hover .copy__text,.copy:focus-visible .copy__text{background-size:100% 1px}.copy__badge{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);border:1px solid var(--line-bright);transition:color .3s var(--ease), border-color .3s var(--ease);border-radius:100px;flex:none;padding:.32rem .7rem;font-size:clamp(.6rem,1.4vw,.7rem)}.copy[data-copied=true] .copy__badge{color:var(--accent);border-color:var(--accent)}.links{font-family:var(--font-mono);letter-spacing:.08em;flex-wrap:wrap;gap:.5rem 2rem;margin-top:clamp(1.75rem,5vh,3rem);font-size:.82rem;display:flex}.links a{color:var(--ink-dim);transition:color .3s var(--ease);align-items:center;gap:.5rem;padding-block:.35rem;display:inline-flex;position:relative}.links a:after{content:"";transform-origin:100%;width:100%;height:1px;transition:transform .35s var(--ease);background:currentColor;position:absolute;bottom:.1rem;left:0;transform:scaleX(0)}.links a:hover{color:var(--accent)}.links a:hover:after{transform-origin:0;transform:scaleX(1)}.links svg{flex:none;width:15px;height:15px}.footer{padding:2rem var(--gutter) clamp(2rem, 5vh, 3rem);max-width:var(--measure);border-top:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem 1.5rem;margin-inline:auto;font-size:.7rem;display:flex}.footer a{color:var(--ink-faint);transition:color .3s var(--ease)}.footer a:hover{color:var(--accent)}.toast{opacity:0;visibility:hidden;transition:opacity .4s var(--ease), transform .4s var(--ease), visibility .4s;z-index:20;border:1px solid var(--accent);font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);white-space:nowrap;background:#05070df2;align-items:center;gap:.6rem;padding:.7rem 1.15rem;font-size:.72rem;display:flex;position:fixed;bottom:clamp(1.5rem,5vh,3rem);left:50%;transform:translate(-50%);box-shadow:0 0 40px #5ea9ff40}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.hero__hint>span:first-child:after{transform:scaleX(1)}}
