:root{color-scheme:dark;--ink:#121319;--surface:#171922;--surface-2:#1d202a;--cream:#ece7db;--cream-dim:#a8a49b;--cream-faint:#8a8780;--hairline:#ece7db14;--hairline-hover:#ece7db29;--accent:#2f7f5e;--accent-fill:#2e7453;--accent-bright:#46a57c;--accent-dim:#7ba894;--accent-field-a:#121e19;--accent-field-b:#121319;--bg:var(--ink);--fg:var(--cream);--fg-2:var(--cream-dim);--fg-3:var(--cream-faint);--link-rule:var(--accent-dim);--link-rule-hover:var(--accent-bright);--focus-ring:var(--cream);--control-edge:var(--cream-faint);--control-edge-hover:var(--fg-2);--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-body:"Geist", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--text-display-1:clamp(2.6rem, 6vw, 4.4rem);--text-display-2:clamp(1.9rem, 3.4vw, 2.6rem);--text-heading:1.375rem;--text-lead:1.3125rem;--text-body:1.125rem;--text-ui:1rem;--text-small:.9375rem;--text-mono:.8125rem;--text-label:.72rem;--lh-display-1:1.05;--lh-display-2:1.12;--lh-heading:1.3;--lh-lead:1.5;--lh-body:1.6;--lh-ui:1.25;--lh-small:1.55;--lh-mono:1.5;--lh-label:1.4;--wt-display-1:460;--wt-display-2:480;--wt-heading:500;--wt-body:400;--wt-ui:500;--wt-label:500;--track-display-1:-.02em;--track-display-2:-.015em;--track-heading:-.005em;--track-body:.005em;--track-label:.12em;--opsz-display:144;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--sp-10:128px;--sp-11:160px;--section-pad:var(--sp-11);--gutter:var(--sp-7);--container:1120px;--measure:68ch;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--dur-fast:.15s;--dur:.3s;--ease:cubic-bezier(.2, .6, .2, 1)}@media (width<=1023px){:root{--section-pad:var(--sp-9)}}@media (width<=767px){:root{--section-pad:72px;--gutter:var(--sp-5)}}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur:0s}}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/fraunces-variable.woff2)format("woff2")}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-sans-variable.woff2)format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/geist-mono-variable.woff2)format("woff2")}*,:before,:after{box-sizing:border-box}html{background:var(--bg);text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--bg);min-height:100dvh;color:var(--fg);font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-body);font-weight:var(--wt-body);letter-spacing:var(--track-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-feature-settings:"kern" 1, "liga" 1;margin:0;overflow-x:clip}h1,h2,h3,h4,p,ul,ol,figure,blockquote,dl,dd{margin:0}ul,ol{padding:0;list-style:none}img,svg,video{max-width:100%;height:auto;display:block}a{color:inherit;text-underline-offset:4px;text-decoration-thickness:1px}button,input,textarea,select{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}hr{border:0;border-top:1px solid var(--hairline);margin:0}table{border-collapse:collapse;width:100%}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:2px}::selection{background:var(--accent-fill);color:var(--cream)}.skip{top:-100%;left:var(--sp-4);z-index:100;padding:var(--sp-3) var(--sp-4);background:var(--surface-2);border:1px solid var(--cream-faint);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-mono);position:absolute}.skip:focus-visible{top:var(--sp-4)}.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}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.t-display-1,h1{font-family:var(--font-display);font-size:var(--text-display-1);line-height:var(--lh-display-1);font-weight:var(--wt-display-1);letter-spacing:var(--track-display-1);font-variation-settings:"opsz" var(--opsz-display);text-wrap:balance}.t-display-2,h2{font-family:var(--font-display);font-size:var(--text-display-2);line-height:var(--lh-display-2);font-weight:var(--wt-display-2);letter-spacing:var(--track-display-2);font-variation-settings:"opsz" var(--opsz-display);text-wrap:balance}.t-heading,h3{font-family:var(--font-body);font-size:var(--text-heading);line-height:var(--lh-heading);font-weight:var(--wt-heading);letter-spacing:var(--track-heading);text-wrap:balance}.t-lead{font-family:var(--font-body);font-size:var(--text-lead);line-height:var(--lh-lead);font-weight:var(--wt-body);letter-spacing:var(--track-body);text-wrap:pretty}.t-body,p{font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-body);font-weight:var(--wt-body);letter-spacing:var(--track-body);text-wrap:pretty}.t-ui{font-family:var(--font-body);font-size:var(--text-ui);line-height:var(--lh-ui);font-weight:var(--wt-ui);letter-spacing:normal}.t-small{font-family:var(--font-body);font-size:var(--text-small);line-height:var(--lh-small);font-weight:var(--wt-body);letter-spacing:var(--track-body)}.t-mono{font-family:var(--font-mono);font-size:var(--text-mono);line-height:var(--lh-mono);font-weight:var(--wt-body);letter-spacing:normal}.t-label{font-family:var(--font-mono);font-size:var(--text-label);line-height:var(--lh-label);font-weight:var(--wt-label);letter-spacing:var(--track-label);text-transform:uppercase}.fg-2{color:var(--fg-2)}.fg-3{color:var(--fg-3)}.measure{max-width:var(--measure)}.prose a,.link{color:var(--fg);text-decoration:underline;text-decoration-color:var(--link-rule);text-underline-offset:4px;transition:text-decoration-color var(--dur-fast) var(--ease);text-decoration-thickness:1px}@media (hover:hover){.prose a:hover,.link:hover{text-decoration-color:var(--link-rule-hover);text-decoration-thickness:2px}}.prose>*+*{margin-top:var(--sp-5)}:root{--header-h:var(--sp-9)}@media (width<=767px){:root{--header-h:calc(var(--sp-9) + var(--sp-7))}}@media (width<=359px){:root{--header-h:calc(var(--sp-9) + var(--sp-8))}}.container{width:min(100% - 2 * var(--gutter), var(--container));margin-inline:auto}.section{padding-block:var(--section-pad)}.stack{gap:var(--stack-gap,var(--sp-5));flex-direction:column;display:flex}.hairline{border-top:1px solid var(--hairline)}.table-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}.btn{justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--sp-7);padding:var(--sp-3) var(--sp-5);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--text-ui);line-height:var(--lh-ui);font-weight:var(--wt-ui);letter-spacing:normal;white-space:nowrap;transition:background-color var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), box-shadow var(--dur-fast) var(--ease);border:1px solid #0000;text-decoration:none;display:inline-flex}.btn--primary{background:var(--accent-fill);color:var(--cream)}.btn--secondary{background:var(--surface-2);border-color:var(--control-edge);color:var(--cream)}.btn__arrow{width:1em;height:1em;transition:transform var(--dur-fast) var(--ease);flex:none}@media (hover:hover){.btn--primary:hover{box-shadow:inset 0 0 0 1px var(--accent-bright)}.btn--secondary:hover{border-color:var(--control-edge-hover)}.btn:hover .btn__arrow{transform:translateX(var(--sp-1))}}.btn:active{transition-duration:0s}@media (width<=359px){.btn{white-space:normal;text-align:center}}.btn--primary:active{background:var(--accent)}.eyebrow{align-items:center;gap:var(--sp-3);color:var(--accent-dim);display:inline-flex}.eyebrow__dot{background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px}.eyebrow--muted{color:var(--fg-2)}.card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-md);padding:var(--sp-6)}.card--nested{background:var(--surface-2)}@media (width<=767px){.card{padding:var(--sp-5)}}html.js .reveal{opacity:0;transform:translateY(var(--sp-3));transition:opacity var(--dur) var(--ease), transform var(--dur) var(--ease)}html.js .reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){html.js .reveal{opacity:1;transform:none}}
