/* ============================================================
   FOOTER LAYOUT BASE (migrated from reviews.css, 3 Jun 2026)
   Reviews.css scoped to /reviews/ only — these rules ship sitewide.
   !important + footer.footer selector to beat fallback-base + any other override.
   ============================================================ */
footer.footer { background: #0D0D0D !important; color: rgba(255,255,255,0.85) !important; padding: clamp(3rem, 6vw, 5rem) clamp(1.25rem, 4vw, 2.5rem) clamp(2rem, 4vw, 3rem) !important; font-family: var(--ff-sans, 'Instrument Sans', system-ui, sans-serif) !important; }
footer.footer .footer-mast { max-width: 1280px !important; margin: 0 auto clamp(2rem, 4vw, 3rem) !important; text-align: center !important; }
footer.footer .footer-wordmark-link { display: inline-block !important; }
footer.footer .footer-dek { color: rgba(255,255,255,0.6) !important; font-size: 0.78rem !important; letter-spacing: 0.16em !important; text-transform: uppercase !important; margin-top: 0.75rem !important; }
footer.footer .footer-rule { max-width: 1280px !important; margin: 0 auto clamp(2rem, 4vw, 3rem) !important; border: 0 !important; border-top: 1px solid rgba(255,255,255,0.12) !important; }
footer.footer .footer-grid { max-width: 1280px !important; margin: 0 auto !important; display: grid !important; grid-template-columns: repeat(2, 1fr) !important; gap: 2.5rem 2rem !important; padding-top: 2.5rem !important; }
@media (min-width: 720px) { footer.footer .footer-grid { grid-template-columns: repeat(4, 1fr) !important; gap: 3rem !important; } }
footer.footer .footer-grid > div { min-width: 0 !important; }
footer.footer h5 { font-size: 0.72rem !important; letter-spacing: 0.22em !important; text-transform: uppercase !important; color: rgba(255,255,255,0.55) !important; margin: 0 0 1.25rem !important; font-weight: 500 !important; font-family: var(--ff-sans, 'Instrument Sans', system-ui, sans-serif) !important; }
footer.footer ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
footer.footer li { margin: 0.5rem 0 !important; }
footer.footer a { color: rgba(255,255,255,0.85) !important; text-decoration: none !important; font-size: 0.92rem !important; line-height: 1.4 !important; transition: color 0.2s !important; }
footer.footer a:hover { color: #FFF !important; }
footer.footer .colophon { max-width: 1280px !important; margin: clamp(2.5rem, 5vw, 4rem) auto 0 !important; padding-top: clamp(1.5rem, 3vw, 2rem) !important; border-top: 1px solid rgba(255,255,255,0.12) !important; color: rgba(255,255,255,0.55) !important; font-size: 0.8rem !important; line-height: 1.55 !important; display: block !important; }
footer.footer .colophon a { color: rgba(255,255,255,0.85) !important; border-bottom: 1px solid rgba(255,255,255,0.2) !important; text-decoration: none !important; }
footer.footer .colophon a:hover { color: #FFF !important; border-bottom-color: #FFF !important; }

/* ============================================================
   CORAL ACCENT SYSTEM (2026)
   The "bring it to life" colour layer.
   Used sparingly across /salons/, /clinics/ and salon profiles.
   ============================================================ */

:root {
  --glow-coral: #9A6A4B;
  --glow-coral-deep: #7B5236;
  --glow-coral-soft: #e7e7ea;
  --glow-coral-tint: #ececee;
}

/* ----------------------------------------------------------------
   MANIFESTO BLOCK — bold coral full-bleed editorial statement
---------------------------------------------------------------- */
.glow-manifesto {
  background: var(--glow-coral);
  color: #fff;
  padding: clamp(4rem, 9vw, 8rem) clamp(1.5rem, 4vw, 3rem);
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.glow-manifesto__inner {
  max-width: 1120px;
  margin: 0 auto;
  position: relative;
}
.glow-manifesto__eyebrow {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 10.5px;
  font-weight: 500;
  letter-spacing: 0.32em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.85);
  margin: 0 0 2rem;
}
.glow-manifesto__eyebrow::before {
  content: "";
  display: block;
  width: 32px;
  height: 1px;
  background: rgba(255,255,255,0.6);
}
.glow-manifesto__h2 {
  font-family: var(--font-display, 'Canela', 'Cormorant Garamond', 'Playfair Display', Georgia, serif);
  font-weight: 300;
  font-size: clamp(2.6rem, 6.5vw, 5.6rem);
  line-height: 0.98;
  letter-spacing: -0.022em;
  color: #fff;
  margin: 0 0 2rem;
  max-width: 18ch;
}
.glow-manifesto__h2 em {
  font-style: italic;
  font-weight: 300;
  color: rgba(255,255,255,0.92);
}
.glow-manifesto__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 12.5px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--glow-coral);
  background: #fff;
  padding: 1rem 1.4rem;
  text-decoration: none;
  border-radius: 999px;
  transition: transform 220ms cubic-bezier(.2,.6,.2,1), background 220ms ease;
}
.glow-manifesto__cta:hover {
  background: #1A1613;
  color: #fff;
  transform: translateY(-2px);
}
.glow-manifesto__cta::after {
  content: "→";
  font-size: 1.05rem;
  transition: transform 220ms ease;
}
.glow-manifesto__cta:hover::after { transform: translateX(4px); }

/* tiny decorative dot in the top corner — references the reference image */
.glow-manifesto__dot {
  position: absolute;
  top: clamp(1.5rem, 3vw, 2.5rem);
  right: clamp(1.5rem, 3vw, 2.5rem);
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #2DBDB5; /* the teal dot from your reference */
}

/* ----------------------------------------------------------------
   CORAL SCORE CHIP — for clinic + salon list rows
---------------------------------------------------------------- */
.glow-score-chip {
  display: inline-flex;
  align-items: baseline;
  gap: 0.18rem;
  font-family: var(--font-display, 'Canela', Georgia, serif);
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1;
  color: #fff;
  background: var(--glow-coral);
  padding: 0.55rem 0.85rem 0.65rem;
  border-radius: 999px;
  letter-spacing: -0.01em;
}
.glow-score-chip__small {
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.78);
  margin-left: 0.2rem;
}

