@font-face{font-family:Unbounded;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e546cf32c9d4702c-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:Unbounded;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d76fe899475ae4d7-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8048a25e80cc4179-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:Unbounded;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/87bc17f7c8b98e48-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:Unbounded;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/29b98dbfba401fa9-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:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e546cf32c9d4702c-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:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d76fe899475ae4d7-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8048a25e80cc4179-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:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/87bc17f7c8b98e48-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:Unbounded;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/29b98dbfba401fa9-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:Unbounded Fallback;src:local("Arial");ascent-override:73.93%;descent-override:18.20%;line-gap-override:0.00%;size-adjust:134.59%}.__className_c5c2bf{font-family:Unbounded,Unbounded Fallback;font-style:normal}.__variable_c5c2bf{--font-display:"Unbounded","Unbounded Fallback"}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/a1f87af3f44fadbb-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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/86f65e8637cc94e3-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/39f449c8730c2295-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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/9fabb9c65b63d798-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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/f9e1dbe9676d9bb6-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:Manrope;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8760c4774489e4ba-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/a1f87af3f44fadbb-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/86f65e8637cc94e3-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/39f449c8730c2295-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9fabb9c65b63d798-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/f9e1dbe9676d9bb6-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:Manrope;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8760c4774489e4ba-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/a1f87af3f44fadbb-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/86f65e8637cc94e3-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/39f449c8730c2295-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/9fabb9c65b63d798-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/f9e1dbe9676d9bb6-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:Manrope;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8760c4774489e4ba-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a1f87af3f44fadbb-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/86f65e8637cc94e3-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/39f449c8730c2295-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9fabb9c65b63d798-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/f9e1dbe9676d9bb6-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:Manrope;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8760c4774489e4ba-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:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_271151{font-family:Manrope,Manrope Fallback;font-style:normal}.__variable_271151{--font-body:"Manrope","Manrope Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-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:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-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:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_da2297{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_da2297{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}:root{--bg:#F3F4F7;--surface:#FFFFFF;--surface-2:#E9ECF2;--ink:#141B2B;--muted:#586277;--line:#D6DBE4;--accent:#2A4A8F;--accent-ink:#FFFFFF;--accent-soft:#E1E8F6;--tape:#E6B23A;--tape-ink:#3A2A00;--ok:#2E7D4F;--ok-soft:#DDF0E4;--danger:#B3261E;--map-land:#E3E8F1;--map-edge:#9FB0CF;--shadow:0 1px 2px rgba(20,27,43,.06),0 8px 24px rgba(20,27,43,.06);--display:var(--font-display),"Unbounded","Segoe UI",system-ui,sans-serif;--body:var(--font-body),"Manrope","Segoe UI",system-ui,sans-serif;--mono:var(--font-mono),"JetBrains Mono",ui-monospace,Consolas,monospace}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#0F1420;--surface:#161D2C;--surface-2:#1F2839;--ink:#E8ECF4;--muted:#9AA4B8;--line:#2C364A;--accent:#93ACE9;--accent-ink:#0F1420;--accent-soft:#223052;--tape:#E6B23A;--tape-ink:#1F1600;--ok:#63C28F;--ok-soft:#173326;--danger:#F08A80;--map-land:#1C2536;--map-edge:#3E4E6E;--shadow:0 1px 2px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.25)}}:root[data-theme=dark]{color-scheme:dark;--bg:#0F1420;--surface:#161D2C;--surface-2:#1F2839;--ink:#E8ECF4;--muted:#9AA4B8;--line:#2C364A;--accent:#93ACE9;--accent-ink:#0F1420;--accent-soft:#223052;--tape:#E6B23A;--tape-ink:#1F1600;--ok:#63C28F;--ok-soft:#173326;--danger:#F08A80;--map-land:#1C2536;--map-edge:#3E4E6E;--shadow:0 1px 2px rgba(0,0,0,.3),0 8px 24px rgba(0,0,0,.25)}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--ink);font:15px/1.55 var(--body);-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--display);font-weight:600;line-height:1.15;text-wrap:balance;margin:0;letter-spacing:-.01em}h1{font-size:clamp(28px,4.4vw,46px)}h2{font-size:clamp(20px,2.4vw,26px)}h3{font-size:16px}p{margin:0}a{color:var(--accent)}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.wrap{max-width:1200px;margin:0 auto;padding-inline:16px}.muted{color:var(--muted)}.mono{font-family:var(--mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.eyebrow{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:600}.tape{height:8px;background:repeating-linear-gradient(90deg,var(--tape-ink) 0 1px,transparent 1px 10px) 0 0/100% 4px no-repeat,repeating-linear-gradient(90deg,var(--tape-ink) 0 1px,transparent 1px 50px) 0 0/100% 7px no-repeat,var(--tape);opacity:.95}header.top{position:-webkit-sticky;position:sticky;top:env(safe-area-inset-top,0);z-index:20;background:color-mix(in srgb,var(--surface) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.bar{gap:16px;min-height:60px;flex-wrap:wrap;padding-block:8px}.bar,.logo{display:flex;align-items:center}.logo{gap:10px;background:none;border:0;cursor:pointer;padding:0}.logo b{font-family:var(--display);font-size:20px;font-weight:600;letter-spacing:-.02em}.logo small{display:block;font-size:11px;color:var(--muted);line-height:1.2;text-align:left}.needle{width:28px;height:28px}nav.main{display:flex;gap:4px;flex-wrap:wrap;margin-left:auto}nav.main button{background:none;border:0;padding:8px 12px;border-radius:8px;cursor:pointer;font-weight:600;color:var(--muted)}nav.main button:hover{color:var(--ink);background:var(--surface-2)}nav.main button[aria-current=page]{color:var(--ink);background:var(--accent-soft)}.langs{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.langs button{border:0;background:none;padding:6px 10px;font:600 12px var(--mono);cursor:pointer;color:var(--muted)}.langs button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;padding:10px 16px;font-weight:700;border:1px solid transparent;cursor:pointer;text-decoration:none;white-space:nowrap}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(1.08)}.btn.ghost{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn.ghost:hover{border-color:var(--accent)}.btn.small{padding:6px 12px;font-size:13px;border-radius:8px}.btn[disabled]{opacity:.5;cursor:not-allowed}main{padding-block:28px 40px;min-height:60vh}.hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-gap:32px;gap:32px;align-items:center;padding-block:12px 28px}.hero .lead{font-size:17px;color:var(--muted);max-width:60ch;margin-top:14px}.search{margin-top:22px;display:flex;gap:8px;background:var(--surface);padding:8px;border-radius:14px;border:1px solid var(--line);box-shadow:var(--shadow);position:relative}.search:after{content:"";position:absolute;inset:4px;border:1.5px dashed var(--line);border-radius:11px;pointer-events:none}.search input{flex:1 1;min-width:0;border:0;background:transparent;padding:10px 12px;font-size:16px;position:relative;z-index:1}.search input:focus{outline:none}.search .btn{position:relative;z-index:1}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.chip{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:6px 12px;font-size:13px;font-weight:600;cursor:pointer}.chip:hover,.chip[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.swatchboard{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px}.swatchboard .sw{aspect-ratio:1;border-radius:12px;position:relative;overflow:hidden;max-width:100%}.swatchboard .sw span{position:absolute;left:8px;bottom:8px;background:var(--surface);color:var(--ink);font-size:11px;font-weight:700;padding:3px 7px;border-radius:6px}.stats{display:flex;gap:28px;flex-wrap:wrap;margin-top:22px}.stats div b{display:block;font:600 26px var(--display)}.stats div span{font-size:13px;color:var(--muted)}.how{display:grid;grid-template-columns:1fr 1fr;grid-gap:16px;gap:16px;margin-top:22px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px}.how ol{margin:14px 0 18px;padding-left:20px;display:grid;grid-gap:8px;gap:8px}.section{margin-top:40px}.cities{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.sw-med{background:radial-gradient(circle,rgba(255,255,255,.35) 1px,transparent 1.6px) 0 0/7px 7px,#5E9E97}.sw-work{background:linear-gradient(transparent 38%,#C9CDD3 38% 46%,transparent 46% 58%,#C9CDD3 58% 66%,transparent 66%),#E0702A}.sw-sport{background:repeating-linear-gradient(135deg,#1F2A44 0 10px,#27365A 10px 20px)}.sw-kids{background:radial-gradient(circle at 25% 25%,#F4C95D 0 4px,transparent 4.5px) 0 0/22px 22px,radial-gradient(circle at 75% 75%,#E98A8A 0 3px,transparent 3.5px) 0 0/22px 22px,#FBEFE3}.sw-outer{background:repeating-linear-gradient(45deg,#6B5A45 0 2px,#7D6A52 2px 4px)}.sw-knit{background:repeating-linear-gradient(90deg,rgba(0,0,0,.12) 0 2px,transparent 2px 7px),repeating-linear-gradient(0deg,#8BA27A 0 3px,#98AE86 3px 6px)}.sw-home{background:repeating-linear-gradient(0deg,rgba(120,100,70,.18) 0 1px,transparent 1px 3px),repeating-linear-gradient(90deg,rgba(120,100,70,.14) 0 1px,transparent 1px 3px),#E8DECB}.sw-embroidery{background:repeating-linear-gradient(45deg,#B3261E 0 3px,transparent 3px 12px),repeating-linear-gradient(-45deg,#1B1B1B 0 3px,transparent 3px 12px),#F3EEE4}.sw-print{background:conic-gradient(from 45deg,#2A4A8F 0 25%,#E6B23A 0 50%,#2A4A8F 0 75%,#E6B23A 0) 0 0/24px 24px}.sw-patterns{background:linear-gradient(rgba(42,74,143,.25) 1px,transparent 0) 0 0/16px 16px,linear-gradient(90deg,rgba(42,74,143,.25) 1px,transparent 0) 0 0/16px 16px,#F4EFD9}.sw-denim{background:repeating-linear-gradient(45deg,#2C4A7A 0 3px,#37588C 3px 6px)}.cat{display:grid;grid-template-columns:280px minmax(0,1fr);grid-gap:24px;gap:24px;align-items:start}.filters{position:-webkit-sticky;position:sticky;top:84px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:18px;display:grid;grid-gap:16px;gap:16px;max-height:calc(100vh - 100px);overflow:auto}.filters summary{font:600 16px var(--display);cursor:pointer;list-style:none}.filters summary::-webkit-details-marker{display:none}.fgroup{display:grid;grid-gap:6px;gap:6px}.fgroup>.lbl,.fgroup>label{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.field{width:100%;border:1px solid var(--line);background:var(--bg);border-radius:9px;padding:9px 11px}.checks{display:grid;grid-gap:4px;gap:4px}.checks label{display:flex;gap:8px;align-items:center;font-size:14px;cursor:pointer}.checks input,.switch input{accent-color:var(--accent);width:16px;height:16px}.hint{font-size:12px;color:var(--muted)}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:16px}.toolbar .count{font-weight:700;margin-right:auto}.toolbar select.field{width:auto;max-width:100%}.seg{display:inline-flex;background:var(--surface-2);padding:3px;border-radius:10px}.seg button{border:0;background:none;padding:6px 14px;border-radius:8px;font-weight:700;cursor:pointer;color:var(--muted)}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-gap:16px;gap:16px}.card{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-direction:column;cursor:pointer;transition:border-color .15s,transform .15s}.card:hover{border-color:var(--accent);transform:translateY(-2px)}.card.promo{border:1.5px dashed var(--tape)}.card .cover{height:84px;position:relative}.card .cover .badges{position:absolute;left:10px;top:10px;display:flex;gap:6px;flex-wrap:wrap}.card .body{padding:14px 16px 16px;display:grid;grid-gap:8px;gap:8px;flex:1 1;align-content:start}.card h3{font-size:15px}.meta{display:flex;gap:6px 14px;flex-wrap:wrap;font-size:13px;color:var(--muted)}.kv{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;margin-top:4px;padding-top:10px;border-top:1px solid var(--line)}.kv div span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:700}.kv div b{font:500 14px var(--mono)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:800;letter-spacing:.03em;padding:3px 8px;border-radius:6px;background:var(--surface);color:var(--ink);border:1px solid var(--line)}.badge.verified{background:var(--ok-soft);color:var(--ok);border-color:transparent}.badge.promo{background:var(--tape);color:var(--tape-ink);border-color:transparent}.badge.tier{background:var(--ink);color:var(--bg);border-color:transparent}.stars{color:var(--tape);letter-spacing:1px}.tags{display:flex;flex-wrap:wrap;gap:6px}.tag{font-size:12px;background:var(--surface-2);padding:2px 8px;border-radius:6px}.tag.coop{background:var(--accent-soft);color:var(--accent);font-weight:700}.stage{display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;border:1.5px solid var(--accent)}.stage.partner{border-style:dashed;border-color:var(--muted);color:var(--muted)}.coopcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:12px;gap:12px}.coopcard{border:1px solid var(--line);border-radius:12px;padding:14px;background:var(--surface);display:grid;grid-gap:8px;gap:8px;align-content:start}.filters details.sub>summary{font:700 12px var(--body);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.stagepick{display:flex;flex-wrap:wrap;gap:8px}.stagepick label{display:inline-flex;gap:6px;align-items:center;border:1px solid var(--line);border-radius:999px;padding:5px 12px;cursor:pointer;font-size:14px}.stagepick label:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.stagepick input{accent-color:var(--accent)}.matrix td,.matrix th{text-align:center;padding:8px 10px}.matrix td:first-child,.matrix th:first-child{text-align:left}.matrix input{accent-color:var(--accent);width:18px;height:18px;cursor:pointer}.matrix tbody tr:hover{background:var(--surface-2)}.quotes td{white-space:nowrap}.quotes td:first-child{white-space:normal;min-width:160px}.empty{text-align:center;padding:48px 20px;display:grid;grid-gap:10px;gap:10px;justify-items:center}.mapbox{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:12px;overflow:hidden}.mapbox svg{width:100%;height:auto;display:block}.mapbox .land{fill:var(--map-land);stroke:var(--map-edge);stroke-width:2.5;stroke-linejoin:round}.mapbox .clabel{fill:var(--muted);font:500 20px var(--body)}.mapbox .cl circle{fill:var(--accent);stroke:var(--surface);stroke-width:4;cursor:pointer}.mapbox .cl text{fill:var(--accent-ink);font:700 20px var(--mono);pointer-events:none}.mapbox .cl:hover circle{fill:var(--ink)}.mapbox .dot{fill:var(--muted);opacity:.45}.popup{position:absolute;transform:translate(-50%,calc(-100% - 18px));background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:12px;width:min(280px,80vw);z-index:3}.popup ul{list-style:none;margin:8px 0 0;padding:0;display:grid;grid-gap:6px;gap:6px}.popup li button{padding:0;text-align:left;color:var(--accent);font-weight:700}.popup .x,.popup li button{background:none;border:0;cursor:pointer}.popup .x{position:absolute;right:8px;top:6px;color:var(--muted);font-size:18px}.pv{display:grid;grid-template-columns:minmax(0,1fr) 340px;grid-gap:24px;gap:24px;align-items:start}.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:120px 120px;grid-gap:8px;gap:8px;border-radius:16px;overflow:hidden}.gallery div:first-child{grid-row:span 2}.aside{position:-webkit-sticky;position:sticky;top:84px;display:grid;grid-gap:12px;gap:12px}.contacts{display:grid;grid-gap:6px;gap:6px;font-size:14px}.contacts .row{display:flex;justify-content:space-between;gap:8px;border-bottom:1px dashed var(--line);padding-block:6px}.blur{filter:blur(5px);-webkit-user-select:none;-moz-user-select:none;user-select:none}table{border-collapse:collapse;width:100%}td,th{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}th{font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700}.tablewrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.specs td:first-child{color:var(--muted);width:48%}.review{display:grid;grid-gap:8px;gap:8px;padding-block:14px;border-bottom:1px solid var(--line)}.review:last-child{border-bottom:0}.subscores{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.form{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px;align-items:start}.form .full{grid-column:1/-1}.form textarea{min-height:88px;resize:vertical}.switch{display:flex;gap:10px;align-items:center}.scorebar{display:flex;height:10px;border-radius:5px;overflow:hidden;background:var(--surface-2);width:100%;min-width:160px}.scorebar i{display:block;height:100%}.legend{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:12px;color:var(--muted);margin-top:10px}.legend span:before{content:"";display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:5px;vertical-align:-1px;background:var(--c)}.status{font-size:12px;font-weight:800;padding:3px 8px;border-radius:6px;background:var(--surface-2)}.status.ok{background:var(--ok-soft);color:var(--ok)}.tiers td:not(:first-child),.tiers th:not(:first-child){text-align:center}.tiers .hl{background:var(--accent-soft)}.drawer{position:fixed;top:0;right:0;bottom:0;width:min(420px,100%);background:var(--surface);border-left:1px solid var(--line);z-index:40;display:flex;flex-direction:column;box-shadow:var(--shadow);padding-top:env(safe-area-inset-top,0);padding-bottom:env(safe-area-inset-bottom,0)}.drawer header{align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}.drawer header,.msgs{display:flex;gap:10px}.msgs{flex:1 1;overflow:auto;padding:16px;flex-direction:column}.msg{max-width:82%;padding:9px 12px;border-radius:12px;background:var(--surface-2);font-size:14px}.msg.me{align-self:flex-end;background:var(--accent);color:var(--accent-ink)}.msg .masked{font-style:italic;opacity:.85}.compose{display:flex;gap:8px;padding:12px;border-top:1px solid var(--line)}.compose input{flex:1 1;min-width:0}.scrim{position:fixed;inset:0;background:rgba(10,14,22,.45);z-index:50;display:grid;place-items:center;padding:16px}.modal{background:var(--surface);border-radius:16px;padding:22px;max-width:420px;width:100%;display:grid;grid-gap:14px;gap:14px;box-shadow:var(--shadow)}.modal .actions{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}.toast{position:fixed;left:50%;bottom:calc(20px + env(safe-area-inset-bottom,0px));transform:translateX(-50%);background:var(--ink);color:var(--bg);padding:12px 18px;border-radius:12px;font-weight:600;z-index:60;max-width:calc(100% - 32px);box-shadow:var(--shadow)}footer.demo{border-top:1px solid var(--line);background:var(--surface);padding-block:24px}.demo-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:20px;gap:20px;align-items:center}.demo-flags{display:grid;grid-gap:8px;gap:8px}.demo-flags code{font-family:var(--mono);font-size:12px;color:var(--muted)}@media (max-width:900px){.cat,.demo-grid,.hero,.how,.pv{grid-template-columns:1fr}.aside,.filters{position:static;max-height:none}.form{grid-template-columns:1fr}.swatchboard{grid-template-columns:repeat(3,1fr)}}@media (max-width:520px){nav.main{margin-left:0;width:100%;order:3}nav.main button{padding:6px 8px;font-size:13px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:140px 90px 90px}.gallery div:first-child{grid-column:span 2;grid-row:auto}}@media (prefers-reduced-motion:reduce){*{transition:none!important}}html{scroll-padding-top:84px}body{margin:0}a.logo{color:inherit}a.logo,nav.main a{text-decoration:none}nav.main a{padding:8px 12px;border-radius:8px;font-weight:600;color:var(--muted)}nav.main a:hover{color:var(--ink);background:var(--surface-2)}nav.main a[aria-current=page]{color:var(--ink);background:var(--accent-soft)}.langs a{padding:6px 10px;font:600 12px var(--mono);color:var(--muted);text-decoration:none}.langs a[aria-current=true]{background:var(--ink);color:var(--bg)}a.card,a.chip{color:inherit}a.btn,a.card,a.chip{text-decoration:none}.card .cover img,.gallery img{width:100%;height:100%;object-fit:cover;display:block}.gallery>:first-child{grid-row:span 2}.pager{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:20px;flex-wrap:wrap}.maplibre{height:min(70vh,640px);min-height:360px;border-radius:10px;overflow:hidden}.mappop{font:14px/1.4 var(--body);color:#141B2B;min-width:200px}.mappop,.mappop ul{display:grid;grid-gap:6px;gap:6px}.mappop ul{list-style:none;margin:0;padding:0;max-height:220px;overflow:auto}.mappop a{color:#2A4A8F;font-weight:700;text-decoration:none}.mappop .hint{color:#586277}footer.site{border-top:1px solid var(--line);background:var(--surface);padding-block:24px;color:var(--muted);font-size:13px}footer.site .wrap{display:flex;gap:12px 24px;flex-wrap:wrap;justify-content:space-between}footer.site .legal{margin-top:10px;justify-content:flex-start;gap:6px 18px}footer.site .legal a{color:inherit}.usermenu{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.notice{border:1px solid var(--line);border-left:4px solid var(--accent);background:var(--surface);border-radius:10px;padding:12px 14px}.notice.ok{border-left-color:var(--ok)}.notice.err{border-left-color:var(--danger)}.stack{display:grid;grid-gap:16px;gap:16px}.rowflex{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width:520px){nav.main a{padding:6px 8px;font-size:13px}.gallery>:first-child{grid-column:span 2;grid-row:auto}}.h3{font-size:16px}.card h2{font-size:15px}:root{--ok-ink:#25693D}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--ok-ink:var(--ok)}}:root[data-theme=dark]{--ok-ink:var(--ok)}.badge.verified,.notice.ok,.status.ok{color:var(--ok-ink)}.notice.ok{color:inherit}.checks{gap:2px}.checks label,.switch{min-height:28px}.checks input,.switch input{width:20px;height:20px;flex:none}.demobar{margin:0;padding:8px 16px;text-align:center;font-size:13px;font-weight:600;background:var(--tape);color:var(--tape-ink);max-width:none;line-height:1.5}.demobar .badge{background:var(--tape-ink);color:var(--tape);border-color:transparent;margin-right:6px;vertical-align:1px}.ticker{display:flex;align-items:center;gap:10px;height:30px;padding-left:12px;background:var(--tape);color:var(--tape-ink);font-size:13px;font-weight:600;overflow:hidden}.ticker-badge{flex:none;background:var(--tape-ink);color:var(--tape);border-radius:6px;padding:2px 8px;font-size:11px;font-weight:800;letter-spacing:.03em;position:relative;z-index:1}.ticker-track{flex:1 1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}.ticker-move{display:flex;width:max-content;animation:ticker 32s linear infinite}.ticker-move span{padding-right:80px;white-space:nowrap}.ticker:hover .ticker-move{animation-play-state:paused}@keyframes ticker{to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.ticker{height:auto;padding-block:6px}.ticker-move{animation:none;width:auto}.ticker-move span{white-space:normal;padding-right:0}.ticker-move span[aria-hidden]{display:none}}#request{scroll-margin-top:96px}.bars{display:flex;align-items:flex-end;gap:3px;height:120px;margin-top:10px;padding:8px;background:var(--surface-2);border-radius:12px}.bars i{flex:1 1;min-width:3px;background:var(--accent);border-radius:3px 3px 0 0}.srcbars{list-style:none;padding:0;margin:10px 0 0;display:grid;grid-gap:8px;gap:8px}.srcbars li{display:grid;grid-template-columns:minmax(140px,240px) 1fr auto;align-items:center;grid-gap:10px;gap:10px;font-size:14px}.srcbars i{display:block;height:10px;min-width:2px;background:var(--accent-soft);border:1px solid var(--accent);border-radius:6px}@media (max-width:600px){.srcbars li{grid-template-columns:1fr auto}.srcbars i{grid-column:1/-1;order:3}}.showcase{min-height:100vh;background:var(--bg)}.sc-head{position:-webkit-sticky;position:sticky;top:0;z-index:5;background:var(--surface);border-bottom:1px solid var(--line)}.sc-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-block:12px}.sc-name{font:600 18px var(--display);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);grid-gap:28px;gap:28px;align-items:center}.sc-cover{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:18px;display:block}.sc-facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:14px 24px;gap:14px 24px;margin:12px 0 0}.sc-facts dt{font-size:13px;color:var(--muted)}.sc-facts dd{margin:2px 0 0;font-weight:600}.sc-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));grid-gap:10px;gap:10px;margin-top:12px}.sc-photos img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:12px;display:block}.sc-cta,.sc-foot{text-align:center}.sc-foot{padding-block:24px 40px}@media (max-width:760px){.sc-hero{grid-template-columns:1fr}.sc-hero .sc-cover{order:-1}}.hero.hero-photo{position:relative;display:block;overflow:hidden;border-radius:22px;min-height:min(560px,78vh);padding:clamp(28px,5vw,64px);margin-top:8px;isolation:isolate;color:#fff;background:#1b2233}.hero-photo .hero-bg{object-fit:cover;object-position:62% 50%;z-index:-2}.hero-photo:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(14,20,34,.88),rgba(14,20,34,.72) 38%,rgba(14,20,34,.25) 68%,rgba(14,20,34,0))}.hero-photo .hero-body{max-width:640px;position:relative}.hero-photo h1{color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.25)}.hero-photo .eyebrow{color:#ffd54a}.hero-photo .lead{color:rgba(255,255,255,.88)}.hero-photo .chip{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.32);color:#fff;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.hero-photo .chip:hover{background:rgba(255,255,255,.24)}.hero-photo .stats div b{color:#fff}.hero-photo .stats div span{color:rgba(255,255,255,.78)}.hero-photo .search{box-shadow:0 10px 30px rgba(0,0,0,.25)}@media (max-width:760px){.hero.hero-photo{min-height:0;padding:200px 20px 24px;border-radius:18px}.hero-photo .hero-bg{object-position:70% 0;height:230px!important;bottom:auto!important}.hero-photo:before{background:linear-gradient(180deg,rgba(14,20,34,0),rgba(14,20,34,.35) 120px,rgba(14,20,34,.92) 230px,#141b2b)}}body,html{overflow-x:clip}@media (min-width:761px){.hero.hero-photo{margin-inline:calc(50% - 50vw);margin-top:0;border-radius:0;min-height:min(620px,80vh);padding-block:clamp(48px,7vw,96px);padding-inline:max(16px,calc((100vw - 1200px) / 2 + 16px))}.hero-photo:before{background:linear-gradient(90deg,rgba(14,20,34,.9),rgba(14,20,34,.78) calc((100vw - 1200px) / 2 + 420px),rgba(14,20,34,.2) 72%,rgba(14,20,34,0))}.hero-photo .hero-bg{object-position:60% 45%}}