@layer reset{*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;font-size:100%}body,h1,h2,h3,p,figure,blockquote,dl,dd{margin:0}img,picture,video,canvas,svg{max-inline-size:100%;display:block}button,input,textarea,select{font:inherit}}@layer tokens{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--color-surface:#f5f1e8;--color-surface-raised:#fffdf7;--color-surface-subtle:#e7e2d8;--color-surface-inverse:#121310;--color-text:#171815;--color-text-muted:#55574f;--color-text-inverse:#f7f4eb;--color-text-inverse-muted:#b8baaf;--color-border:#aaa99f;--color-border-inverse:#55574f;--color-accent:#c6ff3e;--color-accent-strong:#4c6d00;--color-accent-on-inverse:#c6ff3e;--color-accent-ink:#121310;--font-sans:var(--font-geist-sans), "Helvetica Neue", Arial, sans-serif;--font-mono:var(--font-geist-mono), "SFMono-Regular", Consolas, monospace;--type-meta:clamp(.72rem, .69rem + .1vw, .8rem);--type-caption:clamp(.8rem, .77rem + .12vw, .9rem);--type-small:clamp(.92rem, .88rem + .16vw, 1.03rem);--type-body:clamp(1rem, .95rem + .2vw, 1.14rem);--type-large:clamp(1.2rem, 1.03rem + .62vw, 1.65rem);--type-h3:clamp(1.55rem, 1.25rem + 1.2vw, 2.4rem);--type-h2:clamp(2rem, 1.4rem + 2.3vw, 3.8rem);--type-h1:clamp(2.7rem, 1.55rem + 4.3vw, 6rem);--type-hero:clamp(3.2rem, 1.55rem + 6.8vw, 9rem);--type-display:clamp(4rem, 1.6rem + 9vw, 12rem);--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:clamp(2.5rem, 4vw, 4.5rem);--space-10:clamp(4rem, 7vw, 8rem);--space-12:clamp(5.5rem, 10vw, 12rem);--space-section:clamp(5rem, 10vw, 11rem);--page-gutter:clamp(1rem, 3.2vw, 4.5rem);--grid-gap:clamp(1rem, 2vw, 2rem);--content-max:112rem;--reading-max:72ch;--target-size:2.75rem;--rule:.0625rem solid var(--color-border);--rule-inverse:.0625rem solid var(--color-border-inverse);--motion-fast:.18s;--motion-base:.32s;--motion-reveal:.62s;--motion-page:.46s;--ease-out:cubic-bezier(.22, 1, .36, 1)}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--color-surface:#151612;--color-surface-raised:#1d1e19;--color-surface-subtle:#292a24;--color-surface-inverse:#f2eee4;--color-text:#f4f1e8;--color-text-muted:#b8baaf;--color-text-inverse:#171815;--color-text-inverse-muted:#55574f;--color-border:#55574f;--color-border-inverse:#aaa99f;--color-accent-strong:#c6ff3e;--color-accent-on-inverse:#4c6d00;--color-accent-ink:#121310}}}@layer base{body{background:var(--color-surface);min-block-size:100vh;color:var(--color-text);font-family:var(--font-sans);font-size:var(--type-body);text-rendering:optimizelegibility;line-height:1.55;overflow-x:hidden}a{color:inherit;text-decoration-thickness:.08em}:focus-visible{outline-offset:.22rem;outline:.2rem solid}::selection{background:var(--color-accent);color:var(--color-accent-ink)}.page-transition{animation:page-enter var(--motion-page) var(--ease-out) both}.motion-enabled [data-motion][data-motion-state=pending]{opacity:0;transform:translateY(.9rem)}.motion-enabled [data-motion][data-motion-state=visible]{animation:content-reveal var(--motion-reveal) var(--ease-out) both;animation-delay:calc(var(--motion-order,0) * 55ms)}.motion-enabled [data-motion=project][data-motion-state=pending],.motion-enabled [data-motion=media][data-motion-state=pending]{transform:translateY(1.25rem)scale(.995)}}@layer utilities{.skip-link{z-index:100;background:var(--color-accent);color:var(--color-accent-ink);padding:.75em 1em;font-weight:700;position:fixed;inset-block-start:var(--space-3);inset-inline-start:var(--space-3);transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;block-size:.0625rem;inline-size:.0625rem;position:absolute;overflow:hidden}}@keyframes page-enter{0%{opacity:0;transform:translateY(.4rem)}to{opacity:1;transform:translate(0,0)}}@keyframes content-reveal{0%{opacity:0;transform:translateY(.9rem)}to{opacity:1;transform:translate(0,0)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.motion-enabled [data-motion]{opacity:1!important;transform:none!important}}@media print{:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-surface:#fff;--color-text:#000;--color-text-muted:#333}header,footer,.skip-link{display:none!important}body{font-size:10pt}a{text-decoration:none}}