/* ----------------------------------------------------------------
   CORAL NUMBER (editorial index style)
---------------------------------------------------------------- */
.glow-coral-num {
  font-family: var(--font-display, 'Canela', Georgia, serif);
  font-style: italic;
  font-weight: 400;
  color: var(--glow-coral);
}

/* ----------------------------------------------------------------
   CITY CARD POLISH — add coral hover border + lift
---------------------------------------------------------------- */
.cl-city-tile {
  transition: transform 320ms cubic-bezier(.2,.6,.2,1), border-color 220ms ease, box-shadow 220ms ease;
  position: relative;
}
.cl-city-tile:hover {
  transform: translateY(-3px);
  border-color: var(--glow-coral) !important;
  box-shadow: 0 12px 32px rgba(214,82,79,0.18);
}

/* ----------------------------------------------------------------
   CLINIC RECOMMENDED ROW UPGRADE
---------------------------------------------------------------- */
.cl-rec-row {
  transition: transform 320ms cubic-bezier(.2,.6,.2,1), border-left-color 220ms ease, box-shadow 220ms ease;
  border-left: 3px solid transparent !important;
}
.cl-rec-row:hover {
  transform: translateX(4px);
  border-left-color: var(--glow-coral) !important;
  box-shadow: 0 8px 24px rgba(26,22,19,0.06);
}
.cl-rec-row:hover .cl-rec-rank { color: var(--glow-coral); }
.cl-rec-row .cl-rec-rank { transition: color 220ms ease; }
.cl-rec-row:hover .cl-rec-name { color: var(--glow-coral); }
.cl-rec-row .cl-rec-name { transition: color 220ms ease; }
.cl-rec-row .cl-rec-featured {
  color: var(--glow-coral) !important;
  font-weight: 600 !important;
}

/* ----------------------------------------------------------------
   NEWSLETTER COLOUR — soft coral instead of black
---------------------------------------------------------------- */
.cl-edit__form button,
.cl-newsletter button,
.glow-coral-subscribe {
  background: var(--glow-coral) !important;
  color: #fff !important;
  transition: background 200ms ease;
}
.cl-edit__form button:hover,
.cl-newsletter button:hover,
.glow-coral-subscribe:hover {
  background: var(--glow-coral-deep) !important;
}

