/* Website Audit — "Diagnostic" */
body{ background:radial-gradient(90% 50% at 85% 0%,rgba(42,143,224,.16),transparent 60%) var(--ink-0); }

/* Hero */
.au-hero{ position:relative; min-height:100svh; padding:calc(var(--nav-h) + 34px) 0 clamp(60px,9vh,110px); display:flex; align-items:center; overflow:hidden; }
.au-grid-bg{ position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(rgba(169,217,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(169,217,255,.07) 1px,transparent 1px);
  background-size:64px 64px; -webkit-mask:radial-gradient(70% 70% at 70% 40%,#000,transparent 75%); mask:radial-gradient(70% 70% at 70% 40%,#000,transparent 75%); }
.au-hero-grid{ position:relative; z-index:2; display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr); gap:clamp(30px,5vw,80px); align-items:center; width:100%; }
.au-title{ margin:22px 0 24px; font-size:clamp(2.6rem,min(5.6vw,10.5svh),6rem); }
.au-title > span{ display:block; }
.au-copy .lead{ margin-bottom:30px; }
.au-copy .scan-console{ max-width:640px; }
.au-visual{ position:relative; aspect-ratio:4/5; max-height:72svh; justify-self:center; width:100%; max-width:520px; }
.au-frame{ position:absolute; inset:0; border-radius:28px; overflow:hidden; box-shadow:0 60px 120px -40px rgba(42,143,224,.45); }
.au-frame img{ width:100%; height:100%; object-fit:cover; transform:scale(1.15); }
.au-frame::before{ background:linear-gradient(180deg,rgba(5,5,9,.1),rgba(5,5,9,.65)); display:block !important; }
.au-scanline{ position:absolute; left:0; right:0; top:0; height:30%; z-index:3; pointer-events:none;
  background:linear-gradient(180deg,transparent,rgba(169,217,255,.16) 85%,rgba(169,217,255,.7) 100%); border-bottom:1px solid #bfe4ff; mix-blend-mode:screen; }
.au-readout{ position:absolute; left:-7%; bottom:12%; width:min(78%,300px); padding:18px; border-radius:18px; background:rgba(9,9,26,.86); border:1px solid var(--line-2); display:grid; gap:12px; box-shadow:0 30px 60px -20px rgba(0,0,0,.7); }
.ar-row{ display:grid; grid-template-columns:96px 1fr; gap:12px; align-items:center; font-family:var(--f-mono); font-size:.6rem; letter-spacing:.12em; text-transform:uppercase; color:var(--fog); }
.ar-row i{ position:relative; height:4px; border-radius:2px; background:rgba(243,241,236,.1); overflow:hidden; }
.ar-row i::after{ content:""; position:absolute; inset:0; width:var(--w); border-radius:2px; background:var(--grad); transform-origin:left; animation:ar-pulse 3.6s var(--ease) infinite; }
.ar-row:nth-child(2) i::after{ animation-delay:.3s; } .ar-row:nth-child(3) i::after{ animation-delay:.6s; } .ar-row:nth-child(4) i::after{ animation-delay:.9s; }
@keyframes ar-pulse{ 0%{ transform:scaleX(0); } 40%,80%{ transform:scaleX(1); } 100%{ transform:scaleX(1); opacity:.3; } }
.au-badge{ position:absolute; top:22px; right:-4%; display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border-radius:999px; background:rgba(9,9,26,.86); border:1px solid var(--line-2); font-size:.6rem; color:var(--bone); }
.au-badge i{ width:6px; height:6px; border-radius:50%; background:#5fd38d; animation:pulse 2s infinite; }
@media (max-width:980px){
  .au-hero-grid{ grid-template-columns:1fr; }
  .au-visual{ max-width:420px; aspect-ratio:5/4; margin-top:20px; }
  .au-readout{ left:4%; }
  .au-badge{ right:4%; }
}

/* After-results actions */
.au-after{ display:flex; flex-wrap:wrap; gap:14px; align-items:center; margin-top:10px; }
.au-after .ghost-btn{ margin-top:0; }

/* What we check */
.au-checks{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.au-check{ padding:28px; border-radius:22px; background:linear-gradient(180deg,rgba(20,24,48,.8),rgba(9,9,26,.8)); border:1px solid var(--line); min-height:230px; display:flex; flex-direction:column; gap:14px; }
.au-check .mono{ font-size:.66rem; color:var(--accent-2); }
.au-check ul{ display:grid; gap:8px; margin-top:auto; }
.au-check li{ position:relative; padding-left:16px; color:var(--fog); font-size:.94rem; }
.au-check li::before{ content:""; position:absolute; left:0; top:.62em; width:6px; height:6px; border-radius:50%; background:var(--grad); }
@media (max-width:980px){ .au-checks{ grid-template-columns:1fr 1fr; } }
@media (max-width:620px){ .au-checks{ grid-template-columns:1fr; } }

/* How it works */
.au-how-grid{ display:grid; grid-template-columns:.9fr 1.1fr; gap:clamp(30px,6vw,100px); align-items:center; }
.au-how-img{ height:min(70vh,620px); border-radius:28px; }
.au-steps{ display:grid; gap:0; border-top:1px solid var(--line-2); }
.au-steps li{ display:grid; grid-template-columns:60px 1fr; gap:18px; padding:24px 0; border-bottom:1px solid var(--line-2); }
.au-steps b{ font-family:var(--f-mono); font-weight:500; font-size:.8rem; color:var(--accent-2); padding-top:4px; }
.au-steps p{ color:var(--fog); margin-top:6px; }
.au-note{ margin-top:26px; font-size:.88rem; color:var(--dim); max-width:60ch; }
@media (max-width:900px){ .au-how-grid{ grid-template-columns:1fr; } .au-how-img{ height:46vh; } }

/* Cross-sell */
.au-next{ position:relative; display:grid; grid-template-columns:1fr 1.2fr; min-height:340px; border-radius:30px; overflow:hidden; border:1px solid var(--line-2); background:var(--ink-2); }
.au-next-img{ border-radius:0; }
.au-next-img img{ transition:transform 1.4s var(--ease); }
.au-next:hover .au-next-img img{ transform:scale(1.06); }
.au-next-copy{ padding:clamp(28px,4vw,56px); display:flex; flex-direction:column; justify-content:center; gap:20px; background:radial-gradient(80% 80% at 100% 0%,rgba(141,79,198,.28),transparent 60%); }
.au-next-copy .serif{ color:var(--accent-2); }
@media (max-width:800px){ .au-next{ grid-template-columns:1fr; } .au-next-img{ height:220px; } }
