  /* ---------- Design tokens (shared with vetsitrep.veteransolutionstx.com) ---------- */
  :root{
    --old-glory-navy:#0a3161;
    --old-glory-red:#b3223c;
    --flag-white:#f4f5f2;
    --band-ink:#f4f5f2;
    --band-ink-soft:#c3cbd6;

    --navy:#0a3161;
    --red:#a01f38;
    --brass:#8a6a1e;
    --ground:#f5f6f2;
    --surface:#ffffff;
    --surface-2:#eef0ea;
    --ink:#14171c;
    --ink-soft:#4b5666;
    --line:#dde1d8;
    --mono-chip:#eef0ea;
    --focus:#0a3161;
    --shadow:0 18px 44px -18px rgba(10,20,35,.28);
    color-scheme:light;
  }
  @media (prefers-color-scheme: dark){
    :root:not([data-theme="light"]){
      --navy:#8fb4e8;
      --red:#ff7a86;
      --brass:#e0bd74;
      --ground:#0a0b0d;
      --surface:#141619;
      --surface-2:#1b1e22;
      --ink:#f4f5f2;
      --ink-soft:#b3bac4;
      --line:#2b2f35;
      --mono-chip:#1b1e22;
      --focus:#f4f5f2;
      --shadow:0 18px 44px -18px rgba(0,0,0,.7);
      color-scheme:dark;
    }
  }
  :root[data-theme="dark"]{
    --navy:#8fb4e8;
    --red:#ff7a86;
    --brass:#e0bd74;
    --ground:#0a0b0d;
    --surface:#141619;
    --surface-2:#1b1e22;
    --ink:#f4f5f2;
    --ink-soft:#b3bac4;
    --line:#2b2f35;
    --mono-chip:#1b1e22;
    --focus:#f4f5f2;
    --shadow:0 18px 44px -18px rgba(0,0,0,.7);
    color-scheme:dark;
  }

  *{ box-sizing:border-box; }
  html{ scroll-behavior:smooth; }
  @media (prefers-reduced-motion:reduce){ html{ scroll-behavior:auto; } }
  body{
    margin:0;
    background:var(--ground);
    color:var(--ink);
    font-family:'Public Sans',-apple-system,'Segoe UI',Arial,sans-serif;
    line-height:1.5;
    -webkit-font-smoothing:antialiased;
  }
  .mono{ font-family:'JetBrains Mono','SFMono-Regular',Consolas,monospace; }
  h1,h2,h3{ text-wrap:balance; font-weight:800; letter-spacing:-0.01em; margin:0; }
  p{ margin:0; }
  a{ color:inherit; }
  a:focus-visible, button:focus-visible{ outline:2px solid var(--focus); outline-offset:3px; border-radius:4px; }

  .wrap{ max-width:1080px; margin-inline:auto; padding-inline:24px; }
  @media (max-width:480px){ .wrap{ padding-inline:16px; } }

  .skip-link{
    position:absolute; left:16px; top:-60px;
    background:var(--ink); color:var(--ground);
    font-weight:700; font-size:.9rem;
    padding:10px 16px; border-radius:6px; z-index:100;
    transition:top .15s;
  }
  .skip-link:focus{ top:12px; }

  .ribbon{ height:5px; display:flex; }
  .ribbon span{ flex:1; }
  .ribbon .b{ background:var(--old-glory-navy); }
  .ribbon .w{ background:var(--flag-white); }
  .ribbon .r{ background:var(--old-glory-red); }

  /* ---------- Nav ---------- */
  header.site{
    position:sticky; top:0; z-index:40;
    background:color-mix(in srgb, var(--surface) 88%, transparent);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .nav{ display:flex; align-items:center; justify-content:space-between; gap:16px; padding-block:14px; }
  .wordmark{
    display:flex; align-items:center; gap:8px;
    font-weight:800; font-size:1.02rem; letter-spacing:.02em;
    text-transform:uppercase; text-decoration:none; color:var(--navy);
    white-space:nowrap;
  }
  .wordmark .star{ flex:none; color:var(--brass); }
  .wordmark .s{ color:var(--red); }
  .wordmark .tag{
    font-family:'JetBrains Mono',monospace;
    font-size:.6rem; font-weight:700; letter-spacing:.14em;
    color:var(--brass); border:1px solid currentColor; border-radius:3px;
    padding:2px 5px;
  }
  nav.links{ display:flex; gap:28px; font-size:.9rem; font-weight:600; }
  nav.links a{ text-decoration:none; color:var(--ink-soft); transition:color .15s; }
  nav.links a:hover{ color:var(--navy); }
  @media (max-width:760px){ nav.links{ display:none; } }

  .btn{
    display:inline-flex; align-items:center; gap:8px;
    font-weight:700; font-size:.88rem;
    padding:10px 18px; border-radius:8px;
    text-decoration:none; border:1px solid transparent; white-space:nowrap;
  }
  .btn-primary{ background:var(--ink); color:var(--ground); box-shadow:var(--shadow); }
  .btn-ghost{ border-color:var(--line); color:var(--ink); background:var(--surface); }
  @media (max-width:380px){ .nav .btn{ display:none; } }

  /* ---------- Hero ---------- */
  .hero{
    position:relative; overflow:hidden;
    padding-block:64px 72px;
    border-bottom:1px solid var(--line);
    background:
      radial-gradient(1000px 460px at 84% -12%, color-mix(in srgb, var(--old-glory-navy) 45%, transparent), transparent),
      radial-gradient(700px 420px at 8% 108%, color-mix(in srgb, var(--old-glory-red) 22%, transparent), transparent),
      var(--ground);
  }
  .hero-grid{
    position:absolute; inset:0; pointer-events:none;
    background-image:
      linear-gradient(color-mix(in srgb, var(--ink) 6%, transparent) 1px, transparent 1px),
      linear-gradient(90deg, color-mix(in srgb, var(--ink) 6%, transparent) 1px, transparent 1px);
    background-size:42px 42px;
    mask-image:radial-gradient(700px 420px at 78% 10%, black, transparent 70%);
    -webkit-mask-image:radial-gradient(700px 420px at 78% 10%, black, transparent 70%);
  }
  .hero-inner{ position:relative; display:grid; grid-template-columns:1.15fr .85fr; gap:48px; align-items:center; }
  @media (max-width:860px){ .hero-inner{ grid-template-columns:1fr; } }
  .chip{
    display:inline-flex; align-items:center; gap:10px; flex-wrap:wrap;
    font-family:'JetBrains Mono',monospace;
    font-size:.72rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase;
    color:var(--ink-soft); background:var(--mono-chip);
    border:1px solid var(--line); border-radius:6px;
    padding:6px 10px; margin-bottom:20px;
  }
  .chip .dot{ width:6px; height:6px; border-radius:50%; background:var(--red); flex:none; }
  .hero h1{ font-size:clamp(2.1rem, 4.6vw, 3.4rem); line-height:1.05; }
  .hero h1 em{ font-style:normal; color:var(--red); }
  .hero .sub{ margin-top:18px; font-size:1.08rem; line-height:1.6; color:var(--ink-soft); max-width:54ch; }
  .hero .ctas{ margin-top:30px; display:flex; gap:12px; flex-wrap:wrap; }

  .record{
    background:var(--surface); border:1px solid var(--line);
    border-radius:16px; box-shadow:var(--shadow);
    padding:20px; max-width:360px; width:100%; margin-inline:auto;
  }
  .record .head{
    display:flex; justify-content:space-between; align-items:center;
    font-family:'JetBrains Mono',monospace;
    font-size:.65rem; letter-spacing:.08em; text-transform:uppercase;
    color:var(--ink-soft);
    padding-bottom:12px; border-bottom:1px dashed var(--line); margin-bottom:6px;
  }
  .record .head b{ color:var(--brass); }
  .row{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; padding-block:11px; border-bottom:1px solid var(--line); }
  .row:last-child{ border-bottom:none; }
  .row .k{ font-family:'JetBrains Mono',monospace; font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-soft); }
  .row .v{ font-size:.9rem; font-weight:700; text-align:right; }
  @media (prefers-reduced-motion:no-preference){ .record{ animation:rise .6s ease both; } }
  @keyframes rise{ from{ opacity:0; transform:translateY(10px); } to{ opacity:1; transform:none; } }

  /* ---------- Sections ---------- */
  section{ padding-block:64px; border-bottom:1px solid var(--line); scroll-margin-top:64px; }
  .eyebrow{
    font-family:'JetBrains Mono',monospace;
    font-size:.72rem; font-weight:600; letter-spacing:.14em; text-transform:uppercase;
    color:var(--red); margin-bottom:10px;
    display:flex; align-items:center; gap:10px;
  }
  .eyebrow::before{ content:""; width:22px; height:1px; background:currentColor; }
  .section-head{ max-width:62ch; margin-bottom:36px; }
  .section-head h2{ font-size:clamp(1.5rem, 3vw, 2.1rem); }
  .section-head p{ margin-top:12px; color:var(--ink-soft); font-size:1rem; line-height:1.6; }

  .grid-2{ display:grid; grid-template-columns:repeat(2, 1fr); gap:20px; }
  @media (max-width:760px){ .grid-2{ grid-template-columns:1fr; } }
  .card{
    background:var(--surface); border:1px solid var(--line);
    border-radius:14px; padding:24px;
    display:flex; flex-direction:column;
  }
  .card .num{ font-family:'JetBrains Mono',monospace; font-size:.72rem; font-weight:700; color:var(--brass); letter-spacing:.08em; }
  .card h3{ font-size:1.12rem; margin-top:10px; }
  .card p{ margin-top:10px; color:var(--ink-soft); font-size:.93rem; line-height:1.6; }
  .card ul{ margin:12px 0 0; padding-left:18px; color:var(--ink-soft); font-size:.88rem; line-height:1.75; }
  .card .more{
    margin-top:auto; padding-top:18px;
    font-size:.86rem; font-weight:700; color:var(--navy); text-decoration:none;
  }
  .card .more:hover{ text-decoration:underline; }
  .card .note{ margin-top:auto; padding-top:18px; font-family:'JetBrains Mono',monospace; font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; color:var(--ink-soft); }

  .split{ display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start; }
  @media (max-width:820px){ .split{ grid-template-columns:1fr; gap:28px; } }
  .prose p{ color:var(--ink-soft); font-size:1rem; line-height:1.7; }
  .prose p + p{ margin-top:14px; }
  .prose strong{ color:var(--ink); }

  .values{ display:flex; flex-direction:column; gap:14px; }
  .value{
    background:var(--surface); border:1px solid var(--line); border-radius:12px;
    padding:16px 18px; display:flex; gap:12px; align-items:flex-start;
  }
  .value .mark{ font-family:'JetBrains Mono',monospace; color:var(--brass); font-weight:800; flex:none; }
  .value p{ font-size:.9rem; color:var(--ink-soft); line-height:1.55; }
  .value strong{ color:var(--ink); }

  .founder{
    display:grid; grid-template-columns:auto 1fr; gap:28px; align-items:start;
    background:var(--surface); border:1px solid var(--line); border-radius:16px;
    padding:28px;
  }
  @media (max-width:640px){ .founder{ grid-template-columns:1fr; padding:22px; } }
  .monogram{
    width:88px; height:88px; border-radius:50%;
    background:linear-gradient(155deg, var(--old-glory-navy), color-mix(in srgb, var(--old-glory-navy) 70%, #000));
    color:var(--band-ink);
    display:flex; align-items:center; justify-content:center;
    font-weight:800; font-size:1.7rem; letter-spacing:.04em;
    border:3px solid var(--brass);
  }
  .founder h3{ font-size:1.35rem; }
  .founder .role{ margin-top:4px; font-family:'JetBrains Mono',monospace; font-size:.72rem; letter-spacing:.1em; text-transform:uppercase; color:var(--red); }
  .founder .prose{ margin-top:16px; }
  .facts{ margin-top:22px; display:grid; grid-template-columns:repeat(2, 1fr); gap:18px; }
  @media (max-width:640px){ .facts{ grid-template-columns:1fr; } }
  .facts h4{ margin:0 0 8px; font-family:'JetBrains Mono',monospace; font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--brass); }
  .facts ul{ margin:0; padding-left:18px; color:var(--ink-soft); font-size:.9rem; line-height:1.75; }

  .band{
    background:linear-gradient(155deg, var(--old-glory-navy), color-mix(in srgb, var(--old-glory-navy) 70%, #000));
    color:var(--band-ink);
    border:1px solid color-mix(in srgb, var(--band-ink) 14%, transparent);
    border-radius:18px; padding:34px 30px;
    display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap;
  }
  .band .eyebrow{ color:#ff8f9c; margin-bottom:8px; }
  .band h2{ font-size:1.4rem; }
  .band p{ margin-top:8px; color:var(--band-ink-soft); font-size:.94rem; max-width:48ch; line-height:1.6; }
  .band .contacts{ display:flex; flex-direction:column; gap:10px; min-width:0; }
  .band .contact{
    display:flex; flex-direction:column; gap:2px;
    text-decoration:none; color:var(--band-ink);
    border:1px solid color-mix(in srgb, var(--band-ink) 30%, transparent);
    border-radius:10px; padding:12px 16px;
    transition:background .15s;
  }
  .band .contact:hover{ background:color-mix(in srgb, var(--band-ink) 8%, transparent); }
  .band .contact .k{ font-family:'JetBrains Mono',monospace; font-size:.66rem; letter-spacing:.1em; text-transform:uppercase; color:var(--band-ink-soft); }
  .band .contact .v{ font-weight:700; font-size:.95rem; overflow-wrap:anywhere; }
  .band a:focus-visible{ outline-color:var(--band-ink); }

  footer{ padding-block:40px; }
  .thank-you{ text-align:center; font-weight:700; color:var(--navy); font-size:.95rem; margin-bottom:24px; }
  .foot-grid{ display:flex; justify-content:space-between; gap:24px; flex-wrap:wrap; align-items:flex-start; }
  .foot-grid .who{ font-size:.86rem; color:var(--ink-soft); line-height:1.6; }
  .foot-grid .who strong{ color:var(--ink); }
  .foot-links{ display:flex; gap:22px; font-size:.86rem; flex-wrap:wrap; }
  .foot-links a{ text-decoration:none; color:var(--ink-soft); }
  .foot-links a:hover{ color:var(--navy); }
  .legal{
    margin-top:28px; padding-top:20px; border-top:1px solid var(--line);
    font-size:.76rem; color:var(--ink-soft); line-height:1.6; max-width:80ch;
  }

  /* ---------- Certification badges ---------- */
  .certs{ display:flex; flex-wrap:wrap; align-items:center; gap:14px; margin-top:22px; }
  .cert-badge{ width:96px; height:auto; display:block; border-radius:2px; box-shadow:0 1px 3px rgba(0,0,0,.12); }
  .cert-meta{ display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
  .cert-note{ font-size:.8rem; color:var(--ink-soft); }
  .cert{
    display:inline-flex; align-items:center; gap:8px;
    font-family:'JetBrains Mono',monospace;
    font-size:.68rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase;
    color:var(--navy); background:var(--surface);
    border:1px solid var(--line); border-radius:6px; padding:6px 10px;
  }
  .cert svg{ color:var(--brass); flex:none; }

  /* ---------- Sub-pages ---------- */
  .page-hero{ padding-block:48px 52px; }
  .crumbs{ font-size:.84rem; color:var(--ink-soft); margin-bottom:18px; }
  .crumbs a{ color:var(--ink-soft); text-decoration:none; }
  .crumbs a:hover{ color:var(--navy); text-decoration:underline; }
  .crumbs span[aria-hidden]{ margin-inline:6px; }
  .offer-list{ display:flex; flex-direction:column; gap:20px; }
  .offer{
    background:var(--surface); border:1px solid var(--line); border-radius:14px;
    padding:24px; display:grid; grid-template-columns:1fr auto; gap:8px 28px; align-items:start;
  }
  @media (max-width:640px){ .offer{ grid-template-columns:1fr; } }
  .offer h3{ font-size:1.12rem; }
  .offer .price{
    grid-row:span 2; text-align:right;
    font-family:'JetBrains Mono',monospace; font-weight:700; color:var(--navy);
  }
  @media (max-width:640px){ .offer .price{ grid-row:auto; text-align:left; } }
  .offer .price small{ display:block; font-size:.62rem; letter-spacing:.1em; text-transform:uppercase; color:var(--ink-soft); font-weight:600; }
  .offer .price b{ font-size:1.5rem; }
  .offer p{ color:var(--ink-soft); font-size:.93rem; line-height:1.6; }
  .offer ul{ margin:10px 0 0; padding-left:18px; color:var(--ink-soft); font-size:.88rem; line-height:1.75; grid-column:1 / -1; }
  @media (min-width:641px){ .offer ul{ grid-column:1; } }
  .fine{ margin-top:18px; font-size:.82rem; color:var(--ink-soft); line-height:1.6; max-width:70ch; }
  .fine a{ color:var(--navy); }

  .grid-3{ display:grid; grid-template-columns:repeat(3, 1fr); gap:20px; }
  @media (max-width:900px){ .grid-3{ grid-template-columns:1fr; } }

/* Policy pages */
.policy{ max-width:72ch; }
.policy h2{ font-size:1.25rem; font-weight:800; margin-top:36px; color:var(--ink); }
.policy p, .policy li{ color:var(--ink-soft); font-size:1rem; line-height:1.7; }
.policy p{ margin-top:12px; }
.policy ul{ margin:12px 0 0; padding-left:20px; }
.policy li + li{ margin-top:8px; }
.policy strong{ color:var(--ink); }
.policy a{ color:var(--navy); }
