/* Free scan (v2) — the real version of the home hero console.
   1. who to check (form console) → 2. the live sweep → 3. the report.
   Markup for 2 and 3 is partly rendered by resources/js/marketing-scan.js:
   every class it emits is styled here, nothing in the script changed. */

.scanpage{--s4:var(--red);--s3:var(--amber);--s2:var(--v2);--s1:#8f8ab8;--sx:#4a4566}

/* ── console primitives shared with the home hero (home.css is not loaded here) ── */
.scanpage .console{padding:22px}
.scanpage .con-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px}
.scanpage .con-head b{font-size:13px;letter-spacing:.02em}
.scanpage .live{display:inline-flex;align-items:center;gap:7px;font:600 11px var(--mono);color:var(--teal);padding:5px 10px;border-radius:999px;background:rgba(67,227,191,.08);border:1px solid rgba(67,227,191,.25);white-space:nowrap}
.scanpage .live::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 12px var(--teal);animation:sc-pulse 1.4s infinite}
@keyframes sc-pulse{50%{opacity:.35}}
.scanpage .handle{display:flex;align-items:center;gap:10px;padding:0 16px;border-radius:14px;background:rgba(0,0,0,.28);border:1px solid var(--line);font:600 16px var(--mono);min-width:0}
.scanpage .handle>i{color:var(--v2)}
.scanpage .caret{display:inline-block;width:.5em;height:.95em;background:var(--teal);vertical-align:-.1em;margin-left:2px;animation:sc-blink 1s steps(1) infinite;flex:none}
@keyframes sc-blink{50%{opacity:0}}
.scanpage .con-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.scanpage .chips{display:flex;flex-wrap:wrap;gap:6px}

/* ── 1. hero: the question + the form console ─────────────────────── */
.scanhero .wrap{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start}
.scanhero .wrap>*{min-width:0}
.scanhead__proof{display:flex;flex-wrap:wrap;align-items:center;gap:12px;color:var(--faint);font-size:13px}
.scanhead .lead{margin-bottom:28px}

