:root{--paper:#f1f1ee;--surface:#fafaf9;--card:#e5e5e0;--ink:#0c0c0c;--ink-soft:#292927;--text-secondary:#62625d;--ghost:#62625d;--signal:#d8ff3a;--line:#0c0c0c29;--line-on-ink:#f1f1ee2e;--paper-on-ink:#f4f4f0;--ease-enter:cubic-bezier(.16, 1, .3, 1);--ease-state:cubic-bezier(.83, 0, .17, 1);--gutter:clamp(1.25rem, 4.5vw, 4.75rem);--section-space:clamp(5.75rem, 12vw, 10.5rem);--content-max:112rem;--header-height:5rem}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);scroll-behavior:auto;scroll-padding-top:calc(var(--header-height) + 1.5rem);-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--paper);min-width:20rem;color:var(--ink);font-family:var(--font-archivo), "Helvetica Neue", Arial, sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:clamp(1.0625rem,1rem + .18vw,1.125rem);line-height:1.62;overflow-x:clip}::selection{background:var(--signal);color:var(--ink)}a{color:inherit}button,input,select,textarea{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}img,svg{max-width:100%;display:block}h1,h2,h3,p,ul,ol,dl,dd{margin:0}ul,ol{padding:0}button{border:0}:focus-visible{outline:.1875rem solid var(--signal);outline-offset:.25rem}.mono{font-family:var(--font-fragment), "SFMono-Regular", Consolas, monospace;letter-spacing:.1em;text-transform:uppercase;font-size:.75rem;line-height:1.5}.eyebrow{font-family:var(--font-fragment), "SFMono-Regular", Consolas, monospace;letter-spacing:.11em;text-transform:uppercase;font-size:.75rem;line-height:1.5}.skip-link{z-index:1000;background:var(--signal);color:var(--ink);transition:transform .18s var(--ease-enter);padding:.75rem 1rem;font-weight:650;text-decoration:none;position:fixed;top:.75rem;left:.75rem;transform:translateY(-180%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.kinetic-line-mask{margin-bottom:-.04em;padding-bottom:.04em;display:block;overflow:clip}.kinetic-line{will-change:transform}[data-motion-ready=false] .kinetic-line{transform:none!important}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.kinetic-line{will-change:auto;transform:none!important}}