/* ----------------------------------------------------------------
   SALONS — coral accent on the category index numbers
---------------------------------------------------------------- */
.salon-cat__num {
  color: var(--glow-coral) !important;
  font-size: 1.05rem !important;
  font-weight: 500 !important;
}

/* ----------------------------------------------------------------
   FEATURED PARTNER PILL
---------------------------------------------------------------- */
.glow-pill-featured {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: #fff;
  background: var(--glow-coral);
  padding: 5px 12px;
  border-radius: 999px;
}
.glow-pill-featured::before { content: "★"; font-size: 0.85em; }

/* ----------------------------------------------------------------
   FOOTER — full coral background, everything sits on red
---------------------------------------------------------------- */
.footer {
  background: #000000 !important;
  color: rgba(255,255,255,0.78) !important;
}
.footer .footer-mast {
  background: transparent !important;
  margin: 0 0 clamp(3rem, 5vw, 4.5rem) !important;
  padding: clamp(3rem, 5vw, 4.5rem) 0 0 !important;
  position: relative !important;
  width: auto !important;
}
.footer .footer-mast .footer-rule {
  background: rgba(251,229,220,0.55) !important;
}
.footer .footer-mast .footer-dek {
  color: rgba(251,229,220,0.9) !important;
  font-weight: 500 !important;
}
/* Wordmark image inside footer-mast: ensure it stays white on coral */
.footer .footer-mast .footer-wordmark-link img {
  filter: brightness(0) invert(1) !important;
}
/* Old SVG-background wordmark, if present, swaps to the white-on-transparent variant */
.footer .footer-mast .wordmark {
  background-image: url("/assets/logos/glow-wordmark-white-240h.png?v=20260526q") !important;
}
/* Column nav block */
.footer .footer-grid h5 {
  color: rgba(251,229,220,0.85) !important;
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  margin-bottom: 1rem !important;
}
.footer .footer-grid ul { list-style: none; padding: 0; margin: 0; }
.footer .footer-grid li { margin: 0; }
.footer .footer-grid a,
.footer .footer-grid li a {
  color: #FBE5DC !important;
  text-decoration: none !important;
  font-family: 'Inter', system-ui, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0.005em !important;
  display: inline-block;
  padding: 0.4rem 0 !important;
  border-bottom: 1px solid transparent !important;
  transition: border-color 200ms ease, color 200ms ease !important;
}
.footer .footer-grid a:hover,
.footer .footer-grid li a:hover {
  color: #fff !important;
  border-bottom-color: rgba(251,229,220,0.7) !important;
}
/* Colophon at bottom */
.footer .colophon {
  border-top: 1px solid rgba(251,229,220,0.22) !important;
  padding-top: 1.5rem !important;
  margin-top: clamp(2rem, 4vw, 3rem) !important;
  color: rgba(251,229,220,0.75) !important;
}
.footer .colophon a {
  color: rgba(251,229,220,0.9) !important;
  text-decoration: none;
  border-bottom: 1px solid rgba(251,229,220,0.3);
}
.footer .colophon a:hover {
  color: #fff !important;
  border-bottom-color: #fff;
}
/* Any generic <a> inside footer that's not in the grid (catch-all) */
.footer a:not(.footer-wordmark-link):not(.glow-wordmark-link) {
  color: #FBE5DC !important;
}
.footer a:not(.footer-wordmark-link):not(.glow-wordmark-link):hover {
  color: #fff !important;
}
/* Subscribe/email blocks inside footer if present */
.footer input[type="email"],
.footer input[type="text"] {
  background: rgba(255,255,255,0.10) !important;
  border: 1px solid rgba(251,229,220,0.35) !important;
  color: #FBE5DC !important;
}
.footer input::placeholder { color: rgba(251,229,220,0.6) !important; }
.footer button[type="submit"],
.footer .subscribe-btn {
  background: #fff !important;
  color: var(--glow-coral) !important;
  border: 0 !important;
  font-weight: 500 !important;
}
.footer button[type="submit"]:hover {
  background: #1A1613 !important;
  color: #fff !important;
}

