@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(/_next/static/media/4998552beda7625d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(/_next/static/media/6da5edf2a6f63a33-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:75% 100%;font-display:swap;src:url(/_next/static/media/5a4ccc80a3599b8f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Bricolage Grotesque Fallback;src:local("Arial");ascent-override:88.21%;descent-override:25.61%;line-gap-override:0.00%;size-adjust:105.43%}.__className_e69924{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.__variable_e69924{--font-bricolage:"Bricolage Grotesque","Bricolage Grotesque Fallback"}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_987bfa{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.__variable_987bfa{--font-plex:"IBM Plex Sans","IBM Plex Sans Fallback"}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/58f386aa6b1a2a92-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/011e180705008d6f-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/7ba5fb2a8c88521c-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/92eeb95d069020cc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_e0872e{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-weight:400;font-style:normal}.__variable_e0872e{--font-plex-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}.SiteFooter_footer__aUaTs{background:var(--ink);color:var(--paper);padding-top:var(--s-7)}.SiteFooter_grid__axmsz{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-column-gap:var(--s-3);column-gap:var(--s-3);grid-row-gap:var(--s-5);row-gap:var(--s-5);padding-bottom:var(--s-6)}.SiteFooter_brand__HyIqL{grid-column:1/span 4}.SiteFooter_col__gfZ3Y{grid-column:span 3;display:grid;align-content:start}.SiteFooter_col__gfZ3Y:first-of-type{grid-column:6/span 2}.SiteFooter_mark__UC7rl{font-family:var(--font-display);font-weight:650;font-size:var(--t-2xl);letter-spacing:-.035em;line-height:.9;font-variation-settings:"wdth" 84}.SiteFooter_desc__LnnVV{margin-top:var(--s-3);color:var(--grey-on-ink);max-width:40ch;font-size:var(--t-sm)}.SiteFooter_h__DYUyq{font-family:var(--font-body);font-size:var(--t-xs);font-weight:600;color:var(--grey-on-ink);letter-spacing:0;font-variation-settings:normal;line-height:1.4;margin-bottom:var(--s-2)}.SiteFooter_col__gfZ3Y ul{list-style:none;display:grid;grid-gap:.6rem;gap:.6rem}.SiteFooter_col__gfZ3Y a{text-decoration:none;word-break:break-word}.SiteFooter_col__gfZ3Y a:hover{text-decoration:underline}.SiteFooter_base__ilyNJ{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-1) var(--s-3);padding-block:var(--s-3);font-size:var(--t-xs);color:var(--grey-on-ink)}.SiteFooter_base__ilyNJ:before{content:"";position:absolute;top:0;left:var(--gutter);right:var(--gutter);height:1px;background:var(--rule-ink)}@media (max-width:1080px){.SiteFooter_brand__HyIqL{grid-column:1/-1}.SiteFooter_col__gfZ3Y,.SiteFooter_col__gfZ3Y:first-of-type{grid-column:span 4}}@media (max-width:640px){.SiteFooter_col__gfZ3Y,.SiteFooter_col__gfZ3Y:first-of-type{grid-column:1/-1}}:root{--paper:#efede6;--paper-2:#e6e3d9;--ink:#1d1e1b;--ink-2:#2a2b27;--grey:#66655e;--grey-on-ink:#a3a299;--rule:#cfccc2;--rule-ink:#3c3d38;--lime:#cdeb2f;--lime-deep:#b6d41c;--font-display:var(--font-bricolage),"Arial Narrow",system-ui,sans-serif;--font-body:var(--font-plex),"Helvetica Neue",Arial,sans-serif;--font-mono:var(--font-plex-mono),ui-monospace,Menlo,monospace;--t-xs:0.8125rem;--t-sm:0.9375rem;--t-base:1.0625rem;--t-md:1.3125rem;--t-lg:1.75rem;--t-xl:clamp(2.25rem,1.4rem + 3.2vw,3.75rem);--t-2xl:clamp(2.75rem,1.2rem + 6vw,6.5rem);--t-3xl:clamp(3.25rem,0.8rem + 9.4vw,10rem);--s-1:0.5rem;--s-2:1rem;--s-3:1.5rem;--s-4:2rem;--s-5:3rem;--s-6:4rem;--s-7:6rem;--s-8:8rem;--gutter:clamp(1.25rem,0.6rem + 2.6vw,3rem);--max:1440px;--header-h:64px;--ease:cubic-bezier(0.2,0.7,0.1,1)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 1rem)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--t-base);line-height:1.6;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;overflow-x:hidden}img,svg{display:block;max-width:100%}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}button,input,select,textarea{font:inherit;color:inherit}h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:600;line-height:.98;letter-spacing:-.025em;font-variation-settings:"wdth" 85}ol,p,ul{margin:0}ol,ul{padding:0}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 5px var(--lime);border-radius:2px}.on-ink :focus-visible{outline-color:var(--lime);box-shadow:none}::selection{background:var(--lime);color:var(--ink)}.skip-link{position:absolute;left:var(--gutter);top:-100px;z-index:100;background:var(--lime);color:var(--ink);padding:.75rem 1rem;font-weight:600}.skip-link:focus{top:.75rem}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}.grid12{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-column-gap:var(--s-3);column-gap:var(--s-3)}.section{padding-block:clamp(4.5rem,3rem + 6vw,9rem);position:relative}.section.on-ink{background:var(--ink);color:var(--paper)}.sectionHead{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-column-gap:var(--s-3);column-gap:var(--s-3);grid-row-gap:var(--s-2);row-gap:var(--s-2);margin-bottom:clamp(2.5rem,1.5rem + 4vw,5rem);align-items:end}.sectionHead .label{grid-column:1/span 3;font-size:var(--t-sm);color:var(--grey);padding-bottom:.6em;border-top:1px solid;padding-top:.6rem;align-self:start}.on-ink .sectionHead .label{color:var(--grey-on-ink)}.sectionHead h2{grid-column:4/-1;font-size:var(--t-2xl)}.sectionHead .intro{grid-column:4/span 6;font-size:var(--t-md);line-height:1.45;color:var(--grey);max-width:38ch}.on-ink .sectionHead .intro{color:var(--grey-on-ink)}@media (max-width:820px){.sectionHead .intro,.sectionHead .label,.sectionHead h2{grid-column:1/-1}}.btn{display:inline-flex;align-items:center;gap:.6rem;min-height:48px;padding:.8rem 1.35rem;font-weight:600;font-size:var(--t-sm);text-decoration:none;border:1.5px solid var(--ink);border-radius:0;cursor:pointer;transition:background-color .16s var(--ease),color .16s var(--ease)}.btn-primary{background:var(--lime);color:var(--ink)}.btn-primary:hover{background:var(--ink);color:var(--lime)}.btn-ghost{background:transparent;color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper)}.on-ink .btn{border-color:var(--paper)}.on-ink .btn-ghost{color:var(--paper)}.on-ink .btn-ghost:hover{background:var(--paper);color:var(--ink)}.on-ink .btn-primary{border-color:var(--lime)}.on-ink .btn-primary:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}.anno{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.02em;color:var(--grey)}.textlink{font-weight:600;text-decoration:underline;text-decoration-thickness:1.5px}.techline{font-size:var(--t-sm);color:var(--grey);line-height:1.5}.on-ink .techline{color:var(--grey-on-ink)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}.SiteHeader_header__SRb_V{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 92%,transparent);backdrop-filter:saturate(1.2) blur(8px);-webkit-backdrop-filter:saturate(1.2) blur(8px);border-bottom:1px solid transparent;transition:border-color .2s var(--ease)}.SiteHeader_scrolled__M1TXI{border-bottom-color:var(--rule)}.SiteHeader_inner__d66lA{height:var(--header-h);display:flex;align-items:center;gap:var(--s-3)}.SiteHeader_wordmark__BWBko{display:inline-flex;align-items:center;gap:.7rem;text-decoration:none;margin-right:auto}.SiteHeader_mono__4P9UC{display:grid;place-items:center;width:34px;height:34px;background:var(--ink);color:var(--lime);font-family:var(--font-display);font-weight:700;font-size:.95rem;letter-spacing:-.04em}.SiteHeader_name__i1BIb{font-family:var(--font-display);font-weight:600;font-size:1.125rem;letter-spacing:-.02em;font-variation-settings:"wdth" 90}.SiteHeader_nav__5IxZo ul{display:flex;gap:clamp(1rem,.2rem + 1.6vw,2rem);list-style:none}.SiteHeader_nav__5IxZo a{position:relative;font-size:var(--t-sm);text-decoration:none;padding-block:.5rem;color:var(--grey);transition:color .15s}.SiteHeader_nav__5IxZo a.SiteHeader_active__l07ft,.SiteHeader_nav__5IxZo a:hover{color:var(--ink)}.SiteHeader_nav__5IxZo a:after{content:"";position:absolute;left:0;right:0;bottom:.15rem;height:3px;background:var(--lime);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}.SiteHeader_nav__5IxZo a.SiteHeader_active__l07ft:after{transform:scaleX(1)}.SiteHeader_actions__7yHiB{display:flex;align-items:center;gap:var(--s-1)}.SiteHeader_cta__bssxd{min-height:40px;padding:.5rem 1rem}.SiteHeader_menuBtn__2DR6Y{display:none;min-height:40px;min-width:64px;padding:.5rem .9rem;background:transparent;border:1.5px solid var(--ink);font-weight:600;font-size:var(--t-sm);cursor:pointer}.SiteHeader_panel__l9MNP{position:fixed;inset:var(--header-h) 0 0 0;z-index:49;background:var(--paper);padding:var(--s-4) var(--gutter);display:flex;flex-direction:column;gap:var(--s-4);border-top:1px solid var(--rule);overflow-y:auto}.SiteHeader_panel__l9MNP[hidden]{display:none}.SiteHeader_panel__l9MNP ul{list-style:none}.SiteHeader_panel__l9MNP li{border-bottom:1px solid var(--rule)}.SiteHeader_panel__l9MNP li a{display:block;padding:.9rem 0;text-decoration:none;font-family:var(--font-display);font-size:2.25rem;font-weight:600;letter-spacing:-.03em;font-variation-settings:"wdth" 85}.SiteHeader_panelOpen__Go1xe{animation:SiteHeader_drop__qEm_B .26s var(--ease)}@keyframes SiteHeader_drop__qEm_B{0%{opacity:0;transform:translateY(-8px)}}@media (max-width:960px){.SiteHeader_nav__5IxZo{display:none}.SiteHeader_menuBtn__2DR6Y{display:inline-block}}@media (max-width:420px){.SiteHeader_name__i1BIb{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.SiteHeader_cta__bssxd{padding-inline:.75rem}}@media (min-width:961px){.SiteHeader_panel__l9MNP{display:none!important}}