/* ============ TOKENS ============ */
  :root{
    --bg:#EEF2F6; --bg-elev:#FFFFFF; --panel:#FBFCFE; --surface:#FFFFFF;
    --ink:#0C1521; --dim:#4C5C6E; --faint:#7A8899;
    --border:rgba(12,21,33,.11); --border-soft:rgba(12,21,33,.07);
    --accent:#0BA88F; --accent-ink:#06584c; --accent-soft:rgba(11,168,143,.12);
    --blue:#2F6BFF;
    --crit:#E23B4E; --high:#E27A17; --med:#C9A200; --low:#0F9E7E; --info:#2F6BFF;
    --grid:rgba(12,21,33,.05);
    --shadow:0 1px 2px rgba(12,21,33,.06),0 12px 34px -18px rgba(12,21,33,.28);
    --glow:none;
    --scanline:rgba(11,168,143,.55);
    --font-display:"Helvetica Neue",Helvetica,Arial,system-ui,sans-serif;
    --font-body:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    --font-mono:ui-monospace,"SF Mono","JetBrains Mono",Menlo,Consolas,monospace;
    --maxw:1140px;
  }
  @media (prefers-color-scheme:dark){
    :root{
      --bg:#080C13; --bg-elev:#0E141E; --panel:#0B1119; --surface:#111926;
      --ink:#E7EEF5; --dim:#9DABBA; --faint:#657486;
      --border:rgba(255,255,255,.09); --border-soft:rgba(255,255,255,.055);
      --accent:#34E3C7; --accent-ink:#0a0f16; --accent-soft:rgba(52,227,199,.10);
      --blue:#74A6FF;
      --crit:#FF5C6C; --high:#FFA24A; --med:#FFD24A; --low:#54CFA6; --info:#74A6FF;
      --grid:rgba(255,255,255,.045);
      --shadow:0 1px 2px rgba(0,0,0,.4),0 24px 60px -28px rgba(0,0,0,.75);
      --glow:0 0 0 1px rgba(52,227,199,.12),0 0 40px -8px rgba(52,227,199,.25);
      --scanline:rgba(52,227,199,.7);
    }
  }
  :root[data-theme="light"]{
    --bg:#EEF2F6; --bg-elev:#FFFFFF; --panel:#FBFCFE; --surface:#FFFFFF;
    --ink:#0C1521; --dim:#4C5C6E; --faint:#7A8899;
    --border:rgba(12,21,33,.11); --border-soft:rgba(12,21,33,.07);
    --accent:#0BA88F; --accent-soft:rgba(11,168,143,.12);
    --blue:#2F6BFF;
    --crit:#E23B4E; --high:#E27A17; --med:#C9A200; --low:#0F9E7E; --info:#2F6BFF;
    --grid:rgba(12,21,33,.05);
    --shadow:0 1px 2px rgba(12,21,33,.06),0 12px 34px -18px rgba(12,21,33,.28);
    --glow:none; --scanline:rgba(11,168,143,.55);
  }
  :root[data-theme="dark"]{
    --bg:#080C13; --bg-elev:#0E141E; --panel:#0B1119; --surface:#111926;
    --ink:#E7EEF5; --dim:#9DABBA; --faint:#657486;
    --border:rgba(255,255,255,.09); --border-soft:rgba(255,255,255,.055);
    --accent:#34E3C7; --accent-soft:rgba(52,227,199,.10);
    --blue:#74A6FF;
    --crit:#FF5C6C; --high:#FFA24A; --med:#FFD24A; --low:#54CFA6; --info:#74A6FF;
    --grid:rgba(255,255,255,.045);
    --shadow:0 1px 2px rgba(0,0,0,.4),0 24px 60px -28px rgba(0,0,0,.75);
    --glow:0 0 0 1px rgba(52,227,199,.12),0 0 40px -8px rgba(52,227,199,.25);
    --scanline:rgba(52,227,199,.7);
  }

  /* ============ BASE ============ */
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
  body{
    margin:0;background:var(--bg);color:var(--ink);
    font-family:var(--font-body);line-height:1.6;
    -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
    overflow-x:hidden;
  }
  .wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
  a{color:inherit;text-decoration:none}
  h1,h2,h3{margin:0;font-family:var(--font-display);font-weight:700;text-wrap:balance;letter-spacing:-.02em}
  p{margin:0}
  .ey{font-family:var(--font-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-weight:600}
  .mono{font-family:var(--font-mono)}
  :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}

  /* ============ NAV ============ */
  header{position:sticky;top:0;z-index:50;backdrop-filter:saturate(1.4) blur(14px);
    background:color-mix(in srgb,var(--bg) 78%,transparent);border-bottom:1px solid var(--border-soft)}
  .nav{display:flex;align-items:center;justify-content:space-between;height:64px}
  .brand{display:flex;align-items:center;gap:11px;font-family:var(--font-display);font-weight:700;letter-spacing:-.02em;font-size:18px}
  .mark{width:26px;height:26px;flex:none}
  .nav-links{display:flex;gap:26px;align-items:center}
  .nav-links a{font-size:14px;color:var(--dim);font-weight:500;transition:color .15s}
  .nav-links a:hover{color:var(--ink)}
  .btn{font-family:var(--font-body);font-weight:600;font-size:14px;border-radius:9px;
    padding:10px 17px;border:1px solid transparent;cursor:pointer;display:inline-flex;
    align-items:center;gap:8px;transition:transform .12s ease,box-shadow .2s,background .2s;white-space:nowrap}
  .btn:active{transform:translateY(1px)}
  .btn-primary{background:var(--accent);color:var(--accent-ink);box-shadow:var(--glow)}
  .btn-primary:hover{box-shadow:0 0 0 1px var(--accent),0 10px 30px -10px var(--accent)}
  .btn-ghost{border-color:var(--border);color:var(--ink);background:transparent}
  .btn-ghost:hover{border-color:var(--accent);color:var(--accent)}
  .theme-btn{background:transparent;border:1px solid var(--border);color:var(--dim);width:38px;height:38px;
    border-radius:9px;cursor:pointer;display:grid;place-items:center}
  .theme-btn:hover{color:var(--accent);border-color:var(--accent)}
  @media (max-width:820px){.nav-links a:not(.navcta){display:none}}

  /* ============ HERO ============ */
  .hero{position:relative;padding:72px 0 40px;overflow:hidden}
  .hero::before{content:"";position:absolute;inset:0;z-index:-1;
    background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);
    background-size:44px 44px;mask-image:radial-gradient(ellipse 80% 60% at 70% 0%,#000 30%,transparent 80%)}
  .hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:52px;align-items:center}
  @media (max-width:940px){.hero-grid{grid-template-columns:1fr;gap:36px}}
  .h1{font-size:clamp(34px,5.2vw,58px);line-height:1.02;margin:18px 0 0}
  .h1 .thin{font-weight:400;color:var(--dim);display:block;font-size:.72em;letter-spacing:-.01em;margin-top:.15em}
  .lead{font-size:clamp(16px,1.6vw,18.5px);color:var(--dim);max-width:38ch;margin:22px 0 0}
  .hero-cta{display:flex;gap:12px;margin-top:30px;flex-wrap:wrap}
  .hero-meta{display:flex;gap:22px;margin-top:30px;flex-wrap:wrap}
  .hero-meta div{display:flex;flex-direction:column}
  .hero-meta b{font-family:var(--font-mono);font-size:22px;letter-spacing:-.02em;color:var(--ink);font-variant-numeric:tabular-nums}
  .hero-meta span{font-size:12px;color:var(--faint);font-family:var(--font-mono);letter-spacing:.04em}

  /* ============ SCANNER PANEL (the thesis) ============ */
  .scanner{position:relative;background:var(--panel);border:1px solid var(--border);
    border-radius:16px;box-shadow:var(--shadow);overflow:hidden;font-family:var(--font-mono)}
  .scan-bar{display:flex;align-items:center;gap:8px;padding:11px 14px;border-bottom:1px solid var(--border-soft);
    background:color-mix(in srgb,var(--surface) 70%,transparent)}
  .dot{width:11px;height:11px;border-radius:50%}
  .dot.r{background:#ff5f57}.dot.y{background:#febc2e}.dot.g{background:#28c840}
  .scan-title{margin-left:8px;font-size:12px;color:var(--faint);letter-spacing:.02em}
  .scan-live{margin-left:auto;font-size:11px;color:var(--low);display:flex;align-items:center;gap:6px}
  .pulse{width:7px;height:7px;border-radius:50%;background:var(--low);box-shadow:0 0 0 0 var(--low);animation:pulse 1.8s infinite}
  @keyframes pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--low) 60%,transparent)}70%{box-shadow:0 0 0 7px transparent}100%{box-shadow:0 0 0 0 transparent}}
  .scan-body{position:relative;padding:16px 16px 8px;min-height:326px;font-size:12.5px}
  .scan-body::after{content:"";position:absolute;left:0;right:0;top:0;height:64px;pointer-events:none;
    background:linear-gradient(180deg,var(--scanline),transparent);opacity:.14;mix-blend-mode:screen;
    animation:sweep 3.4s cubic-bezier(.5,0,.5,1) infinite}
  @media (prefers-reduced-motion:reduce){.scan-body::after{animation:none;display:none}}
  @keyframes sweep{0%{transform:translateY(-64px)}100%{transform:translateY(326px)}}
  .cmd{color:var(--dim)}
  .cmd b{color:var(--accent);font-weight:600}
  .row{display:flex;align-items:center;gap:10px;padding:5px 0;opacity:0;transform:translateY(4px)}
  .row.in{opacity:1;transform:none;transition:opacity .3s,transform .3s}
  .sev{font-size:10px;font-weight:700;letter-spacing:.06em;padding:2px 7px;border-radius:5px;text-transform:uppercase;flex:none}
  .sev.crit{color:#fff;background:var(--crit)}
  .sev.high{color:#231400;background:var(--high)}
  .sev.med{color:#231e00;background:var(--med)}
  .sev.low{color:#00201a;background:var(--low)}
  .row .cve{color:var(--ink);font-weight:600;flex:none}
  .row .desc{color:var(--dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .row .host{margin-left:auto;color:var(--faint);flex:none}
  .ok{color:var(--low)}
  .scan-foot{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--border-soft);margin-top:6px}
  .scan-foot div{padding:12px 10px;text-align:center;border-right:1px solid var(--border-soft)}
  .scan-foot div:last-child{border-right:none}
  .scan-foot b{display:block;font-size:20px;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
  .scan-foot span{font-size:10px;color:var(--faint);text-transform:uppercase;letter-spacing:.08em}
  .fc{color:var(--crit)}.fh{color:var(--high)}.fm{color:var(--med)}.fl{color:var(--low)}

  /* ============ TRUST STRIP ============ */
  .trust{border-top:1px solid var(--border-soft);border-bottom:1px solid var(--border-soft);
    background:var(--bg-elev)}
  .trust .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;flex-wrap:wrap}
  .trust p{font-family:var(--font-mono);font-size:12px;color:var(--faint);letter-spacing:.04em}
  .badges{display:flex;gap:10px;flex-wrap:wrap}
  .badge{font-family:var(--font-mono);font-size:12px;color:var(--dim);border:1px solid var(--border);
    border-radius:999px;padding:6px 13px;display:flex;align-items:center;gap:7px}
  .badge svg{color:var(--accent)}

  /* ============ SECTIONS ============ */
  section{padding:78px 0}
  .sec-head{max-width:60ch}
  .sec-head h2{font-size:clamp(26px,3.4vw,38px);line-height:1.08;margin-top:12px}
  .sec-head p{color:var(--dim);margin-top:16px;font-size:16.5px}

  /* services */
  .svc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:44px}
  @media (max-width:900px){.svc-grid{grid-template-columns:repeat(2,1fr)}}
  @media (max-width:600px){.svc-grid{grid-template-columns:1fr}}
  .card{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:24px;
    position:relative;transition:transform .18s ease,border-color .18s,box-shadow .18s}
  .card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));box-shadow:var(--shadow)}
  .card .ic{width:42px;height:42px;border-radius:11px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);margin-bottom:16px}
  .card h3{font-size:18px}
  .card p{color:var(--dim);font-size:14.5px;margin-top:9px}
  .card .tag{font-family:var(--font-mono);font-size:11px;color:var(--faint);letter-spacing:.05em;margin-top:14px;display:block}

  /* process */
  .flow{display:grid;grid-template-columns:repeat(5,1fr);gap:0;margin-top:48px;counter-reset:s}
  @media (max-width:820px){.flow{grid-template-columns:1fr;gap:2px}}
  .step{position:relative;padding:22px 20px}
  .step:not(:last-child){border-right:1px solid var(--border-soft)}
  @media (max-width:820px){.step:not(:last-child){border-right:none;border-bottom:1px solid var(--border-soft)}}
  .step .n{font-family:var(--font-mono);font-size:12px;color:var(--accent);font-weight:600}
  .step h3{font-size:16px;margin-top:10px}
  .step p{color:var(--dim);font-size:13.5px;margin-top:7px}

  /* dashboard split */
  .split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
  @media (max-width:900px){.split{grid-template-columns:1fr;gap:36px}}
  .report{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:var(--shadow)}
  .report-h{padding:16px 20px;border-bottom:1px solid var(--border-soft);display:flex;justify-content:space-between;align-items:center}
  .report-h b{font-family:var(--font-display);font-size:15px}
  .report-h span{font-family:var(--font-mono);font-size:11px;color:var(--faint)}
  .risk{padding:22px 20px;display:flex;align-items:center;gap:22px;border-bottom:1px solid var(--border-soft)}
  .gauge{--v:72;width:96px;height:96px;border-radius:50%;flex:none;display:grid;place-items:center;position:relative;
    background:conic-gradient(var(--high) calc(var(--v)*1%),var(--border-soft) 0)}
  .gauge::before{content:"";position:absolute;inset:9px;border-radius:50%;background:var(--surface)}
  .gauge b{position:relative;font-family:var(--font-mono);font-size:26px;font-weight:700}
  .risk-txt h3{font-size:16px}
  .risk-txt p{color:var(--dim);font-size:13.5px;margin-top:5px}
  .sev-bars{padding:18px 20px;display:flex;flex-direction:column;gap:12px}
  .sev-bar{display:grid;grid-template-columns:78px 1fr 34px;align-items:center;gap:12px;font-family:var(--font-mono);font-size:12px}
  .sev-bar .lab{color:var(--dim);text-transform:uppercase;letter-spacing:.06em;font-size:11px}
  .track{height:8px;border-radius:5px;background:var(--border-soft);overflow:hidden}
  .fill{height:100%;border-radius:5px;transform-origin:left;animation:grow 1s ease both}
  @keyframes grow{from{transform:scaleX(0)}}
  @media (prefers-reduced-motion:reduce){.fill{animation:none}}
  .sev-bar .val{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink)}
  .feat-list{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-direction:column;gap:16px}
  .feat-list li{display:flex;gap:13px;align-items:flex-start}
  .feat-list .ci{flex:none;width:22px;height:22px;border-radius:6px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent);margin-top:2px}
  .feat-list b{font-size:15.5px}
  .feat-list p{color:var(--dim);font-size:14px;margin-top:3px}

  /* ============ PRICING CALCULATOR ============ */
  .calc{background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);overflow:hidden;margin-top:44px}
  .calc-grid{display:grid;grid-template-columns:1.25fr 1fr}
  /* A 1fr track is minmax(auto,1fr), so its min-content floor lets a
     non-shrinkable child push the track past the container. Measured at 320px:
     .calc-controls resolved to 377px and was clipped. min-width:0 removes the
     floor so the track honours the container instead. */
  .calc-grid>*{min-width:0}
  @media (max-width:860px){.calc-grid{grid-template-columns:1fr}}
  .calc-controls{padding:clamp(22px,3vw,34px)}
  .calc-summary{padding:clamp(22px,3vw,34px);background:var(--bg-elev);border-left:1px solid var(--border-soft);display:flex;flex-direction:column}
  @media (max-width:860px){.calc-summary{border-left:none;border-top:1px solid var(--border-soft)}}
  .ctrl{margin-bottom:24px}
  .ctrl>label{display:flex;justify-content:space-between;align-items:baseline;font-size:13px;font-weight:600;color:var(--dim);margin-bottom:12px}
  .ctrl>label span{font-weight:400;color:var(--faint);font-family:var(--font-mono);font-size:12px}
  .ctrl .amt-badge{font-family:var(--font-mono);font-size:20px;color:var(--ink);font-weight:700;font-variant-numeric:tabular-nums}
  .slider{-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:6px;background:var(--border-soft);outline:none;cursor:pointer}
  .slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:22px;height:22px;border-radius:50%;background:var(--accent);cursor:pointer;border:3px solid var(--surface);box-shadow:0 1px 4px rgba(0,0,0,.35)}
  .slider::-moz-range-thumb{width:22px;height:22px;border-radius:50%;background:var(--accent);cursor:pointer;border:3px solid var(--surface)}
  .seg{display:flex;gap:4px;background:var(--bg);border:1px solid var(--border);border-radius:11px;padding:4px}
  .seg button{flex:1;font-family:var(--font-body);font-size:13px;font-weight:600;padding:9px 8px;border:none;border-radius:8px;background:transparent;color:var(--dim);cursor:pointer;transition:all .15s;white-space:nowrap}
  .seg button:hover{color:var(--ink)}
  .seg button[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink)}
  .tz-select{width:100%;font-family:var(--font-body);font-size:14px;padding:10px 12px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23889' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}
  .tz-select:focus{outline:none;border-color:var(--accent)}
  .switch-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 0;border-top:1px solid var(--border-soft)}
  .switch{width:46px;height:26px;border-radius:20px;background:var(--border);border:none;cursor:pointer;position:relative;flex:none;transition:background .2s}
  .switch[aria-checked="true"]{background:var(--accent)}
  .switch::after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;transition:transform .2s;box-shadow:0 1px 2px rgba(0,0,0,.3)}
  .switch[aria-checked="true"]::after{transform:translateX(20px)}
  .cur-toggle{display:flex;gap:4px;align-self:flex-end;margin-bottom:16px;background:var(--bg);border:1px solid var(--border);border-radius:9px;padding:3px}
  .cur-toggle button{font-family:var(--font-mono);font-size:12px;font-weight:600;padding:5px 11px;border:none;border-radius:6px;background:transparent;color:var(--dim);cursor:pointer}
  .cur-toggle button[aria-pressed="true"]{background:var(--accent);color:var(--accent-ink)}
  .price-big{font-family:var(--font-display);font-size:clamp(38px,6vw,48px);font-weight:700;letter-spacing:-.03em;line-height:1}
  .price-big small{font-size:15px;color:var(--faint);font-weight:400;font-family:var(--font-mono)}
  .price-per{font-family:var(--font-mono);font-size:13px;color:var(--accent);margin-top:8px}
  .price-rows{margin:20px 0;display:flex;flex-direction:column;gap:9px;font-size:13px;border-top:1px solid var(--border-soft);padding-top:18px}
  .price-rows .pr{display:flex;justify-content:space-between;gap:14px;color:var(--dim)}
  .price-rows .pr span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .price-rows .pr b{color:var(--ink);font-family:var(--font-mono);font-variant-numeric:tabular-nums;flex:none}
  .price-rows .pr.disc b{color:var(--low)}
  .email-field{margin-top:auto}
  .email-field input{width:100%;font-family:var(--font-body);font-size:14px;padding:12px 14px;border-radius:10px;border:1px solid var(--border);background:var(--surface);color:var(--ink);margin-bottom:4px}
  .email-field input:focus{outline:none;border-color:var(--accent)}
  .email-field input.bad{border-color:var(--crit)}
  .email-err{font-size:12px;color:var(--crit);margin:2px 0 8px;min-height:15px;font-family:var(--font-mono);display:flex;align-items:center;gap:6px}
  .email-ok{color:var(--low)!important}
  .stripe-btn{width:100%;justify-content:center}
  .stripe-note{font-family:var(--font-mono);font-size:11px;color:var(--faint);text-align:center;margin-top:12px;display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap}

  /* pricing plans (kept for enterprise/free anchors) */
  .price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
  @media (max-width:860px){.price-grid{grid-template-columns:1fr}}
  .plan{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:26px;display:flex;flex-direction:column}
  .plan .pn{font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}
  .plan .amt{font-family:var(--font-display);font-size:26px;font-weight:700;margin:10px 0 2px;letter-spacing:-.03em}
  .plan .amt small{font-size:13px;color:var(--faint);font-weight:400;font-family:var(--font-mono)}
  .plan .pd{color:var(--dim);font-size:14px}
  .plan a{margin-top:18px;justify-content:center}

  /* cta */
  .cta-band{background:var(--bg-elev);border:1px solid var(--border);border-radius:22px;padding:clamp(32px,5vw,52px);text-align:center;position:relative;overflow:hidden}
  .cta-band::before{content:"";position:absolute;inset:0;z-index:0;opacity:.5;
    background:radial-gradient(60% 120% at 50% 0%,var(--accent-soft),transparent 70%)}
  .cta-band>*{position:relative;z-index:1}
  .cta-band h2{font-size:clamp(26px,4vw,40px)}
  .cta-band p{color:var(--dim);max-width:48ch;margin:16px auto 0;font-size:16.5px}
  .cta-form{display:flex;gap:10px;justify-content:center;margin-top:28px;flex-wrap:wrap}
  .cta-form input{font-family:var(--font-body);font-size:14.5px;padding:12px 16px;border-radius:10px;
    border:1px solid var(--border);background:var(--surface);color:var(--ink);min-width:230px}
  .cta-form input:focus{outline:none;border-color:var(--accent)}
  .cta-form input.bad{border-color:var(--crit)}

  /* footer */
  footer{border-top:1px solid var(--border-soft);padding:44px 0 40px;margin-top:20px}
  .foot{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:flex-start}
  .foot .brand{margin-bottom:12px}
  .foot p{color:var(--faint);font-size:13px;max-width:32ch}
  .foot-cols{display:flex;gap:56px;flex-wrap:wrap}
  .foot-col h4{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin:0 0 14px}
  .foot-col a{display:block;font-size:14px;color:var(--dim);margin-bottom:10px}
  .foot-col a:hover{color:var(--accent)}
  .foot-btm{border-top:1px solid var(--border-soft);margin-top:36px;padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
  .foot-btm span{font-family:var(--font-mono);font-size:12px;color:var(--faint)}

  /* ===== brand lockup — real ntingasec.com emblem + name ===== */
  :root{ --logo-emblem:url("data:image/png;base64,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"); }
  .brand-mark{flex:none;width:30px;height:31px;background:var(--logo-emblem) center/contain no-repeat}
  .brand-name{display:flex;flex-direction:column;line-height:1;gap:3px}
  .brand-name .bn1{font-family:var(--font-display);font-weight:700;font-size:16.5px;letter-spacing:-.02em;color:var(--ink)}
  .brand-name .bn2{font-family:var(--font-mono);font-size:8px;letter-spacing:.155em;text-transform:uppercase;color:var(--accent);font-weight:600}
  .foot .brand-mark{width:34px;height:35px}
  .foot .brand-name .bn1{font-size:18px}
  .foot .brand-name .bn2{font-size:8.5px}
  @media (max-width:600px){ .brand-mark{width:27px;height:28px} .brand-name .bn1{font-size:15px} }

  /* ============ MOBILE ============
     A flex item defaults to min-width:auto, so a nowrap child refuses to shrink
     below its own text width and pushes the page wider than the viewport. body
     has overflow-x:hidden, which then CLIPS the excess rather than scrolling —
     which is why the symptom is content cut off rather than a scrollbar. Each
     rule below removes an item that genuinely cannot shrink, instead of leaning
     on that clip to hide it. */
  @media (max-width:600px){
    .wrap{padding:0 18px}

    /* Segmented controls are the main offender: "Full · Web + Cloud" alone needs
       ~136px, and three of them cannot share one row inside a ~300px column.
       Let them wrap two-up and allow the labels to break. */
    .seg{flex-wrap:wrap}
    .seg button{flex:1 1 calc(50% - 4px);min-width:0;white-space:normal;
      font-size:12.5px;padding:9px 6px;line-height:1.25}

    /* Live scan feed: .cve and .host are flex:none, so the row cannot shrink at
       all. The host column is the least load-bearing of the three — drop it and
       let the CVE ellipsize. */
    .row .host{display:none}
    .row .cve{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

    /* min-width:230px on two side-by-side inputs overflows a 320px device. */
    .cta-form{flex-direction:column;align-items:stretch;gap:8px}
    .cta-form input{min-width:0;width:100%}
    .cta-form .btn{width:100%;justify-content:center}

    /* A 56px gutter forces the three footer link columns wider than the screen. */
    .foot-cols{gap:26px 30px}
    .foot-btm{flex-direction:column;gap:8px}
  }

/* Honeypot — visually removed but still in the accessibility/DOM tree for bots.
   Not display:none, which some scrapers skip. */
.hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}