/* ----------------------------------------------------------------
   FOOTER COMPRESSION — reduce vertical footprint to ~1/3
   Overrides reviews.css base + coral-accent.css spacing.
   Loaded last in cascade; uses !important to win.
---------------------------------------------------------------- */
.footer {
  padding: clamp(1.5rem, 2.4vw, 2.25rem) 0 clamp(1rem, 1.5vw, 1.5rem) !important;
}
.footer .footer-mast {
  padding: 0 !important;
  margin: 0 0 clamp(1rem, 1.8vw, 1.5rem) !important;
  text-align: center;
}
.footer .footer-mast .footer-wordmark-link img {
  height: 58px !important;
}
.footer-mast .wordmark {
  width: clamp(270px, 32vw, 396px) !important;
  height: clamp(68px, 8.3vw, 101px) !important;
}
.footer-mast .footer-rule {
  margin: 0.65rem auto !important;
}
.footer-mast .footer-dek {
  font-size: 0.66rem !important;
  letter-spacing: 0.20em !important;
}
.footer-grid {
  padding-top: clamp(1rem, 1.6vw, 1.4rem) !important;
  gap: 1.25rem 1.5rem !important;
}
@media (min-width: 720px) {
  .footer-grid { gap: 1.25rem 1.75rem !important; }
}
.footer .footer-grid h5,
.footer h5 {
  font-size: 0.62rem !important;
  letter-spacing: 0.22em !important;
  margin: 0 0 0.5rem !important;
}
.footer .footer-grid ul,
.footer ul {
  gap: 0.05rem !important;
}
.footer .footer-grid a,
.footer .footer-grid li a,
.footer a {
  font-size: 0.78rem !important;
  padding: 0.15rem 0 !important;
  line-height: 1.35 !important;
}
.footer .colophon,
.colophon {
  margin-top: clamp(1rem, 1.6vw, 1.4rem) !important;
  padding-top: 0.9rem !important;
  font-size: 0.62rem !important;
}
/* Trim the "Submit corrections" line that sits between grid + colophon */
.footer .wrap > p {
  margin: 1rem 0 0 !important;
  font-size: 11px !important;
  line-height: 1.45 !important;
}

@media (max-width: 760px) {
  .footer { padding: 1.25rem 0 1rem !important; }
  .footer .footer-mast { margin-bottom: 1rem !important; }
  .footer .footer-mast .footer-wordmark-link img { height: 50px !important; }
  .footer-grid { gap: 1rem !important; padding-top: 1rem !important; }
  .footer .footer-grid h5, .footer h5 { font-size: 0.6rem !important; margin-bottom: 0.4rem !important; }
  .footer .footer-grid a, .footer a { font-size: 0.82rem !important; padding: 0.18rem 0 !important; min-height: 0 !important; }
  .footer .colophon, .colophon { margin-top: 1rem !important; padding-top: 0.8rem !important; }
}

/* ----------------------------------------------------------------
   MOBILE polish
---------------------------------------------------------------- */
@media (max-width: 760px) {
  .glow-manifesto { padding: 3.5rem 1.25rem; }
  .glow-manifesto__dot { width: 10px; height: 10px; }
  .glow-score-chip { font-size: 1.25rem; padding: 0.45rem 0.7rem 0.5rem; }
}


