/* ═══════════════════════════════════════════════════
   PURE CLEANERS — LUXURY GLOBAL OVERRIDE SYSTEM v2
   Brand: Editorial Beige #FAF7F2 / Navy #1a3356 / Logo Blue #4A7BB5
   Applied after style.css — overrides everything
   ═══════════════════════════════════════════════════ */

/* ── DESIGN TOKENS ────────────────────────────────── */
:root {
  /* ── BRAND PALETTE — Official Pure Cleaners Kit ───── */
  --color-bg:               #faf0dc;
  --color-bg-dark:          #EDE8E0;
  --color-bg-deep:          #E8E2D8;
  --color-bg-card-light:    #ffffff;
  --color-bg-card-dark:     rgba(26,51,86,0.85);
  --color-gold:             #b07d2e;
  --color-gold-light:       #9a6c25;
  --color-gold-hover:       #9a6c25;
  --color-blue:             #4A7BB5;
  --color-cream:            #faf0dc;
  --color-text-primary:     #1a3356;
  --color-text-secondary:   rgba(26,51,86,0.72);
  --color-text-dark:        #1a3356;
  --color-text-on-light:    #1a3356;
  --color-text-on-dark:     #1a3356;
  --color-text-muted-light: rgba(26,51,86,0.68);
  --color-text-muted-dark:  rgba(250,240,220,0.68);
  --color-border:           rgba(26,51,86,0.12);
  --color-border-light:     rgba(26,51,86,0.12);
  --color-border-dark:      rgba(250,240,220,0.10);
  --color-border-accent:    rgba(74,123,181,0.25);

  /* ── LEGACY ALIASES (kept for compatibility) ──────── */
  --lux-navy:     #1a3356;
  --lux-navy-2:   #1e3d6a;
  --lux-navy-3:   #243f6e;
  --lux-navy-4:   #2b4a78;
  --lux-gold:     #b07d2e;
  --lux-gold-2:   #9a6c25;
  --lux-gold-dim: rgba(176,125,46,0.10);
  --lux-blue:     #4A7BB5;
  --lux-border:   rgba(26,51,86,0.12);
  --lux-border-2: rgba(26,51,86,0.10);

  /* ── TEXT ON LIGHT BACKGROUNDS ───────────────────── */
  --lux-w80: rgba(26,51,86,0.85);
  --lux-w70: rgba(26,51,86,0.75);
  --lux-w50: rgba(26,51,86,0.60);
  --lux-w30: rgba(26,51,86,0.42);

  /* ── TEXT ON DARK BACKGROUNDS ────────────────────── */
  --lux-dw90: #1a3356;
  --lux-dw80: rgba(26,51,86,0.85);
  --lux-dw70: rgba(26,51,86,0.72);
  --lux-dw50: rgba(26,51,86,0.55);

  --lux-w08:       rgba(26,51,86,0.08);
  --lux-w04:       rgba(26,51,86,0.04);
  --lux-radius:    4px;
  --lux-radius-md: 8px;
  --lux-ease:      cubic-bezier(0.4,0,0.2,1);
  --font-serif:    'Cormorant Garamond', Georgia, serif;
  --font-sans:     'DM Sans', 'Inter', sans-serif;

  --glow-radius: 600px;
  --glow-blue:   rgba(58,110,168,0.06);
  --glow-gold:   rgba(176,125,46,0.06);
}

/* ── RESET & BASE ─────────────────────────────────── */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }

body {
  font-family: var(--font-sans) !important;
  font-size: 16px !important;
  font-weight: 300 !important;
  line-height: 1.8 !important;
  color: #1a3356 !important;
  background: #faf0dc !important;
  overflow-x: hidden !important;
}

img { max-width: 100%; height: auto; display: block; }
a { text-decoration: none; }
ul { list-style: none; padding: 0; margin: 0; }

