/* Free website audit (/free-website-audit/). Scoped to wa-* classes; uses the
   shared tokens from global.css and the svc-* layout from service.css. */
.wa-hero{padding-bottom:70px}
.wa-hero .svc-container{max-width:860px}
.wa-hero .svc-hero-copy{max-width:620px}
.wa-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

.wa-form{display:flex;gap:10px;margin-top:34px;padding:8px;border:1px solid var(--bento-line);border-radius:100px;background:var(--bento-surface);max-width:640px;transition:border-color .25s ease,box-shadow .25s ease}
.wa-form:focus-within{border-color:color-mix(in srgb,var(--orange) 60%,transparent);box-shadow:0 0 0 4px color-mix(in srgb,var(--orange) 12%,transparent)}
.wa-form input{flex:1;min-width:0;border:0;background:transparent;color:#fff;font:inherit;font-size:15px;padding:0 18px;outline:none}
.wa-form input::placeholder{color:#5a5a5a}
.wa-form .svc-btn{flex:0 0 auto;width:auto}
.wa-form .svc-btn[disabled]{opacity:.7;cursor:progress}
.wa-note{margin-top:14px;font-size:11px;color:#5f5f5f}
.wa-error{min-height:20px;margin-top:10px;color:#ff8a5c;font-size:14px}

.wa-progress{margin-top:22px;display:flex;flex-direction:column;gap:8px;font-size:13px;color:#8a8a8a}
.wa-progress li{list-style:none;display:flex;align-items:center;gap:10px;opacity:.35;transition:opacity .3s ease}
.wa-progress li.is-on{opacity:1;color:#d6d6d6}
.wa-progress li::before{content:"";width:8px;height:8px;border-radius:50%;background:#333;flex:0 0 auto}
.wa-progress li.is-on::before{background:var(--orange);box-shadow:0 0 12px var(--orange)}
.wa-progress{padding:0}

.wa-results{padding-top:20px}
.wa-panel{background:var(--bento-surface);border:1px solid var(--bento-line);border-radius:20px;padding:28px}
.wa-summary{display:grid;grid-template-columns:auto 1fr;gap:40px;align-items:center}
.wa-ring{position:relative;width:180px;height:180px}
.wa-ring svg{width:100%;height:100%;transform:rotate(-90deg)}
.wa-ring circle{fill:none;stroke-width:10}
.wa-ring .wa-ring-track{stroke:#1c1c1c}
.wa-ring .wa-ring-bar{stroke:var(--orange);stroke-linecap:round;transition:stroke-dashoffset 1.2s var(--ease)}
.wa-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.wa-ring-label b{font-family:var(--font-display);font-size:54px;font-weight:800;letter-spacing:-.04em;line-height:1}
.wa-ring-label span{font-size:12px;color:#7a7a7a;margin-top:6px}
.wa-site{font-size:12px;color:#7a7a7a;word-break:break-all}
.wa-verdict{font-family:var(--font-display);font-size:clamp(24px,3vw,32px);font-weight:700;letter-spacing:-.03em;margin:8px 0 22px}
.wa-cats{display:grid;gap:12px;margin:0;padding:0}
.wa-cat{display:grid;grid-template-columns:170px 1fr 44px;align-items:center;gap:14px;font-size:13px;color:#bdbdbd}
.wa-cat-bar{height:6px;border-radius:6px;background:#1c1c1c;overflow:hidden}
.wa-cat-bar i{display:block;height:100%;width:0;border-radius:6px;background:var(--orange);transition:width 1s var(--ease)}
.wa-cat b{text-align:right;color:#fff;font-weight:600}

.wa-speed{margin-top:18px;display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;font-size:13px;color:#9a9a9a}
.wa-speed strong{color:#fff;font-family:var(--font-display);font-size:22px;margin-right:6px}

.wa-h2{font-family:var(--font-display);font-size:clamp(24px,3vw,34px);font-weight:700;letter-spacing:-.03em;margin:56px 0 18px}
.wa-issues{display:grid;gap:12px;margin:0;padding:0;list-style:none}
.wa-issue{display:grid;grid-template-columns:28px 1fr;gap:14px;padding:20px 22px;border:1px solid var(--bento-line);border-radius:16px;background:var(--bento-surface)}
.wa-issue-icon{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:700}
.wa-fail .wa-issue-icon{background:color-mix(in srgb,var(--orange) 18%,transparent);color:var(--orange)}
.wa-warn .wa-issue-icon{background:#262626;color:#d9d9d9}
.wa-pass .wa-issue-icon{background:#131313;color:#7a7a7a}
.wa-issue h3{font-size:15px;font-weight:600;margin:3px 0 6px;color:#fff}
.wa-issue h3 small{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#6a6a6a;margin-left:8px;font-weight:500}
.wa-issue p{margin:0;font-size:14px;line-height:1.6;color:#9a9a9a}
.wa-issue .wa-fix{margin-top:8px;color:#e4e4e4}
.wa-issue .wa-fix::before{content:"Fix: ";color:var(--orange);font-weight:600}

.wa-gate{margin-top:28px;display:grid;grid-template-columns:1fr 1.2fr;gap:36px;align-items:start}
.wa-gate h2{font-family:var(--font-display);font-size:clamp(24px,3vw,34px);font-weight:700;letter-spacing:-.03em;margin:0 0 12px}
.wa-gate p{color:#9a9a9a;font-size:15px;line-height:1.6;margin:0}
.wa-gate-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.wa-field{display:flex;flex-direction:column;gap:8px}
.wa-field-full{grid-column:1/-1}
.wa-field label{color:#9a9a9a;font-size:11px;font-weight:500}
.wa-field label small{color:#555;font-size:10px}
.wa-field input{width:100%;min-height:50px;padding:14px 16px;border:1px solid rgba(255,255,255,.10);border-radius:12px;background:#050505;color:#fff;font:inherit;font-size:14px;transition:border-color .25s ease}
.wa-field input:focus{outline:none;border-color:color-mix(in srgb,var(--orange) 60%,transparent)}
.wa-consent{grid-column:1/-1;display:flex;gap:10px;align-items:flex-start;font-size:12px;color:#8a8a8a;line-height:1.5}
.wa-consent input{accent-color:var(--orange);width:18px;height:18px;margin-top:1px;flex:0 0 auto}
.wa-consent a{color:#cfcfcf}
.wa-gate-form .svc-btn{grid-column:1/-1}
.wa-gate-status{grid-column:1/-1;min-height:18px;font-size:13px;color:#ff8a5c;margin:0}
.wa-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

.wa-group{margin-top:34px}
.wa-group h3{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#7a7a7a;font-weight:600;margin:0 0 12px}
.wa-cta{margin-top:56px;text-align:center}
.wa-cta p{color:#9a9a9a;margin:12px auto 26px;max-width:560px;line-height:1.6}
.wa-cta .svc-actions{justify-content:center}
.wa-disclaimer{margin-top:28px;font-size:12px;color:#5f5f5f;line-height:1.6;text-align:center}

.wa-checks{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;margin-top:34px}
.wa-check{padding:22px;border:1px solid var(--bento-line);border-radius:16px;background:var(--bento-surface)}
.wa-check h3{font-size:15px;font-weight:600;margin:14px 0 8px}
.wa-check p{margin:0;color:#8a8a8a;font-size:13px;line-height:1.6}
.wa-check .svc-mono{font-size:11px}

@media(max-width:1050px){.wa-checks{grid-template-columns:1fr 1fr}.wa-gate{grid-template-columns:1fr}}
@media(max-width:700px){
  .wa-form{flex-direction:column;border-radius:18px;padding:10px}
  .wa-form input{min-height:48px;padding:0 10px}
  .wa-form .svc-btn{width:100%}
  .wa-summary{grid-template-columns:1fr;justify-items:center;text-align:center;gap:24px}
  .wa-cat{grid-template-columns:110px 1fr 36px;font-size:12px;text-align:left}
  .wa-panel{padding:22px}
  .wa-gate-form{grid-template-columns:1fr}
  .wa-checks{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.wa-ring .wa-ring-bar,.wa-cat-bar i{transition:none}}
/* [hidden] must win over the display rules above. */
.wa-progress[hidden],.wa-speed[hidden],.wa-results[hidden],#waGateWrap[hidden],#waFull[hidden]{display:none!important}
/* Keep scrolled-to sections clear of the fixed header. */
#waResults,#waFull,#waGateWrap{scroll-margin-top:110px}
