@font-face{font-family:__Inter_Tight_727f1d;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/c95a17d6aa1ccc69-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:__Inter_Tight_727f1d;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/84792440f5374347-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_Tight_727f1d;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/10735954b8957dce-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_Tight_727f1d;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/69c8297e91a203ed-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:__Inter_Tight_727f1d;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/32ec8d161d520037-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:__Inter_Tight_727f1d;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/ceda3e828136e1b8-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:__Inter_Tight_727f1d;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/103fc5fac08dcb15-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:__Inter_Tight_Fallback_727f1d;src:local("Arial");ascent-override:100.51%;descent-override:25.03%;line-gap-override:0.00%;size-adjust:96.39%}.__className_727f1d{font-family:__Inter_Tight_727f1d,__Inter_Tight_Fallback_727f1d;font-style:normal}.__variable_727f1d{--font-display:"__Inter_Tight_727f1d","__Inter_Tight_Fallback_727f1d"}@font-face{font-family:__Inter_69d019;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-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:__Inter_69d019;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_69d019;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_69d019;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-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:__Inter_69d019;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-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:__Inter_69d019;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-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:__Inter_69d019;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-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:__Inter_69d019;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-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:__Inter_69d019;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_69d019;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_69d019;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-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:__Inter_69d019;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-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:__Inter_69d019;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-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:__Inter_69d019;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-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:__Inter_69d019;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ba9851c3c22cd980-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:__Inter_69d019;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/21350d82a1f187e9-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Inter_69d019;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5fe6dc8356a8c31-s.woff2) format("woff2");unicode-range:u+1f??}@font-face{font-family:__Inter_69d019;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/19cfc7226ec3afaa-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:__Inter_69d019;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/df0a9ae256c0569c-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:__Inter_69d019;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8e9860b6e62d6359-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:__Inter_69d019;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e4af272ccee01ff0-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:__Inter_Fallback_69d019;src:local("Arial");ascent-override:90.49%;descent-override:22.56%;line-gap-override:0.00%;size-adjust:107.06%}.__className_69d019{font-family:__Inter_69d019,__Inter_Fallback_69d019;font-style:normal}.__variable_69d019{--font-body:"__Inter_69d019","__Inter_Fallback_69d019"}@font-face{font-family:__JetBrains_Mono_a3cc63;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_a3cc63;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_a3cc63;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_a3cc63;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_a3cc63;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_a3cc63;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_a3cc63;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_a3cc63;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_a3cc63;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_a3cc63;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_a3cc63;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_a3cc63;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_a3cc63;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_a3cc63{font-family:__JetBrains_Mono_a3cc63,__JetBrains_Mono_Fallback_a3cc63;font-style:normal}.__variable_a3cc63{--font-mono:"__JetBrains_Mono_a3cc63","__JetBrains_Mono_Fallback_a3cc63"}@property --pct{syntax:"<integer>";inherits:false;initial-value:0}@property --ang{syntax:"<angle>";inherits:false;initial-value:0deg}:root{color-scheme:light;--paper:#f4f4f2;--paper-2:#ebebe7;--paper-3:#e2e2dd;--ink:#0f0f0e;--ink-2:#4a4a45;--ink-3:#6b6b65;--ink-4:#b9b9b2;--line:rgba(15,15,14,.11);--line-2:rgba(15,15,14,.2);--hover:rgba(15,15,14,.06);--night:#0f0f0e;--on-night:#f1f1ee;--night-line:hsla(60,10%,94%,.14);--accent:#6d5cff;--accent-ink:#5443e8;--danger:#b42318;--ease:cubic-bezier(.16,1,.3,1);--ease-wipe:cubic-bezier(.7,0,.2,1);--nav-h:76px;--shell:clamp(1rem,3.2vw,2.75rem);--gap:clamp(1rem,2vw,2rem);--radius:clamp(10px,1.1vw,18px);--space-section:clamp(5.5rem,11vw,10rem);--display:var(--font-display),"Inter Tight",system-ui,sans-serif;--body:var(--font-body),"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:var(--font-mono),"JetBrains Mono",ui-monospace,monospace}:root[data-theme=dark]{color-scheme:dark;--paper:#0f0f0e;--paper-2:#181816;--paper-3:#22221f;--ink:#f1f1ee;--ink-2:#b4b4ae;--ink-3:#8c8c86;--ink-4:#45453f;--line:hsla(60,10%,94%,.11);--line-2:hsla(60,10%,94%,.2);--hover:hsla(60,10%,94%,.08);--night:#1a1a18;--on-night:#f1f1ee;--accent-ink:#a99bff;--danger:#ff8a80}*,:after,:before{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--body);font-size:1rem;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;transition:background-color .4s,color .4s}img,svg,video{display:block;max-width:100%}img{height:auto}a{text-decoration:none}a,button{color:inherit}button{font:inherit;background:none;border:0;cursor:pointer}ol,ul{list-style:none}::selection{background:var(--accent);color:#fff}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}main [id]{scroll-margin-top:calc(var(--nav-h) + .5rem)}.shell{width:100%;max-width:1680px;margin-inline:auto;padding-inline:var(--shell)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip{position:fixed;top:.75rem;left:.75rem;z-index:130;transform:translateY(-160%);background:var(--ink);color:var(--paper);font-weight:500;font-size:.9rem;padding:.75rem 1.1rem;border-radius:999px;transition:transform .25s var(--ease)}.skip:focus-visible{transform:none}.display-1,.display-2{font-family:var(--display);font-weight:600;color:var(--ink);text-wrap:balance}.display-1{font-size:clamp(3.1rem,9.2vw,10rem);line-height:.9;letter-spacing:-.05em}.display-2{font-size:clamp(2.4rem,5.6vw,5.6rem);line-height:.95;letter-spacing:-.045em}.lead{font-size:clamp(1.1rem,1.45vw,1.32rem);line-height:1.45;color:var(--ink);max-width:32ch}.lead,.lede{text-wrap:pretty}.lede{font-size:1.1rem;line-height:1.6;max-width:44ch}.lede,.measure{color:var(--ink-3)}.measure{font-family:var(--mono);font-size:.74rem;line-height:1.4;letter-spacing:.01em;font-weight:400}.dot{color:var(--accent)}.lx-mark{display:block;flex:none;transition:transform .8s var(--ease)}.wordmark:hover .lx-mark{transform:rotate(90deg)}.lx-lockup{display:inline-flex;align-items:center;gap:.5em;font-family:var(--display);font-weight:600;letter-spacing:-.035em;line-height:1}.media{border-radius:var(--radius);overflow:hidden;background:var(--paper-2)}.ulink{background:linear-gradient(currentColor,currentColor) no-repeat 0 100%/0 1px;padding-bottom:2px;transition:background-size .5s var(--ease)}.ulink:focus-visible,.ulink:hover{background-size:100% 1px}.mag{display:inline-block;transition:transform .6s var(--ease);will-change:transform}.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-height:52px;padding:0 1.6rem;border-radius:999px;font-weight:500;font-size:.98rem;line-height:1;transition:background-color .35s,color .35s,border-color .35s,transform .35s var(--ease)}.btn:active{transform:scale(.97)}.btn-primary,.form-submit{background:var(--ink);color:var(--paper)}.btn-glow{position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .45s;background:radial-gradient(140px circle at var(--gx,50%) 50%,var(--accent),transparent 75%)}.btn-primary:focus-visible .btn-glow,.btn-primary:hover .btn-glow{opacity:1}.btn-primary:hover,.form-submit:hover{color:#fff}.form-submit:hover{background:var(--accent)}.btn-primary:before{content:"";position:absolute;inset:0;z-index:-2;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--ang),transparent 0 72%,var(--accent) 86%,#fff 90%,transparent 94%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box exclude,linear-gradient(#000 0 0);animation:star 3.6s linear infinite}@keyframes star{to{--ang:360deg}}.btn-ghost{border:1px solid var(--line-2);color:var(--ink)}.btn-ghost:hover{border-color:var(--ink)}.arrow-link{display:inline-flex;align-items:center;gap:.85rem;min-height:44px;font-weight:500;font-size:1.05rem}.arrow-dot{flex:0 0 auto;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--accent);color:#fff;transition:transform .55s var(--ease)}.arrow-link:focus-visible .arrow-dot,.arrow-link:hover .arrow-dot{transform:rotate(45deg)}.arrow-link--lg{font-family:var(--display);font-weight:600;font-size:clamp(1.6rem,3.4vw,2.8rem);letter-spacing:-.035em;line-height:1}.arrow-link--lg .arrow-dot{width:clamp(44px,4vw,60px);height:clamp(44px,4vw,60px)}.arrow-link--lg .arrow-dot svg{width:45%;height:45%}.js .rv{opacity:0;transform:translateY(24px);transition:opacity .9s var(--ease) var(--d,0s),transform .9s var(--ease) var(--d,0s)}.js .rv.in{opacity:1;transform:none}.kw{overflow:hidden;vertical-align:top;padding:0 .04em .14em;margin:0 -.04em -.14em}.kw,.kw>span{display:inline-block}.js .kinetic.rv{opacity:1;transform:none}.js .kinetic.rv .kw>span{transform:translateY(110%);transition:transform 1.05s var(--ease) var(--d,0ms)}.js .kinetic.rv.in .kw>span{transform:none}.js .hero-title .kw>span{transform:translateY(110%);animation:rise 1.15s var(--ease) calc(var(--d,0ms) + var(--intro,.15s)) forwards}html.intro{--intro:1650ms}@keyframes rise{to{transform:none}}.js [data-word]{opacity:.16;transition:opacity .2s linear,filter .2s linear}.ch{transition:font-weight .35s var(--ease)}body:before{content:"";position:fixed;inset:0;z-index:200;pointer-events:none;opacity:.05;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}[data-theme=dark] body:before{mix-blend-mode:screen;opacity:.04}.sparks{inset:0;width:100%;height:100%;z-index:140}.cursor,.sparks{position:fixed;pointer-events:none}.cursor{top:0;left:0;z-index:135;display:grid;place-items:center;width:84px;height:84px;margin:-42px 0 0 -42px;border-radius:50%;background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:.78rem;letter-spacing:.02em;scale:0;opacity:0;transition:scale .45s var(--ease),opacity .3s}.cursor.on{scale:1;opacity:1}.cursor.inv{background:var(--on-night);color:var(--night)}@media (hover:hover) and (pointer:fine){.js [data-cursor]{cursor:none}}[data-tilt]{transition:transform .7s var(--ease);will-change:transform}[data-tilt].tilting{transition:transform .18s ease-out}.glare{position:absolute;inset:0;z-index:2;pointer-events:none;opacity:0;transition:opacity .5s;border-radius:inherit;background:radial-gradient(420px circle at var(--gx,50%) var(--gy,50%),hsla(0,0%,100%,.28),transparent 60%);mix-blend-mode:soft-light}.tilting .glare{opacity:1}[data-spot]{position:relative;isolation:isolate}[data-spot]:before{content:"";position:absolute;inset:-.5rem -1rem;z-index:-1;border-radius:var(--radius);pointer-events:none;background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),color-mix(in srgb,var(--accent) 12%,transparent),transparent 70%);opacity:0;transition:opacity .45s}@media (hover:hover){[data-spot]:hover:before{opacity:1}}.velo{padding-block:clamp(1rem,3vw,2.5rem);overflow:hidden;border-block:1px solid var(--line);-webkit-user-select:none;-moz-user-select:none;user-select:none}.velo-row{display:flex;width:max-content;will-change:transform;font-family:var(--display);font-weight:600;font-size:clamp(2.4rem,7vw,7rem);line-height:1.08;letter-spacing:-.045em;white-space:nowrap}.velo-row--out{color:transparent;-webkit-text-stroke:1px var(--ink-3)}.velo-copy{display:flex;flex:0 0 auto}.velo-copy>span{display:inline-flex;align-items:center}.velo-dot{display:inline-block;width:.2em;height:.2em;margin-inline:.45em;border-radius:50%;background:var(--accent)}.velo-row--out .velo-dot{background:transparent;border:1px solid var(--accent)}.preloader{display:none}html.intro .preloader{display:grid;place-items:center;position:fixed;inset:0;z-index:125;background:var(--night);color:var(--on-night);-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);animation:pl-out .95s var(--ease-wipe) 1.25s forwards}@keyframes pl-out{to{-webkit-clip-path:inset(0 0 100% 0);clip-path:inset(0 0 100% 0);visibility:hidden}}.preloader .measure{position:absolute;bottom:1.5rem;left:var(--shell);color:color-mix(in srgb,var(--on-night) 60%,transparent)}.pl-count{counter-reset:pct var(--pct);animation:pl-count 1.1s cubic-bezier(.4,0,.2,1) forwards;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.pl-count:after{content:counter(pct) "%"}@keyframes pl-count{to{--pct:100}}.pl-mark{display:flex;align-items:baseline;font-size:clamp(2.6rem,8vw,5rem)}.pl-word{font-family:var(--display);font-weight:600;letter-spacing:-.04em;line-height:1;animation:pl-word .9s var(--ease) both}.pl-dot{display:block;width:.22em;height:.22em;margin-left:.06em;border-radius:50%;background:var(--accent);animation:pl-dot .7s var(--ease) .55s both}.pl-knot{width:.86em;height:.86em;margin-right:.22em;align-self:center;flex:none;animation:pl-knot 1s var(--ease) both}@keyframes pl-knot{0%{opacity:0;transform:rotate(-90deg) scale(.6)}}@keyframes pl-word{0%{opacity:0;transform:translateY(.4em)}}@keyframes pl-dot{0%{transform:scale(0)}}.nav{position:fixed;inset:0 0 auto;z-index:100;pointer-events:none}.nav-in{position:relative;height:var(--nav-h);justify-content:space-between;gap:1rem}.nav-in,.nav-pill{display:flex;align-items:center}.nav-pill{pointer-events:auto;gap:2px;padding:3px;border-radius:999px;background:color-mix(in srgb,var(--paper) 80%,transparent);border:1px solid var(--line);-webkit-backdrop-filter:blur(14px) saturate(1.5);backdrop-filter:blur(14px) saturate(1.5);transition:box-shadow .4s,background-color .4s}.nav.scrolled .nav-pill{box-shadow:0 1px 2px rgba(0,0,0,.04),0 10px 30px -14px rgba(0,0,0,.18)}.wordmark{display:flex;padding:0 .9rem 0 .7rem;font-family:var(--display);font-weight:600;font-size:1.38rem;letter-spacing:-.035em;line-height:1}.nav-item,.wordmark{align-items:center;gap:.5rem;height:44px}.nav-item{display:inline-flex;padding:0 1rem;border-radius:999px;font-size:.9rem;font-weight:500;color:var(--ink);white-space:nowrap;transition:background-color .25s,color .25s}.nav-item:hover{background:var(--hover)}.nav-item[aria-pressed=true]{background:var(--accent);color:#fff}.nav-item[hidden]{display:none}.nav-burger{width:44px;padding:0;justify-content:center}.burger{position:relative;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ink);color:var(--paper);transition:background-color .3s}.burger i{position:absolute;width:12px;height:1.5px;background:currentColor;transition:transform .5s var(--ease-wipe)}.burger i:first-child{transform:translateY(-2.5px)}.burger i:last-child{transform:translateY(2.5px)}.menu-open .burger{background:var(--accent);color:#fff}.menu-open .burger i:first-child{transform:rotate(45deg)}.menu-open .burger i:last-child{transform:rotate(-45deg)}.menu{position:fixed;inset:0;z-index:99;overflow-y:auto;overscroll-behavior:contain;background:var(--night);color:var(--on-night);visibility:hidden;pointer-events:none;-webkit-clip-path:circle(0 at calc(100% - var(--shell) - 26px) calc(var(--nav-h) / 2));clip-path:circle(0 at calc(100% - var(--shell) - 26px) calc(var(--nav-h) / 2));transition:visibility 0s linear .8s,-webkit-clip-path .8s var(--ease-wipe);transition:clip-path .8s var(--ease-wipe),visibility 0s linear .8s;transition:clip-path .8s var(--ease-wipe),visibility 0s linear .8s,-webkit-clip-path .8s var(--ease-wipe)}.menu-open .menu,html:not(.js) .menu:target{visibility:visible;pointer-events:auto;-webkit-clip-path:circle(150% at calc(100% - var(--shell) - 26px) calc(var(--nav-h) / 2));clip-path:circle(150% at calc(100% - var(--shell) - 26px) calc(var(--nav-h) / 2));transition:visibility 0s,-webkit-clip-path .9s var(--ease-wipe);transition:clip-path .9s var(--ease-wipe),visibility 0s;transition:clip-path .9s var(--ease-wipe),visibility 0s,-webkit-clip-path .9s var(--ease-wipe)}.menu .measure{color:color-mix(in srgb,var(--on-night) 62%,transparent)}.menu-in{min-height:100dvh;display:flex;flex-direction:column;justify-content:space-between;padding-top:calc(var(--nav-h) + 1.5rem);padding-bottom:2rem}.menu-close-nojs{display:none}html:not(.js) .menu-close-nojs{display:inline-block;margin-bottom:1.5rem}.menu-grid{display:grid;grid-template-columns:7fr 5fr;grid-gap:clamp(2rem,5vw,5rem);gap:clamp(2rem,5vw,5rem);align-items:center}.menu-list li{overflow:hidden}.menu-list a{display:flex;align-items:baseline;gap:clamp(.9rem,2vw,1.5rem);padding:.1rem 0;transform:translateY(110%);transition:transform .8s var(--ease-wipe) 0s}.menu-open .menu-list a,html:not(.js) .menu:target .menu-list a{transform:none;transition-delay:calc(var(--d) + .25s)}.menu-dot{flex:0 0 auto;align-self:center;width:10px;height:10px;border-radius:50%;background:var(--accent);transform:scale(0);transition:transform .5s var(--ease)}.menu-label{font-family:var(--display);font-weight:600;font-size:clamp(2.8rem,7.4vw,6.8rem);line-height:1;letter-spacing:-.05em;color:color-mix(in srgb,var(--on-night) 55%,transparent);transition:color .3s}.menu-list a:focus-visible .menu-label,.menu-list a:hover .menu-label{color:var(--on-night)}.menu-list a:focus-visible .menu-dot,.menu-list a:hover .menu-dot{transform:scale(1)}.menu-list a:focus-visible{outline-offset:-2px}.menu-preview{position:relative;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;background:hsla(0,0%,100%,.05);border:1px solid var(--night-line);opacity:0;transform:translateY(1.5rem);transition:opacity .8s var(--ease),transform .8s var(--ease)}.menu-open .menu-preview,html:not(.js) .menu:target .menu-preview{opacity:1;transform:none;transition-delay:.35s}.menu-slide{position:absolute;inset:0;opacity:0;transform:scale(1.05);transition:opacity .7s var(--ease),transform 1s var(--ease)}.menu-slide.on,html:not(.js) .menu-slide:first-child{opacity:1;transform:none}.menu-slide img{width:100%;height:100%;object-fit:cover;object-position:top}.menu-caption{position:absolute;left:1rem;bottom:1rem;padding:.4rem .8rem;border-radius:999px;background:rgba(15,15,14,.7);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.menu .menu-caption{color:#f1f1ee}.menu-foot{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:2rem;gap:2rem;align-items:center;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--night-line);opacity:0;transition:opacity .6s}.menu-open .menu-foot,html:not(.js) .menu:target .menu-foot{opacity:1;transition-delay:.5s}.menu-contact{font-size:.9rem;color:color-mix(in srgb,var(--on-night) 70%,transparent)}.menu-contact p{margin-top:.25rem}.menu-foot .seg{justify-self:end}.seg{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--night-line)}.seg,.seg label{border-radius:999px}.seg label{cursor:pointer;padding:.45rem .9rem;font-size:.78rem;font-weight:500;color:color-mix(in srgb,var(--on-night) 70%,transparent);transition:background-color .25s,color .25s}.seg label:hover{color:var(--on-night)}.seg label:has(input:checked){background:var(--on-night);color:var(--night)}.seg label:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative;isolation:isolate;padding:calc(var(--nav-h) + clamp(4rem,12vh,9rem)) 0 clamp(4rem,8vw,7rem)}.hero-dots{position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity 1.2s var(--ease) .4s;-webkit-mask:radial-gradient(120% 90% at 70% 40%,#000 30%,transparent 85%);mask:radial-gradient(120% 90% at 70% 40%,#000 30%,transparent 85%)}.hero-dots.on{opacity:1}.hero-title{max-width:11ch}.hero-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap);align-items:end;margin-top:clamp(2.5rem,5vw,4rem)}.hero-row .lead{grid-column:1/6;color:var(--ink-2)}.hero-actions{grid-column:7/13;justify-self:end;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.tools-in{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,9fr);grid-gap:var(--gap);gap:var(--gap);align-items:center;padding-block:1rem}.marquee{display:flex;overflow:hidden;-webkit-mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee-track{display:flex;flex:0 0 auto;min-width:100%;align-items:center;justify-content:space-around;gap:clamp(2.2rem,4vw,3.6rem);padding-right:clamp(2.2rem,4vw,3.6rem);animation:marq 46s linear infinite}.marquee:hover .marquee-track{animation-play-state:paused}.marquee{padding-block:2.4rem .6rem;margin-block:-2.4rem -.6rem}.marquee-track li{position:relative;flex:0 0 auto}.marquee-track img{width:22px;height:22px;opacity:.35;transition:opacity .25s,transform .45s var(--ease)}.marquee-track li:hover img{opacity:1;transform:scale(1.45) translateY(-2px)}.marquee-track li:after{content:attr(data-name);position:absolute;left:50%;bottom:calc(100% + .7rem);translate:-50% 4px;padding:.25rem .55rem;border-radius:999px;background:var(--ink);color:var(--paper);font-family:var(--mono);font-size:.68rem;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .25s,translate .35s var(--ease)}.marquee-track li:hover:after{opacity:1;translate:-50% 0}[data-theme=dark] .marquee-track img{filter:invert(1)}@keyframes marq{to{transform:translateX(-100%)}}.sec{padding-block:var(--space-section)}.sec-head{display:flex;flex-direction:column;gap:1.5rem;margin-bottom:clamp(3.5rem,7vw,6.5rem)}.sec-head h2{max-width:14ch}.empty{border:1px dashed var(--line-2);border-radius:var(--radius);padding:clamp(1.75rem,4vw,3rem);max-width:46rem}.empty p{margin-top:.75rem;color:var(--ink-2);font-size:1.05rem}.cases{display:grid;grid-template-columns:minmax(0,1fr);grid-gap:clamp(6rem,12vw,11rem);gap:clamp(6rem,12vw,11rem)}.cases.stack-on{gap:clamp(3rem,12vh,8rem)}.stack-on .case{position:-webkit-sticky;position:sticky;top:calc(var(--nav-h) + 1rem + var(--i,0) * 14px);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap);align-items:start;padding:clamp(1rem,1.5vw,1.5rem);background:var(--paper);border:1px solid var(--line);border-radius:calc(var(--radius) + 6px);transform-origin:50% 0;transform:scale(calc(1 - var(--out,0) * .05));isolation:isolate}.stack-on .case:after{content:"";position:absolute;inset:-1px;border-radius:inherit;background:#000;pointer-events:none;z-index:3;opacity:calc(var(--out,0) * .07)}[data-theme=dark] .stack-on .case:after{opacity:calc(var(--out,0) * .4)}.stack-on .case-media{grid-column:1/8}.stack-on .shot img{max-height:min(60vh,34rem)}.stack-on .case-body{grid-column:8/13;display:flex;flex-direction:column;gap:1.5rem;margin-top:0;padding-block:.5rem}.stack-on .case-name h3{font-size:clamp(1.8rem,2.6vw,2.6rem)}.stack-on .nums{gap:1.25rem 2rem}.stack-on .case-detail .arrow-link,.stack-on .nums{margin-top:1.25rem}.shot{position:relative;display:block;width:100%;padding:0;border-radius:var(--radius);overflow:hidden;background:var(--paper-2);box-shadow:0 0 0 1px var(--line);cursor:zoom-in}.shot img{width:100%;aspect-ratio:16/9;object-fit:cover;object-position:top;transition:transform 1.2s var(--ease)}.shot:hover img{transform:scale(1.02)}.case-blank{aspect-ratio:16/9}.case-body{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap);margin-top:clamp(1.75rem,3vw,2.5rem)}.case-name{grid-column:1/6}.case-detail{grid-column:7/13}.case-meta{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:.9rem}.case-name h3{font-family:var(--display);font-weight:600;font-size:clamp(2rem,3.4vw,3.3rem);line-height:1;letter-spacing:-.04em;text-wrap:balance}.case-name h3 a{transition:color .3s}.case-name h3 a:hover,.case-title{color:var(--ink-2)}.case-title{margin-top:.75rem;font-size:1.08rem;line-height:1.4}.case-sum{color:var(--ink-2);font-size:1.02rem;line-height:1.65;max-width:52ch;text-wrap:pretty}.case-detail .arrow-link{margin-top:1.75rem}.nums{display:flex;flex-wrap:wrap;gap:1.5rem 3rem;margin-top:2rem}.nums div{display:flex;flex-direction:column-reverse}.nums dd{font-family:var(--display);font-weight:600;font-size:clamp(1.9rem,2.8vw,2.6rem);line-height:1;letter-spacing:-.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.nums dt{margin-top:.5rem;max-width:20ch;font-size:.85rem;color:var(--ink-3)}.chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1.4rem}.chips li{padding:.32rem .75rem;border:1px solid var(--line-2);border-radius:999px;font-size:.78rem;color:var(--ink-2)}.svc-list{border-top:1px solid var(--line)}.svc{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap);align-items:baseline;padding-block:clamp(2rem,3.4vw,3rem);border-bottom:1px solid var(--line)}.svc-no{grid-column:1/2}.svc h3{grid-column:2/7;font-family:var(--display);font-weight:600;font-size:clamp(1.45rem,2.4vw,2.2rem);line-height:1.05;letter-spacing:-.035em;transition:transform .6s var(--ease)}.svc p{grid-column:8/13;color:var(--ink-3);font-size:1rem;line-height:1.65;max-width:46ch}.svc:hover h3{transform:translateX(.5rem)}.about-row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--gap)}.badge{position:relative;flex:0 0 auto;display:grid;place-items:center;width:clamp(128px,13vw,184px);aspect-ratio:1;border-radius:50%}.badge-ring{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.badge-ring text{font-family:var(--mono);font-size:15px;letter-spacing:.06em;fill:var(--ink)}.badge-core{display:grid;place-items:center;width:42%;aspect-ratio:1;border-radius:50%;background:var(--accent);color:#fff;transition:transform .6s var(--ease)}.badge:focus-visible .badge-core,.badge:hover .badge-core{transform:scale(1.12) rotate(45deg)}.statement{margin-top:1.75rem;max-width:26ch;font-family:var(--display);font-weight:500;font-size:clamp(2rem,4.4vw,4.4rem);line-height:1.08;letter-spacing:-.035em;text-wrap:pretty}.people{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));grid-gap:clamp(4rem,5vw,4.5rem) clamp(1.5rem,3vw,3rem);gap:clamp(4rem,5vw,4.5rem) clamp(1.5rem,3vw,3rem)}.person{display:flex;flex-direction:column}.person-face{position:relative;aspect-ratio:4/5}.person-face img{width:100%;height:100%;object-fit:cover;filter:grayscale(1) contrast(1.04);transition:filter .9s var(--ease),transform 1.2s var(--ease)}.person:hover .person-face img{filter:none;transform:scale(1.03)}.person-mono{display:grid;place-items:center;height:100%;font-family:var(--display);font-weight:600;font-size:clamp(3rem,6vw,5rem);letter-spacing:-.04em;color:var(--ink-4)}.person-meta{margin-top:1.4rem}.person h3{margin-top:.35rem;font-family:var(--display);font-weight:600;font-size:1.8rem;line-height:1.05;letter-spacing:-.035em}.person-bio{margin-top:.9rem;color:var(--ink-2);font-size:.97rem;line-height:1.6;text-wrap:pretty}.person-prev{margin-top:.9rem;font-size:.9rem;line-height:1.5;color:var(--ink-3)}.person-link{display:inline-flex;align-items:center;gap:.45rem;min-height:44px;margin-top:.5rem;font-size:.9rem;font-weight:500}.dossier{margin-top:auto;border-top:1px solid var(--line)}.person-bio,.person-prev{margin-bottom:1.25rem}.person-bio:has(+.person-prev){margin-bottom:0}.dossier summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:48px;cursor:pointer;list-style:none;font-size:.92rem;font-weight:500;transition:color .25s}.dossier summary::-webkit-details-marker{display:none}.dossier summary:hover{color:var(--ink-2)}.dossier-mark{position:relative;width:11px;height:11px;flex:0 0 auto}.dossier-mark:after,.dossier-mark:before{content:"";position:absolute;left:0;top:5px;width:11px;height:1.5px;background:currentColor;transition:transform .4s var(--ease)}.dossier-mark:after{transform:rotate(90deg)}.dossier[open] .dossier-mark:after{transform:rotate(0)}.dossier-body{display:flex;flex-direction:column;gap:1.5rem;padding:.5rem 0 1rem;animation:dossier-in .45s var(--ease) both}@keyframes dossier-in{0%{opacity:0;transform:translateY(-4px)}}.dossier-headline{padding-left:.9rem;border-left:2px solid var(--accent);font-size:1rem;line-height:1.5;text-wrap:pretty}.cv-block h4{margin-bottom:.75rem}.cv,.cv-plain{display:flex;flex-direction:column}.cv{gap:1rem}.cv li{display:flex;flex-direction:column;gap:.15rem;padding-left:.9rem;border-left:1px solid var(--line)}.cv li b{font-size:.92rem;font-weight:600;line-height:1.35}.cv-org{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.5rem;font-size:.86rem;color:var(--ink-2)}.cv-org i{font-style:normal}.cv-loc{font-size:.78rem;color:var(--ink-3)}.cv li p{margin-top:.25rem;font-size:.86rem;line-height:1.55;color:var(--ink-2)}.cv-plain{gap:.4rem}.cv-plain li{font-size:.86rem;color:var(--ink-2)}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap)}.step{position:relative;padding-top:1.5rem}.step:after,.step:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:var(--line-2)}.step:after{background:var(--ink);transform:scaleX(0);transform-origin:left;transition:transform 1.4s var(--ease) calc(var(--d,0s) + .25s)}.step.in:after,html:not(.js) .step:after{transform:none}.beam-on .step:after{transform:scaleX(var(--p,0));transition:none}.step-dot{position:absolute;top:0;left:calc(var(--p,0) * 100%);width:9px;height:9px;margin:-4px 0 0 -4.5px;border-radius:50%;background:var(--accent);scale:0;transition:scale .45s var(--ease)}.beam-on .step.lit .step-dot{scale:1}.beam-on .step-no{transition:color .6s var(--ease)}.beam-on .step.lit .step-no{color:var(--ink)}.step-no{display:block;font-family:var(--display);font-weight:500;font-size:clamp(3.2rem,6vw,5.6rem);line-height:1;letter-spacing:-.06em;color:var(--ink-4);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.step h3{margin-top:2.5rem;font-family:var(--display);font-weight:600;font-size:1.6rem;letter-spacing:-.03em}.step p{margin-top:.75rem;color:var(--ink-3);font-size:.97rem;line-height:1.6;max-width:32ch}.flow{position:relative}.flow-rail{position:absolute;top:0;left:0;right:0;height:1px;background:var(--line-2)}.flow-rail:after{content:"";position:absolute;inset:0;background:var(--accent);transform-origin:left;transform:scaleX(var(--p,1));transition:transform 1.1s var(--ease)}.flow-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap);padding-top:1.5rem}.flow-step{display:flex;flex-direction:column;gap:1rem;transition:opacity .6s var(--ease),transform .8s var(--ease)}.run .flow-step:not(.on){opacity:.22;transform:translateY(10px)}.flow-top{display:flex;align-items:center;gap:.5rem}.flow-top img{width:16px;height:16px;opacity:.7}[data-theme=dark] .flow-top img{filter:invert(1)}.flow-t{margin-left:auto;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.flow-ai{width:14px;height:14px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 22%,transparent)}.flow-step h3{font-family:var(--display);font-weight:600;font-size:1.35rem;letter-spacing:-.03em;line-height:1.1}.flow-card{display:flex;flex-direction:column;gap:.7rem;flex:1 1;padding:1.1rem;border-radius:var(--radius);background:var(--paper-2);border:1px solid var(--line)}.flow-msg{align-self:flex-start;max-width:100%;padding:.7rem .9rem;border-radius:16px 16px 16px 4px;background:var(--paper);border:1px solid var(--line);font-size:.93rem;line-height:1.45;color:var(--ink)}.flow-msg--out{align-self:flex-end;border-radius:16px 16px 4px 16px;background:var(--ink);color:var(--paper);border-color:transparent}.run .flow-msg--out:empty{visibility:hidden}.flow-inv b{font-family:var(--display);font-weight:600;font-size:clamp(1.8rem,2.6vw,2.4rem);letter-spacing:-.04em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.flow-pill{align-self:flex-start;display:inline-flex;align-items:center;gap:.45rem;padding:.3rem .75rem;border-radius:999px;border:1px solid var(--line-2);font-family:var(--mono);font-size:.74rem;color:var(--ink-2);transition:color .3s,border-color .3s}.flow-pill:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--ink-4);transition:background-color .3s,scale .5s var(--ease)}.flow-pill.paid{color:var(--ink);border-color:var(--ink)}.flow-pill.paid:before{background:var(--accent);scale:1.3}.flow-sheet{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:.7rem;color:var(--ink-2)}.flow-sheet td{padding:.45rem .35rem;border-bottom:1px solid var(--line);white-space:nowrap}.flow-sheet td:first-child{padding-left:0}.flow-sheet td:last-child{padding-right:0;text-align:right}.flow-new td{color:var(--ink);transition:opacity .5s var(--ease),transform .7s var(--ease)}.flow-new td:last-child{color:var(--accent-ink)}.run .flow-step:not(.on) .flow-new td{opacity:0;transform:translateY(-8px)}.flow-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;margin-top:clamp(1.75rem,3vw,2.5rem)}.flow-replay{display:none}.flow-live .flow-replay{display:inline-flex}.calc{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap);align-items:start}.calc-in{grid-column:1/7;display:flex;flex-direction:column;gap:2.25rem}.calc-field label{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;font-size:1.02rem;color:var(--ink-2)}.calc-field output{font-size:.9rem;color:var(--ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:4ch;text-align:right}.calc-field input{--fill:50%;display:block;width:100%;height:44px;margin-top:.35rem;background:transparent;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none}.calc-field input:focus{outline:none}.calc-field input::-webkit-slider-runnable-track{height:2px;border-radius:2px;background:linear-gradient(90deg,var(--accent) var(--fill),var(--line-2) var(--fill))}.calc-field input::-moz-range-track{height:2px;border-radius:2px;background:var(--line-2)}.calc-field input::-moz-range-progress{height:2px;border-radius:2px;background:var(--accent)}.calc-field input::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;margin-top:-10px;border-radius:50%;background:var(--ink);border:3px solid var(--paper);box-shadow:0 0 0 1px var(--ink);-webkit-transition:scale .3s var(--ease);transition:scale .3s var(--ease)}.calc-field input::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--ink);border:3px solid var(--paper);box-shadow:0 0 0 1px var(--ink)}.calc-field input:active::-webkit-slider-thumb,.calc-field input:hover::-webkit-slider-thumb{scale:1.2}.calc-field input:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 1px var(--ink),0 0 0 6px color-mix(in srgb,var(--accent) 30%,transparent)}.calc-field input:focus-visible::-moz-range-thumb{box-shadow:0 0 0 1px var(--ink),0 0 0 6px color-mix(in srgb,var(--accent) 30%,transparent)}.calc-out{grid-column:8/13;padding-top:1.5rem;border-top:1px solid var(--ink)}.calc-big{margin-top:1rem;font-family:var(--display);font-weight:600;font-size:clamp(3rem,6.4vw,6.2rem);line-height:.95;letter-spacing:-.05em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.calc-big span{font-size:.32em;letter-spacing:-.02em;color:var(--ink-3)}.calc-hours{margin-top:1rem;max-width:32ch;color:var(--ink-2)}.calc-hours output{color:var(--ink);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.calc-cta{margin-top:2rem}.calc-note{margin-top:1.25rem}.quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(380px,100%),1fr));grid-gap:clamp(2.5rem,4vw,4rem) var(--gap);gap:clamp(2.5rem,4vw,4rem) var(--gap)}.quote{margin:0;padding-top:1.5rem;border-top:1px solid var(--line-2)}.quote blockquote{font-family:var(--display);font-weight:500;font-size:clamp(1.35rem,2.1vw,1.9rem);line-height:1.2;letter-spacing:-.025em;text-wrap:pretty}.quote blockquote:before{content:"\201C";color:var(--accent)}.quote blockquote:after{content:"\201D"}.quote figcaption{display:flex;flex-direction:column;gap:.2rem;margin-top:1.25rem;font-size:.95rem}.contact-title{margin-top:1.5rem;max-width:12ch}.contact-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap);margin-top:clamp(2.5rem,5vw,4.5rem)}.contact-copy{grid-column:1/6}.contact-copy .lead{max-width:36ch;color:var(--ink-2)}.contact-copy .arrow-link{margin-top:2rem}.contact-form{grid-column:7/13}.contact-cta{margin-top:2rem}.contact-or{margin-top:1.25rem;max-width:34ch;font-size:.92rem;color:var(--ink-3)}.form{display:flex;flex-direction:column;gap:1.5rem}.form-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:1.5rem;gap:1.5rem}.field{display:flex;flex-direction:column;gap:.3rem}.field>span{font-family:var(--mono);font-size:.74rem;color:var(--ink-3)}.field>span i{font-style:normal;opacity:.75}.field input,.field textarea{width:100%;font:inherit;font-size:1.05rem;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line-2);border-radius:0;padding:.6rem 0;transition:border-color .25s,box-shadow .25s}.field textarea{resize:vertical;min-height:6.5rem;line-height:1.5}.field input::placeholder,.field textarea::placeholder{color:var(--ink-4)}.field input:hover,.field textarea:hover{border-color:var(--ink-3)}.field input:focus,.field textarea:focus{outline:none;border-color:var(--ink);box-shadow:0 1px 0 var(--ink)}.field [aria-invalid=true]{border-color:var(--danger)}.field em{font-style:normal;font-size:.82rem;color:var(--danger)}.form-alert{padding:.9rem 1rem;border-radius:12px;border:1px solid var(--danger);color:var(--ink);font-size:.95rem}.form-alert a{text-decoration:underline}.form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:1.25rem;margin-top:.25rem}.form-foot>span{color:var(--ink-3);font-size:.9rem}.form-foot a{color:var(--ink);text-decoration:underline;text-underline-offset:3px}.form-submit[disabled]{opacity:.6;cursor:progress}.form-done{padding:clamp(1.5rem,3vw,2.25rem);border-radius:var(--radius);background:var(--paper-2)}.form-done h3{font-family:var(--display);font-weight:600;font-size:2rem;letter-spacing:-.035em}.form-done p{margin-top:.6rem;color:var(--ink-2)}.hp{position:absolute;left:-9999px;width:1px;height:1px}.foot,.hp{overflow:hidden}.foot{background:var(--night);color:var(--on-night);padding-top:clamp(4rem,8vw,7rem)}.foot .measure{color:color-mix(in srgb,var(--on-night) 58%,transparent)}.foot-top{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:2.5rem var(--gap);gap:2.5rem var(--gap)}.foot-lead{grid-column:1/6;gap:1.1rem}.foot-col,.foot-lead{display:flex;flex-direction:column;align-items:flex-start}.foot-col{grid-column:span 2;gap:1rem}.foot-col--wide{grid-column:span 3}.foot-col ul{display:grid;grid-gap:.4rem;gap:.4rem;font-size:.95rem}.foot-mark{margin-top:clamp(3rem,8vw,6rem);font-family:var(--display);font-weight:600;font-size:clamp(5rem,25vw,26rem);line-height:.78;letter-spacing:-.065em;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;user-select:none;position:relative;touch-action:none}.foot-mark.falling .ch,.foot-mark.falling .dot{position:absolute;left:0;top:0;display:block;transition:none;will-change:transform;cursor:-webkit-grab;cursor:grab}.foot-mark.falling .ch:active,.foot-mark.falling .dot:active{cursor:-webkit-grabbing;cursor:grabbing}.foot-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 1.5rem;margin-top:clamp(1rem,2vw,1.75rem);padding-block:1.25rem 1.5rem;border-top:1px solid var(--night-line)}.foot-base a{color:var(--on-night)}.lb{position:fixed;inset:0;z-index:130;display:none;place-items:center;padding:clamp(1rem,4vw,3rem);background:color-mix(in srgb,var(--night) 92%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.lb.open{display:grid;animation:lb-in .3s var(--ease)}@keyframes lb-in{0%{opacity:0}}.lb-img{max-width:min(1280px,100%);max-height:88vh;width:auto;height:auto;border-radius:var(--radius);box-shadow:0 40px 100px -20px rgba(0,0,0,.6)}.lb-close{position:absolute;top:clamp(1rem,3vw,1.6rem);right:clamp(1rem,3vw,1.6rem);width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--on-night);color:var(--night);font-size:1.5rem;line-height:1;transition:transform .4s var(--ease)}.lb-close:hover{transform:rotate(90deg)}.case-page{padding-top:var(--nav-h)}.case-head{padding-block:clamp(2.5rem,7vw,5.5rem) clamp(2.5rem,5vw,4rem)}.back-link{display:inline-block;margin-bottom:clamp(2rem,4vw,3rem);color:var(--ink)}.case-h1{margin-top:1.25rem;max-width:15ch;font-size:clamp(2.8rem,7.2vw,8rem)}.case-intro{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-gap:var(--gap);gap:var(--gap);margin-top:clamp(2rem,5vw,4rem)}.case-intro .lead{grid-column:1/7;max-width:40ch}.case-intro>div{grid-column:8/13}.case-intro .nums{margin-top:0;padding-top:0;border:0}.case-shots{display:grid;grid-gap:var(--gap);gap:var(--gap);padding-bottom:clamp(4rem,8vw,7rem)}.case-shots figure{margin:0;box-shadow:0 0 0 1px var(--line)}.case-shots img{width:100%}.case-more{padding-block:clamp(3rem,6vw,5rem);border-top:1px solid var(--line)}.more-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));grid-gap:var(--gap);gap:var(--gap);margin-top:1.5rem}.more-card{display:flex;flex-direction:column;gap:.3rem}.more-card .media{display:block;aspect-ratio:16/10;margin-bottom:.75rem}.more-card .media img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform 1.2s var(--ease)}.more-card:hover .media img{transform:scale(1.03)}.more-card b{font-family:var(--display);font-weight:600;font-size:1.4rem;letter-spacing:-.03em}.nf{min-height:100dvh;display:flex;align-items:flex-end;padding-block:clamp(3rem,8vw,6rem)}.nf h1{margin-top:1.25rem}.nf .lead{margin-top:1.5rem}.nf .btn{margin-top:2rem}@media (max-width:1100px){.hero-row .lead{grid-column:1/8}.hero-actions{grid-column:8/13}}@media (max-width:900px){.hide-md{display:none}.hero-actions,.hero-row .lead{grid-column:1/-1;justify-self:start}.tools-in{grid-template-columns:minmax(0,1fr)}.case-detail,.case-name{grid-column:1/-1}.svc{grid-template-columns:auto 1fr;row-gap:.75rem}.svc-no{grid-column:1/2}.svc h3,.svc p{grid-column:2/3}.steps{row-gap:3.5rem}.flow-steps,.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.flow-steps{row-gap:2.5rem}.calc-in,.calc-out{grid-column:1/-1}.calc-out{margin-top:1.5rem}.contact-copy,.contact-form{grid-column:1/-1}.contact-form{margin-top:2.5rem}.menu-grid{grid-template-columns:1fr}.menu-preview{display:none}.menu-foot{grid-template-columns:1fr;gap:1.25rem}.menu-foot .seg{justify-self:start}.case-intro .lead,.case-intro>div,.foot-col,.foot-col--wide,.foot-lead{grid-column:1/-1}}@media (max-width:600px){.about-row{flex-direction:column;align-items:flex-start}.flow-steps,.form-row,.steps{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-delay:0s!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}.js .rv,.kw>span{opacity:1!important}.js .rv,.kw>span,.mag{transform:none!important}.btn-primary:before{display:none}}@media (forced-colors:active){.lb,.menu,.nav-pill{-webkit-backdrop-filter:none;backdrop-filter:none;background:Canvas;color:CanvasText}.calc-field input{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.btn,.form-submit,.seg{border:1px solid ButtonText}:focus-visible{outline:2px solid Highlight}}