*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

:root {
  --bg:        #05050d;
  --surf:      #0d0d18;
  --surf2:     #12121f;
  --glass:     rgba(255,255,255,0.04);
  --glass-b:   rgba(255,255,255,0.08);
  --b1:        rgba(255,255,255,0.06);
  --b2:        rgba(255,255,255,0.11);
  --text:      #eeeef5;
  --muted:     #7b7b99;
  --dim:       #4a4a66;
  --ind:       #6366f1;
  --ind2:      #818cf8;
  --vio:       #8b5cf6;
  --grn:       #10b981;
  --red:       #ef4444;
  --amb:       #f59e0b;
  --blu:       #3b82f6;
  --r:         16px;
  --r-sm:      10px;
  --head:      'Cabinet Grotesk', sans-serif;
  --body:      'Instrument Sans', sans-serif;
  --shadow:    0 20px 60px rgba(0,0,0,0.6);
}

html { scroll-behavior: smooth; }
body {
  background: var(--bg); color: var(--text);
  font-family: var(--body); font-size: 15px; line-height: 1.65;
  overflow-x: hidden; min-height: 100vh;
}

.skip-link { position:absolute;top:-100%;left:0;background:var(--ind);color:white;padding:8px 16px;z-index:9999;font-size:14px;border-radius:0 0 8px 0; }
.skip-link:focus { top:0; }

.page { display:none; }
.page.active { display:block; }

