/* ═══════════════════════════════════════════════════════════════════════════
   EDGE IQ — VISUAL REFRESH (October 2026)
   One override layer. To roll back, delete the <link> to this file.
   Type: Barlow family in three widths (tote-board numerals, clean UI text).
   Colour: brand black + gold kept; gold refined, turf green for positives.
   ═══════════════════════════════════════════════════════════════════════════ */

:root {
  --gold: #d9a93a;
  --gold-light: #f0c75e;
  --gold-dim: #a8822a;
  --black: #090a0a;
  --dark: #0e100f;
  --card: #141716;
  --card2: #191c1b;
  --border: rgba(217,169,58,0.16);
  --line: rgba(236,231,220,0.08);
  --text: #ece7dc;
  --muted: #9b968b;
  --white: #f7f3ea;
  --turf: #3fa173;
  --loss: #d8564e;
  --f-num: 'Barlow Condensed', 'Arial Narrow', sans-serif;
  --f-ui: 'Barlow Semi Condensed', 'Arial Narrow', sans-serif;
  --f-body: 'Barlow', system-ui, sans-serif;
}

/* ── Base ─────────────────────────────────────────────────────────────── */
html { -webkit-text-size-adjust: 100%; }
body {
  font-family: var(--f-body) !important;
  font-size: 17px;
  line-height: 1.6;
  background: var(--black);
  -webkit-font-smoothing: antialiased;
}
body::before { display: none !important; }               /* grain overlay */
.hero-lines, .hero-shimmer { display: none !important; } /* decorative chrome */
::selection { background: rgba(217,169,58,0.3); color: var(--white); }
:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; border-radius: 4px; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation: none !important; transition: none !important; }
  .reveal, [style*="opacity:0"] { opacity: 1 !important; transform: none !important; }
}

/* ── Font remap (covers stylesheet rules, inline styles and SVG text) ──── */
[style*="Playfair"], .riq-big, .stat-number, .how-num, .plan-price,
#riq-banner-stat, #trust-units { font-family: var(--f-num) !important; }
.section-title, .hero h1, .how-item h3, .plan-name, h1, h2, h3 { font-family: var(--f-ui) !important; }
[style*="DM Mono"], .riq-row span:last-child, .riq-ledger td, .riq-ledger th,
.riq-gauge-scale, .riq-legend, .footer-copy { font-family: var(--f-ui) !important; font-variant-numeric: tabular-nums; }
svg text { font-family: var(--f-ui) !important; }
svg text[font-weight="700"] { font-family: var(--f-num) !important; font-weight: 600; }
.testimonial-quote, .blockquote, .proof-card p { font-family: var(--f-body) !important; font-style: normal !important; }

/* ── Labels: sentence case, no tracking ───────────────────────────────── */
.section-label, .hero-eyebrow, .stat-label, .riq-kicker, .testimonial-attr,
.proof-author, .form-group label, .riq-ledger th,
[style*="text-transform:uppercase"], [style*="text-transform: uppercase"] {
  text-transform: none !important;
  letter-spacing: 0.01em !important;
}
.section-label, .hero-eyebrow {
  font-family: var(--f-ui) !important; font-size: 1rem !important; font-weight: 500;
  color: var(--gold) !important; margin-bottom: 0.5rem;
}
.riq-kicker { font-family: var(--f-ui) !important; font-size: 1rem !important; font-weight: 600 !important; color: var(--white) !important; }
.stat-label { font-family: var(--f-ui) !important; font-size: 0.95rem !important; color: var(--muted) !important; }
.form-group label { font-family: var(--f-ui) !important; font-size: 0.95rem !important; color: var(--text) !important; }
.testimonial-attr, .proof-author { font-family: var(--f-ui) !important; font-size: 0.95rem !important; }

/* ── Navigation ──────────────────────────────────────────────────────── */
nav {
  background: rgba(9,10,10,0.82) !important;
  backdrop-filter: saturate(140%) blur(14px);
  -webkit-backdrop-filter: saturate(140%) blur(14px);
  border-bottom: 1px solid var(--line) !important;
}
.nav-links a, .mobile-menu a {
  font-family: var(--f-ui) !important; font-size: 1rem !important; font-weight: 500 !important;
  text-transform: none !important; letter-spacing: 0.01em !important; color: var(--text) !important;
}
.nav-links a:hover { color: var(--gold) !important; }
.nav-cta { border-radius: 8px !important; }

