/* ============================================================
   Wepitch — Gold Theme Override
   Load AFTER assets/css/style.css:
     <link rel="stylesheet" href="assets/css/theme-gold.css">
   Reskins every page site-wide. No structural changes.
   ============================================================ */

:root {
  /* Canvas & surfaces */
  --canvas-bg: #EFEBE4;
  --canvas-bg-solid: #EFEBE4;
  --surface-card: #FBF9F5;
  --surface-alt: #F4EFE5;
  --surface-soft: #FBF9F5;
  --surface-muted: #E0D9CB;
  --surface-dark: #101B2C;

  /* Text */
  --headline-text: #0F1B2E;
  --body-text: #5A6472;
  --muted-text: #8A8F99;
  --text-tertiary: #6B7280;
  --text-inverse: #FFFFFF;

  /* Borders */
  --border-light: #E0D9CB;
  --border-medium: #DCD4C4;
  --border-strong: #BFB49E;
  --subtle-border: #E0D9CB;
  --line-strong: #DCD4C4;

  /* Brand — antique gold */
  --brand-primary: #B08D57;
  --brand-primary-dark: #96754A;
  --brand-accent: #C9A66B;
  --primary-fill: #B08D57;
  --accent-cyan: #B08D57;
  --accent-strong: #A9834B;
  --accent-indigo: #B08D57;
  --accent-emerald: #B08D57;

  /* Buttons & gradients */
  --btn-primary-bg: linear-gradient(100deg, #A9834B 0%, #C9A66B 100%);
  --btn-primary-text: #FFFFFF;
  --btn-primary-hover: #96754A;
  --grad-black-to-gray: linear-gradient(135deg, #A9834B 0%, #C9A66B 100%);
  --grad-text-dark: linear-gradient(135deg, #0F1B2E 0%, #A9834B 100%);
  --color-site-gradient: linear-gradient(180deg, #E4DDCF 0%, #EFEBE4 50%, #FBF9F5 100%);
  --color-aurora-gradient: linear-gradient(100deg, #A9834B 0%, #C9A66B 100%);

  /* Shadows — warm-tinted */
  --shadow-subtle: 0 4px 20px rgba(15, 27, 46, 0.04);
  --shadow-soft: 0 10px 30px rgba(15, 27, 46, 0.06);
  --shadow-card: 0 4px 20px rgba(15, 27, 46, 0.04);
  --shadow-card-hover: 0 12px 36px rgba(15, 27, 46, 0.10);

  --glow-rgb: 176 141 87;
  --glow-strength: 0.45;

  /* Theme scalars used below */
  --gold: #B08D57;
  --gold-deep: #A9834B;
  --gold-light: #C9A66B;
  --navy: #0F1B2E;
  --navy-chrome: #101B2C;
  --cream: #EFEBE4;
  --cream-card: #FBF9F5;
  --cream-line: #E0D9CB;
}

/* ---------- Page canvas ---------- */
html, body {
  background: var(--cream) !important;
  color: var(--body-text) !important;
}
body::before, body::after { background: none !important; }

/* ---------- Links ---------- */
a { color: var(--navy); }
a:hover { color: var(--gold) !important; }

/* ---------- Topbar ---------- */
.site-topbar {
  display: none !important;
}

/* ---------- Header ---------- */
.site-header,
.site-header.scrolled {
  background: var(--navy-chrome) !important;
  border-bottom: 1px solid rgba(176, 141, 87, 0.22) !important;
  box-shadow: 0 4px 20px rgba(11, 20, 33, 0.35) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.site-header .brand-logo,
.site-header.scrolled .brand-logo,
.brand-logo {
  filter: drop-shadow(0 3px 12px rgba(0, 0, 0, 0.35)) !important;
  opacity: 1 !important;
}
.main-nav > ul > li > a,
.main-nav > ul > li > a.active,
.site-header.scrolled .main-nav > ul > li > a,
.site-header.scrolled .main-nav > ul > li > a.active {
  color: #F2EEE6 !important;
  background: transparent !important;
}
.main-nav > ul > li > a:hover,
.main-nav > ul > li > a.active,
.site-header.scrolled .main-nav > ul > li > a:hover,
.site-header.scrolled .main-nav > ul > li > a.active { color: var(--gold-light) !important; }
.main-nav .caret,
.site-header.scrolled .main-nav .caret { border-color: #F2EEE6 !important; }
.main-nav > ul > li > a:hover .caret,
.site-header.scrolled .main-nav > ul > li > a:hover .caret { border-color: var(--gold-light) !important; }
.nav-toggle,
.site-header.scrolled .nav-toggle { color: #F2EEE6 !important; border-color: rgba(255, 255, 255, 0.22) !important; }
.nav-toggle span, .nav-toggle span::before, .nav-toggle span::after,
.site-header.scrolled .nav-toggle span, .site-header.scrolled .nav-toggle span::before, .site-header.scrolled .nav-toggle span::after { background: #F2EEE6 !important; }

/* Dropdowns — crisp white panel with dark readable text at top and on scroll */
.dropdown,
.dropdown-mega,
.site-header.scrolled .dropdown,
.site-header.scrolled .dropdown-mega {
  background: #FFFFFF !important;
  border: 1px solid var(--cream-line) !important;
  box-shadow: 0 20px 48px rgba(15, 27, 46, 0.14) !important;
}
.dropdown a,
.dropdown-mega a,
.dropdown li a,
.site-header.scrolled .dropdown a,
.site-header.scrolled .dropdown-mega a,
.site-header.scrolled .dropdown li a {
  color: #334155 !important;
  background: transparent !important;
  font-size: 0.9rem !important;
  font-weight: 500 !important;
}
.dropdown a:hover,
.dropdown a.active,
.dropdown li a:hover,
.dropdown li a.active,
.site-header.scrolled .dropdown a:hover,
.site-header.scrolled .dropdown a.active,
.site-header.scrolled .dropdown li a:hover,
.site-header.scrolled .dropdown li a.active {
  background: #F1F5F9 !important;
  color: #0F172A !important;
}
.dropdown-col-label,
.site-header.scrolled .dropdown-col-label {
  color: #B08D57 !important;
  letter-spacing: 0.16em !important;
  font-weight: 800 !important;
  font-size: 0.72rem !important;
  text-transform: uppercase !important;
  margin-bottom: 12px !important;
}

/* ---------- Buttons ---------- */
.btn-aurora,
.btn-primary,
button.btn-primary {
  background: linear-gradient(100deg, #A9834B 0%, #C9A66B 100%) !important;
  border: 1px solid var(--gold-deep) !important;
  color: #FFFFFF !important;
  box-shadow: 0 8px 22px rgba(169, 131, 75, 0.26) !important;
}
.btn-aurora:hover,
.btn-primary:hover,
button.btn-primary:hover {
  background: var(--btn-primary-hover) !important;
  border-color: var(--btn-primary-hover) !important;
  color: #FFFFFF !important;
}
.site-header .btn-aurora { box-shadow: 0 6px 18px rgba(11, 20, 33, 0.28) !important; }

.btn-outline-aurora,
.btn-outline {
  background: #FFFFFF !important;
  border: 1px solid var(--border-medium) !important;
  color: var(--navy) !important;
}
.btn-outline-aurora:hover,
.btn-outline:hover {
  background: #FFFFFF !important;
  border-color: var(--gold) !important;
  color: var(--gold-deep) !important;
}

/* ---------- Eyebrow / kickers ---------- */
.eyebrow { color: var(--gold-deep) !important; }
.eyebrow::before { background: var(--gold) !important; }

/* ---------- Hero Full-Width Waves & Centered Banner ---------- */
.hero-center {
  position: relative !important;
  width: 100% !important;
  min-height: 100vh !important;
  min-height: 100dvh !important;
  height: 100vh !important;
  height: 100dvh !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: #EAE5DC !important;
  border-bottom: 1px solid var(--cream-line) !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: clamp(60px, 8vh, 80px) 16px 40px !important;
}

.hero-waves,
gradient-waves.hero-waves {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  z-index: 0 !important;
  pointer-events: none !important;
  display: block !important;
}

.hero-waves canvas,
.hero-waves > canvas,
gradient-waves.hero-waves canvas {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  display: block !important;
}

.hero-waves-veil {
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
  background: radial-gradient(70% 70% at 50% 50%, rgba(234, 229, 220, 0.15) 0%, rgba(234, 229, 220, 0.60) 100%) !important;
}

.hero-center-inner {
  position: relative !important;
  z-index: 2 !important;
  width: 100% !important;
  max-width: 860px !important;
  margin: 0 auto !important;
  padding: 0 16px !important;
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
}

.hero-center-logo {
  width: min(486px, 80%) !important;
  max-width: 486px !important;
  height: auto !important;
  margin: 0 auto 12px auto !important;
  filter: drop-shadow(0 14px 28px rgba(15, 27, 46, 0.14)) !important;
}

.hero-center-kicker-pill {
  margin: 12px auto 20px auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 7px 20px !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.85) !important;
  border: 1px solid rgba(176, 141, 87, 0.35) !important;
  color: var(--gold-deep) !important;
  font-size: 0.82rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.16em !important;
  box-shadow: 0 4px 16px rgba(11, 20, 33, 0.06) !important;
  backdrop-filter: blur(12px) !important;
}

.hero-center-tagline {
  color: #2E3949 !important;
  font-size: clamp(1.02rem, 1.7vw, 1.22rem) !important;
  line-height: 1.65 !important;
  max-width: 680px !important;
  margin: 0 auto 28px auto !important;
  font-weight: 500 !important;
}

.hero-center-actions {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;
  flex-wrap: wrap !important;
  margin-bottom: 24px !important;
}

.hero-social-links,
.social-links.hero-social-links {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 14px !important;
  margin: 0 auto !important;
}

.hero-social-links a {
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  background: #0B1424 !important;
  border: 1.5px solid var(--gold) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  box-shadow: 0 4px 16px rgba(11, 20, 36, 0.4), 0 0 10px rgba(201, 166, 107, 0.2) !important;
}

.hero-social-links a:hover {
  background: linear-gradient(135deg, #C9A66B 0%, #B08D57 100%) !important;
  border-color: #FFFFFF !important;
  transform: translateY(-3px) scale(1.08) !important;
  box-shadow: 0 8px 24px rgba(201, 166, 107, 0.5) !important;
}

.hero-social-links a svg {
  width: 20px !important;
  height: 20px !important;
  fill: #F5E6CA !important;
  transition: fill 0.25s ease, transform 0.25s ease !important;
}

.hero-social-links a:hover svg {
  fill: #060A12 !important;
  transform: scale(1.1);
}

/* ---------- Cards & Media Frames (No White Backgrounds) ---------- */
.split-visual-media > div:not(.check-list-card),
.split-visual-frame,
.card-media,
.illu-frame {
  background: linear-gradient(135deg, #070D18 0%, #0E192D 100%) !important;
  border: 1px solid rgba(176, 141, 87, 0.32) !important;
  box-shadow: 0 24px 60px rgba(11, 20, 33, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.08) !important;
  border-radius: 24px !important;
  backdrop-filter: blur(16px) !important;
  -webkit-backdrop-filter: blur(16px) !important;
}
.split-visual-media img {
  border-radius: 18px !important;
  border: 1px solid rgba(176, 141, 87, 0.18) !important;
}
/* Content cards inside a split-visual (e.g. a checklist), as opposed to
   image frames — keep these on the light cream surface, not the dark frame. */
.split-visual-media > div.check-list-card {
  background: var(--cream-card) !important;
  border: 1px solid var(--cream-line) !important;
  box-shadow: 0 12px 36px rgba(15, 23, 42, 0.08) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
.check-list-card h4 {
  color: var(--navy) !important;
}
.split-visual {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* ---------- Premium Gold Glow Card Hover System ---------- */
.capability-card,
.process-step-card,
.tech-cat-card,
.industry-card,
.value-card,
.stat-card,
.client-logo-card,
.testimonial-card,
.pricing-card,
.blog-card,
.case-study-card,
.faq-item,
details.faq-item {
  background: linear-gradient(135deg, #FAF8F5 0%, #F4EFE6 100%) !important;
  border: 1px solid rgba(176, 141, 87, 0.22) !important;
  box-shadow: 0 10px 28px rgba(11, 20, 33, 0.04) !important;
  border-radius: 20px !important;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.3s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.3s ease, background 0.3s ease !important;
  position: relative !important;
  overflow: hidden !important;
}

.capability-card:hover,
.process-step-card:hover,
.tech-cat-card:hover,
.industry-card:hover,
.value-card:hover,
.blog-card:hover,
.case-study-card:hover,
.faq-item:hover {
  background: linear-gradient(135deg, #FFFFFF 0%, #FAF5EC 100%) !important;
  border-color: rgba(176, 141, 87, 0.65) !important;
  box-shadow: 0 20px 48px rgba(176, 141, 87, 0.20), 0 8px 24px rgba(11, 20, 33, 0.08) !important;
  transform: translateY(-6px) !important;
}

.capability-card:hover h1, .capability-card:hover h2, .capability-card:hover h3, .capability-card:hover h4,
.process-step-card:hover h1, .process-step-card:hover h2, .process-step-card:hover h3, .process-step-card:hover h4,
.tech-cat-card:hover h1, .tech-cat-card:hover h2, .tech-cat-card:hover h3, .tech-cat-card:hover h4,
.industry-card:hover h1, .industry-card:hover h2, .industry-card:hover h3, .industry-card:hover h4,
.value-card:hover h1, .value-card:hover h2, .value-card:hover h3, .value-card:hover h4,
.blog-card:hover h1, .blog-card:hover h2, .blog-card:hover h3, .blog-card:hover h4,
.case-study-card:hover h1, .case-study-card:hover h2, .case-study-card:hover h3, .case-study-card:hover h4 {
  color: #0B1421 !important;
}

.capability-card:hover p,
.process-step-card:hover p,
.tech-cat-card:hover p,
.industry-card:hover p,
.value-card:hover p,
.blog-card:hover p,
.case-study-card:hover p {
  color: #334155 !important;
}

.capability-card:hover .card-icon-box,
.process-step-card:hover .card-icon-box,
.tech-cat-card:hover .tech-cat-icon,
.industry-card:hover .card-icon-box {
  background: var(--navy-chrome) !important;
  color: var(--gold-light) !important;
  border-color: var(--gold) !important;
  transform: scale(1.08);
}
.capability-card:hover .card-icon-box svg,
.process-step-card:hover .card-icon-box svg,
.tech-cat-card:hover .tech-cat-icon svg {
  stroke: var(--gold-light) !important;
}

.capability-card .capability-cta-link,
.capability-card:hover .capability-cta-link {
  color: var(--gold-deep) !important;
  font-weight: 700 !important;
}

.card-icon-box,
.tech-cat-icon {
  background: rgba(176, 141, 87, 0.12) !important;
  border: 1px solid rgba(176, 141, 87, 0.30) !important;
  color: var(--gold) !important;
}
.card-icon-box svg,
.tech-cat-icon svg { stroke: var(--gold) !important; }
.capability-cta-link { color: var(--gold-deep) !important; }
.capability-cta-link:hover { color: var(--navy) !important; }

/* ---------- Stats ---------- */
.stat-value, .stat-number { color: var(--navy) !important; }
.stat-label { color: var(--gold-deep) !important; }

/* ---------- Process rail ---------- */
.process-connecting-line {
  background: linear-gradient(90deg,
    rgba(176, 141, 87, 0.15) 0%,
    rgba(176, 141, 87, 0.55) 50%,
    rgba(176, 141, 87, 0.15) 100%) !important;
}
.process-connecting-line::after,
.process-line-pulse {
  background: linear-gradient(90deg, transparent, var(--gold), transparent) !important;
}
.process-step-badge {
  background: #FAF8F5 !important;
  border: 2px solid var(--gold) !important;
  color: var(--gold-deep) !important;
  box-shadow: 0 4px 16px rgba(176, 141, 87, 0.18) !important;
}
.process-step-badge::before { border-color: rgba(176, 141, 87, 0.35) !important; }
.process-card-top-bar { background: linear-gradient(90deg, var(--gold-deep), var(--gold-light)) !important; }
.process-step-tag { color: var(--muted-text) !important; }
.process-step-title { color: var(--navy) !important; }

/* ---------- Alternating section bands ---------- */
.section-alt,
.section-tint,
.bg-alt,
.section-stats-strip,
.section-capabilities,
.section-showcase,
.section-process,
.section-clients,
.section-booking,
.section-faq,
.svc-detail-overview,
.svc-detail-features,
.svc-detail-process,
.about-overview,
.about-values,
.about-team,
.case-study-overview,
.case-study-results,
.contact-booking-section,
.subpage-cta-section {
  background: var(--cream) !important;
  border-top: 1px solid var(--cream-line) !important;
  border-bottom: 1px solid var(--cream-line) !important;
}
.section-light, .bg-white { background: var(--cream) !important; }

/* ---------- Dark promo / case-study bands → navy + gold ---------- */
.case-study-band,
.human-ui-band,
.dark-band {
  background: var(--navy-chrome) !important;
  border-top: 1px solid rgba(176, 141, 87, 0.28) !important;
  border-bottom: 1px solid rgba(176, 141, 87, 0.28) !important;
}
.case-study-copy p,
.human-ui-band p,
.dark-band p { color: rgba(255, 255, 255, 0.68) !important; }
.case-study-band h2,
.human-ui-band h2,
.dark-band h2 { color: #FFFFFF !important; }
.human-ui-metric .label { color: var(--gold-light) !important; }

/* ---------- Forms ---------- */
.enquiry-form,
.form-card {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

.booking-form-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  box-shadow: 0 12px 36px rgba(15, 23, 42, 0.06) !important;
}

.enquiry-form label, .form-card label, .form-row label {
  color: #334155 !important;
  font-size: 0.88rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
  margin-bottom: 6px !important;
}

.enquiry-form input,
.enquiry-form select,
.enquiry-form textarea,
input[type="text"], input[type="email"], input[type="tel"], select, textarea {
  background: #FFFFFF !important;
  border: 1.5px solid #CBD5E1 !important;
  border-radius: 12px !important;
  color: #0F172A !important;
  font-size: 0.98rem !important;
  padding: 12px 16px !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.enquiry-form input:focus,
.enquiry-form select:focus,
.enquiry-form textarea:focus,
input:focus, select:focus, textarea:focus {
  border-color: #0F172A !important;
  box-shadow: 0 0 0 4px rgba(15, 23, 42, 0.08) !important;
  outline: none !important;
}

.enquiry-form button[type="submit"],
.enquiry-form .btn-aurora,
.booking-form-card .btn-aurora {
  background: linear-gradient(135deg, #0F172A 0%, #1E293B 100%) !important;
  border: 1px solid #0F172A !important;
  color: #FFFFFF !important;
  border-radius: 12px !important;
  font-weight: 700 !important;
  font-size: 0.98rem !important;
  letter-spacing: 0.04em !important;
  box-shadow: 0 6px 20px rgba(15, 23, 42, 0.2) !important;
  transition: all 0.25s ease !important;
}

.enquiry-form button[type="submit"]:hover,
.enquiry-form .btn-aurora:hover,
.booking-form-card .btn-aurora:hover {
  background: #020617 !important;
  border-color: #020617 !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 28px rgba(15, 23, 42, 0.32) !important;
}

::placeholder { color: #94A3B8 !important; }

/* ---------- Accordion / FAQ ---------- */
.faq-item, .accordion-item, details {
  background: var(--cream-card) !important;
  border: 1px solid var(--cream-line) !important;
}
.faq-item:hover, .accordion-item:hover { border-color: var(--gold) !important; }
.faq-question, .accordion-trigger, summary { color: var(--navy) !important; }
.faq-question::after, .accordion-trigger::after {
  border-right-color: var(--gold) !important;
  border-bottom-color: var(--gold) !important;
}
.faq-answer, .accordion-panel { color: var(--body-text) !important; }

/* ---------- Client logo grid ---------- */
.responsive-client-grid > *,
.client-logo-card {
  background: #FFFFFF !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 16px rgba(15, 23, 42, 0.04) !important;
  transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease !important;
}
.client-logo-card:hover {
  border-color: #0F172A !important;
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.08) !important;
}
.client-logo-card img {
  opacity: 1 !important;
  filter: none !important;
}

/* ---------- Footer ---------- */
.site-footer {
  background: var(--navy-chrome) !important;
  color: rgba(255, 255, 255, 0.72) !important;
  border-top: 1px solid rgba(176, 141, 87, 0.28) !important;
}
.site-footer::before, .site-footer::after { background: none !important; }
.footer-logo { filter: drop-shadow(0 4px 14px rgba(0, 0, 0, 0.4)); opacity: 1; }
.footer-brand p { color: rgba(255, 255, 255, 0.62) !important; }
.footer-col h4 {
  color: var(--gold-light) !important;
  letter-spacing: 0.14em;
}
.footer-col a, .site-footer a { color: rgba(255, 255, 255, 0.72) !important; }
.footer-col a:hover, .site-footer a:hover { color: var(--gold-light) !important; }
.footer-col li { color: rgba(255, 255, 255, 0.5) !important; }
.social-links a {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  background: #0B1424 !important;
  border: 1.5px solid var(--gold) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 4px 12px rgba(11, 20, 36, 0.4) !important;
}
.social-links a:hover {
  background: linear-gradient(135deg, #C9A66B 0%, #B08D57 100%) !important;
  border-color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(201, 166, 107, 0.4) !important;
}
.social-links a svg {
  width: 18px !important;
  height: 18px !important;
  fill: #F5E6CA !important;
  transition: fill 0.25s ease !important;
}
.social-links a:hover svg {
  fill: #060A12 !important;
}
.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.10) !important;
  color: rgba(255, 255, 255, 0.5) !important;
}
.footer-legal a { color: rgba(255, 255, 255, 0.5) !important; }
.footer-legal a:hover { color: var(--gold-light) !important; }

/* ---------- Cookie banner ---------- */
.cookie-banner {
  background: var(--navy-chrome) !important;
  border-top: 1px solid rgba(176, 141, 87, 0.28) !important;
  color: rgba(255, 255, 255, 0.78) !important;
}
.cookie-banner .btn-outline {
  background: transparent !important;
  border-color: rgba(255, 255, 255, 0.28) !important;
  color: #F2EEE6 !important;
}
.cookie-banner .btn-outline:hover { border-color: var(--gold-light) !important; color: var(--gold-light) !important; }

/* ---------- Headings & prose ---------- */
h1, h2, h3, h4, h5, h6 { color: var(--navy) !important; }
h1 span.grad, .grad-text, .gradient-text {
  background-image: linear-gradient(135deg, #0F1B2E 0%, #A9834B 100%) !important;
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
}
p, li { color: var(--body-text); }
blockquote { border-left-color: var(--gold) !important; }
hr, .divider { border-color: var(--cream-line) !important; background: var(--cream-line) !important; }

/* ---------- Breadcrumbs / pagination / tags ---------- */
.breadcrumbs a, .breadcrumb a { color: var(--muted-text) !important; }
.breadcrumbs a:hover { color: var(--gold) !important; }
.tag, .chip, .pill {
  background: var(--surface-alt) !important;
  border: 1px solid var(--cream-line) !important;
  color: var(--gold-deep) !important;
}
.pagination a {
  border: 1px solid var(--cream-line) !important;
  color: var(--navy) !important;
}
.pagination a:hover, .pagination a.active {
  background: var(--gold) !important;
  border-color: var(--gold) !important;
  color: #FFFFFF !important;
}

/* ---------- Tables ---------- */
table { border-color: var(--cream-line) !important; }
th {
  background: var(--surface-alt) !important;
  color: var(--navy) !important;
  border-color: var(--cream-line) !important;
}
td { border-color: var(--cream-line) !important; color: var(--body-text) !important; }

/* ---------- Scroll-to-top / floating actions ---------- */
.scroll-top, .to-top, .whatsapp-float {
  background: linear-gradient(100deg, #A9834B 0%, #C9A66B 100%) !important;
  border-color: var(--gold-deep) !important;
  color: #FFFFFF !important;
}

/* ---------- Selection ---------- */
::selection { background: rgba(176, 141, 87, 0.28); color: var(--navy); }

/* ---------- Mobile nav panel ---------- */
@media (max-width: 900px) {
  .main-nav {
    background: var(--navy-chrome) !important;
    border-bottom: 1px solid rgba(176, 141, 87, 0.22) !important;
  }
  .main-nav a { border-bottom-color: rgba(255, 255, 255, 0.10) !important; }
  .dropdown, .dropdown-mega { background: rgba(255, 255, 255, 0.06) !important; border-color: rgba(255,255,255,0.12) !important; }
  .dropdown a { color: rgba(255, 255, 255, 0.78) !important; }
  .dropdown a:hover, .dropdown a.active { background: rgba(255,255,255,0.08) !important; color: var(--gold-light) !important; }
  .dropdown-col-label { color: var(--gold-light) !important; }
}

/* .process-rail / .process-step (older 4-step component, still used on
   several pages) — was left on dark-theme cyan/white, invisible on cream */
.process-rail::before { background: var(--cream-line) !important; }
.process-step-num {
  background: var(--surface-alt) !important;
  border: 1px solid var(--cream-line) !important;
  color: var(--gold-deep) !important;
  box-shadow: none !important;
}
.process-step:hover .process-step-num {
  background: var(--gold) !important;
  color: #FFFFFF !important;
  border-color: var(--gold) !important;
}
.process-step h3 { color: var(--navy) !important; }
.process-step p { color: var(--body-text) !important; }