/* === HERO STRIP — uniform 5 columns sitewide (6 for --6 variant) === */
.gbp-hero__strip, .gbp-hero__strip--4, .gbp-hero__strip--5 {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 0.5rem !important;
  margin: 0 0 2rem !important;
}
.gbp-hero__strip--6 {
  display: grid !important;
  grid-template-columns: repeat(6, 1fr) !important;
  gap: 0.5rem !important;
  margin: 0 0 2rem !important;
}
@media (max-width: 720px) {
  .gbp-hero__strip, .gbp-hero__strip--4, .gbp-hero__strip--5, .gbp-hero__strip--6 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
.gbp-hero__strip-cell img,
.gbp-hero__strip-cell video {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
/* === END HERO STRIP === */


/* === BOTTOM STRIP — mirrors hero, same 5 images === */
.ag-bottom-strip {
  background: #ffffff;
  padding: 0;
  border-top: 1px solid rgba(0,0,0,0.05);
}
.ag-bottom-strip__inner {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0.5rem;
  max-width: 100%;
  margin: 0;
}
@media (max-width: 720px) {
  .ag-bottom-strip__inner { grid-template-columns: repeat(2, 1fr); }
}
.ag-bottom-strip .gbp-hero__strip-cell {
  aspect-ratio: 3 / 4;
  overflow: hidden;
  background: #f4f4f5;
}
.ag-bottom-strip .gbp-hero__strip-cell img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
/* === END BOTTOM STRIP === */

/* === READABILITY FIXES — sitewide editorial typography === */

/* Body prose line length cap + line height */
.agv7-section p,
.agv7-quick__body p,
.gbp-hero__body p,
.bc-body p,
.bow__body p,
.agv7-field__body p {
  max-width: 65ch;
  line-height: 1.65 !important;
  font-size: clamp(1.02rem, 1.1vw, 1.12rem) !important;
}

/* Editorial sections — generous breathing */
.agv7-section,
.agv7-comparesec,
.agv7-method,
.agv7-faq,
.agv7-field {
  padding-block: clamp(3.5rem, 8vw, 6rem) !important;
}

/* H2 weight + line-height */
.agv7-h2,
.agv7-section h2,
.gbp-hero__h2 {
  line-height: 1.18 !important;
  letter-spacing: -0.012em !important;
}

/* H3 should be 400 weight not 300 — improves scannability */
.agv7-section h3,
.agv7-pick h3,
.agv7-card__title,
.bc-pick__name {
  font-weight: 400 !important;
  letter-spacing: -0.005em !important;
}

/* Paragraph spacing — consistent */
.agv7-section p + p,
.gbp-hero__body p + p,
.agv7-field__body p + p {
  margin-top: 1em !important;
}

/* Mobile font size — bump minimums */
@media (max-width: 720px) {
  .agv7-section p,
  .agv7-quick__body p,
  .gbp-hero__body p {
    font-size: 17px !important;
    line-height: 1.6 !important;
  }
  .agv7-h2,
  .agv7-section h2 {
    line-height: 1.15 !important;
  }
}

/* Eyebrow restraint — only on actual eyebrow class */
.agv7-eyebrow,
.gbp-hero__eyebrow {
  font-size: 0.72rem !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: rgba(13,13,13,0.55) !important;
  margin-bottom: 1rem !important;
}

/* Subdue italic body — don't let em over-saturate */
.agv7-section p em {
  font-style: italic;
  /* don't make it bold or coloured — let it sit naturally */
}

/* Verdict quick-answer block — should be the most readable */
.agv7-quick {
  padding: clamp(2rem, 4vw, 3rem) !important;
}
.agv7-quick__body p {
  font-size: clamp(1.1rem, 1.3vw, 1.2rem) !important;
  line-height: 1.55 !important;
}

/* Field note — reads like an essay */
.agv7-field__body p {
  font-family: var(--agv7-ff-serif, Canela, Georgia, serif) !important;
  font-weight: 300 !important;
  font-size: clamp(1.08rem, 1.2vw, 1.2rem) !important;
  line-height: 1.65 !important;
}

/* FAQ list — readable */
.agv7-faq__item dt {
  font-size: clamp(1.05rem, 1.3vw, 1.18rem) !important;
  line-height: 1.3 !important;
}
.agv7-faq__item dd {
  font-size: clamp(0.98rem, 1.1vw, 1.06rem) !important;
  line-height: 1.65 !important;
}

/* === END READABILITY FIXES === */

/* === MOBILE UX FIXES — sitewide === */
@media (max-width: 720px) {
  /* Header compression — masthead + utility bar shouldn't eat >120px */
  .utility-bar { padding: 0.35rem 0 !important; font-size: 11px !important; }
  .masthead { padding: 0.65rem 0 !important; }
  .masthead img, .masthead .brand-lockup { max-height: 48px !important; }
  .glow-subnav { padding: 0.35rem 0 !important; }

  /* Sticky CTA — guarantee no overlap with last paragraph */
  body { padding-bottom: env(safe-area-inset-bottom, 0) !important; }
  main, .agv7-page, .gbp-page { padding-bottom: 88px !important; }

  /* 5-image hero strip — better mobile collapse */
  .gbp-hero__strip, .gbp-hero__strip--4, .gbp-hero__strip--5, .gbp-hero__strip--6,
  .ag-bottom-strip__inner {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 0.3rem !important;
  }
  /* Hide the 5th cell on mobile — show 4 in a clean 2x2.
     Excludes .gbp-hero__strip--6 which has 6 real cells (3x2 on mobile). */
  .gbp-hero__strip:not(.gbp-hero__strip--6) > .gbp-hero__strip-cell:nth-child(5),
  .ag-bottom-strip .gbp-hero__strip-cell:nth-child(5) {
    display: none !important;
  }

  /* Hero image — portrait on mobile */
  .agv7-hero-img, .gbp-hero__img, .ag-img--hero {
    aspect-ratio: 4 / 5 !important;
  }

  /* Best-list product cards — better mobile rhythm */
  .agv7-picks, .bc-picks, .agv7-pick-grid {
    gap: 1.5rem !important;
  }

  /* Touch targets — minimum 44×44 */
  .bdir__letter, .bdir__brand, a.gv-chip, .gcd-filter-chip {
    min-height: 44px !important;
    min-width: 44px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0.5rem 0.75rem !important;
  }

  /* Horizontal scroll defensive */
  body { overflow-x: hidden !important; }

  /* FAQ list — clear vertical stack */
  .agv7-faq__item dt { margin-bottom: 0.5rem !important; }
  .agv7-faq__item dd { font-size: 16px !important; line-height: 1.6 !important; padding-bottom: 0.5rem !important; }

  /* Verdict ticker — wrap cleanly */
  .agv7-ticker, .bc-ticker {
    font-size: 13px !important;
    line-height: 1.45 !important;
    padding: 0.85rem 1rem !important;
  }
  .agv7-ticker__inner, .bc-ticker__inner {
    flex-wrap: wrap !important;
  }

  /* H1 + H2 mobile — readable without overflow */
  .agv7-h1, .gbp-hero__h1 {
    font-size: clamp(2rem, 8vw, 2.6rem) !important;
    line-height: 1.05 !important;
    letter-spacing: -0.012em !important;
    word-break: keep-all !important;
    hyphens: none !important;
  }
  .agv7-h2 {
    font-size: clamp(1.5rem, 5vw, 1.9rem) !important;
    line-height: 1.15 !important;
  }

  /* Picks/cards — let images breathe */
  .agv7-pick, .agv7-card {
    padding: 1.25rem !important;
  }

  /* Eyebrow — slightly smaller on mobile, more wrap-friendly */
  .agv7-eyebrow, .gbp-hero__eyebrow {
    font-size: 0.66rem !important;
    letter-spacing: 0.18em !important;
  }

  /* CTA buttons — bigger tap targets */
  .agv7-cta, .gbp-cta, .gbp-btn, a.btn {
    padding: 1rem 1.5rem !important;
    font-size: 14px !important;
    min-height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Section padding — generous but not wasteful */
  .agv7-section, .agv7-comparesec, .agv7-method, .agv7-faq, .agv7-field {
    padding-block: clamp(2.5rem, 8vw, 4rem) !important;
  }
}
/* === END MOBILE UX FIXES === */

/* === SKIP LINK — visually hidden until focused (sitewide) ============== */
/* Was in glow-system.css which we scoped to /reviews/ only. */
/* Without this, screen-reader "Skip to content" links render visibly. */
.gl-skip, .skip-link, .skip-to-content {
  position: absolute !important;
  left: -9999px !important;
  top: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  padding: 0.8rem 1.2rem;
  background: #0D0D0D;
  color: #ffffff;
  z-index: 9999;
  font-family: 'Inter', system-ui, sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  text-decoration: none;
  border-radius: 4px;
}
.gl-skip:focus, .skip-link:focus, .skip-to-content:focus {
  left: 1rem !important;
  top: 1rem !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
}
/* === END SKIP LINK === */
