@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(../media/caa77eaf0c6cae2c-s.0c05j22lu0e1h.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(../media/6260001f568fa40d-s.14r01_8b-ryu9.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(../media/2aa781f449db21e3-s.p.2lg3sxkcxwsl6.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Bricolage Grotesque Fallback;src:local(Arial);ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.0%;size-adjust:105.43%}.bricolage_grotesque_841ca89-module__9c0FFW__className{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.bricolage_grotesque_841ca89-module__9c0FFW__variable{--bricolage:"Bricolage Grotesque", "Bricolage Grotesque Fallback"}
@font-face{font-family:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d203b9464cfa0970-s.3urxfn-r2f0wy.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a69e508140118fbc-s.1sf_atgfbezm1.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fragment Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/a9a434ecf764164f-s.p.422uhnrlcv_7h.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fragment Mono Fallback;src:local(Arial);ascent-override:68.53%;descent-override:18.03%;line-gap-override:0.0%;size-adjust:138.63%}.fragment_mono_bd762bbc-module__ACRuyq__className{font-family:Fragment Mono,Fragment Mono Fallback;font-style:normal;font-weight:400}.fragment_mono_bd762bbc-module__ACRuyq__variable{--fragment:"Fragment Mono", "Fragment Mono Fallback"}
:root{--ground:#080b0a;--substrate:#0d1211;--surface:#111917;--surface-2:#16211e;--line:#213029;--line-strong:#2c4038;--text:#dee9e4;--text-dim:#9ab5aa;--text-faint:#7d938a;--accent:#2de2c4;--accent-dim:#17b39a;--accent-deep:#0f8f7b;--accent-ink:#032420;--glow:#2de2c447;--mint:#5fd6a3;--warn:#e9b84e;--danger:#f2748e;--font-sans:var(--bricolage), ui-sans-serif, system-ui, sans-serif;--font-mono:var(--fragment), ui-monospace, "SF Mono", Menlo, monospace;--t-body:1.0625rem;--t-small:.875rem;--t-tiny:.8125rem;--t-1:1.375rem;--t-2:1.75rem;--t-3:clamp(2rem, 1.4rem + 2.2vw, 3rem);--t-display:clamp(2.75rem, 1.6rem + 5.4vw, 6.25rem);--r-sm:7px;--r:10px;--r-lg:16px;--measure:62ch;--col:74rem;--act-gap:clamp(6rem, 12vw, 11rem);--ease-out:cubic-bezier(.22, 1, .36, 1);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--ground);color:var(--text);font-family:var(--font-sans);font-size:var(--t-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-weight:380;line-height:1.65;overflow-x:clip}::selection{background:var(--accent);color:var(--accent-ink)}h1,h2,h3{letter-spacing:-.022em;text-wrap:balance;font-weight:640;line-height:1.12}p{max-width:var(--measure);text-wrap:pretty}a{color:var(--text);-webkit-text-decoration-color:var(--accent-dim);text-decoration-color:var(--accent-dim);text-underline-offset:3px;transition:color .14s var(--ease-out), text-decoration-color .14s var(--ease-out);text-decoration-thickness:1px}a:hover{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}code,pre,kbd{font-family:var(--font-mono);font-size:.86em}p code,li code,td code{background:var(--surface);border:1px solid var(--line);white-space:nowrap;border-radius:5px;padding:.08em .34em}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.skip-link{z-index:100;background:var(--accent);color:var(--accent-ink);border-radius:var(--r-sm);padding:.6rem 1rem;font-weight:600;text-decoration:none;position:absolute;top:1rem;left:1rem;transform:translateY(-300%)}.skip-link:focus{transform:none}.btn{border-radius:var(--r);letter-spacing:.005em;transition:background .14s var(--ease-out), border-color .14s var(--ease-out), color .14s var(--ease-out), box-shadow .14s var(--ease-out);align-items:center;gap:.5rem;padding:.78rem 1.35rem;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent)}.btn-primary:hover{color:var(--accent-ink);box-shadow:0 0 32px -6px var(--glow);background:#4feed3;border-color:#4feed3}.btn-ghost{color:var(--text);border:1px solid var(--line-strong);background:0 0}.btn-ghost:hover{border-color:var(--accent-dim);color:var(--accent)}.sys{font-family:var(--font-mono);font-size:var(--t-tiny);color:var(--text-faint);letter-spacing:.02em}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.rise{animation:rise .64s var(--ease-out) both}.rise-2{animation-delay:90ms}.rise-3{animation-delay:.18s}.rise-4{animation-delay:.27s}@media (prefers-reduced-motion:reduce){.rise,.rise-2,.rise-3,.rise-4{animation:none}}
