@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/8a053b136321ec99-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:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/2a8fe189f1a8dd0c-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:Archivo;font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(/_next/static/media/c214ffb7f5362987-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_7347c0{font-family:Archivo,Archivo Fallback;font-style:normal}.__variable_7347c0{--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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/7b19b489dc6743ba-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/28793f5c5e3d822d-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/c9c3823090ec8b55-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/b3bf17a9041d9433-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/2801417b65625cf5-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Sans;font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url(/_next/static/media/26d4368bf94c0ec4-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:IBM Plex Sans Fallback;src:local("Arial");ascent-override:101.32%;descent-override:27.18%;line-gap-override:0.00%;size-adjust:101.17%}.__className_987bfa{font-family:IBM Plex Sans,IBM Plex Sans Fallback;font-style:normal}.__variable_987bfa{--font-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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:IBM Plex Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/d3ebbfd689654d3a-s.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-20c4,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_9f0762{font-family:IBM Plex Mono,IBM Plex Mono Fallback;font-style:normal}.__variable_9f0762{--font-mono:"IBM Plex Mono","IBM Plex Mono Fallback"}:root{--paper:#f4f5f2;--paper-2:#e9ebe6;--ink:#141820;--ink-2:#4a5160;--line:#d3d6ce;--accent:#2238b8;--accent-ink:#18288a;--fixed:#1d7a46;--connected:#2238b8;--watched:#8a5a00;--font-d:var(--font-display),"Arial Narrow",Arial,sans-serif;--font-b:var(--font-body),system-ui,-apple-system,"Segoe UI",sans-serif;--font-m:var(--font-mono),ui-monospace,Menlo,Consolas,monospace}*,:after,:before{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-b);font-size:1.0625rem;line-height:1.6;-webkit-font-smoothing:antialiased}h1,h2,h3{font-family:var(--font-d);font-stretch:112%;line-height:1.08;margin:0;text-wrap:balance;letter-spacing:-.01em}h1{font-size:clamp(2.3rem,5.2vw,4rem);font-weight:800}h2{font-size:clamp(1.8rem,3.4vw,2.6rem);font-weight:750}h3{font-size:1.35rem;font-weight:700}p{margin:0}a{color:inherit}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:2px}main:focus{outline:none}.wrap{max-width:1160px;margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;background:var(--ink);color:var(--paper);padding:10px 16px;border-radius:6px;font-weight:600}.skip-link:focus{top:12px}.eyebrow{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:var(--accent);margin-bottom:14px}.eyebrow,.mono-muted{font-family:var(--font-m)}.mono-muted{color:var(--ink-2)}.btn{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:#fff;text-decoration:none;font-weight:600;padding:14px 24px;border-radius:6px;border:2px solid var(--accent);transition:background-color .15s,border-color .15s}.btn:hover{background:var(--accent-ink);border-color:var(--accent-ink)}.btn-small{padding:9px 16px;font-size:.95rem}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.logo{display:inline-flex;align-items:center;gap:10px;color:var(--accent)}.logo-word{font-family:var(--font-d);font-stretch:118%;font-weight:800;font-size:1.2rem;color:var(--ink);letter-spacing:-.01em}.logo-sub{font-family:var(--font-m);font-stretch:normal;font-weight:400;font-size:.68rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-2);margin-left:8px}.logo-link{text-decoration:none}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--paper) 92%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;gap:24px;padding-block:14px}.site-header nav{margin-left:auto}.nav-list{display:flex;gap:28px;list-style:none;margin:0;padding:0}.nav-list a{text-decoration:none;font-weight:500;color:var(--ink-2)}.nav-list a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}@media (max-width:760px){.site-header nav{display:none}.header-inner .btn{margin-left:auto}.logo-sub{display:none}}.hero{padding-block:clamp(48px,8vw,104px) clamp(56px,8vw,96px)}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;grid-gap:clamp(32px,5vw,64px);gap:clamp(32px,5vw,64px);align-items:center}.hero-copy{display:grid;grid-gap:22px;gap:22px;min-width:0}.hero-copy .eyebrow{margin-bottom:0}.accent{color:var(--accent)}.lede{font-size:1.2rem;color:var(--ink-2);max-width:36em}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px}.stack-panel{margin:0;min-width:0;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:0 1px 0 var(--line),0 18px 40px -24px rgba(20,24,32,.35);overflow-x:auto}.stack-head{display:flex;justify-content:space-between;gap:12px;padding:14px 18px;border-bottom:1px solid var(--line);font-family:var(--font-m);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em}.stack-table{width:100%;border-collapse:collapse;font-size:.92rem}.stack-table td,.stack-table th{text-align:left;padding:12px 18px;border-bottom:1px solid var(--paper-2);vertical-align:middle}.stack-table tbody tr:last-child>*{border-bottom:0}.stack-table thead th{font-family:var(--font-m);font-weight:400;font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-2)}.stack-table tbody th{font-weight:600;white-space:nowrap}.stack-table td{color:var(--ink-2)}.pill{display:inline-block;font-family:var(--font-m);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;padding:3px 9px;border-radius:99px;border:1px solid;white-space:nowrap}.pill-fixed{color:var(--fixed)}.pill-connected{color:var(--connected)}.pill-running{color:var(--ink)}.pill-watched{color:var(--watched)}@media (max-width:900px){.hero-grid{grid-template-columns:1fr}}.section{padding-block:clamp(64px,9vw,112px);border-top:1px solid var(--line)}.section h2{max-width:22ch}.section-intro{color:var(--ink-2);margin-top:14px;max-width:60ch}.section-tint{background:var(--paper-2)}.section-ink{background:var(--ink);color:var(--paper);border-top:0}.section-ink .eyebrow{color:#93a3ff}.signs{padding-block:clamp(48px,7vw,80px)}.signs-list{list-style:none;padding:0;margin:32px 0 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));grid-gap:0 40px;gap:0 40px}.signs-list li{padding:16px 0 16px 30px;border-top:1px solid var(--line);position:relative}.signs-list li:before{content:"→";position:absolute;left:0;color:var(--accent);font-weight:600}.services{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:40px;gap:40px;margin-top:48px}.service{border-top:3px solid var(--ink);padding-top:20px;display:grid;grid-gap:12px;gap:12px;align-content:start}.service h3{font-size:2rem;font-weight:800}.service-lead{font-weight:500}.service ul{list-style:none;margin:4px 0 0;padding:0;color:var(--ink-2)}.service li{padding:8px 0;border-bottom:1px solid var(--line)}@media (max-width:860px){.services{grid-template-columns:1fr;gap:36px}}.work-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:24px;gap:24px;margin-top:40px}.case{background:#fff;border:1px solid var(--line);border-radius:10px;padding:28px;display:grid;grid-gap:16px;gap:16px;align-content:start;min-width:0}.case-meta{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px;font-family:var(--font-m);font-size:.78rem;color:var(--ink-2)}.case-tags{display:flex;gap:6px}.tag{border:1px solid var(--line);border-radius:4px;padding:1px 8px}@media (max-width:860px){.work-grid{grid-template-columns:1fr}}.steps{list-style:none;padding:0;margin:48px 0 0;display:grid;grid-template-columns:repeat(4,1fr);grid-gap:32px;gap:32px}.step{display:grid;grid-gap:10px;gap:10px;align-content:start}.step-num{font-family:var(--font-m);font-size:.85rem;color:var(--accent);border-bottom:1px solid var(--line);padding-bottom:12px}.step p{color:var(--ink-2)}@media (max-width:900px){.steps{grid-template-columns:repeat(2,1fr)}}@media (max-width:520px){.steps{grid-template-columns:1fr}}.about-grid{display:grid;grid-template-columns:1fr 1.2fr;grid-gap:48px;gap:48px}.about-copy{display:grid;grid-gap:18px;gap:18px;color:#c9cdd6;max-width:62ch}.about-lead{border-top:1px solid #2e3440;padding-top:18px}.about-lead strong{color:var(--paper)}@media (max-width:860px){.about-grid{grid-template-columns:1fr;gap:24px}}.faq-wrap{display:grid;grid-template-columns:1fr 2fr;grid-gap:48px;gap:48px}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;list-style:none;padding:20px 40px 20px 0;position:relative;font-weight:600;font-size:1.1rem}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:4px;top:16px;font-size:1.5rem;color:var(--accent);font-weight:400}.faq details[open] summary:after{content:"–"}.faq details p{padding:0 40px 22px 0;color:var(--ink-2);max-width:62ch}@media (max-width:860px){.faq-wrap{grid-template-columns:1fr;gap:24px}}.book{background:var(--accent);color:#fff;border-top:0}.book-inner{display:grid;grid-template-columns:1fr 1.15fr;grid-gap:clamp(32px,5vw,64px);gap:clamp(32px,5vw,64px);align-items:start}.book-copy{display:grid;grid-gap:20px;gap:20px;min-width:0}@media (max-width:860px){.book-inner{grid-template-columns:1fr}}.contact-form{background:#fff;color:var(--ink);border-radius:10px;padding:clamp(20px,3vw,32px);display:grid;grid-gap:18px;gap:18px;min-width:0;box-shadow:0 24px 50px -30px rgba(10,16,60,.6)}.field-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}@media (max-width:520px){.field-row{grid-template-columns:1fr}}.field{display:grid;grid-gap:6px;gap:6px;min-width:0}.field label{font-weight:600;font-size:.95rem}.optional{font-weight:400;color:var(--ink-2)}.field input,.field textarea{font:inherit;font-size:1rem;color:var(--ink);background:var(--paper);border:1px solid #b9bdb4;border-radius:6px;padding:11px 13px;width:100%}.field textarea{resize:vertical;min-height:130px}.field input:focus-visible,.field textarea:focus-visible{outline:3px solid var(--accent);outline-offset:1px;border-color:var(--accent);background:#fff}.field [aria-invalid=true]{border-color:#b42318}.field-error{color:#b42318;font-size:.9rem;font-weight:500}.contact-form .btn{justify-self:start;cursor:pointer;font:inherit;font-weight:600}.contact-form .btn:disabled{opacity:.7;cursor:progress}.form-failed{color:#b42318;font-weight:500}.form-sent{font-size:1.1rem}.form-sent:focus{outline:none}.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.book h2{font-size:clamp(2.2rem,5vw,3.6rem)}.book-copy p{font-size:1.15rem;max-width:52ch;color:#dfe4ff}.site-footer{background:var(--ink);color:#9aa1ad;padding-block:32px;font-size:.9rem}.footer-inner{display:flex;flex-wrap:wrap;align-items:center;gap:12px 32px}.footer-inner p:last-child{margin-left:auto}.logo-footer .logo-word{color:var(--paper)}.case-done{color:var(--ink-2)}.case-link{font-family:var(--font-m);font-size:.85rem;color:var(--accent-ink);text-underline-offset:4px;justify-self:start}.case-link:after{content:" ↗"}.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}.status-badge{--live:#17a34a;position:relative;flex:none;display:inline-flex;align-items:center;gap:10px;padding:5px 13px 5px 10px;border-radius:99px;background:#fff;border:1px solid color-mix(in srgb,var(--live) 35%,var(--line));box-shadow:0 0 0 4px color-mix(in srgb,var(--live) 8%,transparent),0 6px 18px -10px color-mix(in srgb,var(--live) 60%,transparent);font-family:var(--font-m);font-size:.7rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:#11632f}.status-badge:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(100deg,transparent 40%,color-mix(in srgb,var(--live) 22%,transparent) 50%,transparent 60%) no-repeat;background-size:300% 100%;background-position:100% 0;animation:beam 3.6s ease-in-out infinite}.beacon{position:relative;width:9px;height:9px;flex:none}.beacon,.beacon:after,.beacon:before{border-radius:50%;background:var(--live)}.beacon:after,.beacon:before{content:"";position:absolute;inset:0;animation:ping 2s cubic-bezier(0,0,.2,1) infinite}.beacon:after{animation-delay:1s}@keyframes ping{0%{transform:scale(1);opacity:.6}to{transform:scale(3.2);opacity:0}}@keyframes beam{0%,25%{background-position:100% 0}75%,to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.beacon:after,.beacon:before,.status-badge:after{animation:none}.beacon:after,.beacon:before{display:none}}.badge-short{display:none}@media (max-width:560px){.badge-long{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.badge-short{display:inline}}.partner{font-family:var(--font-m);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase;color:var(--paper);border:1px solid #3a4150;border-radius:99px;padding:4px 12px}.partner-hero{justify-self:start;color:var(--ink-2);border-color:var(--line);background:#fff}