@font-face{font-family:General Sans;src:url(../../../fonts/general-sans-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(../../../fonts/general-sans-500.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(../../../fonts/general-sans-600.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(../../../fonts/general-sans-700.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(../../../fonts/inter-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(../../../fonts/inter-500.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Inter;src:url(../../../fonts/inter-600.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(../../../fonts/geist-mono-400.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(../../../fonts/geist-mono-500.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--bg-base:#1a1815;--bg-surface:#221f1b;--bg-elevated:#2b2722;--bg-overlay:#141210b8;--border:#34302a;--border-hi:#443f37;--divider:#2a2621;--text-hi:#f5f1ea;--text-mid:#c4bdb1;--text-lo:#948c7e;--text-disabled:#6b645a;--accent:#d97a4f;--accent-hover:#e08a62;--accent-press:#c56b41;--accent-ink:#1a1815;--accent-glow:#d97a4f2e;--accent-faint:#d97a4f17;--success:#6fb98f;--warning:#e0b057;--danger:#d9685e;--info:#6fa8c7;--shadow-sm:0 1px 2px #00000073;--shadow-md:0 4px 16px #00000080;--shadow-lg:0 12px 40px #0009;--shadow-accent:0 0 0 3px var(--accent-glow);--font-display:"General Sans", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--fs-display:clamp(40px, 6vw, 64px);--fs-h1:32px;--fs-h2:24px;--fs-h3:19px;--fs-body-lg:17px;--fs-body:15px;--fs-sm:13px;--fs-label:12px;--fs-mono:13px;--fw-regular:400;--fw-medium:500;--fw-semi:600;--fw-bold:700;--lh-tight:1.1;--lh-snug:1.3;--lh-normal:1.55;--ls-tight:-.02em;--ls-normal:0;--ls-label:.08em;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--sp-16:64px;--sp-20:80px;--sp-24:96px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-full:999px;--sidebar-w:236px;--content-max:1200px;--gutter:var(--sp-8);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-fast:.12s;--dur-base:.18s;--dur-slow:.32s;--z-base:0;--z-raised:10;--z-sticky:40;--z-popover:60;--z-modal:100;--z-toast:200;--bg:var(--bg-base);--bg-1:var(--bg-surface);--bg-2:var(--bg-elevated);--line:var(--border);--line-strong:var(--border-hi);--fg:var(--text-hi);--fg-dim:var(--text-mid);--fg-faint:var(--text-lo);--border-strong:var(--border-hi);--surface:var(--bg-surface);--surface-hover:var(--bg-elevated);--brand:var(--accent);--brand-hi:var(--accent-hover);--brand-fg:var(--accent-ink);--brand-soft:var(--accent-faint);--grad:linear-gradient(160deg, var(--accent-faint) 0%, transparent 62%);--radius:var(--r-sm);--mono:var(--font-mono)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg-base);color:var(--text-hi);font-family:var(--font-body);font-size:var(--fs-body);line-height:var(--lh-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh}h1,h2,h3,h4,h5{font-family:var(--font-display);font-weight:var(--fw-semi);letter-spacing:var(--ls-tight);line-height:var(--lh-tight)}button{font-family:inherit}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.reveal{opacity:0;transition:opacity .6s var(--ease-out), transform .6s var(--ease-out);transition-delay:var(--reveal-delay,0s);transform:translateY(16px)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.reveal{opacity:1;transform:none}}
