@font-face{font-family:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-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:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-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:Archivo;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-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:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-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:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-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:Archivo;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-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:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-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:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-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:Archivo;font-style:normal;font-weight:700;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-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:Archivo;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b06b356f834173cc-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:Archivo;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/23d669af23d19c95-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:Archivo;font-style:normal;font-weight:800;font-stretch:100%;font-display:swap;src:url(/_next/static/media/1a4aa50920b5315c-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:Archivo Fallback;src:local("Arial");ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.00%;size-adjust:98.70%}.__className_28f310{font-family:Archivo,Archivo Fallback;font-style:normal}.__variable_28f310{--font-display:"Archivo","Archivo 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-20c0,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-20c0,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-20c0,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_1bc20f{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.__variable_1bc20f{--font-body:"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-20c0,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.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 Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ef4d5661765d0e49-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:500;font-display:swap;src:url(/_next/static/media/d29838c109ef09b4-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:500;font-display:swap;src:url(/_next/static/media/e40af3453d7c920a-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:500;font-display:swap;src:url(/_next/static/media/99dcf268bda04fe5-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:IBM Plex Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/98e207f02528a563-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 Mono Fallback;src:local("Arial");ascent-override:76.16%;descent-override:20.43%;line-gap-override:0.00%;size-adjust:134.59%}.__className_46fe82{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_46fe82{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--c-ink:#1a1a1c;--c-ink-soft:#242426;--c-ink-line:#35353a;--c-logo-ink:#2b2b2c;--c-paper:#f2efe7;--c-paper-2:#e7e3d9;--c-white:#fff;--c-scan:#d2101b;--c-scan-dim:#a80d15;--c-scan-bright:#e23a2e;--c-signal:#f5b301;--c-muted:#6e747c;--c-muted-dark:#98a0aa;--c-line:rgba(26,26,28,.13);--bg:var(--c-paper);--fg:var(--c-ink);--accent:var(--c-scan);--f-display:var(--font-display),"Archivo",system-ui,sans-serif;--f-body:var(--font-body),"IBM Plex Sans",system-ui,sans-serif;--f-mono:var(--font-mono),"IBM Plex Mono",ui-monospace,monospace;--t-hero:clamp(2.6rem,7.2vw,6.4rem);--t-h2:clamp(1.9rem,4.2vw,3.4rem);--t-h3:clamp(1.25rem,2vw,1.7rem);--t-lead:clamp(1.05rem,1.4vw,1.3rem);--t-body:1.0625rem;--t-small:0.875rem;--t-micro:0.75rem;--w-max:1240px;--w-text:62ch;--pad-x:clamp(1.25rem,5vw,4rem);--gap-section:clamp(5rem,11vw,9.5rem);--radius:4px;--radius-lg:8px;--ease:cubic-bezier(0.22,1,0.36,1);--dur:620ms}.on-dark{--bg:var(--c-ink);--fg:var(--c-paper);--c-scan:var(--c-scan-bright);--c-line:hsla(44,30%,93%,.15)}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:var(--t-body);line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img,svg,video{display:block;max-width:100%;height:auto}a{text-decoration:none}a,button{color:inherit}button{font:inherit;background:none;border:0;cursor:pointer}dd,dt,figcaption,h1,h2,h3,li,p{overflow-wrap:anywhere}:focus-visible{outline:2px solid var(--c-scan);outline-offset:3px;border-radius:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.wrap{width:100%;max-width:var(--w-max);margin-inline:auto;padding-inline:var(--pad-x)}.band{background:var(--bg);color:var(--fg);padding-block:var(--gap-section);position:relative;overflow:clip}.band--tight{padding-block:clamp(3rem,6vw,5rem)}.stack>*+*{margin-top:1.1rem}.lede{font-size:var(--t-lead);color:var(--c-muted);max-width:var(--w-text)}.on-dark .lede{color:var(--c-muted-dark)}.h1,.h2,.h3{font-family:var(--f-display);font-weight:700;letter-spacing:-.03em;line-height:1.02;margin:0;text-wrap:balance}.h1{font-size:var(--t-hero)}.h2{font-size:var(--t-h2);line-height:1.06}.h3{font-size:var(--t-h3);line-height:1.2;letter-spacing:-.02em}.eyebrow{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.16em;text-transform:uppercase;color:var(--c-muted);display:inline-flex;align-items:flex-start;gap:.7rem;margin:0 0 1.25rem}.eyebrow .code-stripes{margin-top:calc((1.6em - .85em) / 2)}.on-dark .eyebrow{color:var(--c-muted-dark)}.section-head{max-width:46rem;margin-bottom:clamp(2.5rem,5vw,4rem)}.code-stripes{display:inline-flex;align-items:stretch;gap:2px;height:.85em;flex-shrink:0}.code-stripes span{display:block;background:currentColor;opacity:.55}.code-stripes--accent span{background:var(--c-scan);opacity:1}.rule-code{display:flex;gap:3px;height:14px;width:100%;overflow:hidden;opacity:.28;margin-block:clamp(3rem,6vw,5rem)}.rule-code span{display:block;background:currentColor;flex-shrink:0}.nav{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--c-paper) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--c-line)}.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;height:68px}.nav-logo{display:inline-flex;align-items:center}.nav-logo img{height:34px;width:auto}@media (min-width:700px){.nav-logo img{height:40px}}.footer-logo img{height:44px;width:auto}.nav-links{gap:2rem;align-items:center;margin-inline:auto}.nav-cta,.nav-links{display:none}@media (min-width:900px){.nav-cta{display:inline-flex}}.nav-links a{font-size:var(--t-small);color:var(--c-muted);transition:color .2s var(--ease)}.nav-links a:hover{color:var(--c-ink)}.nav-toggle{display:inline-flex;font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase}@media (min-width:900px){.nav-links{display:flex}.nav-toggle{display:none}}.nav-drawer{display:grid;grid-gap:1rem;gap:1rem;padding:1.5rem 0 2rem;border-top:1px solid var(--c-line)}.nav-drawer a{font-family:var(--f-display);font-size:1.4rem;font-weight:700;letter-spacing:-.02em}@media (min-width:900px){.nav-drawer{display:none}}.btn{display:inline-flex;align-items:center;gap:.7rem;padding:.95rem 1.5rem;border-radius:var(--radius);font-family:var(--f-mono);font-size:var(--t-small);letter-spacing:.02em;font-weight:500;transition:transform .18s var(--ease),background-color .18s var(--ease),color .18s var(--ease);will-change:transform}.btn:hover{transform:translateY(-2px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--c-scan);color:var(--c-white)}.btn--primary:hover{background:var(--c-scan-dim)}.btn--ghost{border:1px solid var(--c-line);color:var(--fg)}.btn--ghost:hover{background:var(--c-ink);color:var(--c-paper);border-color:var(--c-ink)}.on-dark .btn--ghost:hover{background:var(--c-paper);color:var(--c-ink)}.btn--sm{padding:.6rem 1rem;font-size:var(--t-micro)}.hero{position:relative;padding-block:clamp(4.5rem,12vw,9rem) clamp(4rem,9vw,7rem);overflow:clip}.hero-grid{display:grid;grid-gap:clamp(2.5rem,6vw,4rem);gap:clamp(2.5rem,6vw,4rem)}@media (min-width:980px){.hero-grid{grid-template-columns:1.15fr .85fr;align-items:center}}.hero-title{margin-bottom:1.5rem}.hero-title em{font-style:normal;background-image:linear-gradient(var(--c-scan),var(--c-scan));background-repeat:no-repeat;background-size:100% .1em;background-position:0 calc(100% - .08em);-webkit-box-decoration-break:clone;box-decoration-break:clone}@media (min-width:620px){.hero-title em{white-space:nowrap}}.hero-actions{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}.hero-stage{position:relative;aspect-ratio:16/9;background:var(--c-ink);border-radius:var(--radius-lg);overflow:hidden}.hero-stage img,.hero-stage video{width:100%;height:100%;object-fit:cover;display:block}.showreel{position:relative;aspect-ratio:16/9;max-height:78vh;background:var(--c-ink);border-radius:var(--radius-lg);overflow:hidden}.showreel video{width:100%;height:100%;object-fit:cover;display:block}.showreel:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(26,26,28,.72) 0,rgba(26,26,28,0) 42%);pointer-events:none}.showreel-caption{position:absolute;left:clamp(1.25rem,3vw,2.5rem);right:clamp(1.25rem,3vw,2.5rem);bottom:clamp(1.25rem,3vw,2.25rem);z-index:1;display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem 1.25rem;color:var(--c-paper)}.showreel-caption strong{font-family:var(--f-display);font-weight:700;font-size:clamp(1.1rem,2.2vw,1.6rem);letter-spacing:-.02em}.showreel-caption span{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--c-muted-dark)}.hero-stage:after{content:"";position:absolute;inset-inline:0;top:-2px;height:2px;background:linear-gradient(90deg,transparent,var(--c-scan),transparent);box-shadow:0 0 22px 3px color-mix(in srgb,var(--c-scan) 55%,transparent);animation:scanline 3.4s var(--ease) .4s 2 both}@keyframes scanline{0%{top:-2px;opacity:0}8%{opacity:1}92%{opacity:1}to{top:100%;opacity:0}}.hero-meta{display:flex;flex-wrap:wrap;gap:1.25rem 2.5rem;margin-top:2.5rem;padding-top:1.75rem;border-top:1px solid var(--c-line)}.hero-meta-item{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--c-muted)}.stats{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:2rem 1rem;gap:2rem 1rem}@media (min-width:780px){.stats{grid-template-columns:repeat(4,1fr)}}.stat-value{font-family:var(--f-display);font-size:clamp(2.2rem,4.5vw,3.4rem);font-weight:700;letter-spacing:-.04em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-label{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--c-muted);margin-top:.6rem}.on-dark .stat-label{color:var(--c-muted-dark)}.grid-cards{display:grid;grid-gap:1px;gap:1px;background:var(--c-line);border:1px solid var(--c-line);border-radius:var(--radius-lg);overflow:hidden}@media (min-width:700px){.grid-cards{grid-template-columns:repeat(2,1fr)}}@media (min-width:1050px){.grid-cards--3{grid-template-columns:repeat(3,1fr)}}.card{background:var(--bg);padding:clamp(1.6rem,3vw,2.4rem);display:flex;flex-direction:column;gap:.75rem;transition:background-color .24s var(--ease)}.card:hover{background:var(--c-paper-2)}.on-dark .card:hover{background:var(--c-ink-soft)}.card-index{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.12em;color:var(--c-scan)}.card-title{font-family:var(--f-display);font-size:1.15rem;font-weight:700;letter-spacing:-.02em;margin:0}.card-text{color:var(--c-muted);font-size:.98rem;margin:0}.on-dark .card-text{color:var(--c-muted-dark)}.antibox{border:1px solid var(--c-line);border-radius:var(--radius-lg);background:var(--c-white);overflow:hidden;box-shadow:0 30px 60px -40px rgba(20,23,27,.45)}.antibox-bar{display:flex;align-items:center;gap:.5rem;padding:.7rem 1rem;border-bottom:1px solid var(--c-line);background:var(--c-paper-2);font-family:var(--f-mono);font-size:var(--t-micro);color:var(--c-muted)}.antibox-dot{width:9px;height:9px;border-radius:50%;background:var(--c-line)}.antibox-body{padding:clamp(1.25rem,3vw,2rem);display:grid;grid-gap:1.5rem;gap:1.5rem}.antibox-row{display:grid;grid-gap:.5rem;gap:.5rem}.antibox-flag{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--c-scan);display:flex;align-items:center;gap:.45rem}.antibox-scribble{font-family:var(--f-mono);font-size:.85rem;color:var(--c-muted);line-height:1.9;border-left:2px solid var(--c-line);padding-left:1rem}.compare{border:1px solid var(--c-line);border-radius:var(--radius-lg);overflow:hidden}.compare-head,.compare-row{display:grid;grid-template-columns:1fr 1fr}.compare-head>div{padding:1.1rem clamp(1rem,2.5vw,1.75rem);font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;border-bottom:1px solid var(--c-line)}.compare-head>div:first-child{color:var(--c-muted)}.compare-head>div:last-child{color:var(--c-scan);border-left:1px solid var(--c-line)}.compare-row>div{padding:clamp(1rem,2.5vw,1.5rem);font-size:.98rem;border-bottom:1px solid var(--c-line)}.compare-row>div:first-child{color:var(--c-muted)}.compare-row>div:last-child{border-left:1px solid var(--c-line)}.compare-row:last-child>div{border-bottom:0}.quotes{display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:900px){.quotes{grid-template-columns:repeat(2,1fr);align-items:start}}.quote{border:1px solid var(--c-line);border-radius:var(--radius-lg);padding:clamp(1.5rem,3vw,2.25rem);background:var(--bg)}.quote-claim{font-family:var(--f-display);font-size:1.2rem;font-weight:700;letter-spacing:-.02em;line-height:1.25;margin:0 0 1rem}.quote-body{color:var(--c-muted);font-size:.98rem}.quote-body p{margin:0 0 .9rem}.quote-clip{position:relative;max-height:8.5rem;overflow:hidden}.quote-clip:after{content:"";position:absolute;inset-inline:0;bottom:0;height:4.5rem;background:linear-gradient(transparent,var(--bg))}.quote-more{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--c-scan);margin-top:.5rem}.quote-foot{display:flex;align-items:center;gap:.85rem;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid var(--c-line)}.quote-avatar{width:40px;height:40px;border-radius:50%;background:var(--c-paper-2);object-fit:cover;flex-shrink:0}.quote-name{font-weight:600;font-size:.95rem}.quote-org{font-family:var(--f-mono);font-size:var(--t-micro);color:var(--c-muted)}.projects{display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:760px){.projects{grid-template-columns:repeat(2,1fr)}}@media (min-width:1080px){.projects{grid-template-columns:repeat(3,1fr)}}.project{display:block;border:1px solid var(--c-line);border-radius:var(--radius-lg);overflow:hidden;background:var(--bg)}.project-shot{aspect-ratio:4/3;background:var(--c-paper-2);overflow:hidden}.project-shot img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.project:hover .project-shot img{transform:scale(1.04)}.project-meta{padding:1.15rem 1.25rem 1.4rem}.project-tag{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.1em;text-transform:uppercase;color:var(--c-scan)}.project-name{font-family:var(--f-display);font-weight:700;font-size:1.1rem;letter-spacing:-.02em;margin:.4rem 0 0}.project-note{color:var(--c-muted);font-size:.9rem;margin:.35rem 0 0}.steps{display:grid;grid-gap:1px;gap:1px;background:var(--c-line);border-block:1px solid var(--c-line)}.step{background:var(--bg);padding:clamp(1.75rem,4vw,3rem) 0}.step-inner{display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:900px){.step-inner{grid-template-columns:8rem 1fr 1fr;gap:2.5rem;align-items:start}}.step-num{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.14em;color:var(--c-scan)}.step-out{color:var(--c-muted);font-size:.98rem}.step-out strong{color:var(--fg);font-weight:600}.faq{border-top:1px solid var(--c-line)}.faq-item{border-bottom:1px solid var(--c-line)}.faq-q{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;width:100%;padding:1.4rem 0;text-align:left;font-family:var(--f-display);font-weight:700;font-size:1.05rem;letter-spacing:-.015em}.faq-sign{font-family:var(--f-mono);color:var(--c-scan);flex-shrink:0;transition:transform .3s var(--ease)}.faq-item[data-open=true] .faq-sign{transform:rotate(45deg)}.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .38s var(--ease)}.faq-item[data-open=true] .faq-a{grid-template-rows:1fr}.faq-a>div{overflow:hidden}.faq-a p{color:var(--c-muted);margin:0 0 1.3rem;max-width:var(--w-text)}.checks{list-style:none;margin:0;padding:0;grid-gap:.85rem}.checks,.checks li{display:grid;gap:.85rem}.checks li{grid-template-columns:1.1rem 1fr;grid-gap:.85rem;align-items:start;font-size:.99rem}.checks li:before{content:"";width:1.1rem;height:1.1rem;margin-top:.28rem;background:var(--c-scan);-webkit-clip-path:polygon(14% 46%,0 60%,40% 100%,100% 22%,86% 8%,40% 72%);clip-path:polygon(14% 46%,0 60%,40% 100%,100% 22%,86% 8%,40% 72%)}.cta{text-align:center}.cta .h2{margin-inline:auto;max-width:22ch}.cta-actions{display:flex;flex-wrap:wrap;gap:.9rem;justify-content:center;margin-top:2.25rem}.footer{padding-block:clamp(3.5rem,7vw,5.5rem) 2.5rem}.footer-grid{display:grid;grid-gap:2.5rem;gap:2.5rem}@media (min-width:820px){.footer-grid{grid-template-columns:1.6fr 1fr 1fr 1fr}}.footer-h{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.14em;text-transform:uppercase;color:var(--c-muted-dark);margin:0 0 1rem}.footer-list{list-style:none;margin:0;padding:0;display:grid;grid-gap:.6rem;gap:.6rem;font-size:.95rem}.footer-list a{color:var(--c-muted-dark);transition:color .2s var(--ease)}.footer-list a:hover{color:var(--c-paper)}.footer-legal{display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;margin-top:3.5rem;padding-top:1.75rem;border-top:1px solid var(--c-line);font-family:var(--f-mono);font-size:var(--t-micro);color:var(--c-muted-dark)}.reveal{opacity:0;transform:translateY(22px)}.reveal[data-shown=true]{opacity:1;transform:none;transition:opacity var(--dur) var(--ease),transform var(--dur) var(--ease)}.page-head{padding-block:clamp(4rem,9vw,7rem) clamp(2.5rem,5vw,4rem)}.team-grid{display:grid;grid-gap:1.25rem;gap:1.25rem}@media (min-width:640px){.team-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:1000px){.team-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width:1240px){.team-grid{grid-template-columns:repeat(4,1fr)}}.member{display:flex;flex-direction:column}.member-photo{aspect-ratio:5/4;background:var(--c-paper-2);border-radius:var(--radius-lg);overflow:hidden;position:relative}.member-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.member:hover .member-photo img{transform:scale(1.03)}.member-code{position:absolute;left:1rem;right:1rem;bottom:1rem;display:flex;gap:3px;height:16px;opacity:.9;overflow:hidden}.member-code span{display:block;background:var(--c-paper);flex-shrink:0}.member-body{padding-top:1.1rem}.member-role{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--c-scan)}.member-name{font-family:var(--f-display);font-weight:700;font-size:1.2rem;letter-spacing:-.02em;margin:.45rem 0 .2rem}.member-area{color:var(--c-muted);font-size:.93rem;margin:0}.on-dark .member-area{color:var(--c-muted-dark)}.member-note{color:var(--c-muted);font-size:.93rem;margin:.75rem 0 0}.member-contact{display:flex;flex-direction:column;gap:.25rem;margin-top:.9rem;padding-top:.9rem;border-top:1px solid var(--c-line);font-family:var(--f-mono);font-size:var(--t-micro)}.member-contact a{color:var(--c-muted);transition:color .2s var(--ease)}.member-contact a:hover{color:var(--c-scan)}.member--open{border:1px dashed var(--c-line);border-radius:var(--radius-lg);padding:clamp(1.5rem,3vw,2rem);display:flex;flex-direction:column;justify-content:center;gap:.6rem}.notice{background:var(--c-ink);color:var(--c-paper);border-bottom:1px solid var(--c-ink-line)}.notice-inner{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.5rem;padding-block:.85rem;font-size:.92rem}.notice-tag{letter-spacing:.12em;color:var(--c-scan)}.notice-link,.notice-tag{font-family:var(--f-mono);font-size:var(--t-micro);text-transform:uppercase}.notice-link{letter-spacing:.08em;border-bottom:1px solid;padding-bottom:2px;margin-left:auto}.facts{display:grid;grid-gap:1px;gap:1px;background:var(--c-line);border:1px solid var(--c-line);border-radius:var(--radius-lg);overflow:hidden}@media (min-width:700px){.facts{grid-template-columns:repeat(2,1fr)}}@media (min-width:1050px){.facts{grid-template-columns:repeat(4,1fr)}}.fact{background:var(--bg);padding:clamp(1.5rem,3vw,2rem)}.fact-label{font-family:var(--f-mono);font-size:var(--t-micro);letter-spacing:.12em;text-transform:uppercase;color:var(--c-muted)}.on-dark .fact-label{color:var(--c-muted-dark)}.fact-value{font-family:var(--f-display);font-weight:700;font-size:clamp(1.3rem,2.4vw,1.8rem);letter-spacing:-.03em;margin:.6rem 0;color:var(--c-scan)}.fact-text{color:var(--c-muted);font-size:.94rem;margin:0}.on-dark .fact-text{color:var(--c-muted-dark)}.member-initials{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--c-ink);color:var(--c-paper);font-family:var(--f-display);font-weight:700;font-size:clamp(2rem,4vw,2.8rem);letter-spacing:-.04em}.member-initials span{opacity:.85}.partners{display:flex;flex-wrap:wrap;align-items:center;gap:clamp(1.75rem,4vw,3.5rem)}.partner-mark{display:inline-flex;align-items:center}.partner-mark img{height:26px;width:auto;opacity:.72;transition:opacity .24s var(--ease)}.partner-mark:hover img{opacity:1}@media (min-width:700px){.partner-mark img{height:30px}}.footer .partner-mark img{height:24px;opacity:.6}.logo-marquee{overflow:hidden;margin-top:2.5rem;background:#fff;border-block:1px solid var(--c-line)}.logo-marquee-track{display:flex;align-items:stretch;width:max-content;animation:logo-scroll 45s linear infinite}.logo-marquee-track img{height:48px;width:auto;max-width:180px;object-fit:contain;flex:none;box-sizing:content-box;padding:1.5rem 3rem;border-right:1px solid var(--c-line);background:#fff}.logo-marquee:hover .logo-marquee-track{animation-play-state:paused}@keyframes logo-scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@media (prefers-reduced-motion:reduce){.logo-marquee-track{animation:none;flex-wrap:wrap;width:auto}}