*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{font-family:var(--font-sans);font-size:var(--fs-lead);color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.6}h1,h2,h3,p,ul,ol{margin:0}a{color:var(--brand-900);text-decoration:none}a:hover{text-decoration:underline}:focus-visible{box-shadow:var(--focus-ring);border-radius:var(--r-sm);outline:none}img,svg{max-width:100%}.skip{z-index:30;background:var(--brand-900);color:#fff;padding:var(--s3) var(--s4);border-radius:0 0 var(--r-md) 0;font-size:var(--fs-body);font-weight:600;position:absolute;top:0;left:-9999px}.skip:focus{text-decoration:none;left:0}.wrap{max-width:var(--wrap-wide);padding-inline:var(--s6);margin:0 auto}.measure{max-width:var(--measure)}.band{padding:var(--sp-section) 0}.band--tint{background:var(--bg);border-block:1px solid var(--border)}.band--invert{background:var(--invert-bg);color:var(--invert-ink)}.band--invert a{color:var(--invert-ink)}.band--invert :focus-visible{box-shadow:var(--invert-focus-ring)}.band--tight{padding-block:clamp(var(--s12), 6vw, var(--s16))}.eyebrow{font-size:var(--fs-eyebrow);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-subtle);margin-bottom:var(--s3);font-weight:600}.band--invert .eyebrow{color:var(--accent-lite)}.h-display{font-family:var(--font-head);font-weight:600;font-size:var(--fs-d1);line-height:var(--lh-d1);letter-spacing:var(--tr-d1);color:var(--brand-900)}.h-section{font-family:var(--font-head);font-weight:600;font-size:var(--fs-d2);line-height:var(--lh-d2);letter-spacing:var(--tr-d2);color:var(--brand-900);margin-bottom:var(--s4);max-width:22ch}.band--invert .h-display,.band--invert .h-section{color:var(--invert-ink)}.lede{font-size:var(--fs-lede);line-height:var(--lh-lede);color:var(--ink-muted)}.band--invert .lede{color:var(--invert-muted)}.brand{align-items:center;gap:var(--s3);display:flex}.brand:hover{text-decoration:none}.brand__word{font-family:var(--font-head);font-weight:600;font-size:var(--fs-wordmark);letter-spacing:-.01em;color:var(--brand-900)}.brand--foot .brand__word{color:var(--invert-ink)}.site-head{z-index:20;border-bottom:1px solid var(--border);-webkit-backdrop-filter:saturate(1.6)blur(10px);background:#ffffffdb;position:sticky;top:0}.site-head__inner{justify-content:space-between;align-items:center;gap:var(--s5);padding-block:var(--s3);display:flex}.site-nav{align-items:center;gap:var(--s6);font-size:var(--fs-body);font-weight:500;display:flex}.site-nav>a:not(.btn){color:var(--ink-muted)}.site-nav>a:not(.btn):hover{color:var(--brand-900);text-decoration:none}.btn{justify-content:center;align-items:center;gap:var(--s2);font-family:var(--font-sans);font-size:var(--fs-body);border-radius:var(--r-md);cursor:pointer;white-space:nowrap;min-height:44px;transition:background var(--dur-1) var(--ease-out), border-color var(--dur-1) var(--ease-out), color var(--dur-1) var(--ease-out);border:1px solid #0000;padding:12px 20px;font-weight:600;line-height:1.2;display:inline-flex}.btn:hover{text-decoration:none}.btn--primary{background:var(--accent);color:var(--accent-on);border-color:var(--accent-deep)}.btn--primary:hover{background:var(--accent-deep);color:#fff}.btn--ghost{background:var(--surface);color:var(--brand-900);border-color:var(--border-strong)}.btn--ghost:hover{border-color:var(--brand-700);background:var(--brand-050)}.btn--solid{background:var(--brand-800);color:#fff;border-color:var(--brand-800)}.btn--solid:hover{background:var(--brand-900);border-color:var(--brand-900)}.btn--quiet{color:var(--invert-ink);border-color:var(--invert-ring);background:0 0}.btn--quiet:hover{background:#ffffff14;border-color:#ffffff52}.cta{justify-content:space-between;align-items:center;gap:var(--s8);flex-wrap:wrap;display:flex}.cta__h{font-family:var(--font-head);font-weight:600;font-size:var(--fs-d2);line-height:var(--lh-d2);letter-spacing:var(--tr-d2);color:var(--invert-ink);margin-bottom:var(--s2);max-width:20ch}.cta__p{color:var(--invert-muted);max-width:46ch;font-size:var(--fs-lead)}.cta__mail{color:var(--accent-lite);text-decoration:underline}.cta__mail:hover{color:var(--invert-ink)}.cta__actions{gap:var(--s3);flex-wrap:wrap;display:flex}.site-foot{background:var(--invert-bg-2);color:var(--invert-muted);font-size:var(--fs-body)}.site-foot a{color:var(--invert-muted)}.site-foot a:hover{color:var(--invert-ink)}.site-foot__inner{justify-content:space-between;gap:var(--s10);padding-block:var(--s12);flex-wrap:wrap;display:flex}.site-foot__brand{gap:var(--s3);align-content:start;max-width:34ch;display:grid}.site-foot__legal{color:#b7c4d3b8}.site-foot__nav{gap:var(--s16);flex-wrap:wrap;display:flex}.site-foot__nav div{gap:var(--s2);align-content:start;display:grid}.site-foot__aside{color:#b7c4d3b8}.site-foot__nav h2{font-size:var(--fs-eyebrow);letter-spacing:.1em;text-transform:uppercase;color:var(--invert-ink);margin-bottom:var(--s1);font-weight:600}.prose{max-width:var(--wrap);padding:var(--s16) var(--s6) var(--s20);margin:0 auto}.prose h1{font-family:var(--font-head);font-weight:600;font-size:var(--fs-prose-h1);letter-spacing:var(--tr-d2);margin-bottom:var(--s4);color:var(--brand-900);line-height:1.15}.prose h2{font-family:var(--font-head);font-weight:600;font-size:var(--fs-prose-h2);margin:var(--s10) 0 var(--s3);color:var(--brand-900);line-height:1.3}.prose h3{font-family:var(--font-head);font-weight:600;font-size:var(--fs-prose-h3);margin:var(--s6) 0 var(--s2)}.prose p{margin-bottom:var(--s4);max-width:var(--measure)}.prose ul,.prose ol{margin:0 0 var(--s4) 1.2em;max-width:var(--measure)}.prose li{margin-bottom:var(--s2)}.prose .lede{font-size:var(--fs-lede);color:var(--ink-muted)}.prose .updated{font-size:var(--fs-body);color:var(--ink-subtle)}.notice{padding:var(--s4) var(--s5);border-radius:var(--r-md);font-size:var(--fs-body);background:var(--st-stale-bg);border:1px solid var(--st-stale-bd);color:var(--st-stale-fg);margin-bottom:var(--s6)}@media (width<=720px){.wrap{padding-inline:var(--s5)}.site-nav{gap:var(--s3)}.site-nav>a:not(.btn){display:none}.site-nav .btn{padding:12px 16px}.site-foot__inner{gap:var(--s8);padding-block:var(--s10)}.site-foot__nav{gap:var(--s10)}.cta{gap:var(--s6)}.cta__actions{flex-direction:column;align-items:stretch;width:100%}.cta__actions .btn{width:100%}.prose{padding:var(--s10) var(--s5) var(--s16)}}
