@font-face{font-family:GeistSans;src:url(/_next/static/media/028c0d39d2e8f589-s.p.woff2) format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:GeistSans Fallback;src:local("Arial");ascent-override:85.83%;descent-override:20.53%;line-gap-override:9.33%;size-adjust:107.19%}.__className_fb8f2c{font-family:GeistSans,GeistSans Fallback}.__variable_fb8f2c{--font-geist-sans:"GeistSans","GeistSans Fallback"}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-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:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/36966cca54120369-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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e1aab0933260df4d-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:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/b7387a63dd068245-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/36966cca54120369-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:Space Grotesk Fallback;src:local("Arial");ascent-override:89.71%;descent-override:26.62%;line-gap-override:0.00%;size-adjust:109.69%}.__className_4f4604{font-family:Space Grotesk,Space Grotesk Fallback;font-style:normal}.__variable_4f4604{--font-display-face:"Space Grotesk","Space Grotesk Fallback"}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2042050246a708c9-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:100%;font-display:swap;src:url(/_next/static/media/0fdd058fab82a774-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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Bricolage Grotesque;font-style:normal;font-weight:200 800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/33553e7595b74ccf-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_54b624{font-family:Bricolage Grotesque,Bricolage Grotesque Fallback;font-style:normal}.__variable_54b624{--font-wordmark-face:"Bricolage Grotesque","Bricolage Grotesque Fallback"}:root{--paper:#fafaf9;--ink:#17171b;--ink-soft:#3f3f46;--line:rgba(23,23,27,0.1);--accent:#2745e6;--font-body:var(--font-geist-sans),system-ui,-apple-system,sans-serif;--font-display:var(--font-display-face),var(--font-body);--font-wordmark:var(--font-wordmark-face),var(--font-display)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:1.0625rem;line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--accent);color:#fff}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:3px}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.grid-canvas{position:fixed;inset:0;width:100%;height:100%;z-index:-1}.container{max-width:41rem;margin:0 auto;padding:0 1.5rem}.hero{min-height:88svh;display:flex;flex-direction:column;justify-content:center;padding-top:4rem}.hero-mark{align-self:flex-start;height:clamp(2rem,4.5vw,2.5rem);width:auto;margin-bottom:1.75rem}.wordmark{font-family:var(--font-wordmark);font-optical-sizing:auto;font-weight:800;font-size:clamp(3.25rem,11vw,6.5rem);line-height:1;letter-spacing:-.02em}.tagline{margin-top:1.75rem;font-size:clamp(1.125rem,2.4vw,1.375rem);color:var(--ink-soft);max-width:34rem;text-wrap:balance}.section{padding:4.5rem 0;border-top:1px solid var(--line)}.section-label{font-family:var(--font-display);font-size:.8125rem;font-weight:500;text-transform:uppercase;letter-spacing:.14em;color:var(--ink-soft);margin-bottom:2rem}.product{display:block;color:inherit;padding:1.5rem;margin:0 -1.5rem;border:1px solid var(--line);border-radius:10px;background:rgba(250,250,249,.72);transition:border-color .15s ease}.product:hover{text-decoration:none;border-color:var(--accent)}.product h3{font-family:var(--font-display);font-size:1.375rem;font-weight:700;letter-spacing:-.01em}.product p{margin-top:.375rem;color:var(--ink-soft)}.product .product-url{display:inline-block;margin-top:.875rem;font-size:.9375rem;color:var(--accent)}.product:hover .product-url{text-decoration:underline;text-underline-offset:3px}.product-list{display:flex;flex-direction:column;gap:1rem}.facts{display:grid;grid-template-columns:1fr;grid-gap:1.25rem 2rem;gap:1.25rem 2rem}.facts>div{display:grid;grid-template-columns:1fr;grid-gap:.125rem;gap:.125rem}.facts dt{font-size:.8125rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft)}.facts dd{font-size:1.0625rem}@media (min-width:560px){.facts{grid-template-columns:1fr 1fr}.facts .facts-wide{grid-column:1/-1}}.footer{border-top:1px solid var(--line);padding:2.5rem 0 3.5rem;font-size:.9375rem;color:var(--ink-soft)}.footer-row{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;align-items:baseline}.brand-mark{display:block;height:clamp(6rem,18vw,9rem);width:auto;margin-top:3rem}.swatches{display:flex;flex-wrap:wrap;gap:1rem 2.5rem;margin-top:2rem}.swatches div{display:flex;flex-direction:column;gap:.125rem}.swatches dt{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft)}.swatch{width:.875rem;height:.875rem;border-radius:50%}.swatches dd{font-family:ui-monospace,SF Mono,monospace;font-size:.9375rem}.subpage{padding-top:3rem;padding-bottom:5rem}.subpage-home{font-family:var(--font-wordmark);font-optical-sizing:auto;font-weight:800;font-size:1.125rem;letter-spacing:-.01em;color:var(--ink)}.subpage h1{font-family:var(--font-display);font-size:clamp(2rem,5vw,2.75rem);font-weight:700;letter-spacing:-.02em;line-height:1.15;margin-top:3rem}.subpage .updated{margin-top:.75rem;font-size:.9375rem;color:var(--ink-soft)}.subpage .lede{margin-top:2rem}.subpage h2{font-family:var(--font-display);font-size:1.25rem;font-weight:700;letter-spacing:-.01em;margin:2.75rem 0 .875rem}.subpage p{margin-top:.875rem}.subpage ul{margin:.875rem 0 0 1.25rem}.subpage li{margin-top:.5rem}.subpage strong{font-weight:600}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}