/* ── TYPOGRAPHY ───────────────────────────────────── */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-serif) !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
}
/* Default heading color — light pages only */
:not([class*="dc-"]) > h1,
:not([class*="dc-"]) > h2,
:not([class*="dc-"]) > h3,
:not([class*="dc-"]) > h4 { color: #1a3356 !important; }
h1 {
  font-size: clamp(2rem, 5vw, 3.5rem) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  max-width: 720px;
  font-weight: 600 !important;
}
h2 {
  font-size: clamp(1.6rem, 4vw, 2.6rem) !important;
  line-height: 1.1 !important;
  letter-spacing: -0.02em !important;
  max-width: 640px;
  font-weight: 600 !important;
}
h3 {
  font-family: var(--font-serif) !important;
  font-size: clamp(1.1rem, 2.5vw, 1.4rem) !important;
  font-weight: 400 !important;
  font-style: italic !important;
  letter-spacing: 0 !important;
}
h4 {
  font-family: var(--font-serif) !important;
  font-size: 1.05rem !important;
  font-weight: 400 !important;
  font-style: italic !important;
  letter-spacing: 0 !important;
}
p {
  font-family: var(--font-sans) !important;
  font-weight: 300 !important;
  font-size: 0.9375rem !important;
  line-height: 1.8 !important;
  color: rgba(26,51,86,0.80) !important;
  max-width: 560px;
  margin-bottom: 1rem;
}
p:last-child { margin-bottom: 0; }

li {
  font-family: var(--font-sans) !important;
  font-weight: 300 !important;
  color: rgba(26,51,86,0.80) !important;
  max-width: 580px;
}

strong { font-weight: 600 !important; color: #1a3356 !important; }

/* ── LAYOUT ───────────────────────────────────────── */
.container {
  width: 100% !important;
  max-width: 1080px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
}

section, .section {
  padding-top: 96px !important;
  padding-bottom: 96px !important;
  border-top: 1px solid rgba(26,51,86,0.08);
  background: #faf0dc; /* no !important — allows inline backgrounds on .dark-section to show through */
}
section:first-of-type { border-top: none; }

/* Kill empty sections */
section:empty,
div:empty:not([class*="icon"]):not([class*="img"]):not([class*="dot"]):not([class*="particle"]):not([class*="overlay"]):not([class*="decoration"]):not([class*="scroll"]) {
  display: none !important;
}

/* ── BACKGROUNDS ──────────────────────────────────── */
.bg-white  { background: #faf0dc !important; }
.bg-light  { background: #f2e8cc !important; }
.bg-gray   { background: #f2e8cc !important; }
.bg-dark   { background: #EDE8E0 !important; }

/* Kill gradients/rainbow */
.hero-home::before,
.hero-home::after { display: none !important; }
.announcement-bar { display: none !important; }
.page-hero::after { display: none !important; }

/* Section backgrounds */
section.bg-white  { background: #faf0dc !important; }
section.bg-light  { background: #f2e8cc !important; }
.section.bg-white { background: #faf0dc !important; }
.section.bg-light { background: #f2e8cc !important; }

/* Alternating section accent — exclude ALL dark sections */
section:not(.green-section):not(.dark-section):not(.cta-section):not(.dc-hero):not(.hero-home):not(.dc-checklist):not(.dc-when):not(.dc-compare):not(.dc-process):not(.dc-faq):not(.dc-reviews):not(.dc-intro):not(.dc-every-surface):nth-of-type(even) { background: #f2e8cc !important; }
section:not(.green-section):not(.dark-section):not(.cta-section):not(.dc-hero):not(.hero-home):not(.dc-checklist):not(.dc-when):not(.dc-compare):not(.dc-process):not(.dc-faq):not(.dc-reviews):not(.dc-intro):not(.dc-every-surface):nth-of-type(odd)  { background: #faf0dc !important; }

/* Green eco section — keep dark green identity */
.green-section { background: #071e16 !important; }
section.green-section { background: #071e16 !important; }

/* ── NAV ──────────────────────────────────────────── */
.nav-logo-img { height: 44px !important; width: auto !important; }
@media (max-width: 1023px) { .nav-logo-img { height: 38px !important; } }
.mobile-menu-header img { height: 38px !important; width: auto !important; }

.navbar {
  height: 72px !important;
  min-height: 72px !important;
  background: #EDE8E0 !important;
  border-bottom: 1px solid rgba(26,51,86,0.10) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
}
.navbar.scrolled {
  background: rgba(237,232,224,0.99) !important;
  box-shadow: 0 1px 4px rgba(26,51,86,0.08) !important;
}
.nav-link {
  font-family: var(--font-sans) !important;
  font-weight: 400 !important;
  font-size: 0.875rem !important;
  color: rgba(26,51,86,0.80) !important;
  letter-spacing: 0.01em !important;
  position: relative !important;
}
.nav-link:hover { color: #1a3356 !important; background: transparent !important; }
.nav-cta {
  background: #b07d2e !important;
  color: #faf0dc !important;
  border-radius: var(--lux-radius) !important;
  font-family: var(--font-sans) !important;
  font-weight: 500 !important;
  font-size: 0.875rem !important;
  padding: 10px 20px !important;
  box-shadow: none !important;
  border: none !important;
}
.nav-cta:hover { background: #9a6c25 !important; transform: none !important; color: #faf0dc !important; }
.nav-phone { color: rgba(26,51,86,0.65) !important; font-size: 0.875rem !important; font-family: var(--font-serif) !important; font-style: italic !important; font-weight: 400 !important; }
.nav-phone i { color: #b07d2e !important; }

/* Dropdown */
.dropdown-menu {
  background: #ffffff !important;
  border: 1px solid rgba(26,51,86,0.12) !important;
  border-radius: var(--lux-radius-md) !important;
  box-shadow: 0 20px 50px rgba(26,51,86,0.12) !important;
}
.dropdown-link {
  color: rgba(26,51,86,0.78) !important;
  font-family: var(--font-sans) !important;
  font-size: 0.85rem !important;
  border-radius: var(--lux-radius) !important;
}
.dropdown-link:hover { background: rgba(176,125,46,0.06) !important; color: #1a3356 !important; }
.dropdown-section-title { color: #b07d2e !important; font-size: 0.7rem !important; }

/* Mobile menu */
.mobile-menu { background: #faf0dc !important; }
.mobile-nav-link { color: rgba(26,51,86,0.82) !important; font-family: var(--font-sans) !important; border-bottom: 1px solid rgba(26,51,86,0.08) !important; }
.mobile-section-title { color: #b07d2e !important; font-size: 0.7rem !important; letter-spacing: 0.12em !important; }

/* ── HERO — HOME (dark navy) ──────────────────────── */
.hero-home {
  background: #faf0dc !important;
  min-height: unset !important;
  padding: 100px 0 72px !important;
  border-top: none !important;
}
.hero-home h1, .hero-home h2, .hero-home h3, .hero-home h4 {
  color: #1a3356 !important;
}
.hero-home p, .hero-home li {
  color: rgba(26,51,86,0.78) !important;
}
.hero-particles { display: none !important; }
.hero-stats   { display: none !important; }
.hero-badge {
  background: rgba(74,123,181,0.10) !important;
  border: 1px solid rgba(74,123,181,0.25) !important;
  color: #b07d2e !important;
  border-radius: var(--lux-radius) !important;
  font-family: var(--font-sans) !important;
  font-size: 0.7rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  padding: 0.35rem 0.85rem !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
}
.hero-badge .dot { background: #b07d2e !important; }
.hero-title {
  font-family: var(--font-serif) !important;
  font-weight: 900 !important;
  letter-spacing: -0.03em !important;
  color: #1a3356 !important;
  text-align: left !important;
  max-width: 800px;
}
.hero-title .highlight {
  background: none !important;
  -webkit-background-clip: unset !important;
  -webkit-text-fill-color: #b07d2e !important;
  color: #b07d2e !important;
}
.hero-subtitle {
  font-family: var(--font-sans) !important;
  font-weight: 300 !important;
  color: rgba(26,51,86,0.72) !important;
  max-width: 500px !important;
}

/* Page heroes (inner pages) — light cream */
.page-hero {
  background: #faf0dc !important;
  min-height: unset !important;
  padding: calc(60px + 48px) 0 64px !important;
  border-top: none !important;
}
.page-hero h1, .page-hero h2, .page-hero h3,
.page-hero .hero-title { color: #1a3356 !important; text-align: left !important; }
.page-hero .subtitle, .page-hero p {
  color: rgba(26,51,86,0.72) !important;
  font-weight: 300 !important;
  max-width: 520px;
}
.page-hero .eyebrow { color: #b07d2e !important; }
.page-hero::before { background: none !important; }
.hero-photo-panel { border-radius: var(--lux-radius-md) !important; overflow: hidden; }

/* ── BUTTONS ──────────────────────────────────────── */
.btn {
  font-family: var(--font-sans) !important;
  font-weight: 500 !important;
  font-size: 0.9rem !important;
  border-radius: 3px !important;
  padding: 12px 24px !important;
  cursor: pointer !important;
  transition: all 0.25s cubic-bezier(0.25,0.46,0.45,0.94) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.45rem !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  border: none !important;
  box-shadow: none !important;
  letter-spacing: 0.06em !important;
}
.btn-primary, .btn-accent {
  background: #b07d2e !important;
  color: #faf0dc !important;
  font-weight: 500 !important;
  padding: 15px 36px !important;
  border: none !important;
  border-radius: 3px !important;
}
.btn-primary:hover, .btn-accent:hover {
  background: #9a6c25 !important;
  color: #faf0dc !important;
  box-shadow: 0 6px 20px rgba(176,125,46,0.28) !important;
  transform: translateY(-1px) !important;
}
/* Secondary — on LIGHT bg: navy outline */
.btn-secondary, .btn-outline {
  background: transparent !important;
  color: #1a3356 !important;
  border: 2px solid rgba(26,51,86,0.45) !important;
  padding: 12px 24px !important;
}
.btn-secondary:hover, .btn-outline:hover {
  border-color: #1a3356 !important;
  background: rgba(26,51,86,0.06) !important;
  color: #1a3356 !important;
}
/* Secondary — on DARK bg: cream outline */
.hero-home .btn-secondary, .hero-home .btn-outline,
.hero-home .btn-outline-white,
.cta-section .btn-secondary, .cta-section .btn-outline,
.footer .btn-secondary {
  color: #1a3356 !important;
  border: 2px solid rgba(250,240,220,0.55) !important;
  background: transparent !important;
}
.hero-home .btn-secondary:hover,
.hero-home .btn-outline:hover,
.cta-section .btn-secondary:hover {
  border-color: rgba(250,240,220,0.85) !important;
  background: rgba(250,240,220,0.08) !important;
  color: #1a3356 !important;
}
.btn-outline-white {
  background: transparent !important;
  color: #1a3356 !important;
  border: 2px solid rgba(250,240,220,0.55) !important;
}
.btn-dark { background: #b07d2e !important; color: #faf0dc !important; border: none !important; }
.btn-dark:hover { background: #9a6c25 !important; color: #faf0dc !important; }
.btn-xl { padding: 16px 32px !important; font-size: 0.9375rem !important; }
.btn-lg { padding: 14px 28px !important; }
.btn-sm { padding: 8px 16px !important; font-size: 0.8125rem !important; }
.btn-full { width: 100% !important; justify-content: center !important; }

/* Gold CTA button variants used in page styles */
.cta-button,
[class*="btn-gold"],
.dc-final-cta-btn,
.dc-hero-btn-primary {
  background: #b07d2e !important;
  color: #faf0dc !important;
  font-weight: 500 !important;
  border: none !important;
}
.cta-button:hover, .dc-final-cta-btn:hover {
  background: #9a6c25 !important;
  color: #faf0dc !important;
}

/* Kill all promotional badges/pills */
.offer-badge,
.promo-section,
.urgency-banner,
.rating-badge,
.floating-cta-btn,
.stats-section,
.cta-inline-strip,
.phone-cta-pill,
.guarantee-badge-cta { display: none !important; }

/* ── TRUST BAR ────────────────────────────────────── */
.trust-bar {
  background: #f0e4c0 !important;
  border-top: 1px solid rgba(26,51,86,0.10) !important;
  border-bottom: 1px solid rgba(26,51,86,0.10) !important;
  padding: 0.75rem 0 !important;
}
.trust-badges { display: block !important; text-align: center !important; }
.trust-badge { display: none !important; }
.hp-trust-line {
  font-family: var(--font-sans) !important;
  font-size: 0.75rem !important;
  font-weight: 400 !important;
  color: rgba(26,51,86,0.60) !important;
  letter-spacing: 0.04em !important;
  max-width: none !important;
  text-align: center;
}
.hp-trust-line span { color: rgba(26,51,86,0.35) !important; margin: 0 0.5rem !important; }

/* ── SECTION HEADERS ──────────────────────────────── */
.section-header {
  text-align: left !important;
  margin-bottom: 2.5rem !important;
}
.section-header h2 { margin-bottom: 0.5rem !important; color: #1a3356 !important; }
.section-header p, .section-header .subtitle {
  font-size: 0.9rem !important;
  color: rgba(26,51,86,0.68) !important;
  max-width: 520px;
  margin-bottom: 0 !important;
}
.eyebrow {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
  color: #b07d2e !important;
  font-family: var(--font-sans) !important;
  font-size: 0.65rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  padding: 0 !important;
  margin-bottom: 0.75rem !important;
}
.eyebrow::before {
  content: '' !important;
  display: block !important;
  width: 20px !important;
  height: 1px !important;
  background: #b07d2e !important;
  flex-shrink: 0 !important;
}
.eyebrow i { display: none !important; }
.text-gradient {
  background: none !important;
  -webkit-background-clip: unset !important;
  -webkit-text-fill-color: #b07d2e !important;
  color: #b07d2e !important;
  background-clip: unset !important;
}

/* ── CARDS (light) ────────────────────────────────── */
.service-card, .feature-card, .blog-card, .testimonial-card,
.process-step, .trust-card, .stat-card, .info-card, .card {
  background: #ffffff !important;
  border: 1px solid rgba(26,51,86,0.08) !important;
  border-radius: var(--lux-radius-md) !important;
  box-shadow: 0 2px 24px rgba(26,51,86,0.07) !important;
  transition: box-shadow 0.4s ease, transform 0.4s ease, border-color 0.3s ease !important;
}
.service-card:hover, .feature-card:hover, .blog-card:hover {
  border-color: rgba(176,125,46,0.30) !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 40px rgba(26,51,86,0.10), 0 2px 8px rgba(26,51,86,0.06) !important;
  background: #ffffff !important;
}
.service-card h3, .feature-card h4 {
  font-family: var(--font-sans) !important;
  font-weight: 600 !important;
  font-size: 1rem !important;
  color: #1a3356 !important;
  letter-spacing: -0.01em !important;
}
.service-card p, .feature-card p { color: rgba(26,51,86,0.72) !important; }
.card-link { color: #b07d2e !important; font-size: 0.8rem !important; }
.service-card-icon {
  background: rgba(176,125,46,0.10) !important;
  color: #b07d2e !important;
  border-radius: var(--lux-radius) !important;
  border: 1px solid rgba(176,125,46,0.20) !important;
}

/* ── ICON LISTS ───────────────────────────────────── */
.icon-list-item {
  color: rgba(26,51,86,0.80) !important;
  font-family: var(--font-sans) !important;
  font-weight: 300 !important;
  font-size: 0.9rem !important;
}
.icon-list-item > div:not(.icon) { color: rgba(26,51,86,0.80) !important; }
.icon-list-item .icon {
  background: rgba(176,125,46,0.10) !important;
  color: #b07d2e !important;
  border-radius: var(--lux-radius) !important;
  flex-shrink: 0 !important;
}
.icon-list-item .icon.green { background: rgba(16,185,129,0.10) !important; color: #059669 !important; }
.icon-list-item .icon.gold  { background: rgba(176,125,46,0.10) !important; color: #b07d2e !important; }

/* ── PROCESS STEPS ────────────────────────────────── */
.process-step, .step-card {
  background: rgba(255,255,255,0.85) !important;
  border: 1px solid rgba(26,51,86,0.10) !important;
  border-radius: var(--lux-radius) !important;
  box-shadow: 0 2px 8px rgba(26,51,86,0.05) !important;
}
.process-step h3, .step-card h3, .process-step h4, .step-card h4 { color: #1a3356 !important; }
.process-step p, .step-card p { color: rgba(26,51,86,0.72) !important; }
.step-number {
  font-family: var(--font-serif) !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
  color: #b07d2e !important;
  opacity: 0.55 !important;
  background: none !important;
  box-shadow: none !important;
  width: auto !important;
  height: auto !important;
  line-height: 1 !important;
}

/* ── TESTIMONIALS ─────────────────────────────────── */
.testimonial-card {
  background: #ffffff !important;
  border: 1px solid rgba(26,51,86,0.08) !important;
  border-radius: var(--lux-radius-md) !important;
  box-shadow: 0 2px 24px rgba(26,51,86,0.07) !important;
  transition: box-shadow 0.4s ease, transform 0.4s ease !important;
}
.testimonial-stars { color: #b07d2e !important; }
.testimonial-text { color: rgba(26,51,86,0.78) !important; font-weight: 300 !important; font-style: italic !important; }
.testimonial-name { color: #1a3356 !important; font-weight: 600 !important; }
.testimonial-location { color: rgba(26,51,86,0.58) !important; font-size: 0.78rem !important; }
.testimonial-avatar { background: #1a3356 !important; border-radius: var(--lux-radius) !important; }
.quote-mark { color: #b07d2e !important; opacity: 0.4 !important; }
.slider-btn {
  background: rgba(255,255,255,0.88) !important;
  border: 1px solid rgba(26,51,86,0.15) !important;
  border-radius: var(--lux-radius) !important;
  color: rgba(26,51,86,0.70) !important;
}
.slider-btn:hover { background: #b07d2e !important; border-color: #b07d2e !important; color: #faf0dc !important; }
.slider-dot { background: rgba(26,51,86,0.25) !important; border-radius: 50% !important; }
.slider-dot.active { background: #b07d2e !important; border-radius: 2px !important; }

/* ── COMPARISON TABLE ─────────────────────────────── */
.comparison-table, table {
  border-collapse: collapse !important;
  border-radius: var(--lux-radius-md) !important;
  overflow: hidden !important;
  border: 1px solid rgba(26,51,86,0.14) !important;
  width: 100% !important;
  background: #fff !important;
}
.comparison-table thead tr, table thead tr {
  background: #1a3356 !important;
}
.comparison-table th, table th {
  font-family: var(--font-sans) !important;
  font-size: 0.78rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: rgba(250,240,220,0.85) !important;
  padding: 0.85rem 1.25rem !important;
  border-bottom: 1px solid rgba(250,240,220,0.12) !important;
  background: #1a3356 !important;
}
.comparison-table td, table td {
  font-family: var(--font-sans) !important;
  font-size: 0.875rem !important;
  font-weight: 300 !important;
  color: rgba(26,51,86,0.80) !important;
  padding: 0.75rem 1.25rem !important;
  border-bottom: 1px solid rgba(26,51,86,0.07) !important;
  background: transparent !important;
  max-width: none !important;
}
.comparison-table tbody tr:nth-child(even) td { background: rgba(74,123,181,0.05) !important; }
.comparison-table tbody tr:hover td { background: rgba(176,125,46,0.06) !important; }
.comparison-table td:first-child { color: #1a3356 !important; font-weight: 500 !important; }
.check { color: #b07d2e !important; }
.x { color: rgba(26,51,86,0.35) !important; }

/* ── GALLERY ──────────────────────────────────────── */
.gallery-item { border-radius: var(--lux-radius-md) !important; overflow: hidden; }
.photo-strip-item img { border-radius: var(--lux-radius) !important; }

/* ── FORM ELEMENTS ────────────────────────────────── */
input, textarea, select {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(26,51,86,0.25) !important;
  border-radius: 0 !important;
  color: #1a3356 !important;
  font-family: var(--font-sans) !important;
  font-size: 0.925rem !important;
  font-weight: 400 !important;
  padding: 10px 0 !important;
  width: 100% !important;
  transition: border-bottom-color 0.3s ease !important;
  box-shadow: none !important;
}
input::placeholder, textarea::placeholder {
  color: rgba(26,51,86,0.42) !important;
  opacity: 1 !important;
}
input:focus, textarea:focus, select:focus {
  outline: none !important;
  border-bottom-color: #b07d2e !important;
  background: transparent !important;
  box-shadow: none !important;
}
select {
  border: none !important;
  border-bottom: 1px solid rgba(26,51,86,0.25) !important;
  border-radius: 0 !important;
  padding: 10px 0 !important;
  background: transparent !important;
  -webkit-appearance: none !important;
}
select option { background: #fff !important; color: #1a3356 !important; }
label {
  font-family: var(--font-sans) !important;
  font-size: 0.8rem !important;
  font-weight: 600 !important;
  color: #1a3356 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  display: block !important;
  margin-bottom: 0.4rem !important;
  opacity: 1 !important;
}

/* Form section labels — always navy, never faded */
.form-section-label,
[class*="section-label"],
[class*="section-tag"],
[class*="form-section"] {
  color: #1a3356 !important;
  font-weight: 700 !important;
  opacity: 1 !important;
  border-bottom-color: rgba(26,51,86,0.15) !important;
}

/* ── UNIVERSAL CARD TEXT FIX ── */
/* Every card/panel/box on a light background → navy text */
[class*="card"],
[class*="panel"],
[class*="box"],
.sidebar-trust,
.form-card,
.quote-card,
.trust-card,
.checklist-card,
.step-card {
  color: #1a3356 !important;
}

[class*="card"] h1, [class*="card"] h2, [class*="card"] h3,
[class*="card"] h4, [class*="card"] h5, [class*="card"] h6,
[class*="card"] p, [class*="card"] span, [class*="card"] li,
[class*="card"] label, [class*="card"] strong, [class*="card"] b,
[class*="card"] small, [class*="card"] em,
[class*="panel"] h1, [class*="panel"] h2, [class*="panel"] h3,
[class*="panel"] h4, [class*="panel"] p, [class*="panel"] span,
[class*="box"] h1, [class*="box"] h2, [class*="box"] h3,
[class*="box"] h4, [class*="box"] p, [class*="box"] span,
.sidebar-trust h4, .sidebar-trust p, .sidebar-trust strong,
.sidebar-trust .item p, .sidebar-trust .item strong,
.form-card h3, .form-card h4, .form-card p,
.step-content-mini h5, .step-content-mini p,
.trust-badge-sm {
  color: #1a3356 !important;
  opacity: 1 !important;
}

/* Secondary/muted text within cards */
[class*="card"] p,
[class*="card"] small,
[class*="card"] .meta,
[class*="card"] .subtitle,
.sidebar-trust .item p,
.step-content-mini p,
.form-subtitle,
.trust-badge-sm {
  color: rgba(26,51,86,0.80) !important;
  opacity: 1 !important;
}

/* Primary/heading text within cards — full opacity navy */
[class*="card"] h1, [class*="card"] h2, [class*="card"] h3,
[class*="card"] h4, [class*="card"] h5, [class*="card"] h6,
[class*="card"] strong, [class*="card"] b,
.sidebar-trust h4, .sidebar-trust .item strong,
.step-content-mini h5 {
  color: #1a3356 !important;
  opacity: 1 !important;
}

/* ── CARD BORDERS — VISIBLE ON LIGHT BACKGROUNDS ── */
[class*="card"],
.sidebar-trust,
.form-card {
  border-color: rgba(26,51,86,0.12) !important;
}

/* ── BG-LIGHT / BG-WHITE SECTION TEXT ── */
.bg-light *,
.bg-white *,
.bg-cream * {
  color: #1a3356;
}
.bg-light h1, .bg-light h2, .bg-light h3, .bg-light h4,
.bg-white h1, .bg-white h2, .bg-white h3, .bg-white h4 {
  color: #1a3356 !important;
}
.bg-light p, .bg-light span, .bg-light li,
.bg-white p, .bg-white span, .bg-white li {
  color: rgba(26,51,86,0.82) !important;
}

/* ── SIDEBAR TRUST ICONS ── */
.sidebar-trust .item i,
.sidebar-trust i.fa-circle-check {
  color: #b07d2e !important;
}

/* ── TESTIMONIAL CARDS — ALL TEXT VISIBLE ── */
.testimonial-card,
.review-card,
.quote-card {
  background: #ffffff !important;
  border: 1px solid rgba(26,51,86,0.08) !important;
}
.testimonial-card *,
.review-card *,
.quote-card * {
  color: #1a3356 !important;
}
.testimonial-card p,
.review-card p,
.quote-card p,
[class*="review"] p,
[class*="testimonial"] p {
  color: rgba(26,51,86,0.85) !important;
  opacity: 1 !important;
}

/* Star ratings */
.stars, [class*="star"],
.fa-star { color: #b07d2e !important; }

/* ── PROCESS/STEP CARDS ── */
.process-step-mini,
.process-step,
[class*="step-card"],
[class*="step-content"] {
  color: #1a3356 !important;
}

/* ── BLOG CARDS ───────────────────────────────────── */
.blog-card {
  background: #ffffff !important;
  border: 1px solid rgba(26,51,86,0.08) !important;
  border-radius: var(--lux-radius-md) !important;
  transition: box-shadow 0.4s ease, transform 0.4s ease, border-color 0.3s ease !important;
}
.blog-tag {
  background: rgba(176,125,46,0.12) !important;
  color: #b07d2e !important;
  border-radius: 2px !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  padding: 3px 8px !important;
  display: inline-block !important;
}
.blog-card h3, .blog-card h4 {
  font-family: var(--font-sans) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
  color: #1a3356 !important;
}
.blog-card p { color: rgba(26,51,86,0.72) !important; }
.blog-card-meta { color: rgba(26,51,86,0.55) !important; font-size: 0.78rem !important; }

/* ── FAQ ──────────────────────────────────────────── */
.faq-item { border-bottom: 1px solid rgba(26,51,86,0.12) !important; }
.faq-question {
  font-family: var(--font-sans) !important;
  font-weight: 500 !important;
  color: #1a3356 !important;
  font-size: 0.9rem !important;
  padding: 1rem 0 !important;
  cursor: pointer !important;
}
.faq-question:hover { background: rgba(26,51,86,0.04) !important; }
.faq-answer {
  font-family: var(--font-sans) !important;
  font-weight: 300 !important;
  color: rgba(26,51,86,0.75) !important;
  font-size: 0.875rem !important;
}
.faq-section-title { color: #1a3356 !important; font-family: var(--font-serif) !important; }

/* ── ACCORDION ────────────────────────────────────── */
.accordion-header, .accordion-btn, .faq-btn,
[class*="faq-question"] {
  color: #1a3356 !important;
  background: transparent !important;
}
.accordion-btn:hover, .faq-question:hover {
  background: rgba(26,51,86,0.04) !important;
  color: #1a3356 !important;
}
.faq-item.open .faq-question,
.accordion-item.open .accordion-btn {
  color: #b07d2e !important;
  background: rgba(176,125,46,0.06) !important;
}
.faq-item, .accordion-item {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(26,51,86,0.12) !important;
}
.faq-answer, .accordion-body, .faq-body {
  background: transparent !important;
  color: rgba(26,51,86,0.75) !important;
}

/* ── AREA BADGES ──────────────────────────────────── */
.area-badge {
  background: rgba(255,255,255,0.80) !important;
  border: 1px solid rgba(26,51,86,0.15) !important;
  border-radius: var(--lux-radius) !important;
  color: rgba(26,51,86,0.78) !important;
  font-weight: 400 !important;
  font-size: 0.8125rem !important;
}
.area-badge:hover { border-color: #4A7BB5 !important; color: #b07d2e !important; }
.area-badge i { color: #b07d2e !important; }

/* ── CTA SECTIONS (dark navy) ─────────────────────── */
.cta-section {
  background: #EDE8E0 !important;
  border-top: 1px solid rgba(26,51,86,0.10) !important;
  position: relative !important;
  overflow: hidden !important;
}
.cta-section h1, .cta-section h2, .cta-section h3,
.cta-section h4 { color: #1a3356 !important; }
.cta-section p, .cta-section li { color: rgba(26,51,86,0.78) !important; }

/* ── FOOTER (deep navy) ───────────────────────────── */
.footer {
  background: #EDE8E0 !important;
  border-top: 2px solid #b07d2e !important;
}
.footer-cta-strip {
  background: #ffffff !important;
  border: 1px solid rgba(26,51,86,0.12) !important;
  border-radius: var(--lux-radius-md) !important;
  box-shadow: none !important;
}
.footer-cta-strip h3 { font-family: var(--font-serif) !important; color: #1a3356 !important; }
.footer-col h4 { font-family: var(--font-sans) !important; color: #1a3356 !important; font-size: 0.825rem !important; font-weight: 600 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; margin-bottom: 1rem !important; }
.footer-links a { color: #1a3356 !important; font-size: 0.875rem !important; font-weight: 400 !important; }
.footer-links a:hover { color: #b07d2e !important; }
.footer-contact-item { color: #1a3356 !important; font-size: 0.875rem !important; }
.footer-contact-item i { color: #b07d2e !important; }
.footer-social a { border-radius: var(--lux-radius) !important; }
.footer-brand .logo { display: flex !important; align-items: center !important; gap: 0.75rem !important; margin-bottom: 1.25rem !important; }
.footer-brand .logo .footer-logo-img { height: 44px !important; width: auto !important; }
.footer-brand .logo .name { font-family: var(--font-sans) !important; font-size: 1.1rem !important; font-weight: 700 !important; color: #1a3356 !important; line-height: 1.1 !important; letter-spacing: 0.02em !important; }
.footer-brand .logo .tagline { font-size: 0.6rem !important; color: #b07d2e !important; font-weight: 500 !important; text-transform: uppercase !important; letter-spacing: 0.1em !important; }
.footer-bottom { border-top: 1px solid rgba(26,51,86,0.10) !important; }
.footer-bottom p, .footer-bottom-links a { color: rgba(26,51,86,0.88) !important; font-size: 0.78rem !important; }
.footer-bottom-links a:hover { color: #b07d2e !important; }

/* ── SCROLL & BACK TO TOP ─────────────────────────── */
.scroll-progress { background: #b07d2e !important; height: 2px !important; }
.back-to-top { border-radius: var(--lux-radius) !important; background: rgba(255,255,255,0.88) !important; border: 1px solid rgba(26,51,86,0.15) !important; color: #1a3356 !important; }

/* ── MOBILE CTA BAR — defined in MOBILE-FIRST block near bottom ── */

/* ════════════════════════════════════════════════════════
   CONTRAST AUDIT FIXES — All confirmed mismatch cases
   ═══════════════════════════════════════════════════════ */

/* ── 1. BREADCRUMBS — cream text on now-cream page-hero ──
   Page heroes originally dark blue; breadcrumbs used cream.
   Luxury-override forces hero to cream, so text → navy.  */
.page-hero .breadcrumb a        { color: rgba(26,51,86,0.65) !important; }
.page-hero .breadcrumb a:hover  { color: #b07d2e !important; }
.page-hero .breadcrumb .sep     { color: rgba(26,51,86,0.40) !important; }
.page-hero .breadcrumb .current { color: #1a3356 !important; }
.page-hero .hero-subtitle       { color: rgba(26,51,86,0.72) !important; }

/* ── 2. QUOTE BLOCK CITE — dark navy on dark blue card ── */
.quote-block cite { color: rgba(250,240,220,0.80) !important; }
.quote-block p    { color: rgba(250,240,220,0.95) !important; }

/* ── 3. CULTURE SECTION — dark charcoal div, forced navy ─
   .culture-section is a dark charcoal div. Global h/p
   rules push text navy = unreadable.                     */
.culture-section h1, .culture-section h2,
.culture-section h3, .culture-section h4 { color: rgba(250,240,220,0.95) !important; }
.culture-section p, .culture-section li  { color: rgba(250,240,220,0.80) !important; }
.culture-section .culture-value h4 { color: #1a3356 !important; }
.culture-section .culture-value p  { color: rgba(26,51,86,0.65) !important; }

/* ── 4. GREEN HERO — dark green bg, h1 forced navy ───── */
.page-hero.green-hero h1,
.page-hero.green-hero h2,
.page-hero.green-hero h3            { color: rgba(250,240,220,0.95) !important; }
.page-hero.green-hero p,
.page-hero.green-hero .hero-subtitle { color: rgba(250,240,220,0.80) !important; }
.page-hero.green-hero .breadcrumb a  { color: rgba(250,240,220,0.65) !important; }
.page-hero.green-hero .breadcrumb .sep { color: rgba(250,240,220,0.45) !important; }
.page-hero.green-hero .breadcrumb .current { color: rgba(250,240,220,0.92) !important; }
.page-hero.green-hero .eyebrow      { color: #A7F3D0 !important; }

/* ── 5. GREEN STAT NUMBERS — mint #A7F3D0 on white ───── */
.green-stat .num { color: #1a3356 !important; font-weight: 900 !important; }
.green-stat .lbl { color: rgba(26,51,86,0.70) !important; }

/* ── 6. GUARANTEE HERO — dark green div, forced navy ─── */
.guarantee-hero h3, .guarantee-hero h4 { color: rgba(250,240,220,0.95) !important; }
.guarantee-hero p                       { color: rgba(250,240,220,0.82) !important; }
.guarantee-hero .alert-box p            { color: rgba(26,51,86,0.85) !important; }

/* ── 7. PRICING BADGE — purple → gold ────────────────── */
.pricing-badge-top { background: #b07d2e !important; color: #faf0dc !important; }

/* ── 8. DARK INLINE-BG DIVS — navy/charcoal children ── */
[style*="background:linear-gradient(135deg,#0F172A"] h3,
[style*="background:linear-gradient(135deg,#0F172A"] h4,
[style*="background: linear-gradient(135deg, #0F172A"] h3,
[style*="background: linear-gradient(135deg, #0F172A"] h4 { color: rgba(250,240,220,0.95) !important; }
[style*="background:linear-gradient(135deg,#0F172A"] p,
[style*="background: linear-gradient(135deg, #0F172A"] p  { color: rgba(250,240,220,0.80) !important; }

/* ── 9. GC-CHIP — inherits white from dark-bg parent ── */
.gc-chip             { color: #1a3356 !important; }
.gc-logo, .gc-amount,
.gc-tagline          { color: rgba(250,240,220,0.90) !important; }

/* ── 10. INLINE GREEN STATS on light backgrounds ───────
   #34d399 (mint) has ~1.8:1 contrast on white = fails.
   Change to gold on light sections, keep in green-section. */
:not(.green-section) > [style*="color:#34d399"],
:not(.green-section) > [style*="color: #34d399"] {
  color: #b07d2e !important;
}

/* Comparison table — green "us" column on white rows ── */
.comparison-table .col-us {
  color: #1a3356 !important;
  font-weight: 700 !important;
}

/* Frequency badge "Best" — green on pale-green bg ───── */
.badge-best {
  background: rgba(26,51,86,0.08) !important;
  color: #1a3356 !important;
  border-color: rgba(26,51,86,0.20) !important;
}

/* ── VIDEO SECTION ────────────────────────────────── */
.video-section { background: #f5ead0 !important; }
.video-wrapper { border-radius: var(--lux-radius-md) !important; overflow: hidden; }

/* ── SPLIT IMAGE BLOCKS ───────────────────────────── */
.split-img-block { border-radius: var(--lux-radius-md) !important; overflow: hidden; }
.split-img-badge { border-radius: var(--lux-radius) !important; background: rgba(250,240,220,0.96) !important; border: 1px solid rgba(26,51,86,0.12) !important; color: #1a3356 !important; }
.hero-rating-overlay { border-radius: var(--lux-radius) !important; background: rgba(250,240,220,0.96) !important; border: 1px solid rgba(26,51,86,0.12) !important; }
.hero-badge-overlay { border-radius: var(--lux-radius) !important; background: rgba(26,51,86,0.90) !important; border: 1px solid rgba(250,240,220,0.15) !important; }

/* ── BREADCRUMB ───────────────────────────────────── */
.breadcrumb, .dc-breadcrumb { color: rgba(26,51,86,0.58) !important; font-size: 0.75rem !important; }
.breadcrumb a, .dc-breadcrumb a { color: rgba(26,51,86,0.58) !important; }
.breadcrumb a:hover, .dc-breadcrumb a:hover { color: #1a3356 !important; }

/* ── LINKS ────────────────────────────────────────── */
a:not(.btn):not(.nav-link):not(.nav-cta):not(.mobile-nav-link):not(.footer-links a):not(.dropdown-link) {
  color: #b07d2e;
}
a:not(.btn):not(.nav-link):not(.nav-cta):not(.mobile-nav-link):not(.footer-links a):not(.dropdown-link):hover {
  color: #9a6c25;
}

/* ── SCROLLBAR ────────────────────────────────────── */
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: #faf0dc; }
::-webkit-scrollbar-thumb { background: rgba(26,51,86,0.25); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(26,51,86,0.45); }

/* ── RESPONSIVE — MOBILE FIRST ────────────────────── */
@media (max-width: 768px) {
  section, .section { padding-top: 64px !important; padding-bottom: 64px !important; }
  .container { padding-left: 24px !important; padding-right: 24px !important; }
  h1 { font-size: clamp(1.8rem, 6vw, 2.4rem) !important; }
  h2 { font-size: clamp(1.4rem, 5vw, 2rem) !important; }
  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr !important; }
  .services-overview-grid { grid-template-columns: 1fr !important; }
  .blog-preview-grid { grid-template-columns: 1fr !important; }
  .why-split, .green-section-inner, .video-split { grid-template-columns: 1fr !important; }
  .hero-grid { grid-template-columns: 1fr !important; }
  .hero-right { display: none !important; }
  .hp-steps { grid-template-columns: 1fr 1fr !important; }
  .btn-xl { padding: 14px 24px !important; font-size: 0.9rem !important; }
  .testimonial-slide { grid-template-columns: 1fr !important; }
  .footer-grid { grid-template-columns: 1fr !important; }
  .nav-links, .nav-actions { display: none !important; }
  .nav-hamburger { display: flex !important; }
  p { max-width: 100% !important; }
  li { max-width: 100% !important; }
}

@media (max-width: 480px) {
  section, .section { padding-top: 40px !important; padding-bottom: 40px !important; }
  .container { padding-left: 16px !important; padding-right: 16px !important; }
  .hero-home { padding: 80px 0 56px !important; }
  .page-hero { padding: calc(60px + 32px) 0 48px !important; }
  .hp-steps { grid-template-columns: 1fr !important; }
  .btn-group { flex-direction: column !important; align-items: flex-start !important; }
  .dc-final-cta-actions { flex-direction: column !important; align-items: center !important; }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .services-overview-grid { grid-template-columns: repeat(2, 1fr) !important; }
  .testimonial-slide { grid-template-columns: 1fr 1fr !important; }
}

/* ══════════════════════════════════════════════════════
   LIGHT THEME CARD CLASSES — ALL PAGES
   ══════════════════════════════════════════════════════ */

/* Light-theme cards (all white/cream cards) */
.check-section,
.addon-card,
.why-item,
.plan-card,
.pricing-card,
.info-box,
.feature-box,
.highlight-box,
.tip-card,
.guarantee-box,
.cta-card,
.contact-card,
.job-card,
.area-card,
.green-card,
.perfect-for-card,
.premium-touch-card,
.move-option-card,
.occasion-card,
.compare-box,
.remove-item,
.timing-card,
.discount-tier,
.flex-card,
.referral-num,
.stat-block,
.stat-item,
.result-card,
.info-panel,
.detail-card,
.benefit-card,
.reason-card,
.step-box,
.option-card,
.featured-post {
  background: #ffffff !important;
  border: 1px solid rgba(26,51,86,0.08) !important;
  border-radius: 10px !important;
  color: #1a3356 !important;
  box-shadow: 0 2px 24px rgba(26,51,86,0.07) !important;
  transition: box-shadow 0.4s ease, transform 0.4s ease !important;
}

/* Text inside all light-theme cards */
.check-section h3, .check-section h4, .check-section p,
.addon-card h4, .addon-card p,
.why-item h4, .why-item p,
.plan-card h3, .plan-card h4, .plan-card p,
.pricing-card h3, .pricing-card h4, .pricing-card p,
.info-box h3, .info-box h4, .info-box p,
.feature-box h3, .feature-box h4, .feature-box p,
.guarantee-box h3, .guarantee-box h4, .guarantee-box p,
.cta-card h3, .cta-card p,
.contact-card h3, .contact-card p,
.job-card h3, .job-card h4, .job-card p,
.perfect-for-card h3, .perfect-for-card h4, .perfect-for-card p,
.premium-touch-card h3, .premium-touch-card h4, .premium-touch-card p,
.move-option-card h3, .move-option-card h4, .move-option-card p,
.occasion-card h3, .occasion-card h4, .occasion-card p,
.compare-box h3, .compare-box h4, .compare-box p,
.timing-card h3, .timing-card h4, .timing-card p,
.discount-tier h3, .discount-tier h4, .discount-tier p,
.flex-card h3, .flex-card h4, .flex-card p,
.referral-num .rn-amount, .referral-num .rn-label,
.featured-post h2, .featured-post p {
  color: #1a3356 !important;
}

.check-section-header h3 { color: #1a3356 !important; font-family: var(--font-serif) !important; }
.check-section-header p  { color: rgba(26,51,86,0.72) !important; }
.checklist-item span { color: rgba(26,51,86,0.82) !important; }
.area-section-header h3 { color: #1a3356 !important; }
.featured-post-body .meta,
.featured-post-body .meta span { color: rgba(26,51,86,0.60) !important; }
.featured-post-body .blog-tag { color: #b07d2e !important; }
.rating-overview .num { color: #faf0dc !important; }
.rating-overview .lbl { color: rgba(250,240,220,0.75) !important; }

/* ── CHECKLIST ITEMS ────────────────────────────────── */
.checklist-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  background: transparent !important;
}
.checklist-item:hover { background: rgba(26,51,86,0.04) !important; }
.checklist-item span,
.checklist-item .item-text,
.checklist-item > span:last-child {
  flex: 1 !important;
  color: rgba(26,51,86,0.82) !important;
  word-wrap: break-word !important;
  white-space: normal !important;
  font-size: 0.875rem !important;
  font-weight: 300 !important;
  line-height: 1.5 !important;
  font-family: var(--font-sans) !important;
}
.checklist-item .check-icon {
  background: rgba(176,125,46,0.12) !important;
  color: #b07d2e !important;
  border: none !important;
  flex-shrink: 0 !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.checklist-item .check-icon i { color: #b07d2e !important; font-size: 0.5rem !important; }

/* ── MOBILE CTA — NO PROMO TEXT ── */
.mcta-save { display: none !important; }
.mcta-book { font-size: 0.875rem !important; font-weight: 600 !important; }

/* ── GOLD BUTTONS — FORCE GOLD ON INLINE BLUE/GOLD STYLES ── */
[style*="background:#4A7BB5"],
[style*="background: #4A7BB5"],
[style*="background-color:#4A7BB5"],
[style*="background-color: #4A7BB5"],
[style*="background:#b8860b"],
[style*="background: #b8860b"] {
  background: #b07d2e !important;
  color: #faf0dc !important;
  font-weight: 500 !important;
}

/* Mobile CTA book button */
.mobile-cta-bar .mcta-book {
  background: #b07d2e !important;
  color: #faf0dc !important;
}

/* ── FAQ/ACCORDION — LIGHT THEME ── */
.faq-question, .faq-btn, .accordion-header, .accordion-btn {
  color: #1a3356 !important;
  background: transparent !important;
}
.faq-question:hover, .accordion-btn:hover {
  background: rgba(26,51,86,0.04) !important;
  color: #1a3356 !important;
}
.faq-item.open .faq-question, .accordion-item.open .accordion-btn {
  color: #b07d2e !important;
  background: rgba(176,125,46,0.06) !important;
}
.faq-item, .accordion-item {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid rgba(26,51,86,0.12) !important;
}
.faq-answer, .accordion-body, .faq-body {
  background: transparent !important;
  color: rgba(26,51,86,0.75) !important;
}

/* ── BADGES / TAGS ── */
.badge-49, [class*="badge-49"], [class*="checkpoint-badge"] {
  display: none !important;
}
.badge-best, .badge-good, .badge-great, .badge-flex,
.badge-residential, .badge-commercial, .badge-move,
[class*="badge-"] {
  background: rgba(176,125,46,0.12) !important;
  color: #9a6c25 !important;
  border: 1px solid rgba(176,125,46,0.25) !important;
  border-radius: 4px !important;
}

/* ── ALERT/NOTICE BOXES ── */
.alert-box, .notice-box, .warning-box, .info-alert {
  background: rgba(176,125,46,0.08) !important;
  border: 1px solid rgba(176,125,46,0.30) !important;
  border-radius: 8px !important;
  color: #1a3356 !important;
}
.alert-box p, .notice-box p { color: rgba(26,51,86,0.85) !important; }
.alert-box i, .notice-box i { color: #b07d2e !important; }
.alert-box strong { color: #b07d2e !important; }

/* ── STAT BLOCKS ── */
.stat-number, .counter, .count, .big-number,
[class*="stat-num"], [class*="-count"] {
  color: #1a3356 !important;
  opacity: 1 !important;
}
.stat-label, [class*="stat-lab"] {
  color: rgba(26,51,86,0.70) !important;
  opacity: 1 !important;
}

/* ── PRICE/PERIOD TEXT ── */
.price-amount, .price { color: #1a3356 !important; }
.price-period, .per-period, .billing-cycle { color: rgba(26,51,86,0.60) !important; }

/* ── ICON LISTS — ENFORCE ── */
.icon-list-item, .icon-list li,
.icon-list-item p, .icon-list li p,
.icon-list-item span, .icon-list li span,
.checklist li, .feature-list li {
  color: rgba(26,51,86,0.82) !important;
  max-width: 100% !important;
}

/* ── PRICING CARDS FULL OVERRIDE ── */
.pricing-card, .plan-tier, .price-card {
  background: #ffffff !important;
  border: 1px solid rgba(26,51,86,0.08) !important;
  color: #1a3356 !important;
  box-shadow: 0 2px 24px rgba(26,51,86,0.07) !important;
}
.pricing-card.featured, .plan-tier.featured, .price-card.popular {
  background: #fff !important;
  border: 2px solid #b07d2e !important;
}
.pricing-card h3, .plan-tier h3, .plan-card h3 { color: #1a3356 !important; }
.pricing-card .price, .plan-tier .price, .plan-card .price { color: #1a3356 !important; }
.pricing-card ul li, .plan-tier ul li, .plan-card ul li {
  color: rgba(26,51,86,0.80) !important;
}
.pricing-card p, .plan-tier p, .plan-card p { color: rgba(26,51,86,0.72) !important; }

/* ── SECTION SUBTITLE ── */
.section-subtitle, .section-desc, .section-intro,
.section-header .subtitle, .section-header p {
  color: rgba(26,51,86,0.70) !important;
}

/* ── CAREER / JOB CARDS ── */
.job-card h3, .job-card h4 { color: #1a3356 !important; }
.job-card p, .job-card li { color: rgba(26,51,86,0.80) !important; }

/* ── GIFT CARDS ── */
.gift-card-visual,
.gift-card-inner {
  background: rgba(255,255,255,0.90) !important;
  border: 1px solid rgba(26,51,86,0.12) !important;
  color: #1a3356 !important;
}

/* ── CONTACT INFO CARDS ── */
.contact-info-card {
  background: rgba(255,255,255,0.88) !important;
  border: 1px solid rgba(26,51,86,0.12) !important;
  color: #1a3356 !important;
}
.contact-info-card h4 { color: #1a3356 !important; }
.still-questions h3 { color: #1a3356 !important; font-family: var(--font-serif) !important; }

/* ── GUARANTEE SECTIONS ── */
.guarantee-box, .guarantee-inner, .guarantee-card {
  background: rgba(255,255,255,0.88) !important;
  border: 1px solid rgba(176,125,46,0.25) !important;
  color: #1a3356 !important;
}
.guarantee-box h3, .guarantee-inner h3, .guarantee-card h3 { color: #1a3356 !important; }
.guarantee-box p, .guarantee-inner p, .guarantee-card p { color: rgba(26,51,86,0.75) !important; }

/* ── PROCESS/HOW-IT-WORKS ── */
.process-step p, .step-card p, .how-step p { color: rgba(26,51,86,0.75) !important; }
.process-step h3, .step-card h3, .how-step h3 { color: #1a3356 !important; }

/* ── REFERRAL SECTIONS ── */
.referral-section {
  background: rgba(255,255,255,0.70) !important;
  border: 2px solid rgba(26,51,86,0.15) !important;
  color: #1a3356 !important;
}
.referral-section h3 { color: #1a3356 !important; }
.referral-num { background: rgba(255,255,255,0.90) !important; border: 1px solid rgba(26,51,86,0.12) !important; }
.referral-num .rn-amount { color: #b07d2e !important; }
.referral-num .rn-label { color: rgba(26,51,86,0.65) !important; }

/* ── PROMO / SAVE BOXES ── */
.promo-save-box {
  background: rgba(255,255,255,0.75) !important;
  border: 1px solid rgba(26,51,86,0.12) !important;
  color: #1a3356 !important;
}
.promo-save-box .save-amount { color: #1a3356 !important; }
.promo-save-box .save-label { color: rgba(26,51,86,0.70) !important; }

/* ── INLINE DARK TEXT CATCH-ALL ── */
[style*="color:#333"], [style*="color: #333"],
[style*="color:#444"], [style*="color: #444"],
[style*="color:#555"], [style*="color: #555"],
[style*="color:#222"], [style*="color: #222"],
[style*="color:black"], [style*="color: black"],
[style*="color:#1a1a1a"], [style*="color: #1a1a1a"],
[style*="color:#2d2d2d"], [style*="color: #2d2d2d"] {
  color: #1a3356 !important;
}

/* ── INLINE LIGHT BG CATCH-ALL ── */
div[style*="background:#fff"],
div[style*="background: #fff"],
div[style*="background:white"],
div[style*="background: white"],
div[style*="background:var(--white)"],
div[style*="background: var(--white)"],
div[style*="background:#f8fafc"],
div[style*="background: #f8fafc"],
div[style*="background:linear-gradient(135deg,#EFF6FF"],
div[style*="background:linear-gradient(135deg, #EFF6FF"],
div[style*="background: linear-gradient(135deg, #EFF6FF"],
section[style*="background:#fff"],
section[style*="background: #fff"],
section[style*="background:white"],
section[style*="background: white"],
section[style*="background:#f8"],
section[style*="background: #f8"] {
  background: rgba(255,255,255,0.85) !important;
  color: #1a3356 !important;
}
div[style*="background:#fff"] *,
div[style*="background:white"] *,
div[style*="background:var(--white)"] * { color: #1a3356 !important; }

/* ── ELECTRIC BLUE CATCH-ALL — NO BRIGHT BLUE ── */
[style*="color:#2563eb"], [style*="color: #2563eb"],
[style*="color:#1a56db"], [style*="color: #1a56db"],
[style*="color:#3b82f6"], [style*="color: #3b82f6"],
[style*="color:#1D4ED8"], [style*="color: #1D4ED8"] {
  color: #b07d2e !important;
}
[style*="background:#2563eb"],
[style*="background: #2563eb"],
[style*="background:#1a56db"],
[style*="background: #1a56db"],
[style*="background:#3b82f6"],
[style*="background: #3b82f6"],
[style*="background-color:#2563eb"],
[style*="background-color: #2563eb"] {
  background: #1a3356 !important;
}

/* ── DEEP CLEANING PAGE (dc-* classes) ─────────────── */
.dc-hero { background: #faf0dc !important; }
.dc-hero h1, .dc-hero h2, .dc-hero h3 { color: #1a3356 !important; }
.dc-hero p { color: rgba(26,51,86,0.78) !important; }
.dc-situation { background: rgba(255,255,255,0.85) !important; border: 1px solid rgba(26,51,86,0.10) !important; }
.dc-situation h4 { color: #1a3356 !important; }
.dc-situation p { color: rgba(26,51,86,0.72) !important; }
.dc-situation-num { color: #b07d2e !important; opacity: 0.65 !important; }
.dc-step { background: rgba(255,255,255,0.85) !important; border-right: 1px solid rgba(26,51,86,0.10) !important; }
.dc-step h4 { color: #1a3356 !important; }
.dc-step p { color: rgba(26,51,86,0.72) !important; }
.dc-step-n { color: #b07d2e !important; opacity: 0.65 !important; }
.dc-final-cta { background: #1a3356 !important; }
.dc-final-cta h2, .dc-final-cta h3, .dc-final-cta h4 { color: #faf0dc !important; }
.dc-final-cta p, .dc-final-cta li, .dc-final-cta .dc-guarantee { color: rgba(250,240,220,0.82) !important; }

/* ── MOBILE TYPOGRAPHY ── */
body { overflow-x: hidden !important; }
@media (max-width: 480px) {
  h1 { font-size: clamp(1.8rem, 6vw, 3.5rem) !important; letter-spacing: -0.03em !important; line-height: 1.1 !important; }
  h2 { font-size: clamp(1.4rem, 5vw, 2.6rem) !important; letter-spacing: -0.025em !important; line-height: 1.15 !important; }
  p  { font-size: 15px !important; line-height: 1.65 !important; }
  section, .section { padding: 48px 0 !important; }
  .container { padding: 0 16px !important; }
}

/* ── MOBILE GHOST SIDEBAR ── */
@media (max-width: 768px) {
  .feedback-tab, .side-tab, [class*="drift"],
  [class*="chat-launcher"], [class*="sidebar-tab"],
  [id*="drift"], [id*="chat-widget"], [id*="feedback-tab"],
  .back-tab { display: none !important; }
}

/* ══════════════════════════════════════════════════════
   AMBIENT LIGHT — CREAM THEME EDITION
   ══════════════════════════════════════════════════════ */

.hero-home, .page-hero, .dc-hero { position: relative; overflow: hidden; }
.hero-home::before, .dc-hero::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(ellipse 80% 40% at 50% 0%,
    rgba(176,125,46,0.08) 0%, transparent 65%) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.page-hero::before {
  content: '' !important;
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  background: radial-gradient(ellipse 80% 40% at 50% 0%,
    rgba(176,125,46,0.08) 0%, transparent 65%) !important;
  pointer-events: none !important;
  z-index: 0 !important;
}
.hero-home > *, .page-hero > *, .dc-hero > * { position: relative; z-index: 1; }

section { position: relative; overflow: hidden; }
/* Section ::before glow overlays — killed entirely, caused rainbow chaos on dark pages */
section::before { content: none !important; display: none !important; }
section > * { position: relative; z-index: 1; }

.navbar { box-shadow: 0 1px 0 rgba(26,51,86,0.08) !important; }

.footer { position: relative; }
.footer::before {
  content: '';
  position: absolute; top: 0; left: 50%;
  transform: translateX(-50%);
  width: 60%; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(176,125,46,0.30), transparent);
  pointer-events: none; z-index: 1;
}

/* ── CARD HOVER GLOW ── */
.service-card, .feature-card, .blog-card, .testimonial-card,
.process-step, .trust-card, .stat-card, .info-card, .card,
.plan-card, .pricing-card, .check-section, .job-card {
  will-change: transform, opacity;
  transition: box-shadow 0.3s ease, transform 0.3s ease, border-color 0.3s ease !important;
}
.service-card:hover, .feature-card:hover, .blog-card:hover,
.testimonial-card:hover, .plan-card:hover, .pricing-card:hover {
  box-shadow: 0 8px 40px rgba(26,51,86,0.10), 0 2px 8px rgba(26,51,86,0.06) !important;
  transform: translateY(-3px) !important;
  border-color: rgba(176,125,46,0.30) !important;
}

/* ── BUTTON BLOOM ── */
.btn-primary, .btn-accent, .nav-cta, .mcta-book,
.cta-button, .dc-final-cta-btn, .dc-hero-btn-primary {
  will-change: transform, box-shadow;
  transition: background 0.2s ease, box-shadow 0.3s ease,
              transform 0.2s ease, color 0.2s ease !important;
}
.btn-primary:hover, .btn-accent:hover,
.cta-button:hover, .dc-final-cta-btn:hover {
  background: #9a6c25 !important;
  filter: brightness(1.08) !important;
  box-shadow: 0 6px 20px rgba(176,125,46,0.30) !important;
  transform: translateY(-1px) !important;
}
.btn-primary:active, .btn-accent:active {
  transform: translateY(0) !important;
  box-shadow: 0 0 10px rgba(176,125,46,0.20) !important;
}

/* ── GPU ACCELERATION ── */
.reveal, .service-card, .feature-card, .blog-card,
.testimonial-card, .plan-card, .pricing-card,
.btn, .btn-primary, .btn-accent, .nav-cta,
.navbar, .mobile-menu, #cursor-glow {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* ── REDUCED MOTION ── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .reveal { opacity: 1 !important; transform: none !important; }
  section::before, section::after { display: none !important; }
  #cursor-glow { display: none !important; }
}

/* ══════════════════════════════════════════════════════
   CREAM THEME — INLINE STYLE OVERRIDE LAYER
   Force readable text on light pages
   ══════════════════════════════════════════════════════ */

/* Any explicit cream/white text on now-light backgrounds */
[style*="color:#faf3e0"], [style*="color: #faf3e0"],
[style*="color:#1a3356"], [style*="color: #1a3356"],
[style*="color:rgba(250,243,224"], [style*="color: rgba(250,243,224"],
[style*="color:rgba(250,240,220"] {
  /* Only override if NOT in a dark-bg parent */
  color: inherit;
}
/* Explicit override for elements not inside dark sections */
.page-hero [style*="color:#faf3e0"],
.page-hero [style*="color:rgba(250,243,224"],
section:not(.hero-home):not(.cta-section):not(.dc-hero):not(.green-section) [style*="color:#faf3e0"],
section:not(.hero-home):not(.cta-section):not(.dc-hero):not(.green-section) [style*="color:rgba(250,243,224"] {
  color: rgba(26,51,86,0.80) !important;
}

/* Light section headings — exclude all dc- dark sections */
section:not(.hero-home):not(.cta-section):not(.dc-hero):not(.green-section):not([class*="dc-"]) h1,
section:not(.hero-home):not(.cta-section):not(.dc-hero):not(.green-section):not([class*="dc-"]) h2,
section:not(.hero-home):not(.cta-section):not(.dc-hero):not(.green-section):not([class*="dc-"]) h3,
section:not(.hero-home):not(.cta-section):not(.dc-hero):not(.green-section):not([class*="dc-"]) h4 {
  color: #1a3356 !important;
}

/* Deep cleaning dark sections — force dark backgrounds AND white text */
/* These sections define their own dark bg via CSS vars that can be overridden;
   explicit hex values here guarantee they stay dark regardless of cascade. */
.dc-every-surface { background: #0e1528 !important; }
.dc-checklist     { background: #0a0f1e !important; }
.dc-when          { background: #0e1528 !important; }
.dc-compare       { background: #0a0f1e !important; }
.dc-process       { background: #0e1528 !important; }
.dc-faq           { background: #0a0f1e !important; }
.dc-reviews       { background: #0e1528 !important; }
.dc-intro         { background: #faf0dc !important; } /* dc-intro is light */

section[class*="dc-"]:not(.dc-intro) h1,
section[class*="dc-"]:not(.dc-intro) h2,
section[class*="dc-"]:not(.dc-intro) h3,
section[class*="dc-"]:not(.dc-intro) h4 { color: #ffffff !important; }
section[class*="dc-"]:not(.dc-intro) p   { color: rgba(255,255,255,0.75) !important; }
section[class*="dc-"] .dc-review-text { color: rgba(255,255,255,0.75) !important; font-style: italic !important; }
section[class*="dc-"] .dc-review-name { color: #ffffff !important; }
section[class*="dc-"] .dc-review-loc  { color: rgba(255,255,255,0.55) !important; }
section[class*="dc-"] .dc-label,
section[class*="dc-"] .dc-reviews-header .dc-label { color: #b07d2e !important; }

/* dc-intro is light (cream) — navy text */
.dc-intro h1, .dc-intro h2, .dc-intro h3, .dc-intro h4 { color: #1a3356 !important; }
.dc-intro p, .dc-intro li { color: rgba(26,51,86,0.75) !important; }

/* Green section — force light text on dark green background */
section.green-section { background: #071e16 !important; }
section.green-section h1,
section.green-section h2,
section.green-section h3,
section.green-section h4 { color: rgba(220,245,235,0.95) !important; }
section.green-section p,
section.green-section li,
section.green-section div { color: #ffffff !important; }
section.green-section .icon-list-item div,
section.green-section .icon-list-item strong { color: #ffffff !important; }
section.green-section span[style*="color:#34D399"],
section.green-section span[style*="color: #34D399"],
section.green-section [style*="color:#34d399"],
section.green-section [style*="color: #34d399"] { color: #34d399 !important; }
section.green-section .eyebrow { color: #4CAF50 !important; }

/* ── DARK-SECTION INLINE STYLE RESTORATION ──────────
   Python batch fix incorrectly converted cream inline styles to navy.
   These rules restore correct cream/light text in all dark sections.
   Targets [style*="color:rgba(26,51,86"] and [style*="color:#1a3356"] ── */

/* CTA section (dark navy #1a3356) */
.cta-section [style*="color:rgba(26,51,86"],
.cta-section [style*="color:#1a3356"] { color: rgba(26,51,86,0.82) !important; }
.cta-section strong[style*="color:rgba(26,51,86"],
.cta-section strong[style*="color:#1a3356"],
.cta-section b[style*="color:rgba(26,51,86"],
.cta-section b[style*="color:#1a3356"] { color: #1a3356 !important; }

/* Hero home (dark navy) */
.hero-home [style*="color:rgba(26,51,86"],
.hero-home [style*="color:#1a3356"] { color: rgba(26,51,86,0.82) !important; }
.hero-home strong[style*="color:#1a3356"],
.hero-home b[style*="color:#1a3356"] { color: #1a3356 !important; }

/* DC-hero (dark navy) */
.dc-hero [style*="color:rgba(26,51,86"],
.dc-hero [style*="color:#1a3356"] { color: rgba(26,51,86,0.82) !important; }

/* Green section (dark green #071e16) */
.green-section [style*="color:rgba(26,51,86"],
.green-section [style*="color:#1a3356"] { color: rgba(220,245,235,0.80) !important; }
.green-section strong[style*="color:rgba(26,51,86"],
.green-section strong[style*="color:#1a3356"],
.green-section b[style*="color:rgba(26,51,86"],
.green-section b[style*="color:#1a3356"] { color: #e8f5e9 !important; }

/* Footer has light bg — keep navy text as-is */
.footer [style*="color:rgba(26,51,86"],
.footer [style*="color:#1a3356"] { color: #1a3356 !important; }

/* Navbar / mobile menu */
.navbar [style*="color:rgba(26,51,86"],
.navbar [style*="color:#1a3356"],
.mobile-menu [style*="color:rgba(26,51,86"],
.mobile-menu [style*="color:#1a3356"] { color: rgba(26,51,86,0.82) !important; }

/* bg-dark and bg-deep utility classes */
.bg-dark [style*="color:rgba(26,51,86"],
.bg-dark [style*="color:#1a3356"],
.bg-deep [style*="color:rgba(26,51,86"],
.bg-deep [style*="color:#1a3356"] { color: rgba(26,51,86,0.80) !important; }

/* ── CTA SECTION — BROAD TEXT COVERAGE ── */
.cta-section div,
.cta-section span,
.cta-section small,
.cta-section label { color: rgba(26,51,86,0.80) !important; }
.cta-section h1, .cta-section h2, .cta-section h3, .cta-section h4,
.cta-section strong, .cta-section b { color: #1a3356 !important; }

/* ── GREEN SECTION — BROAD TEXT COVERAGE ── */
.green-section div,
.green-section span,
.green-section small,
.green-section label { color: rgba(220,245,235,0.80) !important; }
.green-section h1, .green-section h2, .green-section h3,
.green-section strong, .green-section b { color: #e8f5e9 !important; }

/* ── HERO HOME — BROAD TEXT COVERAGE ── */
.hero-home div,
.hero-home span,
.hero-home small,
.hero-home label { color: rgba(26,51,86,0.80) !important; }
.hero-home h1, .hero-home h2, .hero-home h3,
.hero-home strong, .hero-home b { color: #1a3356 !important; }

/* ── DC-HERO — BROAD TEXT COVERAGE ── */
.dc-hero div,
.dc-hero span,
.dc-hero small { color: rgba(26,51,86,0.80) !important; }
.dc-hero h1, .dc-hero h2, .dc-hero h3,
.dc-hero strong, .dc-hero b { color: #1a3356 !important; }

/* ── PRESERVE BUTTON/LINK COLORS IN DARK SECTIONS ── */
.cta-section .btn-primary,
.cta-section .btn-accent,
.cta-section .nav-cta { color: #1a3356 !important; }
.cta-section .btn-secondary,
.cta-section .btn-outline { color: #1a3356 !important; border-color: rgba(26,51,86,0.35) !important; }
.green-section .btn { color: #fff !important; }

/* ── CATCH white/cream INLINE STYLES IN LIGHT SECTIONS ── */
/* page-hero is cream — convert all white/cream inline text to navy */
.page-hero [style*="color:white"],
.page-hero [style*="color: white"],
.page-hero [style*="color:#fff"],
.page-hero [style*="color:#ffffff"],
.page-hero [style*="color:rgba(255,255,255"],
.page-hero [style*="color:rgba(250,240,220"],
.page-hero [style*="color:rgba(220,245,235"] { color: rgba(26,51,86,0.80) !important; }

/* All light sections — convert white/cream inline text to navy */
/* Excludes: green-section (dark green), all dc- sections (dark navy), sections with dark inline backgrounds */
section:not(.green-section):not(.dark-section):not(.dc-hero):not(.dc-reviews):not(.dc-checklist):not(.dc-when):not(.dc-compare):not(.dc-process):not(.dc-faq):not(.dc-intro) [style*="color:white"],
section:not(.green-section):not(.dark-section):not(.dc-hero):not(.dc-reviews):not(.dc-checklist):not(.dc-when):not(.dc-compare):not(.dc-process):not(.dc-faq):not(.dc-intro) [style*="color: white"],
section:not(.green-section):not(.dark-section):not(.dc-hero):not(.dc-reviews):not(.dc-checklist):not(.dc-when):not(.dc-compare):not(.dc-process):not(.dc-faq):not(.dc-intro) [style*="color:#fff;"],
section:not(.green-section):not(.dark-section):not(.dc-hero):not(.dc-reviews):not(.dc-checklist):not(.dc-when):not(.dc-compare):not(.dc-process):not(.dc-faq):not(.dc-intro) [style*="color:#ffffff"],
section:not(.green-section):not(.dark-section):not(.dc-hero):not(.dc-reviews):not(.dc-checklist):not(.dc-when):not(.dc-compare):not(.dc-process):not(.dc-faq):not(.dc-intro) [style*="color:rgba(255,255,255"],
section:not(.green-section):not(.dark-section):not(.dc-hero):not(.dc-reviews):not(.dc-checklist):not(.dc-when):not(.dc-compare):not(.dc-process):not(.dc-faq):not(.dc-intro) [style*="color:rgba(250,240,220"],
section:not(.green-section):not(.dark-section):not(.dc-hero):not(.dc-reviews):not(.dc-checklist):not(.dc-when):not(.dc-compare):not(.dc-process):not(.dc-faq):not(.dc-intro) [style*="color:rgba(220,245,235"] {
  color: rgba(26,51,86,0.80) !important;
}

/* .dark-section: sections with dark inline backgrounds — preserve white text */
.dark-section h1, .dark-section h2, .dark-section h3, .dark-section h4 { color: #ffffff !important; }
.dark-section p, .dark-section li { color: rgba(255,255,255,0.85) !important; }
.dark-section div, .dark-section span { color: rgba(255,255,255,0.85) !important; }
.dark-section .feature-card { background: rgba(255,255,255,0.10) !important; border-color: rgba(255,255,255,0.20) !important; }
/* green-stat cards have white (#fff) card backgrounds — use dark readable text */
.dark-section .green-stat { background: #ffffff !important; }
.dark-section .green-stat .num { color: #059669 !important; font-weight: 900 !important; }
.dark-section .green-stat .lbl { color: rgba(26,51,86,0.80) !important; }

/* Preserve white text on elements that have their own dark inline background */
[style*="background:#1a3356"] *,
[style*="background-color:#1a3356"] * { color: #faf0dc !important; }
[style*="background:#10B981"] *,
[style*="background:#071e16"] *,
[style*="background:#0a0f1e"] *,
[style*="background:#0e1528"] * { color: #ffffff !important; }
/* Sections with dark inline gradient backgrounds — preserve their white text */
section[style*="background:linear-gradient"] [style*="color:white"],
section[style*="background:linear-gradient"] [style*="color: white"],
section[style*="background:linear-gradient"] [style*="color:rgba(255,255,255"],
section[style*="background: linear-gradient"] [style*="color:white"],
section[style*="background: linear-gradient"] [style*="color: white"],
section[style*="background: linear-gradient"] [style*="color:rgba(255,255,255"] { color: inherit !important; }

/* ── FINAL NO-OVERFLOW ── */
* { max-width: 100vw; }

/* ══════════════════════════════════════════════════════
   ANIMATION SAFETY NET — GLOBAL
   Ensures .animate and .dc-fade elements are NEVER
   permanently stuck at opacity:0 on any page.
   The @keyframes trick fires after 2s and forces
   visibility even if IntersectionObserver never fires.
   ══════════════════════════════════════════════════════ */

/* After 2 seconds, force all .animate elements visible
   regardless of scroll position or observer state       */
@keyframes lux-force-visible {
  to { opacity: 1; transform: none; visibility: visible; }
}
.animate:not(.visible) {
  animation: lux-force-visible 0.01s 2s forwards;
}
.dc-fade:not(.visible) {
  animation: lux-force-visible 0.01s 2s forwards;
}

/* Dark-text override safety for dark-background sections.
   Any element with a dark inline bg gets light text.    */
[style*="background:#1a3356"] h3,
[style*="background:#1a3356"] h4,
[style*="background:#1a3356"] p,
[style*="background: #1a3356"] h3,
[style*="background: #1a3356"] h4,
[style*="background: #1a3356"] p,
[style*="background-color:#1a3356"] h3,
[style*="background-color:#1a3356"] h4,
[style*="background-color:#1a3356"] p {
  color: #faf0dc !important;
  opacity: 1 !important;
}

/* ── HP-STEP PROCESS CARD — NUCLEAR OVERRIDE ──────────
   Inline styles on the HTML elements are the ultimate
   authority, but these rules back them up with the
   highest-specificity selector possible.               */
.hp-step,
.hp-steps .hp-step,
.section .hp-steps .hp-step,
section .container .hp-steps .hp-step {
  background: #1a3356 !important;
  background-image: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.hp-steps,
.section .hp-steps,
section .container .hp-steps {
  background: #1a3356 !important;
  background-image: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.hp-step h4,
.hp-steps .hp-step h4,
.section .hp-steps .hp-step h4,
section .container .hp-steps .hp-step h4 {
  color: #faf0dc !important;
  opacity: 1 !important;
  visibility: visible !important;
}
.hp-step p,
.hp-steps .hp-step p,
.section .hp-steps .hp-step p,
section .container .hp-steps .hp-step p {
  color: rgba(250,240,220,0.80) !important;
  opacity: 1 !important;
  visibility: visible !important;
  max-width: 100% !important;
}
.hp-step-n,
.hp-steps .hp-step-n,
.section .hp-steps .hp-step-n {
  color: #b07d2e !important;
  opacity: 1 !important;
}


/* ═══════════════════════════════════════════════════════
   LUXURY V3 — APPENDED REFINEMENTS
   Cormorant Garamond • Gold Hairlines • Editorial Spacing
   ═══════════════════════════════════════════════════════ */

/* ── GOLD HAIRLINE ABOVE SECTION HEADLINES ─────────────
   A 60px centered gold rule between eyebrow and headline.
   This is the editorial device from luxury magazines.     */
.section-header h2::before,
.section-header > h2::before {
  content: '';
  display: block;
  width: 60px;
  height: 1px;
  background: #b07d2e;
  margin: 0 0 16px 0;
}

/* For centered section headers */
.section-header.text-center h2::before,
.section-header.centered h2::before,
.text-center .section-header h2::before {
  margin: 0 auto 16px;
}

/* Page hero h1 hairline */
.page-hero .section-header h1::before,
.page-hero h1::before {
  content: '';
  display: block;
  width: 60px;
  height: 1px;
  background: #b07d2e;
  margin: 0 0 16px 0;
}

/* Hero home h1 hairline */
.hero-home .hero-title::before {
  content: '';
  display: block;
  width: 60px;
  height: 1px;
  background: #b07d2e;
  margin: 0 0 20px 0;
}

/* ── NAV LINK UNDERLINE HOVER — grows left to right ─── */
.nav-link::after {
  content: '';
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0;
  height: 1px;
  background: #b07d2e;
  transition: width 0.3s ease;
}
.nav-link:hover::after { width: 100%; }

/* Nav links gap */
.nav-links {
  gap: 36px !important;
}

/* ── SERVICE CARD — GOLD TOP BORDER ON HOVER ────────── */
.service-card {
  border-top: 2px solid transparent !important;
  transition: border-top-color 0.3s ease,
              box-shadow 0.4s ease,
              transform 0.4s ease !important;
}
.service-card:hover {
  border-top-color: #b07d2e !important;
}

/* ── CHECKLIST ITEM — GOLD WASH + ICON SHIFT ON HOVER ─ */
.checklist-item {
  transition: background 0.2s ease !important;
  padding-left: 4px !important;
  padding-right: 4px !important;
  border-radius: 3px !important;
}
.checklist-item:hover {
  background: rgba(176,125,46,0.04) !important;
}
.checklist-item:hover .check-icon {
  transform: translateX(3px) !important;
  transition: transform 0.2s ease !important;
}

/* ── CARD PADDING — GENEROUS ────────────────────────── */
.service-card, .feature-card, .why-item,
.process-step, .info-box, .feature-box,
.plan-card, .pricing-card, .check-section,
.contact-card, .job-card, .benefit-card,
.reason-card, .occasion-card, .timing-card {
  padding: 40px !important;
}
@media (max-width: 768px) {
  .service-card, .feature-card, .why-item,
  .process-step, .info-box, .feature-box,
  .plan-card, .pricing-card, .check-section,
  .contact-card, .job-card, .benefit-card,
  .reason-card, .occasion-card, .timing-card {
    padding: 28px !important;
  }
}

/* ── GRID GAPS ──────────────────────────────────────── */
.grid-3, .grid-4, .services-overview-grid,
.why-grid, .process-grid, .cards-grid,
[class*="card-grid"], [class*="-grid"] {
  gap: 32px !important;
}

/* ── BODY TEXT LINE-HEIGHT RESET ────────────────────── */
p, li, .checklist-item span, .icon-list-item {
  line-height: 1.8 !important;
}

/* ── HERO HOME PADDING — MORE GENEROUS ─────────────── */
.hero-home {
  padding: 120px 0 96px !important;
}

/* ── HEADLINE MAX-WIDTHS ────────────────────────────── */
h1 { max-width: 720px !important; }
h2 { max-width: 640px !important; }

/* ── SECTION HEADER — MORE BREATHING ROOM ──────────── */
.section-header {
  margin-bottom: 3rem !important;
}

/* ── HERO TITLE — USES SERIF ────────────────────────── */
.hero-title {
  font-family: var(--font-serif) !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
  line-height: 1.1 !important;
}

/* ── STEP NUMBER — CORMORANT GARAMOND ───────────────── */
.step-number {
  font-family: var(--font-serif) !important;
  font-weight: 400 !important;
  font-style: italic !important;
}

/* ── FAQ SECTION TITLE ──────────────────────────────── */
.faq-section-title, .still-questions h3 {
  font-family: var(--font-serif) !important;
  font-style: italic !important;
  font-weight: 400 !important;
}

/* ── FOOTER BRAND STATEMENT — CORMORANT ITALIC ──────── */
.footer-brand p,
.footer-brand .tagline-text,
.footer-tagline {
  font-family: var(--font-serif) !important;
  font-style: italic !important;
  font-weight: 300 !important;
  color: #1a3356 !important;
  font-size: 0.9rem !important;
}

/* ── FOOTER TOP GOLD HAIRLINE ───────────────────────── */
.footer::before {
  background: linear-gradient(90deg, transparent, #b07d2e, transparent) !important;
}

/* ── DARK SECTIONS — AMBIENT REVERSE LIGHT ──────────── */
.cta-section::after {
  content: '';
  position: absolute;
  bottom: 0; left: 0; right: 0;
  height: 60%;
  background: radial-gradient(ellipse 60% 30% at 50% 100%,
    rgba(58,110,168,0.10) 0%, transparent 70%);
  pointer-events: none;
  z-index: 0;
}
.cta-section > * { position: relative; z-index: 1; }

/* ── PROCESS STEP CONNECTOR — GOLD ─────────────────── */
.process-step-mini:not(:last-child)::after {
  background: rgba(176,125,46,0.20) !important;
}

/* ── SCROLL REVEAL INITIAL STATE ─────────────────────
   JS will add .revealed class to trigger animation.     */
.lux-reveal {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.7s cubic-bezier(0.25,0.46,0.45,0.94),
              transform 0.7s cubic-bezier(0.25,0.46,0.45,0.94);
}
.lux-reveal.revealed {
  opacity: 1;
  transform: translateY(0);
}

/* Staggered cards */
.lux-reveal-stagger:nth-child(1) { transition-delay: 0s; }
.lux-reveal-stagger:nth-child(2) { transition-delay: 0.08s; }
.lux-reveal-stagger:nth-child(3) { transition-delay: 0.16s; }
.lux-reveal-stagger:nth-child(4) { transition-delay: 0.24s; }
.lux-reveal-stagger:nth-child(5) { transition-delay: 0.32s; }
.lux-reveal-stagger:nth-child(6) { transition-delay: 0.40s; }

/* Headlines reveal faster */
.lux-reveal-headline {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.5s cubic-bezier(0.25,0.46,0.45,0.94),
              transform 0.5s cubic-bezier(0.25,0.46,0.45,0.94);
}
.lux-reveal-headline.revealed {
  opacity: 1;
  transform: translateY(0);
}

/* Eyebrow → headline → body stagger */
.lux-reveal-eyebrow {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.4s ease, transform 0.4s ease;
  transition-delay: 0s;
}
.lux-reveal-eyebrow.revealed { opacity: 1; transform: translateY(0); }

.lux-reveal-headline.lux-after-eyebrow { transition-delay: 0.1s; }
.lux-reveal-body {
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 0.5s ease, transform 0.5s ease;
  transition-delay: 0.2s;
}
.lux-reveal-body.revealed { opacity: 1; transform: translateY(0); }

/* ── FLOATING LABEL PATTERN (get-quote.html, contact.html) ── */
.float-label-wrap {
  position: relative;
  margin-bottom: 2rem;
}
.float-label-wrap input,
.float-label-wrap textarea,
.float-label-wrap select {
  padding-top: 18px !important;
}
.float-label-wrap label {
  position: absolute;
  top: 10px;
  left: 0;
  font-size: 0.925rem !important;
  font-weight: 400 !important;
  color: rgba(26,51,86,0.50) !important;
  letter-spacing: 0.01em !important;
  text-transform: none !important;
  pointer-events: none;
  transition: top 0.2s ease, font-size 0.2s ease, color 0.2s ease;
}
.float-label-wrap input:focus ~ label,
.float-label-wrap input:not(:placeholder-shown) ~ label,
.float-label-wrap textarea:focus ~ label,
.float-label-wrap textarea:not(:placeholder-shown) ~ label,
.float-label-wrap select:focus ~ label,
.float-label-wrap.filled label {
  top: -4px;
  font-size: 0.7rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #b07d2e !important;
}

/* Submit button — full width gold */
.form-submit-btn,
.quote-submit,
[type="submit"].btn-primary {
  width: 100% !important;
  justify-content: center !important;
  padding: 18px 36px !important;
  font-size: 0.875rem !important;
  letter-spacing: 0.08em !important;
  font-weight: 500 !important;
  border-radius: 3px !important;
  margin-top: 1rem !important;
}

/* ── SECTION BADGE — TEXT COLOR ON LIGHT SECTION ───── */
.section-tag, .badge-text {
  color: #b07d2e !important;
}

/* ── ENSURE CARD BACKGROUNDS IN LIGHT THEME CARDS ─── */
.check-section,
.addon-card,
.why-item,
.plan-card,
.pricing-card,
.info-box,
.feature-box,
.contact-card,
.job-card,
.perfect-for-card,
.premium-touch-card,
.move-option-card,
.occasion-card,
.compare-box,
.timing-card,
.flex-card,
.featured-post {
  background: #ffffff !important;
  border: 1px solid rgba(26,51,86,0.08) !important;
  box-shadow: 0 2px 24px rgba(26,51,86,0.07) !important;
}

/* ── HOVER ON ALL CARDS — LIFT WITH SHADOW ──────────── */
.check-section:hover,
.addon-card:hover,
.why-item:hover,
.plan-card:hover,
.info-box:hover,
.feature-box:hover,
.contact-card:hover,
.job-card:hover,
.perfect-for-card:hover,
.premium-touch-card:hover,
.move-option-card:hover,
.occasion-card:hover,
.timing-card:hover {
  box-shadow: 0 8px 40px rgba(26,51,86,0.10), 0 2px 8px rgba(26,51,86,0.06) !important;
  transform: translateY(-2px) !important;
  transition: box-shadow 0.4s ease, transform 0.4s ease !important;
}

/* ── REDUCED MOTION RESPECTS REVEALS ────────────────── */
@media (prefers-reduced-motion: reduce) {
  .lux-reveal, .lux-reveal-headline, .lux-reveal-eyebrow, .lux-reveal-body {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}

/* ── MOBILE CONTAINER FIX ───────────────────────────── */
@media (max-width: 768px) {
  .container {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}
@media (max-width: 480px) {
  .container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* ═══════════════════════════════════════════════════════
   MOBILE-FIRST RESPONSIVE — GLOBAL
   Full coverage: typography, spacing, grids, buttons, nav
   ═══════════════════════════════════════════════════════ */

/* Tablet (≤1024px) */
@media (max-width: 1024px) {
  section, .section {
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }
  .hero-home {
    padding: 80px 0 64px !important;
  }
  .page-hero {
    padding: calc(60px + 32px) 0 48px !important;
  }
  h1 { max-width: 100% !important; }
  h2 { max-width: 100% !important; }
  p  { max-width: 100% !important; }
  li { max-width: 100% !important; }
  .section-header { margin-bottom: 2rem !important; }
  .grid-3, .grid-4 { grid-template-columns: repeat(2, 1fr) !important; }
  .nav-links { gap: 20px !important; }
}

/* Mobile (≤768px) */
@media (max-width: 768px) {
  section, .section {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  .hero-home {
    padding: 64px 0 48px !important;
  }
  .page-hero {
    padding: calc(72px + 24px) 0 40px !important;
    text-align: center !important;
  }
  .page-hero h1 { text-align: center !important; }
  h1 { max-width: 100% !important; }
  h2 { max-width: 100% !important; }
  p  { max-width: 100% !important; }
  li { max-width: 100% !important; }

  /* Typography scale down */
  h1 { font-size: clamp(1.75rem, 6vw, 2.4rem) !important; }
  h2 { font-size: clamp(1.4rem, 5vw, 2rem) !important; }
  h3 { font-size: clamp(1rem, 4vw, 1.2rem) !important; }

  /* Grids collapse to single column */
  .grid-3, .grid-4,
  .services-overview-grid,
  .why-grid, .process-grid,
  .cards-grid, [class*="card-grid"],
  [class*="-grid"] {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  /* Hero layout */
  .hero-grid {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  .hero-actions {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .hero-actions .btn { width: 100% !important; justify-content: center !important; }

  /* Buttons — full width on mobile for CTAs */
  .btn-xl { padding: 14px 24px !important; font-size: 0.9rem !important; }

  /* Section header center on mobile */
  .section-header { margin-bottom: 1.5rem !important; }

  /* Split / two-column layouts */
  .split-layout, .two-col, .col-2,
  [class*="split-"], [class*="two-col"] {
    grid-template-columns: 1fr !important;
    flex-direction: column !important;
  }

  /* Quote layout */
  .quote-layout { grid-template-columns: 1fr !important; }

  /* Nav phone — hide on small screens */
  .nav-phone { display: none !important; }

  /* Mobile CTA bar — show */
  .mobile-cta-bar { display: flex !important; }

  /* Footer columns */
  .footer-grid, .footer-cols {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }

  /* Trust bar */
  .lux-trust-bar {
    flex-direction: column !important;
    gap: 16px !important;
    text-align: center !important;
  }
  .lux-trust-bar .trust-item {
    justify-content: center !important;
  }

  /* Pricing cards */
  .pricing-grid, .plans-grid {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  /* Form rows */
  .form-row, .form-row-3 {
    grid-template-columns: 1fr !important;
  }
}

/* Small mobile (≤480px) */
@media (max-width: 480px) {
  section, .section {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }
  .hero-home { padding: 56px 0 40px !important; }
  .page-hero  { padding: calc(72px + 16px) 0 32px !important; }
  h1 { font-size: clamp(1.6rem, 7vw, 2rem) !important; }
  h2 { font-size: clamp(1.25rem, 6vw, 1.7rem) !important; }

  /* Card padding tighter */
  .service-card, .feature-card, .why-item,
  .process-step, .info-box, .feature-box,
  .plan-card, .pricing-card, .check-section,
  .contact-card, .job-card {
    padding: 20px !important;
  }

  /* Button text readable */
  .btn-xl { width: 100% !important; justify-content: center !important; }

  /* Mobile CTA bar — anchor to bottom */
  .mobile-cta-bar {
    padding: 10px 16px !important;
  }
}

/* ─── MOBILE CTA BAR (sticky bottom) — GLOBAL ──────────
   This bar is present in every page HTML. We style it
   globally here so it works on all 35 pages.            */
.mobile-cta-bar {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 9990;
  background: #1a3356;
  border-top: 1px solid rgba(176,125,46,0.40);
  padding: 12px 20px;
  align-items: center;
  gap: 12px;
  box-shadow: 0 -4px 24px rgba(26,51,86,0.18);
}
@media (max-width: 768px) {
  .mobile-cta-bar { display: flex !important; }
  body { padding-bottom: 64px; }
}
.mobile-cta-bar .mcta-book {
  flex: 1;
  background: #b07d2e;
  color: #faf0dc !important;
  font-family: var(--font-sans);
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-align: center;
  padding: 11px 16px;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  text-decoration: none;
}
.mobile-cta-bar .mcta-call {
  width: 44px;
  height: 44px;
  background: rgba(255,255,255,0.10);
  border: 1px solid rgba(255,255,255,0.20);
  color: #faf0dc !important;
  border-radius: 3px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  text-decoration: none;
  flex-shrink: 0;
}

/* ─── WHATSAPP FLOATING BUTTON ──────────────────────── */
.lux-whatsapp {
  position: fixed;
  bottom: 88px; /* above mobile CTA bar */
  right: 20px;
  z-index: 9980;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #25d366;
  color: #ffffff !important;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.4rem;
  box-shadow: 0 4px 20px rgba(37,211,102,0.45);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none !important;
  cursor: pointer;
}
.lux-whatsapp:hover {
  transform: scale(1.08);
  box-shadow: 0 6px 28px rgba(37,211,102,0.55);
}
.lux-whatsapp svg {
  width: 28px;
  height: 28px;
  fill: #ffffff;
}
@media (min-width: 769px) {
  .lux-whatsapp { bottom: 32px; }
}

/* ─── GLOBAL TRUST BAR (injected by JS above footer) ── */
.lux-trust-strip {
  background: #1a3356;
  padding: 20px 0;
  border-top: 1px solid rgba(176,125,46,0.30);
}
.lux-trust-strip .container {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 32px;
}
.lux-trust-item {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-sans);
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(250,240,220,0.80);
}
.lux-trust-item i {
  color: #b07d2e;
  font-size: 0.9rem;
}
.lux-trust-sep {
  width: 1px;
  height: 20px;
  background: rgba(250,240,220,0.15);
}
@media (max-width: 768px) {
  .lux-trust-strip .container {
    gap: 18px;
  }
  .lux-trust-sep { display: none; }
  .lux-trust-item {
    font-size: 0.72rem;
  }
}

/* ─── PAYMENT ICONS STRIP ───────────────────────────── */
.lux-payment-strip {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 1rem;
}
.lux-payment-strip span.pay-label {
  font-family: var(--font-sans);
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(26,51,86,0.55);
  margin-right: 4px;
}
.lux-pay-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  padding: 5px 10px;
  border: 1px solid rgba(26,51,86,0.12);
  border-radius: 5px;
  font-size: 0.72rem;
  font-weight: 600;
  font-family: var(--font-sans);
  letter-spacing: 0.01em;
  color: rgba(26,51,86,0.65);
  background: #ffffff;
  line-height: 1;
  box-shadow: 0 1px 3px rgba(26,51,86,0.06);
}
/* Brand icon sizing */
.lux-pay-icon i  { font-size: 1.35rem; line-height: 1; }
/* Visa — deep blue */
.lux-pay-icon.visa  { padding: 4px 8px; }
.lux-pay-icon.visa i  { color: #1a1f71; }
/* Mastercard — red */
.lux-pay-icon.mc i    { color: #eb001b; }
/* Amex — blue */
.lux-pay-icon.amex i  { color: #016fd0; }
/* Venmo — teal blue */
.lux-pay-icon.venmo   { color: #3d95ce; }
.lux-pay-icon.venmo i { color: #3d95ce; font-size: 1.1rem; }
/* Zelle — purple */
.lux-pay-icon.zelle   { color: #6d1ed4; padding: 5px 10px; }