/* ── Hero ────────────────────────────────────────────────────────────── */
.hero { min-height: auto !important; padding-top: 8.5rem !important; padding-bottom: 5rem !important; }
.hero-glow { opacity: 0.55; }
.hero h1 {
  font-size: clamp(2.4rem, 6.4vw, 4.6rem) !important;
  font-weight: 600 !important; line-height: 1.02 !important;
  letter-spacing: -0.01em !important; text-transform: none !important;
  color: var(--white) !important; max-width: 16ch; margin-left: auto; margin-right: auto;
}
.hero h1 em { font-style: normal !important; color: inherit !important; }
.hero-sub { font-size: 1.15rem !important; color: var(--muted) !important; max-width: 46ch; line-height: 1.55 !important; }
.hero-stat {
  font-family: var(--f-ui) !important; font-size: 1rem !important; letter-spacing: 0.01em !important;
  text-transform: none !important; border-radius: 999px !important;
  background: rgba(217,169,58,0.08) !important; border: 1px solid rgba(217,169,58,0.3) !important;
  color: var(--gold-light) !important; padding: 0.55rem 1.1rem !important;
}

/* ── Buttons ─────────────────────────────────────────────────────────── */
.btn, button[type="submit"], .subscribe-form button {
  font-family: var(--f-ui) !important; font-size: 1.05rem !important; font-weight: 600 !important;
  letter-spacing: 0.01em !important; text-transform: none !important;
  border-radius: 8px !important; padding: 0.85rem 1.6rem !important; min-height: 48px;
}
.btn-gold, .subscribe-form button { background: var(--gold) !important; color: #090a0a !important; border-color: var(--gold) !important; }
.btn-gold:hover, .subscribe-form button:hover { background: var(--gold-light) !important; }
.btn-outline { border: 1px solid rgba(236,231,220,0.28) !important; color: var(--text) !important; background: transparent !important; }
.btn-outline:hover { border-color: var(--gold) !important; color: var(--gold) !important; }

/* ── Section rhythm & titles ─────────────────────────────────────────── */
.section-title {
  font-size: clamp(2rem, 4.6vw, 3.2rem) !important; font-weight: 600 !important;
  line-height: 1.05 !important; letter-spacing: -0.005em; color: var(--white) !important;
}
.section-title span { color: inherit !important; }
.section-sub { color: var(--muted) !important; font-size: 1.05rem !important; max-width: 60ch; }

/* ── Trust stats: scoreboard numerals ─────────────────────────────────── */
.stats-section { background: var(--dark) !important; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.stat-number {
  font-weight: 600 !important; font-size: clamp(3rem, 7vw, 4.8rem) !important;
  letter-spacing: -0.01em; line-height: 0.95 !important; color: var(--gold) !important;
}
.stat-item { border-color: var(--line) !important; }

/* ── How it works ─────────────────────────────────────────────────────── */
.how-item { background: transparent !important; border-color: var(--line) !important; }
.how-num { font-weight: 600 !important; font-size: 3.2rem !important; color: rgba(217,169,58,0.35) !important; }
.how-item h3 { font-size: 1.35rem !important; font-weight: 600 !important; }
.how-item p { color: var(--muted) !important; }

/* ── Cards & panels: one radius for containers ───────────────────────── */
.riq-panel, .riq-tile, #riq-banner, .plan-card, .testimonial-card, .proof-card, .contact-form,
.blockquote { border-radius: 12px !important; }
.riq-panel, .riq-tile, .plan-card, .testimonial-card { background: var(--card) !important; border: 1px solid var(--line) !important; }
.testimonial-card { border-top: 1px solid var(--line) !important; }
.blockquote { border-left: 3px solid var(--gold) !important; }

/* ── Results dashboard ───────────────────────────────────────────────── */
#riq-banner {
  background: radial-gradient(120% 140% at 0% 0%, rgba(217,169,58,0.16), rgba(217,169,58,0.02) 60%) !important;
  border: 1px solid rgba(217,169,58,0.3) !important;
}
#riq-banner-stat { font-size: clamp(3.6rem, 13vw, 6rem) !important; font-weight: 600 !important; line-height: 0.95 !important; letter-spacing: -0.015em; }
#riq-banner-label { color: var(--gold) !important; font-weight: 500 !important; }
.riq-big { font-weight: 600 !important; letter-spacing: -0.01em; }
.riq-tile .riq-big { font-size: 2.6rem !important; }
.riq-note { font-size: 0.92rem !important; }
.riq-row { font-size: 1rem !important; border-top-color: var(--line) !important; }
.riq-row span:last-child { font-size: 1.05rem; font-weight: 500; }
.riq-ledger td { font-size: 1rem !important; border-top-color: var(--line) !important; }
.riq-ledger th { font-size: 0.9rem !important; font-weight: 500 !important; background: rgba(236,231,220,0.03) !important; }
.riq-legend { font-size: 0.92rem !important; letter-spacing: 0 !important; }
.riq-foot { font-size: 0.85rem !important; }
#riq-exotics-tiles [style*="font-size:0.75rem"] { font-family: var(--f-ui) !important; font-size: 0.95rem !important; letter-spacing: 0.02em !important; }

/* ── Memberships ─────────────────────────────────────────────────────── */
.plans-grid { gap: 1rem !important; background: transparent !important; }
.plan-card.featured { border-color: rgba(217,169,58,0.55) !important; box-shadow: 0 0 0 1px rgba(217,169,58,0.25) inset; }
.plan-card.featured::before {
  content: 'Best value' !important; font-family: var(--f-ui) !important; font-weight: 600 !important;
  letter-spacing: 0.01em !important; font-size: 0.85rem !important; border-radius: 0 12px 0 8px;
}
.plan-name { font-size: 1.5rem !important; font-weight: 600 !important; }
.plan-price { font-weight: 600 !important; }
.plan-includes li { color: var(--text); }

/* ── Forms ───────────────────────────────────────────────────────────── */
input, textarea, select {
  font-family: var(--f-body) !important; font-size: 1rem !important;
  border-radius: 8px !important; background: #0f1211 !important; border: 1px solid rgba(236,231,220,0.14) !important;
}
input:focus, textarea:focus { border-color: var(--gold) !important; outline: none; }

/* ── Footer ──────────────────────────────────────────────────────────── */
footer { border-top: 1px solid var(--line) !important; background: var(--black) !important; }
.footer-links a { font-family: var(--f-ui) !important; font-size: 1rem !important; color: var(--muted) !important; }
.footer-copy { color: var(--muted) !important; opacity: 0.7; }
.footer-responsible { border-radius: 10px !important; }

/* ── Sub-pages (glossary, stewards, FAQ, legal) ─────────────────────── */
.site-header { background: rgba(9,10,10,0.85) !important; backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-bottom: 1px solid var(--line) !important; }
.prose h1, .section h1 { font-family: var(--f-ui) !important; font-weight: 600 !important; letter-spacing: -0.01em; line-height: 1.05; }
.prose h1 .accent { color: inherit !important; }
.prose h2 { font-family: var(--f-ui) !important; font-weight: 600 !important; font-size: 1.6rem !important; }
.prose p, .prose li { font-size: 1.05rem; line-height: 1.7; max-width: 68ch; }
.eyebrow { font-family: var(--f-ui) !important; text-transform: none !important; letter-spacing: 0.01em !important; font-size: 1rem !important; color: var(--gold) !important; }
.nav-dropbtn { font-family: var(--f-ui) !important; text-transform: none !important; letter-spacing: 0.01em !important; font-size: 1rem !important; }

/* ── Mobile ──────────────────────────────────────────────────────────── */
@media (max-width: 600px) {
  body { font-size: 16px; }
  .hero { padding-top: 7rem !important; padding-bottom: 3.5rem !important; }
  .hero h1 { font-size: clamp(2.3rem, 11vw, 3rem) !important; }
  .riq-tile .riq-big { font-size: 2.1rem !important; }
  .stat-number { font-size: 3.4rem !important; }
  .btn { width: 100%; text-align: center; }
  .hero-buttons { flex-direction: column; width: 100%; max-width: 360px; gap: 0.75rem !important; }
}

/* ── Sub-page remaps (selectors from edgeiq-pages.css) ───────────────── */
.report-card h3 { font-family: var(--f-ui) !important; font-weight: 600 !important; }
.report-card .meta, .letter-head { font-family: var(--f-ui) !important; text-transform: none !important; letter-spacing: 0.01em !important; }
.letter-head { font-family: var(--f-num) !important; font-weight: 600 !important; }
.nav-links a, .nav-dropdown-menu a, .foot-links a, .btn { text-transform: none !important; letter-spacing: 0.01em !important; font-family: var(--f-ui) !important; }
.report-card { border-radius: 12px !important; border-color: var(--line) !important; }

/* ── Fixes after review ──────────────────────────────────────────────── */
.how-grid { background: var(--line) !important; border: 1px solid var(--line) !important; border-radius: 12px; overflow: hidden; gap: 1px !important; }
.how-item { background: var(--black) !important; }
.how-num { color: rgba(217,169,58,0.28) !important; }
.hero h1 em { display: block; color: var(--gold) !important; }
.hero h1 { max-width: 20ch !important; }
.hero-sub { margin-bottom: 1.4rem !important; }
@media (max-width: 600px) { .hero-stat { border-radius: 14px !important; text-align: left; } }
.hero h1 { max-width: none !important; }
.hero-stat { margin-top: 1.25rem !important; }
.prose .lede, .lede { line-height: 1.5 !important; max-width: 60ch; }
