:root{
    --ink:#12181F;
    --paper:#F6F4EF;
    --panel:#1A2129;
    --signal:#1F6F5C;
    --signal-light:#DCEAE6;
    --alert:#E0762C;
    --line:#C9C2B4;
    --line-dark:#2B333D;
    --muted:#5B6570;
    --muted-light:#9AA6B2;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--paper);
    color:var(--ink);
    font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
    font-size:16px;
    line-height:1.55;
    -webkit-font-smoothing:antialiased;
  }
  h1,h2,h3,.brand{
    font-family:'Space Grotesk',sans-serif;
    letter-spacing:-0.01em;
  }
  a{color:inherit;text-decoration:none;}
  img,svg{display:block;}
  .wrap{max-width:1120px;margin:0 auto;padding:0 24px;}
  :focus-visible{outline:2px solid var(--signal);outline-offset:3px;}
  @media (prefers-reduced-motion: reduce){
    *{animation:none !important;transition:none !important;}
  }

  /* ---------- header ---------- */
  header{
    border-bottom:1px solid var(--line);
    background:var(--paper);
    position:sticky;top:0;z-index:50;
  }
  .header-inner{
    display:flex;align-items:center;justify-content:space-between;
    padding:18px 24px;max-width:1120px;margin:0 auto;
  }
  .brand{font-size:19px;font-weight:700;display:flex;align-items:center;gap:9px;}
  .brand .mark{
    width:22px;height:22px;border-radius:5px;
    background:var(--signal);
    display:inline-flex;align-items:center;justify-content:center;
    flex-shrink:0;
  }
  .brand .mark svg{width:13px;height:13px;}
  nav{display:flex;gap:32px;font-size:14.5px;color:var(--muted);}
  nav a:hover{color:var(--ink);}
  .btn-cta{
    background:var(--ink);color:var(--paper);
    padding:10px 20px;border-radius:3px;
    font-size:14.5px;font-weight:600;
    border:1px solid var(--ink);
    display:inline-block;
  }
  .btn-cta:hover{background:var(--signal);border-color:var(--signal);}
  .btn-cta.big{padding:14px 28px;font-size:15.5px;}
  .btn-cta.alert{background:var(--alert);border-color:var(--alert);color:#1A0E05;}
  .btn-cta.alert:hover{background:#C4611C;border-color:#C4611C;}
  .nav-links{display:flex;align-items:center;gap:28px;}
  .menu-toggle{display:none;}

  /* ---------- hero ---------- */
  .hero{padding:76px 0 64px;}
  .hero-grid{
    display:grid;grid-template-columns:1.1fr 0.9fr;gap:56px;align-items:center;
  }
  .kicker{
    color:var(--signal);font-weight:600;font-size:14.5px;
    margin-bottom:16px;
  }
  .hero h1{
    font-size:44px;line-height:1.08;font-weight:700;
    margin-bottom:20px;max-width:15ch;
  }
  .hero p.lede{
    font-size:17.5px;color:var(--muted);max-width:46ch;margin-bottom:30px;
  }
  .hero-ctas{display:flex;gap:14px;align-items:center;flex-wrap:wrap;}
  .link-quiet{font-size:14.5px;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:2px;}
  .link-quiet:hover{color:var(--ink);border-color:var(--ink);}

  /* diagnostic panel */
  .scan-panel{
    background:var(--panel);color:#E7EAEC;
    border-radius:6px;padding:22px 22px 18px;
    font-family:'Space Grotesk',sans-serif;
  }
  .scan-head{
    display:flex;justify-content:space-between;align-items:center;
    font-size:13px;color:var(--muted-light);margin-bottom:16px;
    padding-bottom:14px;border-bottom:1px solid var(--line-dark);
  }
  .scan-dot{width:7px;height:7px;border-radius:50%;background:var(--signal);display:inline-block;margin-right:7px;
    box-shadow:0 0 0 3px rgba(31,111,92,0.25);}
  .scan-row{
    display:flex;justify-content:space-between;align-items:center;
    padding:11px 0;border-bottom:1px solid var(--line-dark);
    font-size:14.5px;
  }
  .scan-row:last-of-type{border-bottom:none;}
  .scan-row .name{display:flex;align-items:center;gap:10px;color:#E7EAEC;}
  .scan-row .status{color:var(--signal);font-size:13px;font-weight:500;display:flex;align-items:center;gap:6px;}
  .scan-row .status svg{width:13px;height:13px;}
  .scan-foot{
    margin-top:16px;padding-top:14px;border-top:1px solid var(--line-dark);
    display:flex;justify-content:space-between;font-size:13px;color:var(--muted-light);
  }
  .scan-foot strong{color:var(--signal);font-weight:600;}

  /* ---------- trust strip ---------- */
  .strip{
    border-top:1px solid var(--line);border-bottom:1px solid var(--line);
    padding:28px 0;
  }
  .strip-grid{
    display:grid;grid-template-columns:repeat(4,1fr);
  }
  .strip-item{
    text-align:left;padding:0 24px;
    border-left:1px solid var(--line);
  }
  .strip-item:first-child{border-left:none;padding-left:0;}
  .strip-num{font-family:'Space Grotesk',sans-serif;font-size:26px;font-weight:700;color:var(--signal);}
  .strip-label{font-size:13.5px;color:var(--muted);margin-top:2px;}

  /* ---------- report / features ---------- */
  .section{padding:88px 0;}
  .section-head{max-width:60ch;margin-bottom:44px;}
  .section-head h2{font-size:30px;font-weight:700;margin-bottom:12px;}
  .section-head p{color:var(--muted);font-size:16px;}

  .report{border-top:1px solid var(--line);}
  .report-row{
    display:grid;grid-template-columns:44px 1fr 1.4fr;gap:28px;
    padding:26px 0;border-bottom:1px solid var(--line);align-items:start;
  }
  .report-icon{
    width:40px;height:40px;border-radius:5px;
    background:var(--signal-light);color:var(--signal);
    display:flex;align-items:center;justify-content:center;
  }
  .report-icon svg{width:19px;height:19px;}
  .report-row h3{font-size:18px;font-weight:600;margin-bottom:6px;}
  .report-row .desc{color:var(--muted);font-size:15px;max-width:52ch;}

  /* ---------- how it works ---------- */
  .steps{
    display:grid;grid-template-columns:repeat(3,1fr);gap:0;
    border:1px solid var(--line);border-radius:6px;overflow:hidden;
  }
  .step{padding:32px 28px;border-left:1px solid var(--line);}
  .step:first-child{border-left:none;}
  .step-num{
    font-family:'Space Grotesk',sans-serif;font-weight:700;color:var(--alert);
    font-size:14px;margin-bottom:14px;
  }
  .step h3{font-size:17px;font-weight:600;margin-bottom:8px;}
  .step p{color:var(--muted);font-size:14.5px;}

  /* ---------- final cta ---------- */
  .cta-band{
    background:var(--ink);color:var(--paper);
    border-radius:8px;padding:56px 48px;
    display:flex;justify-content:space-between;align-items:center;gap:32px;
  }
  .cta-band h2{font-size:28px;font-weight:700;margin-bottom:8px;color:var(--paper);}
  .cta-band p{color:var(--muted-light);font-size:15.5px;}
  .cta-band-right{flex-shrink:0;}

  /* ---------- footer ---------- */
  footer{border-top:1px solid var(--line);padding:48px 0 32px;}
  .footer-top{
    display:flex;justify-content:space-between;align-items:flex-start;
    padding-bottom:32px;border-bottom:1px solid var(--line);margin-bottom:24px;
    flex-wrap:wrap;gap:24px;
  }
  .footer-links{display:flex;gap:28px;flex-wrap:wrap;font-size:14px;color:var(--muted);}
  .footer-links a:hover{color:var(--ink);}
  .footer-bottom{
    display:flex;justify-content:space-between;font-size:13px;color:var(--muted-light);
    flex-wrap:wrap;gap:10px;
  }
  address{font-style:normal;}

  /* ---------- content pages ---------- */
  .page-hero{padding:56px 0 44px;border-bottom:1px solid var(--line);}
  .page-hero .kicker{margin-bottom:14px;}
  .page-hero h1{font-size:36px;font-weight:700;max-width:22ch;margin-bottom:14px;}
  .page-hero p{color:var(--muted);font-size:16.5px;max-width:56ch;}
  .updated{font-size:13px;color:var(--muted-light);margin-top:18px;}

  .article{padding:64px 0 88px;}
  .article-grid{display:grid;grid-template-columns:1fr;max-width:720px;}
  .article h2{font-size:21px;font-weight:600;margin:36px 0 12px;}
  .article h2:first-child{margin-top:0;}
  .article p{color:var(--muted);font-size:15.5px;margin-bottom:14px;}
  .article ul{color:var(--muted);font-size:15.5px;padding-left:20px;margin-bottom:14px;}
  .article li{margin-bottom:8px;}
  .article strong{color:var(--ink);}
  .article a.inline-link{color:var(--signal);border-bottom:1px solid var(--signal-light);}
  .article a.inline-link:hover{border-color:var(--signal);}

  /* contact page */
  .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;}
  .contact-card{border:1px solid var(--line);border-radius:6px;padding:26px;}
  .contact-card h3{font-family:'Space Grotesk',sans-serif;font-size:16px;font-weight:600;margin-bottom:6px;}
  .contact-card p{color:var(--muted);font-size:15px;margin-bottom:4px;}
  .contact-card a{color:var(--signal);}
  .contact-card + .contact-card{margin-top:16px;}

  /* faq accordion */
  .faq-list{border-top:1px solid var(--line);max-width:760px;}
  .faq-item{border-bottom:1px solid var(--line);}
  .faq-item summary{
    padding:20px 4px;font-size:16px;font-weight:600;cursor:pointer;
    list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;
  }
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-item summary .plus{color:var(--signal);font-size:20px;font-weight:400;flex-shrink:0;}
  .faq-item[open] summary .plus{transform:rotate(45deg);}
  .faq-item summary .plus{display:inline-block;transition:none;}
  .faq-item .faq-answer{color:var(--muted);font-size:15px;padding:0 4px 20px;max-width:64ch;}

  /* ---------- responsive ---------- */
  @media (max-width:860px){
    nav{display:none;}
    .hero-grid{grid-template-columns:1fr;gap:40px;}
    .hero h1{font-size:34px;max-width:none;}
    .strip-grid{grid-template-columns:repeat(2,1fr);row-gap:20px;}
    .strip-item:nth-child(3){border-left:none;}
    .steps{grid-template-columns:1fr;}
    .step{border-left:none;border-top:1px solid var(--line);}
    .step:first-child{border-top:none;}
    .report-row{grid-template-columns:36px 1fr;}
    .report-row .desc{grid-column:2;}
    .cta-band{flex-direction:column;text-align:center;padding:40px 28px;}
    .footer-top{flex-direction:column;}
    .contact-grid{grid-template-columns:1fr;}
    .page-hero h1{font-size:28px;}
  }