.orb { position:fixed;border-radius:50%;filter:blur(80px);pointer-events:none;z-index:0;opacity:0.18; }
.orb-1 { width:500px;height:500px;background:radial-gradient(circle,#6366f1,transparent);top:-100px;left:-100px;animation:drift1 20s ease-in-out infinite; }
.orb-2 { width:400px;height:400px;background:radial-gradient(circle,#8b5cf6,transparent);top:30%;right:-80px;animation:drift2 25s ease-in-out infinite; }
.orb-3 { width:350px;height:350px;background:radial-gradient(circle,#06b6d4,transparent);bottom:10%;left:20%;animation:drift3 18s ease-in-out infinite; }
@keyframes drift1{0%,100%{transform:translate(0,0)}50%{transform:translate(40px,30px)}}
@keyframes drift2{0%,100%{transform:translate(0,0)}50%{transform:translate(-30px,40px)}}
@keyframes drift3{0%,100%{transform:translate(0,0)}50%{transform:translate(20px,-30px)}}
.grid-overlay { position:fixed;inset:0;pointer-events:none;z-index:0;background-image:linear-gradient(rgba(255,255,255,0.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,0.025) 1px,transparent 1px);background-size:50px 50px;mask-image:radial-gradient(ellipse 80% 80% at 50% 50%,black 40%,transparent 100%); }

/* ══════════════════════════════════════ NAV ══════════════════════════════════════ */
nav { position:sticky;top:0;z-index:200;background:rgba(5,5,13,0.85);backdrop-filter:blur(24px);border-bottom:1px solid var(--b1); }
.nav-inner { max-width:1200px;margin:0 auto;padding:.75rem 1.25rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap; }
.brand { display:flex;align-items:center;gap:10px;font-family:var(--head);font-size:1.1rem;font-weight:800;letter-spacing:-0.03em;color:var(--text);flex-shrink:0;cursor:pointer; }
.brand-logo { width:32px;height:32px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#f4f4f4;border-radius:8px;flex-shrink:0; }
.brand-logo img { width:100%;height:100%;object-fit:cover; }
.nav-links { display:flex;gap:2px;flex:1;flex-wrap:wrap; }
.nav-link { display:flex;align-items:center;gap:6px;background:transparent;border:none;cursor:pointer;font-family:var(--body);font-size:0.82rem;font-weight:500;color:var(--muted);padding:6px 10px;border-radius:8px;transition:color 0.2s,background 0.2s;white-space:nowrap; }
.nav-link:hover { color:var(--text);background:rgba(255,255,255,0.05); }
.nav-link.active { color:var(--ind2);background:rgba(99,102,241,0.1); }
.nav-right { display:flex;gap:6px;align-items:center;margin-left:auto;flex-shrink:0; }
.nbadge { font-size:11px;font-weight:600;padding:3px 9px;border-radius:99px;background:rgba(99,102,241,0.15);color:var(--ind2);border:1px solid rgba(99,102,241,0.25);letter-spacing:0.02em;white-space:nowrap; }
.nbadge.green { background:rgba(16,185,129,0.12);color:#34d399;border-color:rgba(16,185,129,0.2); }
.nav-hire-btn { display:flex;align-items:center;gap:5px;background:linear-gradient(135deg,var(--grn),#059669);color:white;border:none;cursor:pointer;font-family:var(--head);font-size:0.78rem;font-weight:500;padding:5px 12px;border-radius:8px;transition:opacity 0.2s;white-space:nowrap; }
.nav-hire-btn:hover { opacity:0.85; }

/* ══════════════════════════════════════ HERO ══════════════════════════════════════ */
.hero { position:relative;z-index:1;text-align:center;padding:4rem 1.25rem 3rem;max-width:820px;margin:0 auto; }
.hero-eyebrow { display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;color:var(--ind2);background:rgba(99,102,241,0.1);border:1px solid rgba(99,102,241,0.2);padding:5px 14px;border-radius:99px;margin-bottom:1.75rem;animation:fadeUp 0.6s ease both; }
.eyebrow-dot { width:6px;height:6px;border-radius:50%;background:var(--ind2);box-shadow:0 0 8px var(--ind);animation:pulse-dot 2s ease infinite; }
@keyframes pulse-dot{0%,100%{opacity:1;transform:scale(1)}50%{opacity:0.5;transform:scale(0.8)}}
.hero h1 { font-family:var(--head);font-size:clamp(2rem,6vw,4.2rem);font-weight:900;letter-spacing:-0.05em;line-height:1.05;margin-bottom:1.25rem;color:var(--text);animation:fadeUp 0.6s 0.1s ease both; }
.hero h1 em { font-style:normal;background:linear-gradient(135deg,#6366f1 0%,#a78bfa 50%,#06b6d4 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text; }
.hero-sub { color:var(--muted);font-size:1rem;max-width:580px;margin:0 auto 2.25rem;animation:fadeUp 0.6s 0.2s ease both; }

.search-wrap { animation:fadeUp 0.6s 0.3s ease both;margin-bottom:2.25rem; }
.search-box { display:flex;align-items:center;max-width:620px;margin:0 auto;background:var(--surf);border:1px solid var(--b2);border-radius:14px;overflow:hidden;transition:border-color 0.25s,box-shadow 0.25s;box-shadow:0 4px 30px rgba(0,0,0,0.4); }
.search-box:focus-within { border-color:var(--ind);box-shadow:0 0 0 3px rgba(99,102,241,0.15),0 4px 30px rgba(0,0,0,0.4); }
.search-ico { padding:0 10px 0 14px;color:var(--dim);flex-shrink:0; }
#urlInput { flex:1;background:transparent;border:none;outline:none;color:var(--text);font-family:var(--body);font-size:0.95rem;padding:1rem 0;min-width:0; }
#urlInput::placeholder { color:var(--dim); }
#analyzeBtn { display:flex;align-items:center;gap:6px;background:linear-gradient(135deg,var(--ind),var(--vio));color:white;border:none;cursor:pointer;font-family:var(--head);font-size:0.88rem;font-weight:700;padding:0.85rem 1.25rem;transition:opacity 0.2s,transform 0.15s;white-space:nowrap; }
#analyzeBtn:hover { opacity:0.88; }
#analyzeBtn:active { transform:scale(0.97); }
#analyzeBtn:disabled { opacity:0.5;cursor:not-allowed; }
.err-toast { display:flex;align-items:center;gap:7px;color:#fca5a5;font-size:0.85rem;margin-top:10px;justify-content:center;animation:fadeUp 0.3s ease both; }

.hero-stats { display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap;animation:fadeUp 0.6s 0.4s ease both; }
.hs { text-align:center;padding:0 1.5rem; }
.hs-n { display:block;font-family:var(--head);font-size:1.3rem;font-weight:800;color:var(--text); }
.hs-l { display:block;font-size:0.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em;margin-top:2px; }
.hs-sep { width:1px;height:32px;background:var(--b2); }

/* ══════════════════════════════════════ FEATURES ══════════════════════════════════════ */
.features-section { position:relative;z-index:1;border-top:1px solid var(--b1);background:linear-gradient(180deg,transparent,rgba(99,102,241,0.03));padding:3.5rem 1.25rem; }
.features-inner { max-width:1100px;margin:0 auto; }
.feat-section-h2 { font-family:var(--head);font-size:clamp(1.5rem,4vw,2.4rem);font-weight:800;letter-spacing:-0.04em;text-align:center;margin-bottom:0.75rem; }
.feat-section-sub { text-align:center;color:var(--muted);max-width:560px;margin:0 auto 2.5rem; }
.feat-pillars { display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px; }
.pillar-card { background:var(--glass);border:1px solid var(--glass-b);border-radius:var(--r);padding:1.25rem 1rem;transition:border-color 0.2s,transform 0.2s; }
.pillar-card:hover { border-color:var(--b2);transform:translateY(-3px); }
.pillar-icon { font-size:1.4rem;margin-bottom:0.65rem; }
.pillar-card h3 { font-family:var(--head);font-size:0.95rem;font-weight:700;margin-bottom:0.4rem; }
.pillar-card p { font-size:0.82rem;color:var(--muted);line-height:1.6; }

/* ══════════════════════════════════════ LOADER ══════════════════════════════════════ */
.loader-wrap { position:relative;z-index:1;display:flex;justify-content:center;padding:4rem 1.25rem; }
.loader-card { background:var(--surf);border:1px solid var(--b1);border-radius:var(--r);padding:2rem 2.5rem;text-align:center;max-width:420px;width:100%;box-shadow:var(--shadow); }
.loader-visual { position:relative;display:inline-flex;align-items:center;justify-content:center;width:70px;height:70px;margin-bottom:1.25rem; }
.pulse-ring { position:absolute;inset:0;border:2px solid rgba(99,102,241,0.3);border-radius:50%;animation:pulse-ring 2s ease-in-out infinite; }
.pulse-ring.r2 { animation-delay:0.6s; }
@keyframes pulse-ring{0%{transform:scale(1);opacity:1}100%{transform:scale(1.7);opacity:0}}
.loader-svg { color:var(--ind2);animation:spin 4s linear infinite; }
@keyframes spin{to{transform:rotate(360deg)}}
.ls-text { font-family:var(--head);font-size:1rem;font-weight:700;margin-bottom:6px; }
.ls-sub { font-size:0.82rem;color:var(--muted);margin-bottom:1.25rem; }
.ls-steps { display:flex;gap:5px;justify-content:center;flex-wrap:wrap; }
.lss { font-size:0.7rem;padding:3px 9px;border-radius:99px;background:var(--surf2);color:var(--dim);border:1px solid var(--b1);transition:all 0.3s; }
.lss.active { background:rgba(99,102,241,0.15);color:var(--ind2);border-color:rgba(99,102,241,0.3); }

/* ══════════════════════════════════════ RESULTS ══════════════════════════════════════ */
.results-wrap { position:relative;z-index:1; }
.rbar { position:sticky;top:61px;z-index:100;background:rgba(5,5,13,0.9);backdrop-filter:blur(20px);border-bottom:1px solid var(--b1); }
.rbar-inner { max-width:1200px;margin:0 auto;padding:0.7rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:0.75rem;flex-wrap:wrap; }
.rbar-url { font-family:var(--head);font-size:0.85rem;color:var(--ind2);word-break:break-all;min-width:0; }
.rbar-actions { display:flex;gap:6px;flex-wrap:wrap; }

.ra-btn { display:flex;align-items:center;gap:5px;font-family:var(--body);font-size:0.8rem;font-weight:600;padding:0.4rem 0.9rem;border-radius:8px;cursor:pointer;border:none;transition:all 0.2s;white-space:nowrap; }
.ra-btn.primary { background:linear-gradient(135deg,var(--ind),var(--vio));color:white; }
.ra-btn.primary:hover { opacity:0.85; }
.ra-btn.secondary { background:rgba(99,102,241,0.12);color:var(--ind2);border:1px solid rgba(99,102,241,0.25); }
.ra-btn.secondary:hover { background:rgba(99,102,241,0.2); }
.ra-btn.competitor { background:rgba(16,185,129,0.12);color:#34d399;border:1px solid rgba(16,185,129,0.25); }
.ra-btn.competitor:hover { background:rgba(16,185,129,0.2); }
.ra-btn.hire { background:linear-gradient(135deg,var(--grn),#059669);color:white; }
.ra-btn.hire:hover { opacity:0.85; }
.ra-btn.ghost { background:transparent;color:var(--muted);border:1px solid var(--b2); }
.ra-btn.ghost:hover { color:var(--text);background:var(--surf2); }

.ri { max-width:1200px;margin:0 auto;padding:1.5rem 1.25rem 4rem; }
.top-row { display:grid;grid-template-columns:260px 1fr;gap:14px;margin-bottom:1.75rem;align-items:start; }
.glass { background:var(--glass);border:1px solid var(--glass-b);backdrop-filter:blur(12px);border-radius:var(--r); }

.score-card { display:flex;flex-direction:column;align-items:center;padding:1.75rem 1.25rem;gap:1.1rem; }
.donut-wrap { position:relative;flex-shrink:0; }
.donut-center { position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center; }
.sc-num { display:block;font-family:var(--head);font-size:2.2rem;font-weight:900;line-height:1;letter-spacing:-0.04em; }
.sc-denom { font-size:0.72rem;color:var(--muted); }
.sc-info { text-align:center; }
.sc-grade { font-family:var(--head);font-size:1.15rem;font-weight:800;letter-spacing:-0.03em;margin-bottom:4px; }
.sc-desc { font-size:0.8rem;color:var(--muted);margin-bottom:10px; }
.sc-pills { display:flex;gap:8px;justify-content:center;flex-wrap:wrap; }
.scpill { font-size:0.72rem;font-weight:600;padding:3px 9px;border-radius:99px; }
.scpill.pass { background:rgba(16,185,129,0.12);color:#34d399;border:1px solid rgba(16,185,129,0.2); }
.scpill.fail { background:rgba(239,68,68,0.1);color:#fca5a5;border:1px solid rgba(239,68,68,0.2); }

.cat-cards { display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:9px; }
.cat-card { background:var(--glass);border:1px solid var(--glass-b);border-radius:var(--r-sm);padding:0.9rem;transition:border-color 0.2s,transform 0.2s; }
.cat-card:hover { border-color:var(--b2);transform:translateY(-2px); }
.cat-name { font-size:0.68rem;color:var(--muted);margin-bottom:5px;text-transform:uppercase;letter-spacing:0.05em; }
.cat-pct { font-family:var(--head);font-size:1.4rem;font-weight:800;line-height:1;margin-bottom:5px; }
.cat-bar { height:3px;background:rgba(255,255,255,0.07);border-radius:2px;overflow:hidden; }
.cat-bar-fill { height:100%;border-radius:2px;transition:width 0.8s cubic-bezier(0.16,1,0.3,1); }

/* Tabs */
.tnav-wrap { margin-bottom:1.5rem;border-bottom:1px solid var(--b1);overflow-x:auto; }
.tnav { display:flex;gap:2px;min-width:max-content; }
.tb { display:flex;align-items:center;gap:6px;background:transparent;border:none;cursor:pointer;font-family:var(--body);font-size:0.85rem;font-weight:500;color:var(--muted);padding:0.7rem 1rem;border-bottom:2px solid transparent;position:relative;bottom:-1px;transition:color 0.2s,border-color 0.2s;white-space:nowrap; }
.tb:hover { color:var(--text); }
.tb.active { color:var(--ind2);border-bottom-color:var(--ind2); }
.tpane { display:none; }
.tpane.active { display:block;animation:fadeUp 0.3s ease both; }

/* Feature grid */
.feat-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:9px; }
.feat-card { background:var(--glass);border:1px solid var(--glass-b);border-radius:var(--r-sm);padding:0.8rem 0.9rem;cursor:default;transition:border-color 0.2s,transform 0.2s; }
.feat-card:hover { border-color:var(--b2);transform:translateY(-2px); }
.feat-title { font-size:0.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:0.06em;margin-bottom:5px; }
.feat-val { font-family:var(--head);font-size:1rem;font-weight:700;word-break:break-word; }
.feat-val.good { color:#34d399; }
.feat-val.warn { color:#fbbf24; }
.feat-val.bad  { color:#fca5a5; }
.feat-val.neutral { color:var(--text); }

/* Checks */
.chk-bar { display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:8px; }
.chk-filters { display:flex;gap:5px; }
.chkf { display:flex;align-items:center;gap:5px;background:transparent;border:1px solid var(--b1);color:var(--muted);font-family:var(--body);font-size:0.8rem;padding:5px 12px;border-radius:99px;cursor:pointer;transition:all 0.2s; }
.chkf:hover { color:var(--text);border-color:var(--b2); }
.chkf.active { background:linear-gradient(135deg,var(--ind),var(--vio));color:white;border-color:transparent; }
.fd { width:6px;height:6px;border-radius:50%; }
.fd.pass { background:#34d399; }
.fd.fail { background:#fca5a5; }
.chk-count { font-size:0.78rem;color:var(--muted); }
.chk-item { display:flex;align-items:flex-start;gap:10px;padding:0.8rem 0.9rem;background:var(--glass);border:1px solid var(--glass-b);border-radius:var(--r-sm);margin-bottom:6px;transition:border-color 0.2s; }
.chk-item:hover { border-color:var(--b2); }
.chk-ico { font-size:0.85rem;flex-shrink:0;margin-top:1px; }
.chk-body { flex:1;min-width:0; }
.chk-msg { font-size:0.85rem;color:var(--text); }
.chk-cat { font-size:0.68rem;color:var(--muted);margin-top:2px; }
.chk-status { font-size:0.7rem;font-weight:700;flex-shrink:0;letter-spacing:0.04em; }

/* Charts */
.charts-grid { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.chart-card { border-radius:var(--r);overflow:hidden; }
.chart-card.wide { grid-column:1/-1; }
.cc-lbl { font-size:0.7rem;font-weight:600;text-transform:uppercase;letter-spacing:0.08em;color:var(--muted);padding:1rem 1.25rem 0;margin-bottom:0.6rem; }
.cc-body { padding:0 1.25rem 1.25rem;position:relative;height:240px; }
.cc-body.tall { height:300px; }

/* Suggestions */
.sug-wrap { margin-top:2rem; }
.sug-head { display:flex;align-items:center;gap:10px;margin-bottom:0.9rem; }
.sug-head h3 { font-family:var(--head);font-size:1.05rem;font-weight:700; }
.sug-badge { font-size:0.72rem;font-weight:600;background:rgba(239,68,68,0.1);color:#fca5a5;border:1px solid rgba(239,68,68,0.2);padding:2px 9px;border-radius:99px; }
.sug-item { display:flex;align-items:flex-start;gap:10px;background:var(--glass);border:1px solid var(--glass-b);border-left:3px solid #ef4444;border-radius:0 var(--r-sm) var(--r-sm) 0;padding:0.8rem 0.9rem;margin-bottom:6px;transition:border-color 0.2s; }
.sug-item:hover { border-left-color:#fca5a5; }
.sug-cat { font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;background:rgba(239,68,68,0.1);color:#fca5a5;border-radius:4px;padding:2px 6px;flex-shrink:0;margin-top:1px; }
.sug-msg { font-size:0.85rem; }

/* Results CTA strip */
.results-cta-strip { display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.5rem 1.75rem;margin-top:2rem;border-radius:var(--r);border:1px solid rgba(16,185,129,0.2);background:rgba(16,185,129,0.04);flex-wrap:wrap; }
.rcs-left { flex:1;min-width:0; }
.rcs-title { font-family:var(--head);font-size:1rem;font-weight:700;margin-bottom:4px; }
.rcs-sub { font-size:0.82rem;color:var(--muted); }
.rcs-btn { padding:0.65rem 1.25rem;font-size:0.85rem; }

/* ══════════════════════════════════════
   META TAGS DETAIL PANEL
══════════════════════════════════════ */
.mts-block { margin-bottom:2.5rem; }
.mts-hdr { margin-bottom:1.1rem; }
.mts-title-wrap { display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:5px; }
.mts-icon { font-size:1.3rem; }
.mts-title { font-family:var(--head);font-size:1.05rem;font-weight:700; }
.mts-desc { font-size:0.82rem;color:var(--muted);line-height:1.6; }

.mtc-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px; }

.mtc {
  background:var(--glass);
  border:1px solid var(--glass-b);
  border-radius:var(--r-sm);
  padding:1rem 1.1rem;
  transition:border-color 0.2s,transform 0.2s;
  display:flex;
  flex-direction:column;
  gap:6px;
}
.mtc:hover { border-color:var(--b2);transform:translateY(-2px); }
.mtc.mtc-present { border-left:3px solid #34d399; }
.mtc.mtc-absent  { border-left:3px solid rgba(239,68,68,0.5); }

.mtc-top { display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap; }
.mtc-name { font-family:var(--head);font-size:0.82rem;font-weight:700;color:var(--text); }
.mtc-badge { font-size:0.58rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;padding:2px 7px;border-radius:99px;flex-shrink:0; }
.mtc-req { background:rgba(239,68,68,0.12);color:#fca5a5;border:1px solid rgba(239,68,68,0.2); }
.mtc-opt { background:rgba(99,102,241,0.1);color:var(--ind2);border:1px solid rgba(99,102,241,0.2); }
.mtc-status-row { display:flex;align-items:center; }
.mtc-tag-code { font-family:'Courier New',monospace;font-size:0.68rem;color:var(--dim);background:rgba(0,0,0,0.25);padding:3px 7px;border-radius:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap; }
.mtc-val { font-size:0.78rem;color:var(--muted);line-height:1.5;word-break:break-word; }
.mtc-val-empty { color:var(--dim);font-style:italic; }
.mtc-tip-row { font-size:0.72rem;color:var(--dim);line-height:1.5;border-top:1px solid var(--b1);padding-top:6px;margin-top:2px; }

.mts-cta-strip { display:flex;align-items:center;justify-content:space-between;gap:1.25rem;padding:1.25rem 1.5rem;border-radius:var(--r);background:linear-gradient(135deg,rgba(99,102,241,0.08),rgba(139,92,246,0.08));border:1px solid rgba(99,102,241,0.2);flex-wrap:wrap;margin-top:1.5rem; }
.mts-cta-text { display:flex;align-items:flex-start;gap:12px;flex:1;min-width:0; }
.mts-cta-icon { font-size:1.6rem;flex-shrink:0;margin-top:2px; }

/* ══════════════════════════════════════
   COMPETITOR PANEL
══════════════════════════════════════ */
.comp-empty { text-align:center;padding:3rem;color:var(--muted);font-size:0.9rem; }
.comp-loading { text-align:center;padding:3rem; }
.comp-niche-badge { display:inline-block;font-size:0.7rem;font-weight:700;letter-spacing:0.06em;text-transform:uppercase;background:rgba(99,102,241,0.12);color:var(--ind2);border:1px solid rgba(99,102,241,0.25);padding:4px 12px;border-radius:99px;margin-bottom:1rem; }
.comp-section-title { font-family:var(--head);font-size:1.05rem;font-weight:700;margin-bottom:1.1rem; }
.comp-score-bars { display:flex;flex-direction:column;gap:9px;margin-bottom:1.25rem; }
.comp-bar-row { display:flex;align-items:center;gap:10px; }
.comp-bar-row.you .comp-bar-label { color:var(--ind2);font-weight:600; }
.comp-bar-label { font-size:0.8rem;color:var(--muted);min-width:110px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.comp-bar-track { flex:1;height:8px;background:rgba(255,255,255,0.07);border-radius:4px;overflow:hidden; }
.comp-bar-fill { height:100%;border-radius:4px;transition:width 0.8s cubic-bezier(0.16,1,0.3,1); }
.comp-bar-score { font-family:var(--head);font-size:0.88rem;font-weight:700;min-width:26px;text-align:right; }
.comp-gaps-title { font-family:var(--head);font-size:0.95rem;font-weight:700;margin-bottom:0.7rem; }

/* ══════════════════════════════════════
   PARTIAL ANALYSIS BANNER
══════════════════════════════════════ */
.partial-banner {
  display:flex;align-items:flex-start;gap:14px;
  padding:1.25rem 1.5rem;margin-bottom:1.5rem;
  border-radius:var(--r);
  background:linear-gradient(135deg,rgba(245,158,11,0.06),rgba(239,68,68,0.04));
  border:1px solid rgba(245,158,11,0.28);
  border-left:4px solid var(--amb);
  animation:fadeUp 0.4s ease both;
  position:relative;overflow:hidden;
}
.partial-banner::before {
  content:'';position:absolute;inset:0;
  background:radial-gradient(ellipse 60% 80% at 0% 50%,rgba(245,158,11,0.07),transparent);
  pointer-events:none;
}
.pb-icon { font-size:1.5rem;flex-shrink:0;margin-top:2px;filter:drop-shadow(0 0 8px rgba(245,158,11,0.4)); }
.pb-title { font-family:var(--head);font-size:0.95rem;font-weight:800;color:#fbbf24;letter-spacing:-0.02em;margin-bottom:5px; }
.pb-desc { font-size:0.82rem;color:var(--muted);line-height:1.65;margin-bottom:0.9rem; }
.pb-desc strong { color:#fcd34d;font-weight:600; }
.pb-checks { display:flex;flex-wrap:wrap;gap:6px; }
.pb-check { display:inline-flex;align-items:center;gap:4px;font-size:0.72rem;font-weight:600;padding:3px 9px;border-radius:99px;letter-spacing:0.01em;white-space:nowrap; }
.pb-check.available { background:rgba(16,185,129,0.1);color:#34d399;border:1px solid rgba(16,185,129,0.25); }
.pb-check.unavailable { background:rgba(255,255,255,0.04);color:var(--dim);border:1px solid var(--b1);text-decoration:line-through;opacity:0.7; }

.partial-badge { display:inline-flex;align-items:center;font-size:0.6rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;padding:2px 6px;border-radius:99px;background:rgba(245,158,11,0.12);color:#fbbf24;border:1px solid rgba(245,158,11,0.25);vertical-align:middle;margin-left:4px; }

/* ══════════════════════════════════════
   CONTACT MODAL
══════════════════════════════════════ */
.modal-backdrop { display:none;position:fixed;inset:0;z-index:999;background:rgba(0,0,0,0.7);backdrop-filter:blur(6px);align-items:center;justify-content:center;padding:1.25rem;overflow-y:auto; }
.modal-backdrop.active { display:flex; }
.modal-box { position:relative;width:100%;max-width:560px;padding:2rem;border-radius:var(--r);max-height:90vh;overflow-y:auto;animation:fadeUp 0.3s ease both; }
.modal-close { position:absolute;top:1rem;right:1rem;background:rgba(255,255,255,0.06);border:1px solid var(--b2);color:var(--muted);border-radius:8px;width:30px;height:30px;cursor:pointer;font-size:0.8rem;display:flex;align-items:center;justify-content:center;transition:all 0.2s; }
.modal-close:hover { color:var(--text);background:rgba(255,255,255,0.1); }
.modal-header { text-align:center;margin-bottom:1.25rem; }
.modal-icon { font-size:2rem;margin-bottom:0.5rem; }
.modal-title { font-family:var(--head);font-size:1.3rem;font-weight:800;letter-spacing:-0.03em;margin-bottom:0.5rem; }
.modal-sub { font-size:0.84rem;color:var(--muted);line-height:1.6; }
.modal-services { display:flex;flex-wrap:wrap;gap:6px;margin-bottom:1.5rem;justify-content:center; }
.ms-chip { font-size:0.72rem;font-weight:600;padding:4px 10px;border-radius:99px;background:rgba(16,185,129,0.1);color:#34d399;border:1px solid rgba(16,185,129,0.2); }

.form-row { display:grid;grid-template-columns:1fr 1fr;gap:10px; }
.form-group { display:flex;flex-direction:column;gap:5px;margin-bottom:12px; }
.form-label { font-size:0.78rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:0.04em; }
.req-star { color:#fca5a5; }
.form-optional { font-weight:400;color:var(--dim);text-transform:none;letter-spacing:0; }
.form-input { background:var(--surf2);border:1px solid var(--b2);border-radius:10px;color:var(--text);font-family:var(--body);font-size:0.88rem;padding:0.65rem 0.9rem;outline:none;transition:border-color 0.2s;width:100%; }
.form-input:focus { border-color:var(--ind); }
.form-input::placeholder { color:var(--dim); }
.form-textarea { min-height:100px;resize:vertical;font-family:var(--body); }
.contact-status { font-size:0.83rem;padding:0.5rem 0;min-height:1.5rem; }
.contact-status.success { color:#34d399; }
.contact-status.error { color:#fca5a5; }

/* ══════════════════════════════════════
   CONTACT PAGE
══════════════════════════════════════ */
.contact-page-wrap { max-width:1100px;margin:0 auto;padding:0 1.25rem 5rem;position:relative;z-index:1; }
.services-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;margin-bottom:2.5rem; }
.service-card { padding:1.5rem;border-radius:var(--r);transition:border-color 0.2s,transform 0.2s; }
.service-card:hover { border-color:rgba(99,102,241,0.3);transform:translateY(-3px); }
.service-icon { font-size:1.8rem;margin-bottom:0.75rem; }
.service-title { font-family:var(--head);font-size:0.95rem;font-weight:700;margin-bottom:0.5rem; }
.service-desc { font-size:0.82rem;color:var(--muted);line-height:1.65; }
.contact-page-form { max-width:700px;margin:0 auto;padding:2rem; }
.cpf-header { text-align:center;margin-bottom:1.75rem; }
.cpf-title { font-family:var(--head);font-size:1.3rem;font-weight:800;letter-spacing:-0.03em;margin-bottom:0.5rem; }
.cpf-sub { font-size:0.84rem;color:var(--muted);line-height:1.6; }

/* ══════════════════════════════════════
   INNER PAGE HERO
══════════════════════════════════════ */
.inner-hero { position:relative;z-index:1;text-align:center;padding:3.5rem 1.25rem 2.5rem;max-width:760px;margin:0 auto; }
.inner-h1 { font-family:var(--head);font-size:clamp(1.75rem,5vw,3.2rem);font-weight:900;letter-spacing:-0.04em;line-height:1.08;margin-bottom:0.9rem;color:var(--text); }
.inner-h1 em { font-style:normal;background:linear-gradient(135deg,#6366f1 0%,#a78bfa 50%,#06b6d4 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text; }
.inner-sub { color:var(--muted);font-size:0.95rem;max-width:560px;margin:0 auto; }
.page-badge { display:inline-block;font-size:11px;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;padding:4px 14px;border-radius:99px;margin-bottom:1.1rem; }
.page-badge.google { background:rgba(66,133,244,0.15);color:#60a5fa;border:1px solid rgba(66,133,244,0.3); }
.page-badge.bing { background:rgba(0,188,242,0.12);color:#38bdf8;border:1px solid rgba(0,188,242,0.25); }

/* ══════════════════════════════════════
   PROCESS PAGES
══════════════════════════════════════ */
.process-wrap { max-width:900px;margin:0 auto;padding:0 1.25rem 5rem;position:relative;z-index:1; }
.process-timeline { position:relative;padding-left:52px; }
.process-timeline::before { content:'';position:absolute;left:18px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,var(--ind),var(--vio),rgba(99,102,241,0));border-radius:1px; }
.pt-step { position:relative;margin-bottom:1.75rem;animation:fadeUp 0.5s ease both; }
.pt-marker { position:absolute;left:-52px;top:1.1rem;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,var(--ind),var(--vio));display:flex;align-items:center;justify-content:center;font-family:var(--head);font-size:0.85rem;font-weight:800;color:white;box-shadow:0 0 18px rgba(99,102,241,0.4);flex-shrink:0; }
.pt-marker.bing-m { background:linear-gradient(135deg,#0078d4,#00bcf2);box-shadow:0 0 18px rgba(0,120,212,0.4); }
.pt-content { padding:1.25rem 1.5rem;border-radius:var(--r); }
.pt-icon { font-size:1.4rem;margin-bottom:0.4rem; }
.pt-title { font-family:var(--head);font-size:1rem;font-weight:700;margin-bottom:0.5rem; }
.pt-desc { font-size:0.86rem;color:var(--muted);line-height:1.7;margin-bottom:0.9rem; }
.pt-tip { background:rgba(99,102,241,0.08);border:1px solid rgba(99,102,241,0.2);border-radius:var(--r-sm);padding:0.65rem 0.9rem;font-size:0.8rem;color:var(--muted);display:flex;gap:8px;align-items:flex-start; }
.tip-label { background:var(--ind);color:white;font-size:0.65rem;font-weight:700;padding:2px 7px;border-radius:99px;flex-shrink:0;letter-spacing:0.04em; }
.tip-label.bing-tip { background:#0078d4; }
.pt-final { border:1px solid rgba(16,185,129,0.2);background:rgba(16,185,129,0.04); }
.pt-choices { display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:0.5rem; }
.pt-choice { background:var(--surf2);border:1px solid var(--b1);border-radius:var(--r-sm);padding:0.9rem;transition:border-color 0.2s; }
.pt-choice.recommended { border-color:rgba(99,102,241,0.4); }
.choice-tag { font-size:0.65rem;font-weight:700;text-transform:uppercase;letter-spacing:0.05em;background:rgba(99,102,241,0.15);color:var(--ind2);padding:2px 8px;border-radius:99px;display:inline-block;margin-bottom:5px; }
.choice-tag.bing-tag { background:rgba(0,120,212,0.15);color:#38bdf8; }
.choice-title { font-size:0.85rem;font-weight:600;margin-bottom:3px; }
.choice-desc { font-size:0.76rem;color:var(--muted); }
.verify-methods { display:grid;grid-template-columns:repeat(auto-fill,minmax(175px,1fr));gap:9px;margin-top:0.7rem; }
.vm-card { background:var(--surf2);border:1px solid var(--b1);border-radius:var(--r-sm);padding:0.9rem; }
.vm-name { font-size:0.82rem;font-weight:600;margin-bottom:0.5rem;color:var(--ind2); }
.vm-steps p { font-size:0.74rem;color:var(--muted);margin-bottom:3px;line-height:1.5; }
.vm-badge { display:inline-block;font-size:0.62rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;padding:2px 8px;border-radius:99px;margin-top:7px;background:rgba(16,185,129,0.12);color:#34d399;border:1px solid rgba(16,185,129,0.25); }
.vm-badge.easy { background:rgba(245,158,11,0.12);color:#fbbf24;border-color:rgba(245,158,11,0.25); }
.pt-code-block { background:rgba(0,0,0,0.3);border:1px solid var(--b2);border-radius:var(--r-sm);padding:0.9rem 1.1rem;margin-top:0.7rem;font-size:0.78rem;overflow-x:auto; }
.pcb-label { font-size:0.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:0.05em;margin-bottom:5px; }
.pt-code-block code { font-family:'Courier New',monospace;color:var(--ind2);display:block;margin-bottom:3px;word-break:break-all; }
.code-note { color:var(--muted);font-family:var(--body); }
.metrics-grid { display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:9px;margin-top:0.7rem; }
.metric-card { background:var(--surf2);border:1px solid var(--b1);border-radius:var(--r-sm);padding:0.9rem; }
.metric-card.bing-mc { border-color:rgba(0,120,212,0.2); }
.mc-name { font-size:0.82rem;font-weight:600;margin-bottom:3px;color:var(--ind2); }
.metric-card.bing-mc .mc-name { color:#38bdf8; }
.mc-desc { font-size:0.73rem;color:var(--muted);line-height:1.5; }
.issue-list { list-style:none;margin-top:0.7rem;display:flex;flex-direction:column;gap:7px; }
.issue-list li { display:flex;align-items:flex-start;gap:9px;font-size:0.83rem;color:var(--muted); }
.issue-tag { font-size:0.63rem;font-weight:700;text-transform:uppercase;letter-spacing:0.04em;padding:2px 7px;border-radius:99px;flex-shrink:0;margin-top:1px; }
.issue-tag.err { background:rgba(239,68,68,0.12);color:#fca5a5;border:1px solid rgba(239,68,68,0.2); }
.issue-tag.warn { background:rgba(245,158,11,0.12);color:#fbbf24;border:1px solid rgba(245,158,11,0.2); }
.issue-tag.info { background:rgba(59,130,246,0.12);color:#93c5fd;border:1px solid rgba(59,130,246,0.2); }
.issue-tag.bing-tag-item { background:rgba(0,120,212,0.12);color:#38bdf8;border:1px solid rgba(0,120,212,0.2); }
.checklist { display:flex;flex-direction:column;gap:7px;margin-top:0.5rem; }
.cl-item { display:flex;align-items:center;gap:9px;font-size:0.84rem;color:var(--muted);cursor:pointer; }
.cl-item input[type="checkbox"] { width:16px;height:16px;accent-color:var(--ind);cursor:pointer;flex-shrink:0; }
.cl-item:has(input:checked) { color:var(--text); }
.ext-link { color:var(--ind2);text-decoration:none;border-bottom:1px solid rgba(129,140,248,0.3);transition:border-color 0.2s; }
.ext-link:hover { border-bottom-color:var(--ind2); }
.bing-stats-row { display:flex;align-items:center;justify-content:center;gap:0;flex-wrap:wrap;margin-bottom:2.5rem;padding:1.25rem;background:var(--glass);border:1px solid var(--glass-b);border-radius:var(--r); }
.bstat { text-align:center;padding:0 1.25rem; }
.bstat-n { display:block;font-family:var(--head);font-size:1.5rem;font-weight:800;color:#38bdf8; }
.bstat-l { display:block;font-size:0.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:0.05em;margin-top:2px; }

/* ══════════════════════════════════════
   COMPARE PAGE
══════════════════════════════════════ */
.compare-wrap { max-width:1100px;margin:0 auto;padding:0 1.25rem 5rem;position:relative;z-index:1; }
.compare-inputs { padding:1.5rem 1.75rem;margin-bottom:1.75rem; }
.ci-header { display:flex;align-items:center;justify-content:space-between;margin-bottom:1.1rem;flex-wrap:wrap;gap:8px; }
.ci-title { font-family:var(--head);font-size:1rem;font-weight:700; }
.ci-add-btn { background:rgba(99,102,241,0.1);color:var(--ind2);border:1px solid rgba(99,102,241,0.25);font-family:var(--body);font-size:0.8rem;font-weight:600;padding:6px 13px;border-radius:8px;cursor:pointer;transition:all 0.2s; }
.ci-add-btn:hover { background:rgba(99,102,241,0.2); }
.ci-row { display:flex;align-items:center;gap:7px;margin-bottom:9px; }
.ci-input { flex:1;background:var(--surf2);border:1px solid var(--b2);border-radius:10px;color:var(--text);font-family:var(--body);font-size:0.88rem;padding:0.65rem 0.9rem;outline:none;transition:border-color 0.2s;min-width:0; }
.ci-input:focus { border-color:var(--ind); }
.ci-input::placeholder { color:var(--dim); }
.ci-remove { background:transparent;border:1px solid var(--b1);color:var(--muted);border-radius:8px;width:32px;height:32px;cursor:pointer;font-size:0.78rem;display:flex;align-items:center;justify-content:center;transition:all 0.2s;flex-shrink:0; }
.ci-remove:hover { color:#fca5a5;border-color:rgba(239,68,68,0.4); }
.ci-footer { margin-top:1.1rem;display:flex;align-items:center;gap:1rem;flex-wrap:wrap; }
.ci-run-btn { display:flex;align-items:center;gap:7px;background:linear-gradient(135deg,var(--ind),var(--vio));color:white;border:none;cursor:pointer;font-family:var(--head);font-size:0.88rem;font-weight:700;padding:0.75rem 1.5rem;border-radius:10px;transition:opacity 0.2s,transform 0.15s; }
.ci-run-btn:hover { opacity:0.88; }
.ci-run-btn:active { transform:scale(0.97); }
.ci-run-btn:disabled { opacity:0.5;cursor:not-allowed; }
.cmp-table-wrap { border-radius:var(--r);overflow-x:auto;-webkit-overflow-scrolling:touch; }
.ctable { width:100%;border-collapse:collapse;font-size:0.82rem; }
.ctable th { font-size:0.68rem;text-transform:uppercase;letter-spacing:0.07em;color:var(--muted);font-weight:600;padding:0.75rem 0.9rem;text-align:left;border-bottom:1px solid var(--b2);background:rgba(255,255,255,0.02);white-space:nowrap; }
.ctable td { padding:0.75rem 0.9rem;border-bottom:1px solid var(--b1);color:var(--text); }
.ctable tr:last-child td { border-bottom:none; }
.ctable tr:hover td { background:rgba(255,255,255,0.02); }
.ctable-empty { text-align:center;color:var(--muted);font-style:italic;padding:2rem !important; }

/* ══════════════════════════════════════
   FOOTER
══════════════════════════════════════ */
footer { position:relative;z-index:1;border-top:1px solid var(--b1);padding:1.25rem; }
.foot { max-width:1100px;margin:0 auto;display:flex;align-items:center;gap:8px;font-size:0.8rem;color:var(--muted);justify-content:center;flex-wrap:wrap; }
.foot-logo { font-family:var(--head);font-weight:800;color:var(--ind2); }
.foot-sep { color:var(--dim); }
.foot-nav-link { background:transparent;border:none;color:var(--muted);font-size:0.8rem;cursor:pointer;font-family:var(--body);transition:color 0.2s; }
.foot-nav-link:hover { color:var(--ind2); }

@keyframes fadeUp { from{opacity:0;transform:translateY(14px)} to{opacity:1;transform:translateY(0)} }

::-webkit-scrollbar { width:5px;height:5px; }
::-webkit-scrollbar-track { background:transparent; }
::-webkit-scrollbar-thumb { background:var(--b2);border-radius:3px; }

/* ══════════════════════════════════════
   MOBILE TOUCH OPTIMIZATIONS
══════════════════════════════════════ */
a, button, input, textarea, .nav-link, .tb, .chkf, .ra-btn,
.cat-card, .feat-card, .pillar-card, .cl-item {
  -webkit-tap-highlight-color: transparent;
}
button, .ra-btn, .ci-run-btn, #analyzeBtn, .tb, .chkf {
  touch-action: manipulation;
}
@media (max-width:768px) {
  #urlInput, .ci-input, .form-input { font-size:16px !important; }
}
@supports (padding: env(safe-area-inset-bottom)) {
  footer { padding-bottom: calc(1.25rem + env(safe-area-inset-bottom)); }
}
:focus-visible { outline:2px solid var(--ind2);outline-offset:2px;border-radius:4px; }
:focus:not(:focus-visible) { outline:none; }

/* ══════════════════════════════════════
   RESPONSIVE — TABLET (≤1024px)
══════════════════════════════════════ */
@media (max-width:1024px) {
  .top-row { grid-template-columns:240px 1fr; }
  .feat-grid { grid-template-columns:repeat(auto-fill,minmax(135px,1fr)); }
  .nav-right .nbadge:not(.green) { display:none; }
}

/* ══════════════════════════════════════
   RESPONSIVE — TABLET PORTRAIT (≤900px)
══════════════════════════════════════ */
@media (max-width:900px) {
  .top-row { grid-template-columns:1fr; }
  .score-card { flex-direction:row;padding:1.25rem 1.5rem;gap:1.5rem;align-items:center; }
  .sc-info { text-align:left; }
  .sc-pills { justify-content:flex-start; }
  .cat-cards { grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); }
  .charts-grid { grid-template-columns:1fr; }
  .chart-card.wide { grid-column:1; }
  .pt-choices { grid-template-columns:1fr; }
  .verify-methods { grid-template-columns:1fr 1fr; }
  .bing-stats-row { gap:0; }
  .bstat { padding:0 1rem; }
  .mtc-grid { grid-template-columns:repeat(auto-fill,minmax(200px,1fr)); }
  .form-row { grid-template-columns:1fr; }
}

/* ══════════════════════════════════════
   RESPONSIVE — MOBILE (≤640px)
══════════════════════════════════════ */
@media (max-width:640px) {
  .nav-inner { padding:0.6rem 1rem;gap:0.6rem; }
  .brand span { display:none; }
  .nav-links { gap:1px; }
  .nav-link { padding:5px 7px;font-size:0.76rem;gap:4px; }
  .nav-link svg { width:12px;height:12px; }
  .nav-right { display:none; }

  .hero { padding:3rem 1rem 2.5rem; }
  .hero-eyebrow { font-size:11px;padding:4px 11px; }
  .hero-sub { font-size:0.9rem; }
  .search-box { border-radius:12px; }
  .search-ico { padding:0 8px 0 12px; }
  #urlInput { font-size:0.88rem;padding:0.9rem 0; }
  #analyzeBtn { padding:0.85rem 1rem;font-size:0.82rem; }
  #analyzeBtn svg { display:none; }
  .hero-stats { gap:12px 0; }
  .hs { padding:0 1rem; }
  .hs-sep { display:none; }
  .hs-n { font-size:1.1rem; }
  .hs-l { font-size:0.65rem; }

  .features-section { padding:2.5rem 1rem; }
  .feat-pillars { grid-template-columns:1fr 1fr; }
  .pillar-card { padding:1rem 0.85rem; }
  .pillar-icon { font-size:1.2rem; }
  .pillar-card h3 { font-size:0.88rem; }
  .pillar-card p { font-size:0.78rem; }

  .rbar { top:52px; }
  .rbar-inner { flex-direction:column;align-items:flex-start;padding:0.6rem 1rem;gap:0.5rem; }
  .rbar-url { font-size:0.78rem;width:100%; }
  .rbar-actions { width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:2px; }
  .ra-btn { font-size:0.74rem;padding:0.35rem 0.7rem; }
  .ra-btn svg { width:11px;height:11px; }

  .ri { padding:1.25rem 1rem 3rem; }
  .score-card { flex-direction:row;padding:1rem;gap:1rem;align-items:center; }
  #scoreDonut { width:100px !important;height:100px !important; }
  .sc-num { font-size:1.8rem; }
  .sc-grade { font-size:1rem; }
  .sc-desc { font-size:0.74rem; }
  .scpill { font-size:0.68rem;padding:2px 7px; }

  .cat-cards { grid-template-columns:repeat(3,1fr); }
  .cat-pct { font-size:1.2rem; }

  .tnav-wrap { margin-bottom:1.1rem; }
  .tb { font-size:0.78rem;padding:0.6rem 0.75rem;gap:4px; }
  .tb svg { width:11px;height:11px; }

  .feat-grid { grid-template-columns:repeat(2,1fr);gap:7px; }
  .feat-card { padding:0.7rem 0.75rem; }
  .feat-title { font-size:0.6rem; }
  .feat-val { font-size:0.9rem; }

  .chk-item { flex-wrap:wrap;gap:6px; }
  .chk-status { margin-left:auto; }

  .cc-body { height:200px; }
  .cc-body.tall { height:240px; }
  .sug-item { flex-direction:column;gap:5px; }

  /* Partial banner mobile */
  .partial-banner { flex-direction:column;gap:10px;padding:1rem 1.1rem; }
  .pb-icon { font-size:1.3rem;margin-top:0; }
  .pb-title { font-size:0.88rem; }
  .pb-checks { gap:5px; }
  .pb-check { font-size:0.68rem;padding:2px 7px; }

  /* Meta tags mobile */
  .mtc-grid { grid-template-columns:1fr; }
  .mts-cta-strip { flex-direction:column;text-align:center; }

  /* Contact */
  .modal-box { padding:1.5rem 1.25rem; }
  .modal-title { font-size:1.1rem; }
  .form-row { grid-template-columns:1fr; }
  .contact-page-form { padding:1.25rem 1rem; }
  .services-grid { grid-template-columns:1fr; }

  /* Process */
  .process-wrap { padding:0 1rem 4rem; }
  .process-timeline { padding-left:40px; }
  .process-timeline::before { left:14px; }
  .pt-marker { left:-40px;width:28px;height:28px;font-size:0.76rem; }
  .pt-content { padding:1rem 1.1rem; }
  .pt-title { font-size:0.92rem; }
  .pt-desc { font-size:0.82rem; }
  .pt-choices { grid-template-columns:1fr; }
  .verify-methods { grid-template-columns:1fr; }
  .metrics-grid { grid-template-columns:1fr 1fr; }
  .pt-code-block code { font-size:0.72rem; }

  .bing-stats-row { gap:8px;padding:1rem; }
  .bstat { padding:0.5rem 0.75rem; }
  .bstat-n { font-size:1.2rem; }

  .compare-inputs { padding:1.25rem 1rem; }
  .ci-input { font-size:0.82rem;padding:0.6rem 0.8rem; }
  .ci-run-btn { width:100%;justify-content:center; }
  .ci-footer { flex-direction:column;align-items:stretch; }
  .comp-bar-label { min-width:85px;font-size:0.74rem; }
  .inner-hero { padding:2.5rem 1rem 2rem; }
  .results-cta-strip { flex-direction:column;text-align:center; }
}

/* ══════════════════════════════════════
   RESPONSIVE — SMALL PHONES (≤380px)
══════════════════════════════════════ */
@media (max-width:380px) {
  .feat-pillars { grid-template-columns:1fr; }
  .cat-cards { grid-template-columns:repeat(2,1fr); }
  .feat-grid { grid-template-columns:1fr 1fr; }
  .metrics-grid { grid-template-columns:1fr; }
  .hs { padding:0 0.5rem; }
  .hero-stats { justify-content:space-around; }
  .rbar-actions { gap:4px; }
  .ra-btn { font-size:0.7rem;padding:0.3rem 0.55rem; }
  .score-card { flex-direction:column;align-items:center;text-align:center; }
  .sc-info { text-align:center; }
  .sc-pills { justify-content:center; }
}