
  :root{
    --paper:#FAFAF7;
    --paper-dim:#EDEEE9;
    --paper-raised:#FFFFFF;
    --ink:#1F2421;
    --ink-dim:#5B6560;
    --ink-faint:#8A938D;
    --calm:#3D5A50;
    --calm-deep:#28392F;
    --calm-tint:rgba(61,90,80,0.10);
    --gold:#8C6A26;
    --gold-tint:rgba(140,106,38,0.12);
    --alarm:#AA3324;
    --alarm-tint:rgba(170,51,36,0.10);
    --line:rgba(31,36,33,0.14);
    --line-soft:rgba(31,36,33,0.08);
    color-scheme:light;
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      --paper:#14181B; --paper-dim:#1B211D; --paper-raised:#1F2622;
      --ink:#EDEEE9; --ink-dim:#A8B0AA; --ink-faint:#71786F;
      --calm:#86BBA4; --calm-deep:#C7E4D6; --calm-tint:rgba(134,187,164,0.14);
      --gold:#D3B46B; --gold-tint:rgba(211,180,107,0.14);
      --alarm:#E08977; --alarm-tint:rgba(224,137,119,0.14);
      --line:rgba(237,238,233,0.16); --line-soft:rgba(237,238,233,0.09);
      color-scheme:dark;
    }
  }
  :root[data-theme="dark"]{
    --paper:#14181B; --paper-dim:#1B211D; --paper-raised:#1F2622;
    --ink:#EDEEE9; --ink-dim:#A8B0AA; --ink-faint:#71786F;
    --calm:#86BBA4; --calm-deep:#C7E4D6; --calm-tint:rgba(134,187,164,0.14);
    --gold:#D3B46B; --gold-tint:rgba(211,180,107,0.14);
    --alarm:#E08977; --alarm-tint:rgba(224,137,119,0.14);
    --line:rgba(237,238,233,0.16); --line-soft:rgba(237,238,233,0.09);
    color-scheme:dark;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;}
  body{
    background:var(--paper); color:var(--ink);
    font-family:'IBM Plex Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    font-size:16px; line-height:1.55; -webkit-font-smoothing:antialiased; overflow-x:hidden;
  }
  .wrap{ max-width:840px; margin:0 auto; padding-inline:24px; }
  @media (min-width:700px){ .wrap{ padding-inline:40px; } }
  h1,h2,h3{ font-family:'Fraunces', Georgia, serif; font-weight:600; letter-spacing:-0.01em; text-wrap:balance; margin:0; color:var(--ink); }
  a{ color:var(--calm-deep); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) a{ color:var(--calm); } }
  :root[data-theme="dark"] a{ color:var(--calm); }
  .mono{ font-family:'IBM Plex Mono', ui-monospace, monospace; font-variant-numeric:tabular-nums; }
  .eyebrow{ font-family:'IBM Plex Mono', monospace; font-size:12.5px; letter-spacing:0.12em; text-transform:uppercase; color:var(--ink-faint); }
  header.top{ position:sticky; top:0; z-index:20; background:rgba(250,250,247,0.88); backdrop-filter:blur(10px); border-bottom:1px solid var(--line-soft); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) header.top{ background:rgba(20,24,27,0.88); } }
  :root[data-theme="dark"] header.top{ background:rgba(20,24,27,0.88); }
  .top-inner{ display:flex; align-items:center; justify-content:space-between; padding-block:16px; }
  .wordmark{ font-family:'Fraunces', serif; font-weight:600; font-size:19px; letter-spacing:-0.01em; display:flex; align-items:baseline; gap:8px; }
  .wordmark .mark{ display:inline-flex; align-items:center; justify-content:center; width:22px;height:22px; border-radius:50%; border:1.5px solid var(--calm); font-size:12px; color:var(--calm); }
  nav.top-nav{ display:none; gap:28px; font-size:14px; color:var(--ink-dim);}
  nav.top-nav a{ color:var(--ink-dim); text-decoration:none; }
  nav.top-nav a:hover{ color:var(--ink); }
  @media (min-width:640px){ nav.top-nav{ display:flex; } }
  .btn-nav{ font-family:'IBM Plex Mono', monospace; font-size:12.5px; letter-spacing:0.04em; padding:8px 14px; border-radius:3px; border:1px solid var(--calm); color:var(--calm-deep); text-decoration:none; white-space:nowrap; }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .btn-nav{ color:var(--calm); } }
  :root[data-theme="dark"] .btn-nav{ color:var(--calm); }
  .hero{ padding-block:72px 56px; }
  @media (min-width:700px){ .hero{ padding-block:104px 72px; } }
  .hero .eyebrow{ margin-bottom:18px; display:flex; align-items:center; gap:10px;}
  .hero .eyebrow .dot{ width:6px;height:6px;border-radius:50%;background:var(--alarm); display:inline-block; }
  h1.headline{ font-size:clamp(34px, 6.4vw, 60px); line-height:1.05; }
  h1.headline em{ font-style:italic; color:var(--calm-deep); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) h1.headline em{ color:var(--calm); } }
  :root[data-theme="dark"] h1.headline em{ color:var(--calm); }
  .sub{ margin-top:22px; font-size:19px; color:var(--ink-dim); max-width:34ch; }
  .hero-ctas{ display:flex; flex-wrap:wrap; gap:14px; margin-top:36px; }
  .btn{ font-family:'IBM Plex Mono', monospace; font-size:13.5px; letter-spacing:0.03em; padding:14px 22px; border-radius:3px; text-decoration:none; display:inline-flex; align-items:center; gap:8px; border:1px solid transparent; cursor:pointer; }
  .btn-primary{ background:var(--calm-deep); color:#FAFAF7; }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .btn-primary{ background:var(--calm); color:#14181B; } }
  :root[data-theme="dark"] .btn-primary{ background:var(--calm); color:#14181B; }
  .btn-primary:hover{ opacity:0.88; }
  .btn-ghost{ border-color:var(--line); color:var(--ink); background:transparent; }
  .btn-ghost:hover{ border-color:var(--calm); }
  section{ padding-block:56px; border-top:1px solid var(--line-soft); }
  .section-head{ display:flex; align-items:baseline; gap:14px; margin-bottom:28px; }
  .section-num{ font-family:'IBM Plex Mono', monospace; font-size:13px; color:var(--ink-faint); border:1px solid var(--line); border-radius:50%; width:30px; height:30px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
  h2.section-title{ font-size:clamp(22px, 3.4vw, 30px); }
  .breach-lede{ font-size:18px; max-width:62ch; color:var(--ink); }
  .breach-lede strong{ color:var(--ink); }
  .stat-row{ display:grid; grid-template-columns:1fr; gap:18px; margin-top:32px; }
  @media (min-width:640px){ .stat-row{ grid-template-columns:1fr 1fr; } }
  .stat-card{ background:var(--paper-raised); border:1px solid var(--line); border-radius:4px; padding:20px 22px; }
  .stat-card .label{ font-size:12.5px; color:var(--ink-faint); font-family:'IBM Plex Mono', monospace; letter-spacing:0.04em; text-transform:uppercase; margin-bottom:10px;}
  .bar-track{ height:10px; border-radius:5px; background:var(--paper-dim); overflow:hidden; display:flex; margin-top:12px; }
  .bar-fill{ height:100%; background:var(--calm); }
  .bar-fill.ghost{ background:var(--line); }
  .bar-caption{ display:flex; justify-content:space-between; font-family:'IBM Plex Mono', monospace; font-size:12px; color:var(--ink-dim); margin-top:8px; }
  .source-line{ margin-top:22px; font-size:13px; color:var(--ink-faint); }
  .duty-list{ position:relative; margin-top:8px; }
  .duty{ position:relative; padding-left:28px; padding-block:26px; border-left:2px solid var(--line); }
  .duty:first-child{ padding-top:4px; }
  .duty::before{ content:''; position:absolute; left:-2px; top:30px; width:2px; height:calc(100% - 30px); background:var(--line); }
  .duty:last-child::before{ display:none; }
  .duty-num{ position:absolute; left:-13px; top:4px; width:24px; height:24px; border-radius:50%; background:var(--paper); border:2px solid var(--calm); color:var(--calm-deep); font-family:'IBM Plex Mono', monospace; font-size:11px; display:flex; align-items:center; justify-content:center; }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .duty-num{ color:var(--calm); } }
  :root[data-theme="dark"] .duty-num{ color:var(--calm); }
  .duty-eyebrow{ font-size:12.5px; }
  .duty h3{ font-size:22px; margin-top:6px; }
  .duty .agency-tag{ display:inline-block; font-family:'IBM Plex Mono', monospace; font-size:11.5px; letter-spacing:0.04em; color:var(--calm-deep); background:var(--calm-tint); padding:3px 9px; border-radius:3px; margin-top:10px; }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .duty .agency-tag{ color:var(--calm); } }
  :root[data-theme="dark"] .duty .agency-tag{ color:var(--calm); }
  .duty p{ margin-top:12px; color:var(--ink-dim); max-width:58ch; font-size:15.5px; }
  .duty p.detail{ color:var(--ink); font-size:14.5px; border-left:2px solid var(--line-soft); padding-left:14px; margin-top:14px; }
  blockquote.proof{ font-family:'Fraunces', serif; font-style:italic; font-size:clamp(19px, 2.6vw, 24px); line-height:1.4; color:var(--ink); margin:0; padding-left:22px; border-left:3px solid var(--gold); }
  .proof-cite{ margin-top:14px; font-family:'IBM Plex Mono', monospace; font-size:12.5px; color:var(--gold); letter-spacing:0.02em; }
  .proof-grid{ display:grid; grid-template-columns:1fr; gap:16px; margin-top:36px; }
  @media (min-width:640px){ .proof-grid{ grid-template-columns:1fr 1fr 1fr; } }
  .proof-fact{ background:var(--gold-tint); border-radius:4px; padding:16px 18px; }
  .proof-fact .num{ font-family:'IBM Plex Mono', monospace; font-size:22px; color:var(--gold); display:block; }
  .proof-fact .desc{ font-size:13px; color:var(--ink-dim); margin-top:6px; }
  .mission-grid{ display:grid; grid-template-columns:1fr; gap:28px; margin-top:8px;}
  @media (min-width:640px){ .mission-grid{ grid-template-columns: 1fr 1.6fr; } }
  .mission-label{ font-family:'IBM Plex Mono', monospace; font-size:12.5px; letter-spacing:0.1em; text-transform:uppercase; color:var(--ink-faint); padding-top:4px; }
  .mission-why{ font-family:'Fraunces', serif; font-size:clamp(22px,3vw,28px); line-height:1.3; }
  .mission-block + .mission-block{ margin-top:30px; border-top:1px solid var(--line-soft); padding-top:30px; }
  .mission-how-list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
  .mission-how-list li{ padding-left:18px; position:relative; color:var(--ink-dim); font-size:15.5px; }
  .mission-how-list li::before{ content:'—'; position:absolute; left:0; color:var(--calm); }
  .demo-card{ display:flex; flex-direction:column; gap:18px; background:var(--calm-deep); color:#FAFAF7; border-radius:6px; padding:30px 28px; }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .demo-card{ background:var(--paper-raised); color:var(--ink); border:1px solid var(--calm); } }
  :root[data-theme="dark"] .demo-card{ background:var(--paper-raised); color:var(--ink); border:1px solid var(--calm); }
  .demo-card h3{ color:inherit; font-size:22px; }
  .demo-card p{ color:inherit; opacity:0.84; margin:10px 0 0; max-width:50ch; font-size:15px; }
  .demo-card .btn-primary{ background:#FAFAF7; color:var(--calm-deep); align-self:flex-start; }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .demo-card .btn-primary{ background:var(--calm); color:#14181B; } }
  :root[data-theme="dark"] .demo-card .btn-primary{ background:var(--calm); color:#14181B; }
  .waitlist-panel{ background:var(--paper-raised); border:1px solid var(--line); border-radius:6px; padding:30px 26px; }
  @media (min-width:700px){ .waitlist-panel{ padding:40px; } }
  form#waitlist-form{ margin-top:26px; display:flex; flex-direction:column; gap:16px; }
  .field{ display:flex; flex-direction:column; gap:6px; }
  .field label{ font-family:'IBM Plex Mono', monospace; font-size:12px; letter-spacing:0.05em; text-transform:uppercase; color:var(--ink-faint); }
  .field input, .field textarea{ font-family:'IBM Plex Sans', sans-serif; font-size:15px; padding:12px 14px; border-radius:3px; border:1px solid var(--line); background:var(--paper); color:var(--ink); resize:vertical; min-height:44px; }
  .field textarea{ min-height:70px; }
  .field input:focus, .field textarea:focus{ outline:none; border-color:var(--calm); }
  .row-2{ display:grid; grid-template-columns:1fr; gap:16px; }
  @media (min-width:560px){ .row-2{ grid-template-columns:1fr 1fr; } }
  .submit-row{ display:flex; align-items:center; gap:16px; margin-top:4px; flex-wrap:wrap; }
  .fine{ font-size:12.5px; color:var(--ink-faint); }
  #waitlist-status{ font-size:14px; margin-top:6px; min-height:20px; }
  #waitlist-status.ok{ color:var(--calm-deep); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) #waitlist-status.ok{ color:var(--calm); } }
  :root[data-theme="dark"] #waitlist-status.ok{ color:var(--calm); }
  #waitlist-status.err{ color:var(--alarm); }
  .success-panel{ display:none; text-align:left; padding:22px 0 4px; }
  .success-panel.show{ display:block; }
  .success-panel .big{ font-family:'Fraunces', serif; font-size:22px; font-style:italic; }
  .success-panel .small{ margin-top:8px; color:var(--ink-dim); font-size:14.5px; }
  .hp{ position:absolute; left:-9999px; top:-9999px; }
  footer{ padding-block:40px 60px; border-top:1px solid var(--line-soft); }
  .footer-row{ display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; }
  .footer-word{ font-family:'Fraunces', serif; font-style:italic; color:var(--ink-faint); font-size:14px; }
  .footer-meta{ font-family:'IBM Plex Mono', monospace; font-size:12px; color:var(--ink-faint); }
  .footer-meta a{ color:var(--ink-faint); }