/* journey rail: state follows the live console via :has() */
.jsteps{display:grid;gap:4px;position:relative;max-width:520px}
.jsteps::before{content:"";position:absolute;left:21px;top:22px;bottom:22px;width:1px;background:var(--line2)}
.jsteps li{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr);gap:14px;align-items:center;padding:10px 0;color:var(--faint);transition:color .3s}
.jsteps b{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;font:700 13px var(--mono);background:rgba(20,16,40,.9);border:1px solid var(--line2);color:var(--faint);transition:all .35s}
.jsteps span{font-size:13px}
.jsteps strong{display:block;font-size:15px;color:var(--muted);font-weight:600;margin-bottom:1px}
.jsteps li.on b,.jsteps li:nth-child(1) b{background:linear-gradient(135deg,var(--v),var(--v2));border-color:transparent;color:#fff;box-shadow:0 10px 30px -10px rgba(146,81,255,.9)}
.jsteps li:nth-child(1) strong{color:#fff}
/* current step (sweep running → 2, report landed → 3) */
.scanpage:has(.run:not([hidden])) .jsteps li:nth-child(2) b,
.scanpage:has(.run.is-done) .jsteps li:nth-child(3) b{background:linear-gradient(135deg,var(--v),var(--v2));border-color:transparent;color:#fff;box-shadow:0 10px 30px -10px rgba(146,81,255,.9)}
.scanpage:has(.run:not([hidden])) .jsteps li:nth-child(2) strong,
.scanpage:has(.run.is-done) .jsteps li:nth-child(3) strong{color:#fff}
/* completed steps (declared after, so they win at equal specificity) */
.scanpage:has(.run:not([hidden])) .jsteps li:nth-child(1) b,
.scanpage:has(.run.is-done) .jsteps li:nth-child(2) b{background:rgba(47,220,142,.12);border-color:rgba(47,220,142,.45);color:var(--green);box-shadow:none}
.scanpage:has(.run:not([hidden])) .jsteps li:nth-child(1) strong,
.scanpage:has(.run.is-done) .jsteps li:nth-child(2) strong{color:var(--muted)}

/* form */
.scanform{display:grid;gap:14px}
.scan-types{border:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}
.scan-types legend{grid-column:1/-1;display:flex;align-items:center;gap:10px;font:600 12px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;float:left;width:100%}
.scan-types legend span{width:24px;height:24px;border-radius:8px;display:grid;place-items:center;background:rgba(146,81,255,.18);color:var(--v2);font-size:12px}
.scan-type{position:relative;cursor:pointer;min-width:0}
.scan-type input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.scan-type>span{display:grid;grid-template-columns:30px minmax(0,1fr);gap:0 10px;align-items:center;padding:11px 12px;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.18);transition:border-color .2s,background .2s,box-shadow .2s;height:100%}
.scan-type i{grid-row:span 2;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:rgba(146,81,255,.14);color:var(--v2);font-size:14px}
.scan-type b{font-size:13.5px;font-weight:600}
.scan-type small{font-size:11.5px;color:var(--faint);line-height:1.35}
.scan-type:hover>span{border-color:var(--line2);background:rgba(255,255,255,.03)}
.scan-type input:checked+span{border-color:rgba(169,92,255,.65);background:rgba(146,81,255,.14);box-shadow:0 0 0 1px rgba(169,92,255,.3)}
.scan-type input:checked+span i{background:linear-gradient(135deg,var(--v),var(--v2));color:#fff}
.scan-type input:focus-visible+span{outline:2px solid var(--v2);outline-offset:2px}

.scanform__submit{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;align-items:stretch;min-width:0}
.scanform__field{transition:border-color .2s,box-shadow .2s}
.scanform__field:focus-within{border-color:var(--v2);box-shadow:0 0 0 4px rgba(146,81,255,.18)}
.isp .scanform__field input{border:0!important;background:none!important;box-shadow:none!important;padding:15px 0;font:600 14.5px var(--mono);min-width:0;text-overflow:ellipsis}
.scanform__submit .btn{width:100%}
.scanform__submit .btn:disabled{opacity:.7;cursor:progress;transform:none}
.scanform__help{font-size:12.5px;color:var(--faint)}
.scanhead__note{margin-top:14px;padding-top:14px;border-top:1px solid var(--line);font-size:12.5px;color:var(--faint)}
.scanhead__note--bad{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border:1px solid rgba(255,77,109,.35);border-radius:14px;background:rgba(255,77,109,.08);color:#ffb3c1;font-size:13.5px}
.scanhead__note--bad::before{content:"\F33A";font-family:bootstrap-icons;color:var(--red);flex:none}

/* what the free report contains */
.scanincl{padding:10px 0 30px}
.scan-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.scan-benefits li{display:flex;gap:14px;align-items:center;padding:18px;border-radius:18px;min-width:0}
.scan-benefits b{flex:none;width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font:700 13px var(--mono);background:rgba(146,81,255,.16);color:var(--v2)}
.scan-benefits span{font-size:12.5px;color:var(--faint);min-width:0}
.scan-benefits strong{display:block;font-size:14.5px;color:var(--text);font-weight:600}

/* ── 2. the live sweep ────────────────────────────────────────────── */
.scanrun{padding:50px 0 10px}
.scanrun:not(:has(.run:not([hidden]))){display:none}
.run{scroll-margin-top:96px}
.run__head{margin-bottom:16px}
.run__head--out{margin-top:40px}
.run:not(.is-done) .run__head--out{display:none}
.run__grid{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:18px;align-items:start}
.run__grid>*{min-width:0}
.run__p{padding:22px}
.run__bar{justify-content:flex-start}
.run__t{font:600 13px var(--sans);letter-spacing:.02em}
.run__b{margin-left:auto;font:600 11px var(--mono);color:var(--muted)}
.run__b b{color:#fff}
.run__b.live{color:var(--teal)}
.run__live{width:8px;height:8px;border-radius:50%;background:var(--v2);box-shadow:0 0 12px var(--v2);animation:sc-pulse 1.4s infinite;flex:none}
.run.is-queued .run__live{background:var(--amber);box-shadow:0 0 12px var(--amber)}
.run.is-done .run__live{animation:none;background:var(--green);box-shadow:0 0 10px var(--green)}
.run.is-done .run__b.live::before{animation:none}
.run.is-done .run__caret{display:none}

.run__cols{display:grid;gap:18px}
.run__id{display:grid;gap:8px;min-width:0}
.run__k{font:600 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--faint)}
.run__k--gap{margin-top:12px}
.scanpage .run__name{padding:14px 16px;overflow:hidden}
.run__name>span:not(.caret){overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.run__role{font-size:13px;color:var(--muted)}

/* verdict, written by the script once the sweep resolves */
.run__verdict{display:grid;gap:10px;padding:18px;border-radius:16px;border:1px solid var(--line);background:rgba(0,0,0,.2);animation:sc-land .6s cubic-bezier(.2,.8,.2,1) both}
.verd__n{font-size:64px;font-weight:800;letter-spacing:-.05em;line-height:.9}
.verd__t{color:var(--muted);font-size:13.5px}
.tag{justify-self:start;display:inline-flex;align-items:center;gap:6px;font:600 10.5px var(--mono);padding:4px 9px;border-radius:999px;border:1px solid var(--line2);color:var(--muted)}
.tag--ok{color:var(--green);border-color:rgba(47,220,142,.4)}
.tag--warn{color:var(--amber);border-color:rgba(255,179,64,.4)}
.ledger{display:grid;gap:10px;margin-top:4px}
.ledger__bar{display:flex;height:10px;border-radius:99px;overflow:hidden;background:rgba(255,255,255,.06);gap:2px}
.ledger__bar i{display:block;height:100%;animation:sc-grow 1s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}
.ledger__key{display:flex;flex-wrap:wrap;gap:6px 14px;font:600 12px var(--mono)}
.ledger__key li{display:flex;align-items:center;gap:6px}
.ledger__key em{font-style:normal;color:var(--faint);font-weight:500}
.ledger__key b{width:8px;height:8px;border-radius:50%}
.sev-bg-4,.sev-dot-4{background:var(--s4)}.sev-bg-3,.sev-dot-3{background:var(--s3)}
.sev-bg-2,.sev-dot-2{background:var(--s2)}.sev-bg-1,.sev-dot-1{background:var(--s1)}
.sev-bg-x,.dot-x{background:var(--sx)}

/* progress meter */
.run__meter{position:relative;display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.06);overflow:hidden;margin-bottom:16px}
.run__meter i,.run__line-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--v),var(--teal));transition:width .6s ease}
.run__meter.is-waiting i{width:0!important}
.run__meter.is-waiting::after{content:"";position:absolute;top:0;bottom:0;left:-30%;width:30%;border-radius:inherit;background:linear-gradient(90deg,transparent,var(--v2),transparent);animation:sc-wait 1.4s ease-in-out infinite}
@keyframes sc-wait{to{left:100%}}

/* the sweep grid: same chips as the home console, one per real adapter */
.swgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:8px}
.swcell{position:relative;display:flex;align-items:center;gap:9px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:rgba(0,0,0,.18);color:var(--faint);font-size:12.5px;min-width:0;transition:border-color .3s,background .3s,color .3s;overflow:hidden}
.swcell__i{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.swcell__n{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.swcell__c{font:700 12px var(--mono);color:#fff;padding:1px 7px;border-radius:99px;background:linear-gradient(135deg,var(--v),var(--v2))}
.swcell__s{width:7px;height:7px;border-radius:50%;flex:none;background:rgba(255,255,255,.12)}
.swcell.is-live{color:#fff;border-color:rgba(146,81,255,.6);background:rgba(146,81,255,.18)}
.swcell.is-live .swcell__s{background:var(--v2);box-shadow:0 0 0 3px rgba(146,81,255,.28);animation:sc-pulse 1s infinite}
.swcell.is-live::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.08) 50%,transparent 70%);animation:sc-shine 1.6s linear infinite}
@keyframes sc-shine{from{transform:translateX(-100%)}to{transform:translateX(100%)}}
.run.is-queued .swcell.is-live{border-color:var(--line2);background:rgba(255,179,64,.06)}
.swcell.is-done{color:var(--muted);border-color:rgba(67,227,191,.22)}
.swcell.is-done .swcell__s{background:var(--teal);box-shadow:0 0 8px rgba(67,227,191,.6)}
.swcell.has-hits{color:#fff;border-color:rgba(169,92,255,.55);background:rgba(146,81,255,.12)}
.swcell.has-hits .swcell__s{display:none}

.run__line{margin-bottom:0}
.run__pct{font-size:30px;font-weight:800;color:#fff;letter-spacing:-.03em;line-height:1;flex:none}
.run__pct em{font-style:normal;font-size:16px;color:var(--muted);margin-left:2px}
.run__line-meter{flex:1;height:4px;border-radius:99px;background:rgba(255,255,255,.06);overflow:hidden}

/* ── 3. the report (rendered by the script) ───────────────────────── */
.run__out{display:block}
.rout{display:grid;gap:18px}
.rout>*{min-width:0;animation:sc-land .7s cubic-bezier(.2,.8,.2,1) both}
.rout>*:nth-child(2){animation-delay:.12s}.rout>*:nth-child(3){animation-delay:.24s}.rout>*:nth-child(4){animation-delay:.36s}.rout>*:nth-child(5){animation-delay:.48s}
@keyframes sc-land{from{opacity:0;transform:translateY(18px);filter:blur(6px)}to{opacity:1;transform:none;filter:none}}
@keyframes sc-grow{from{transform:scaleX(0)}to{transform:none}}

/* glass surface for every report block (the script emits plain sections) */
.report-cover,.rcard,.report-cta{position:relative;border:1px solid var(--line);border-radius:var(--r);padding:26px;
  background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.015) 40%),var(--glass);
  backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);box-shadow:inset 0 1px 0 rgba(255,255,255,.09),0 20px 60px -24px rgba(0,0,0,.7);overflow:hidden}

/* the cover: verdict + risk index */
.report-cover{display:flex;gap:30px;align-items:center;justify-content:space-between;border-left:3px solid var(--sev,var(--v2))}
.report-cover.sev-edge-4{--sev:var(--s4)}.report-cover.sev-edge-3{--sev:var(--s3)}.report-cover.sev-edge-2{--sev:var(--s2)}.report-cover.sev-edge-1{--sev:var(--teal)}
.report-cover::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(600px circle at 0 0,color-mix(in srgb,var(--sev,var(--v2)) 14%,transparent),transparent 60%)}
.report-cover>div:first-child{position:relative;min-width:0}
.report-cover__eyebrow{display:inline-flex;align-items:center;gap:8px;font:600 11px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}
.report-cover h2{font-size:clamp(28px,3.4vw,44px);font-weight:800;margin:10px 0 8px;color:var(--sev,#fff)}
.report-cover p{color:var(--muted);max-width:620px;font-size:14.5px}
.report-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:20px}
.report-kpis span{padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.2);font-size:12px;color:var(--faint);min-width:0}
.report-kpis b{display:block;font-size:26px;font-weight:800;color:#fff;letter-spacing:-.03em;line-height:1.1}
.report-score{position:relative;flex:none;width:170px;height:170px;border-radius:50%;display:grid;place-items:center;align-content:center;gap:4px;text-align:center;
  background:conic-gradient(var(--sev,var(--v2)) calc(var(--risk,0)*1%),rgba(255,255,255,.07) 0);animation:sc-land .8s .2s both}
.report-score::before{content:"";position:absolute;inset:11px;border-radius:50%;background:#100c22}
.report-score>*{position:relative}
.report-score>div{display:flex;align-items:baseline;justify-content:center}
.report-score b{font-size:52px;font-weight:800;letter-spacing:-.04em;line-height:1}
.report-score small{font:600 11px var(--mono);color:var(--faint)}
.report-score span{font:600 10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}

/* generic cards */
.rcard__h{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 18px;margin-bottom:18px}
.rcard__h h2{font-size:20px;font-weight:700}
.rcard__h p{font-size:13px;color:var(--faint)}
.rcard__b{display:grid;gap:16px;justify-items:start}
.rcard__b p{color:var(--muted);max-width:680px}
.rcard__b--bad{padding:16px;border-radius:14px;border:1px solid rgba(255,77,109,.35);background:rgba(255,77,109,.07)}
.rcard__b--bad>p{color:#ffb3c1;display:flex;gap:10px}
.rcard__b--bad>p::before{content:"\F33A";font-family:bootstrap-icons;color:var(--red)}
.isp .btn--outline{background:rgba(255,255,255,.04);border-color:var(--line2)}

/* coverage by detection engine */
.channel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;margin-bottom:20px}
.channel-grid li{display:grid;gap:2px;padding:12px 14px;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.18);font-size:12px;color:var(--faint);min-width:0}
.channel-grid b{font-size:24px;font-weight:800;color:#fff;letter-spacing:-.03em;line-height:1.1}
.channel-grid__icon{width:18px;height:18px;color:var(--v2);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;margin-bottom:4px}
.coverage-chart{display:grid;gap:10px}
.coverage-chart li{display:grid;grid-template-columns:minmax(0,190px) minmax(0,1fr) 40px;gap:12px;align-items:center;font-size:13px;color:var(--muted)}
.coverage-chart li>span{display:flex;align-items:center;gap:8px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.coverage-chart__icon{width:15px;height:15px;flex:none;color:var(--faint);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.coverage-chart i{display:block;height:8px;border-radius:99px;background:rgba(255,255,255,.06);overflow:hidden}
.coverage-chart i b{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--v),var(--teal));animation:sc-grow 1.2s .3s cubic-bezier(.2,.8,.2,1) both;transform-origin:left}
.coverage-chart strong{font:700 13px var(--mono);text-align:right;color:#fff}

/* AI threat intelligence */
.intel-head{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:16px}
.intel-head span{padding:14px;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.18);font-size:12px;color:var(--faint);min-width:0}
.intel-head b{display:block;font-size:28px;font-weight:800;color:#fff;letter-spacing:-.03em;line-height:1.1}
.intel-head span:first-child b{color:var(--red)}
.intel-matrix{display:grid;gap:6px}
.intel-matrix li{display:grid;grid-template-columns:minmax(0,1.2fr) repeat(4,minmax(0,1fr));gap:8px;align-items:center;padding:10px 12px;border-radius:12px;border:1px solid transparent;font-size:13px}
.intel-matrix li:hover{background:rgba(255,255,255,.03);border-color:var(--line)}
.intel-matrix strong{font-weight:600}
.tone{display:flex;align-items:baseline;gap:6px;font:500 11.5px var(--mono);color:var(--faint);text-transform:capitalize}
.tone b{font:700 14px var(--mono);color:var(--muted)}
.tone--negative b{color:var(--red)}.tone--positive b{color:var(--green)}.tone--mixed b{color:var(--amber)}

/* worst first: the script's rows wear the home console's .det look */
.rrows{display:grid;gap:2px;padding:6px;border-radius:14px;border:1px solid var(--line);background:rgba(0,0,0,.18)}
.rrow{--sev:var(--s1);display:grid;grid-template-columns:8px 30px minmax(0,1fr) auto;gap:12px;align-items:center;padding:11px 12px;border-radius:12px;border:1px solid transparent;transition:background .2s;animation:sc-row .5s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i,0)*70ms + .3s)}
.rrow:hover{background:rgba(255,255,255,.04);border-color:var(--line)}
@keyframes sc-row{from{opacity:0;transform:translateX(-16px)}to{opacity:1;transform:none}}
.sev-edge-4{--sev:var(--s4)}.sev-edge-3{--sev:var(--s3)}.sev-edge-2{--sev:var(--s2)}.sev-edge-1{--sev:var(--s1)}
.rrow__dot{width:8px;height:8px;border-radius:50%}
.rrow__i{width:30px;height:30px;padding:7px;border-radius:9px;background:color-mix(in srgb,var(--sev) 16%,transparent);color:var(--sev);fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.rrow__main{min-width:0}
.rrow__main b{display:block;font:600 13px var(--mono);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rrow__main em{display:block;font-style:normal;font-size:11.5px;color:var(--faint);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rrow__tag{display:inline-flex;align-items:center;font:600 10.5px var(--mono);padding:4px 9px;border-radius:999px;border:1px solid color-mix(in srgb,var(--sev) 45%,transparent);color:var(--sev);white-space:nowrap}
.tag-sev-4{--sev:var(--s4)}.tag-sev-3{--sev:var(--s3)}.tag-sev-2{--sev:var(--s2)}.tag-sev-1{--sev:var(--s1)}

/* the wall: masked server-side, the blur only dresses it */
.wall{position:relative;margin-top:12px;border-radius:14px;overflow:hidden}
.wall__rows{filter:blur(3px);opacity:.55;pointer-events:none;user-select:none;max-height:300px;overflow:hidden}
.wall__lock{position:absolute;inset:0;display:grid;place-content:center;justify-items:center;gap:8px;padding:20px;text-align:center;background:linear-gradient(180deg,rgba(7,6,15,.35),rgba(7,6,15,.88) 55%)}
.wall__lock::before{content:"\F47A";font-family:bootstrap-icons;font-size:22px;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:rgba(146,81,255,.2);color:var(--v2);margin-bottom:4px}
.wall__t{font-size:20px;font-weight:700}
.wall__t b{background:linear-gradient(100deg,#fff 10%,#cdb4ff 45%,var(--teal) 90%);-webkit-background-clip:text;background-clip:text;color:transparent}
.wall__s{color:var(--muted);font-size:13.5px;max-width:460px;margin-bottom:6px}
.wall__f{font-size:12px;color:var(--faint)}
.wall:not(:has(li)) .wall__rows{min-height:240px}

/* the next step */
.report-cta{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:30px;align-items:center;padding:34px;border-color:rgba(169,92,255,.4);
  background:radial-gradient(600px circle at 100% 0,rgba(146,81,255,.22),transparent 60%),linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.015) 40%),var(--glass)}
.report-cta__k{display:inline-flex;align-items:center;gap:8px;font:600 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal)}
.report-cta__k::before{content:"";width:18px;height:1px;background:currentColor}
.report-cta h2{font-size:clamp(26px,3vw,38px);font-weight:800;margin:12px 0 10px}
.report-cta p{color:var(--muted);font-size:14.5px;max-width:560px}
.report-cta ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 16px;margin-top:16px}
.report-cta li{display:flex;gap:10px;padding:4px 0;color:var(--muted);font-size:14px}
.report-cta li::before{content:"\F26E";font-family:bootstrap-icons;color:var(--green)}
.report-cta__action{display:grid;gap:12px;justify-items:center;text-align:center;padding:24px;border-radius:18px;border:1px solid var(--line);background:rgba(0,0,0,.22)}
.report-cta__action>a:not(.btn){color:var(--v2);font-weight:600;font-size:14px}
.report-cta__action>a:not(.btn):hover{color:#fff}
.report-cta__action small{color:var(--faint);font-size:12px}

/* "get the full report" — optional work email on the result */
.report-lead__form{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) auto;gap:10px;margin-top:4px}
.report-lead__form input{min-width:0;width:100%;height:46px;padding:0 14px;border-radius:12px;border:1px solid var(--line);background:rgba(0,0,0,.25);color:inherit;font:inherit;font-size:14px}
.report-lead__form input:focus{outline:none;border-color:rgba(169,92,255,.7)}
.report-lead__form .report-lead__hp{position:absolute;width:1px;height:1px;padding:0;border:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);opacity:0}
.report-lead__note{margin-top:10px;color:var(--faint);font-size:12px}
.report-lead__note.is-bad{color:var(--red,#ff4d6d)}

/* ── responsive ───────────────────────────────────────────────────── */
@media (max-width:1180px){
  .scanform__submit{grid-template-columns:minmax(0,1fr) auto}.scanform__submit .btn{width:auto}
  .scanhero .wrap{grid-template-columns:minmax(0,1fr)}
  .jsteps{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .jsteps::before{display:none}
  .jsteps li{grid-template-columns:1fr;align-items:start;gap:10px}
  .scan-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
  .run__grid{grid-template-columns:minmax(0,1fr)}
  .report-cta{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:760px){
  .jsteps{grid-template-columns:minmax(0,1fr);gap:2px}
  .jsteps::before{display:block}
  .jsteps li{grid-template-columns:44px minmax(0,1fr);align-items:center}
  .scanpage .console,.run__p{padding:16px}
  .scan-types{grid-template-columns:minmax(0,1fr)}
  .scanform__submit{grid-template-columns:minmax(0,1fr)}
  .scanform__submit .btn{width:100%}
  .scan-benefits{grid-template-columns:minmax(0,1fr)}
  .swgrid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .report-cover{flex-direction:column;align-items:stretch;padding:20px}
  .report-score{margin:0 auto}
  .report-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .intel-head{gap:8px}.intel-head span{padding:12px 10px;font-size:11px}.intel-head b{font-size:22px}
  .rcard,.report-cta{padding:20px}
  .coverage-chart li{grid-template-columns:minmax(0,1fr) 40px}
  .coverage-chart li>i{grid-column:1/-1;grid-row:2}
  .intel-matrix li{grid-template-columns:repeat(2,minmax(0,1fr))}
  .intel-matrix strong{grid-column:1/-1}
  .report-cta ul{grid-template-columns:minmax(0,1fr)}
  .report-lead__form{grid-template-columns:minmax(0,1fr)}
  .report-lead__form .btn{width:100%}
  .rrow{grid-template-columns:8px 30px minmax(0,1fr);row-gap:6px}
  .rrow__tag{grid-column:3;justify-self:start}
  .verd__n{font-size:52px}
}
@media (prefers-reduced-motion:reduce){.swcell.is-live::after,.run__meter.is-waiting::after{animation:none}}
