
:root {
  --paper:#ffffff; --paper-2:#f2f4f7; --ink:#14161a; --ink-2:#3a3f47; --muted:#6b7280;
  --accent:#0e5ea8; --accent-ink:#fff; --accent-soft:#e6eef8; --red:#e81820; --good:#1f7a3a; --warn:#b3471b; --bad:#c8151d;
  --line:rgba(20,22,26,.16); --r:4px; --wrap:1200px;
  --font-display:"Barlow Condensed","Arial Narrow",sans-serif; --sans:"Barlow",Segoe UI,Helvetica,Arial,sans-serif; --mono:"IBM Plex Mono",ui-monospace,monospace;
  --ease: cubic-bezier(.2,.8,.2,1);
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 84px; -webkit-text-size-adjust: 100%; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 400 17px/1.6 var(--sans); -webkit-font-smoothing: antialiased; overflow-x: hidden; }
img, svg { max-width: 100%; display: block; }
a { color: inherit; }
::selection { background: var(--accent); color: var(--accent-ink); }
.wrap { max-width: var(--wrap); margin: 0 auto; padding: 0 clamp(16px, 4vw, 40px); }
.mono { font-family: var(--mono); font-size: .92em; }
.skip { position: absolute; left: -999px; top: 8px; background: var(--ink); color: var(--paper); padding: 8px 12px; border-radius: 6px; z-index: 100; }
.skip:focus { left: 8px; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; border-radius: 4px; }
.progress { position: fixed; inset: 0 auto auto 0; height: 3px; width: 0; background: var(--accent); z-index: 60; }
.top { position: sticky; top: 0; z-index: 50; background: color-mix(in srgb, var(--paper) 88%, transparent); backdrop-filter: blur(10px); }
.top .in { display: flex; align-items: center; gap: 18px; min-height: 64px; }
.brand { display: flex; align-items: center; gap: 10px; text-decoration: none; font-weight: 600; letter-spacing: -.01em; }
.brand small { display: block; font-weight: 400; font-size: .8em; color: var(--muted); }
.nav { display: flex; gap: 4px; margin-left: auto; }
.nav a { text-decoration: none; padding: 8px 12px; border-radius: 999px; font-size: .92rem; color: var(--ink-2); }
.nav a:hover, .nav a.is-active { background: var(--accent-soft); color: var(--ink); }
.menu-toggle { display: none; margin-left: auto; width: 44px; height: 44px; border: 1px solid var(--line); background: transparent; border-radius: 999px; cursor: pointer; }
.menu-toggle span { display: block; width: 18px; height: 2px; background: var(--ink); margin: 3px auto; transition: transform .3s var(--ease); }
.btn { display: inline-flex; align-items: center; gap: 8px; padding: 11px 18px; border-radius: 999px; border: 1px solid var(--ink); background: transparent; color: var(--ink); text-decoration: none; font-weight: 600; font-size: .95rem; cursor: pointer; transition: transform .25s var(--ease), background .25s, color .25s; }
.btn:hover { transform: translateY(-1px); }
.btn.dark { background: var(--ink); color: var(--paper); }
.btn.accent { background: var(--accent); color: var(--accent-ink); border-color: var(--accent); }
.btn.sm { padding: 8px 14px; font-size: .88rem; }
section { padding: clamp(56px, 8vw, 120px) 0; }
.sec-head { display: grid; gap: 14px; margin-bottom: clamp(28px, 4vw, 56px); }
.kicker { font-family: var(--mono); font-size: .78rem; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin: 0; }
h2 { font-family: var(--font-display); font-size: clamp(2rem, 4.6vw, 3.6rem); line-height: 1; letter-spacing: -.02em; margin: 0; font-weight: 600; }
h3 { font-size: 1.15rem; margin: 0 0 .4em; letter-spacing: -.01em; }
.sub { font-size: 1.15rem; color: var(--ink-2); max-width: 62ch; margin: 0; }
.tint { background: var(--paper-2); }
body{background-image:linear-gradient(rgba(14,94,168,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(14,94,168,.045) 1px,transparent 1px);background-size:32px 32px;background-attachment:fixed}
h2{font-weight:800;text-transform:uppercase;letter-spacing:.005em;font-size:clamp(2.2rem,5vw,4rem)}
.btn.dark{background:var(--accent);border-color:var(--accent);color:#fff}
::selection{background:var(--red);color:#fff}
.kicker{color:var(--accent)}
footer { padding: 40px 0 60px; color: var(--muted); font-size: .9rem; }
footer .in { display: flex; flex-wrap: wrap; gap: 10px 24px; justify-content: space-between; }
footer a { color: var(--ink-2); }
@media (max-width: 760px) {
  .nav { position: fixed; inset: 64px 0 auto 0; display: none; flex-direction: column; background: var(--paper); padding: 12px 16px 20px; border: 1px solid var(--line); border-radius: 0 0 var(--r) var(--r); box-shadow: 0 20px 40px rgba(0,0,0,.12); }
  .nav.open { display: flex; }
  .menu-toggle { display: block; }
  .top .cta { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
@media print { .top, .progress, .skip { display: none; } section { padding: 24px 0; } }
.notfound-title{font-family:var(--font-display);font-weight:800;text-transform:uppercase;font-size:clamp(3rem,9vw,6.5rem);line-height:.95;margin:0 0 24px}
.lede{font-size:clamp(1.05rem,1.6vw,1.3rem);line-height:1.5;max-width:64ch;margin:0 0 26px;color:var(--ink-2)}
.ctas{display:flex;flex-wrap:wrap;gap:12px}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:22px}
.eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--accent);display:inline-block}
