/* ==========================================================
   LIGHT THEME (TEST) — white background, dark navy/black text
   Loaded AFTER styles.css so it overrides. Delete to revert.
   ========================================================== */

/* ---------- page background: clean white ---------- */
body,
body.home,
body:not(.home) { background: #ffffff !important; }
body::before,
body.home::before,
body:not(.home)::before { display: none !important; }

/* ---------- HERO: white with a whisper of blue ---------- */
.hero {
  background: linear-gradient(180deg, #f7f9fd 0%, #ffffff 78%) !important;
  border-bottom: 1px solid rgba(15, 25, 60, 0.07);
}
.hero-overlay, .hero-funnel, .hero-watermark { display: none !important; }
.hero::after { display: none !important; }

/* hero type -> near-black + navy */
.hero-eyebrow { color: #2563eb !important; text-shadow: none !important; }
.hero h1, .hero-copy2 h1 { color: #0b1020 !important; text-shadow: none !important; }
.hero h1 .accent { color: #2563eb !important; -webkit-text-fill-color: #2563eb; }
.hero-full-sub { color: #2a3043 !important; }
.hero-gbp-cap, .hero-ads-cap { color: #5a6275 !important; }
.hero-scroll { color: #2a3043 !important; }
.hero-scroll-chevs svg { filter: drop-shadow(0 0 8px rgba(37, 99, 235, 0.35)); }

/* founder chip + my-info -> light card */
.hero-founder, .hero-info-caret {
  background: #f4f7fc !important;
  border: 1px solid rgba(15, 25, 60, 0.10) !important;
}
.hero-founder-text { color: #2a3043 !important; }
.hero-founder-text strong { color: #0b1020 !important; }
.hero-info-caret { color: #1a2a5c !important; }
.hero-info-card {
  background: #f4f7fc !important;
  border: 1px solid rgba(15, 25, 60, 0.10) !important;
  box-shadow: 0 18px 44px rgba(15, 25, 60, 0.12) !important;
}
.hero-contact-biz { color: #5a6275 !important; }
.hero-contact-link {
  background: #fff !important;
  border: 1px solid rgba(15, 25, 60, 0.12) !important;
  color: #1a2a5c !important;
}

/* tool chips */
.hero-tools .tool {
  background: #f4f7fc !important;
  border: 1px solid rgba(15, 25, 60, 0.10) !important;
  color: #1a2a5c !important;
}

/* mini report rail + cards keep white, tighten borders */
.hero-mini, .hero-report, .gbp-panel, .hero-ads-row {
  border: 1px solid rgba(15, 25, 60, 0.12) !important;
  box-shadow: 0 10px 26px rgba(15, 25, 60, 0.10) !important;
}

/* ---------- HEADER: white glass, dark text ---------- */
.site-header,
body.home .site-header,
body.home .site-header.over-hero,
body.home .site-header:not(.over-hero),
body:not(.home) .site-header {
  background: rgba(255, 255, 255, 0.82) !important;
  border: 1px solid rgba(15, 25, 60, 0.10) !important;
  box-shadow: 0 6px 22px rgba(15, 25, 60, 0.08) !important;
}
.site-header .brand-text,
body.home .site-header.over-hero .brand-text { color: #0b1020 !important; text-shadow: none !important; }
.site-header .brand-text em { color: #2563eb !important; }
.site-header .nav-links a:not(.btn),
body.home .site-header.over-hero .nav-links a:not(.btn) {
  color: #2a3043 !important;
  text-shadow: none !important;
}
.site-header .nav-links a:not(.btn):hover { color: #2563eb !important; }
.nav-toggle span { background: #0b1020 !important; }

/* ---------- dark bands -> light ---------- */
.trust-strip, .capstrip, .contact, .promise {
  background: #f7f9fd !important;
  color: #2a3043 !important;
}
.contact h2, .promise h2, .trust-strip h2,
.contact .section-sub, .promise p, .contact p { color: #0b1020 !important; }
.contact .section-sub, .contact p, .promise p { color: #2a3043 !important; }
.contact label span { color: #2a3043 !important; }
.contact input, .contact textarea, .contact select {
  background: #fff !important;
  border: 1px solid rgba(15, 25, 60, 0.16) !important;
  color: #0b1020 !important;
}
.contact input::placeholder, .contact textarea::placeholder { color: #7d8493 !important; }
.contact-info a, .contact a { color: #2563eb !important; }

/* footer -> light */
.site-footer {
  background: #f4f7fc !important;
  border-top: 1px solid rgba(15, 25, 60, 0.10);
  color: #2a3043 !important;
}
.site-footer strong { color: #0b1020 !important; }
.footer-sub, .footer-copy { color: #5a6275 !important; }

/* ---------- inner pages ---------- */
.faq-hero h1, body:not(.home) .faq-hero h1 { color: #0b1020 !important; }
.faq-hero .lede, body:not(.home) .faq-hero .lede { color: #2a3043 !important; }
.faq-hero::before { display: none !important; }
.intake-price {
  background: #f4f7fc !important;
  border: 1px solid rgba(15, 25, 60, 0.10) !important;
}
.intake-price-note { color: #5a6275 !important; }
.intake .contact-grid h2 { color: #0b1020 !important; }
.intake-includes li { color: #2a3043 !important; }
.intake-includes strong { color: #0b1020 !important; }

/* ---------- buttons: keep brand blue + green ---------- */
.btn-primary, .hero-copy2 .btn-primary.btn-lg, .nav-cta {
  background: #2563eb !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(37, 99, 235, 0.28) !important;
}
.btn-primary:hover, .nav-cta:hover { background: #1d4ed8 !important; }
.btn-book, .hero-copy2 .btn-book, .intake-book {
  background: #0fb981 !important;
  color: #fff !important;
  box-shadow: 0 8px 20px rgba(16, 185, 129, 0.28) !important;
}
.btn-book:hover { background: #0ca574 !important; }
/* the molten rim reads as noise on white — quiet it down */
.hero-copy2 .hero-full-ctas .btn::before,
.site-header .nav-cta::before { display: none !important; }

/* headings + body copy everywhere */
h1, h2, h3 { color: #0b1020; }
.section-sub, p { color: #2a3043; }
.eyebrow { color: #2563eb !important; }

/* ---------- REVIEWS: dark, readable text on white ---------- */
/* hero rotating reviews */
.rc-text {
  color: #0b1020 !important;
  text-shadow: none !important;
  font-weight: 500;
}
.rc-name { color: #1a2a5c !important; text-shadow: none !important; }
.rc-by   { color: #5a6275 !important; }
.rc-stars { color: #f5a623 !important; text-shadow: none !important; }
.rc-reply {
  color: #12703f !important;
  text-shadow: none !important;
  background: #f1f8f4;
  border-left: none !important;
  border-radius: 8px;
  padding: 8px 12px;
}
.rc-reply strong { color: #0f5c34 !important; }
/* results page review cards */
.rv-text { color: #0b1020 !important; }
.rv-name { color: #1a2a5c !important; }
.rv-reply { color: #12703f !important; }
.rv-stars { color: #f5a623 !important; }

/* ---------- ABOUT: remove the blue bar above the photo ---------- */
.about-mark::before { display: none !important; }
.about-mark { padding-top: 36px !important; }

/* ---------- BUTTON ANIMATIONS: restored, tuned for white ---------- */
.hero-copy2 .hero-full-ctas .btn,
.site-header .nav-cta { position: relative; }
.hero-copy2 .hero-full-ctas .btn::before,
.site-header .nav-cta::before {
  display: block !important;
  content: '';
  position: absolute;
  inset: -3px;
  border-radius: 14px;
  padding: 2.5px;
  pointer-events: none;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask-composite: exclude;
  animation: moltenRim 2.8s linear infinite;
}
.hero-copy2 .btn-primary::before,
.site-header .nav-cta::before {
  background: conic-gradient(from var(--mr),
    transparent 0deg 40deg, #60a5fa 95deg, #1d4ed8 150deg, #93c5fd 200deg, transparent 265deg 360deg);
  filter: drop-shadow(0 0 4px rgba(37, 99, 235, 0.55));
}
.hero-copy2 .btn-book::before {
  background: conic-gradient(from var(--mr),
    transparent 0deg 40deg, #34d399 95deg, #047857 150deg, #6ee7b7 200deg, transparent 265deg 360deg);
  filter: drop-shadow(0 0 4px rgba(16, 185, 129, 0.55));
  animation-delay: -1.4s;
}
.site-header .nav-cta::before { inset: -2.5px; border-radius: 12px; padding: 2px; }
@media (prefers-reduced-motion: reduce) {
  .hero-copy2 .hero-full-ctas .btn::before,
  .site-header .nav-cta::before { animation: none; }
}

/* kill the big blue radial haze behind the CTA pair */
.hero-copy2 .hero-full-ctas::before,
.hero-full-ctas::before { display: none !important; }
.hero-copy2 .hero-full-ctas .btn,
.hero-copy2 .btn-primary.btn-lg,
.hero-copy2 .btn-book { filter: none !important; }

/* ---------- SCROLL PERFORMANCE ---------- */
/* give each review card its own cheap compositor layer + stop it from
   forcing layout/paint work on the rest of the page while it moves */
.rev-card {
  will-change: transform, opacity;
  contain: layout paint style;
  backface-visibility: hidden;
}
.rev-cf { contain: layout paint; }

/* blurred glass is the most expensive thing to repaint during a scroll.
   On the white theme it buys nothing visually, so drop it. */
.site-header,
body.home .site-header,
body.home .site-header.over-hero,
body:not(.home) .site-header,
.hero-founder,
.hero-info-caret,
.hero-info-card,
.hero-tools .tool {
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}
.site-header,
body.home .site-header,
body.home .site-header.over-hero,
body:not(.home) .site-header { background: rgba(255, 255, 255, 0.96) !important; }

/* heavy multi-layer shadows -> single cheap shadow */
.rev-card { box-shadow: 0 10px 24px rgba(15, 25, 60, 0.13) !important; }
.hero-report, .hero-mini, .gbp-panel { box-shadow: 0 8px 20px rgba(15, 25, 60, 0.10) !important; }

/* no green bar on any reply block */
.rc-reply, .rv-reply, .gbp-owner {
  border-left: none !important;
  border-radius: 8px !important;
}

/* ---------- Evan replies: green text only, no box ---------- */
.rc-reply, .rv-reply {
  background: transparent !important;
  border: none !important;
  border-left: none !important;
  padding: 0 !important;
  box-shadow: none !important;
}

/* ---------- more lag fixes ---------- */
/* clip-path forces expensive per-frame clipping on the whole review strip */
.rev-cf {
  clip-path: none !important;
  overflow: hidden !important;
}
/* animated drop-shadows on the button rims repaint with blur 60x/second — 
   keep the flowing rim, kill the per-frame blur */
.hero-copy2 .hero-full-ctas .btn::before,
.hero-copy2 .btn-primary::before,
.hero-copy2 .btn-book::before,
.site-header .nav-cta::before { filter: none !important; }
/* lighter compositor hints: transform only */
.rev-card { will-change: transform; }

/* ---------- reviews float free: no card box at all ---------- */
.rev-card {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}
