:root{--ink: #111111;--ink-soft: #1d1d1d;--slate: #8c8c8c;--mid: #5e5e5e;--line: rgba(17, 17, 17, .12);--line-soft: rgba(17, 17, 17, .06);--paper: #F4F2EC;--paper-2: #EDEAE1;--paper-3: #E4E0D4;--bone: #FAF8F2;--pure: #FFFFFF;--accent: #C44A2A;--font-display: "Archivo", system-ui, -apple-system, "Helvetica Neue", sans-serif;--font-body: "Inter", system-ui, -apple-system, "Helvetica Neue", sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--max: 1280px;--max-narrow: 920px;--gutter: 32px}*{box-sizing:border-box}html,body{margin:0;padding:0}html{scroll-behavior:smooth;scrollbar-gutter:stable}body{font-family:var(--font-body);background:var(--paper);color:var(--ink-soft);font-size:17px;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--ink);color:var(--paper)}h1,h2,h3,h4{font-family:var(--font-display);color:var(--ink);font-weight:800;letter-spacing:-.025em;line-height:1.02;margin:0;text-wrap:balance}p{text-wrap:pretty;margin:0}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font-family:inherit}.wordmark{display:inline-flex;align-items:center;gap:0;color:var(--ink);line-height:1}.wordmark img.wordmark-img{display:block;height:1.2em;width:auto}.wordmark .tag{font-family:var(--font-mono);font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mid);margin-left:14px;padding-left:14px;border-left:1px solid var(--line);align-self:center;line-height:1.2}.wordmark.on-dark .tag{color:var(--slate);border-left-color:#f4f2ec2e}.container{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.narrow{max-width:var(--max-narrow);margin-inline:auto;padding:0 var(--gutter)}.eyebrow{font-family:var(--font-mono);font-weight:500;font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--mid)}.eyebrow:before{content:"// ";color:var(--slate)}.btn{display:inline-flex;align-items:center;gap:12px;padding:16px 24px;font-family:var(--font-body);font-weight:600;font-size:15px;letter-spacing:-.005em;border-radius:2px;border:1px solid transparent;cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease,transform .15s ease;white-space:nowrap}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--ink);color:var(--paper)}.btn-primary:hover{background:var(--ink-soft)}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{border-color:var(--ink)}.btn-inv{background:var(--paper);color:var(--ink)}.btn-inv:hover{background:var(--bone)}.btn-outline-inv{background:transparent;color:var(--paper);border-color:#f4f2ec4d}.btn-outline-inv:hover{border-color:var(--paper)}.btn .arrow{display:inline-block;width:14px;height:1px;background:currentColor;position:relative}.btn .arrow:after{content:"";position:absolute;right:0;top:0;width:8px;height:8px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);transform-origin:right top}.hairline{border-top:1px solid var(--line)}.hairline-b{border-bottom:1px solid var(--line)}.site-nav{position:sticky;top:0;z-index:40;background:color-mix(in oklab,var(--paper) 86%,transparent);backdrop-filter:saturate(150%) blur(12px);-webkit-backdrop-filter:saturate(150%) blur(12px);border-bottom:1px solid var(--line)}.site-nav-inner{display:flex;align-items:center;justify-content:space-between;padding:18px var(--gutter);max-width:var(--max);margin:0 auto}.nav-links{display:flex;gap:36px;align-items:center}.nav-links a:not(.btn){font-size:14px;font-weight:500;color:var(--mid);transition:color .15s ease;position:relative}.nav-links a:not(.btn):hover{color:var(--ink)}.nav-links a:not(.btn).active{color:var(--ink)}.nav-links a:not(.btn).active:after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:1px;background:var(--ink)}.nav-trigger{display:none;background:transparent;border:1px solid var(--line);border-radius:2px;padding:10px 12px;cursor:pointer;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink)}.nav-trigger[aria-expanded=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}@media(max-width:760px){.nav-links a:not(.btn){display:none}.nav-links .btn{display:none}.nav-trigger{display:inline-flex}}.mobile-menu{position:fixed;inset:0;background:var(--ink);color:var(--paper);z-index:60;padding:24px var(--gutter) 48px;display:none;flex-direction:column;gap:32px}.mobile-menu.open{display:flex}.mobile-menu .mobile-top{display:flex;justify-content:space-between;align-items:center}.mobile-menu .wordmark{color:var(--paper);font-size:24px}.mobile-menu .wordmark .m,.mobile-menu .wordmark .dot{color:var(--paper)}.mobile-menu .wordmark .v{color:var(--slate)}.mobile-menu .wordmark .tag{color:var(--slate);border-color:#f4f2ec33}.mobile-menu .mobile-links{display:flex;flex-direction:column;gap:0;margin-top:24px;border-top:1px solid rgba(244,242,236,.18)}.mobile-menu .mobile-links a{font-family:var(--font-display);font-weight:800;font-size:36px;letter-spacing:-.02em;color:var(--paper);padding:18px 0;border-bottom:1px solid rgba(244,242,236,.12)}.mobile-menu .mobile-foot{margin-top:auto;display:flex;flex-direction:column;gap:12px;font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--slate)}.mobile-menu .mobile-foot a{color:var(--paper)}.mobile-menu .close-btn{background:transparent;border:1px solid rgba(244,242,236,.3);color:var(--paper);border-radius:2px;padding:10px 12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;cursor:pointer}.display-xl{font-size:clamp(56px,9.5vw,156px);line-height:.92;letter-spacing:-.04em;font-weight:900}.display-l{font-size:clamp(44px,6.6vw,96px);line-height:.98;letter-spacing:-.035em;font-weight:800}.display-m{font-size:clamp(34px,4.4vw,60px);line-height:1.02;letter-spacing:-.025em;font-weight:800}.display-s{font-size:clamp(24px,2.4vw,34px);line-height:1.15;letter-spacing:-.015em;font-weight:700}.lede{font-size:clamp(18px,1.6vw,22px);line-height:1.5;color:var(--mid);max-width:60ch;text-wrap:pretty}.section{padding:120px 0}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:64px;align-items:end;margin-bottom:64px}.section-head .eyebrow{padding-top:6px}.section-head h2{font-size:clamp(34px,4.4vw,64px);line-height:1.02}@media(max-width:760px){.section{padding:80px 0}.section-head{grid-template-columns:1fr;gap:24px}}.site-foot{background:var(--ink);color:var(--paper);padding:96px 0 32px;position:relative;overflow:hidden}.site-foot a:hover{color:var(--pure)}.site-foot .col-label{font-family:var(--font-mono);font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--slate);margin-bottom:18px}.site-foot .footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:48px;padding-bottom:64px;border-bottom:1px solid rgba(244,242,236,.12)}.site-foot .footer-grid a{display:block;font-size:15px;color:#f4f2ecb3;padding:4px 0;transition:color .15s ease}.site-foot .footer-grid a:hover{color:var(--paper)}.site-foot .footer-mark{margin-top:80px;position:relative;display:flex;align-items:center}.site-foot .footer-mark img{width:100%;max-width:1100px;height:auto;display:block}.site-foot .copy-row{display:flex;justify-content:space-between;align-items:center;padding-top:24px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;color:var(--slate);text-transform:uppercase}@media(max-width:760px){.site-foot .footer-grid{grid-template-columns:1fr;gap:40px}.site-foot .copy-row{flex-direction:column;gap:16px;align-items:flex-start}}.mono{font-family:var(--font-mono)}.uppercase{text-transform:uppercase;letter-spacing:.16em}.text-mid{color:var(--mid)}.text-slate{color:var(--slate)}.text-ink{color:var(--ink)}.cookie-banner{position:fixed;bottom:0;inset-inline:0;z-index:70;background:var(--paper);border-top:1px solid var(--line)}.cookie-banner.hidden{display:none}.cookie-banner-inner{max-width:var(--max);margin:0 auto;padding:18px var(--gutter);display:flex;gap:24px;align-items:center;justify-content:space-between;flex-wrap:wrap}.cookie-banner p{font-size:14px;color:var(--mid);max-width:60ch}.cookie-banner .cookie-actions{display:flex;gap:12px;align-items:center}.cookie-banner button{font-family:var(--font-mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;background:transparent;border:1px solid var(--line);color:var(--ink);padding:10px 14px;cursor:pointer;border-radius:2px;transition:background .15s ease,color .15s ease,border-color .15s ease}.cookie-banner button.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.cookie-banner button.primary:hover{background:var(--ink-soft)}.cookie-banner button:hover{border-color:var(--ink)}.prose{color:var(--ink-soft);font-size:18px;line-height:1.65;max-width:68ch}.prose h2{font-family:var(--font-display);font-weight:800;font-size:clamp(28px,3vw,40px);line-height:1.1;letter-spacing:-.02em;margin-top:56px;margin-bottom:20px}.prose h3{font-family:var(--font-display);font-weight:700;font-size:clamp(22px,2.2vw,28px);line-height:1.2;letter-spacing:-.015em;margin-top:40px;margin-bottom:14px}.prose h4{font-family:var(--font-display);font-weight:700;font-size:20px;margin-top:32px;margin-bottom:10px}.prose p{margin-bottom:20px}.prose strong{color:var(--ink);font-weight:600}.prose ul,.prose ol{margin:0 0 24px;padding-left:24px}.prose ul{list-style:disc}.prose ol{list-style:decimal}.prose li{margin-bottom:10px}.prose a{color:var(--ink);border-bottom:1px solid var(--line);transition:border-color .15s ease}.prose a:hover{border-bottom-color:var(--ink)}.prose blockquote{border-left:2px solid var(--ink);padding-left:20px;margin:32px 0;color:var(--mid);font-style:normal}.prose code{font-family:var(--font-mono);font-size:.92em;background:var(--paper-2);padding:2px 6px;border-radius:2px}.prose img{margin:32px 0}
