/* ═══════════════════════════════════════════════════════════════
   ASTROMATA.COM — IMPERIAL VEDIC PRODUCTION CSS
   Version: 1.0 LOCKED
   Date: 2026-05-12

   Sources:
   • astromata-design-tokens-locked.css    (colors)
   • astromata-typography-tokens-locked.css (fonts)
   • 3 Strict Typography Rules (memory-locked)

   Purpose:
   Override ALL existing styles on astromata.com with the
   Imperial Vedic design system. Uses !important to defeat
   legacy style.css and AdminLTE.
   ═══════════════════════════════════════════════════════════════ */

/* ─── IMPORT TOKENS ─── */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,600;0,700;1,600;1,700&family=Inter:wght@400;500;600;700&display=swap');

:root {
  /* ── IMPERIAL AUTHORITY DARKS ── */
  --color-oxblood-950:  #2D0A0F;
  --color-oxblood-900:  #3A0C13;
  --color-oxblood-800:  #4A0E17;
  --color-oxblood-700:  #5E1622;
  --color-oxblood-600:  #7A1F2E;
  --color-oxblood-deep: #160408;

  /* ── DIVINE GOLD ── */
  --color-sacred-gold:  #E2B44C;
  --color-gold-light:   #F3D78C;
  --color-gold-dim:     #B8942E;

  /* ── MANUSCRIPT NEUTRALS ── */
  --color-parchment-100:#F4EDE3;
  --color-parchment-200:#FBF6EF;
  --color-parchment-300:#FFFDF8;
  --color-bronze-300:   #C4A87C;
  --color-bronze-200:   #D9C4A0;

  /* ── INK TEXT ── */
  --color-ink-900:      #1A1815;
  --color-ink-800:      #2C2A26;
  --color-ink-600:      #4A4640;
  --color-ink-500:      #6B6560;
  --color-cream-100:    #FDF8F0;
  --color-cream-200:    #FFF9F2;

  /* ── SEMANTIC TOKENS ── */
  --bg-page:            var(--color-parchment-100);
  --bg-card:            var(--color-parchment-200);
  --bg-card-hover:      var(--color-parchment-300);
  --bg-dark:            var(--color-oxblood-950);
  --bg-dark-card:       var(--color-oxblood-800);
  --bg-dark-hover:      var(--color-oxblood-700);

  --text-main:          var(--color-ink-800);
  --text-muted:         var(--color-ink-500);
  --text-on-dark:       var(--color-cream-100);
  --text-on-dark-muted: rgba(253, 248, 240, 0.72);

  --border-subtle:      var(--color-bronze-300);
  --border-focus-dark:  var(--color-sacred-gold);
  --border-focus-light: var(--color-oxblood-800);

  --button-primary-bg:       var(--color-oxblood-800);
  --button-primary-text:     var(--color-sacred-gold);
  --button-primary-hover-bg: var(--color-oxblood-700);

  --button-secondary-bg:       transparent;
  --button-secondary-text:     var(--color-oxblood-800);
  --button-secondary-border:   var(--color-oxblood-800);
  --button-secondary-hover-bg: var(--color-oxblood-800);
  --button-secondary-hover-text: var(--color-sacred-gold);

  --accent-premium:     var(--color-sacred-gold);
  --accent-highlight:   var(--color-gold-light);

  --gradient-hero:       linear-gradient(180deg, var(--color-oxblood-950) 0%, var(--color-oxblood-deep) 100%);
  --gradient-gold-text:  linear-gradient(135deg, var(--color-sacred-gold) 0%, var(--color-gold-light) 100%);

  /* ── TYPOGRAPHY TOKENS ── */
  --font-display: 'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif;

  --text-2xs:  0.625rem;
  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-base: 1rem;
  --text-lg:   1.125rem;
  --text-xl:   1.25rem;
  --text-2xl:  1.5rem;
  --text-3xl:  1.75rem;
  --text-4xl:  2.25rem;
  --text-5xl:  2.5rem;
  --text-6xl:  3rem;
  --text-hero: 3.5rem;

  --leading-none:   1;
  --leading-tight:  1.2;
  --leading-snug:   1.35;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;
  --leading-loose:  1.8;

  --tracking-tighter: -0.03em;
  --tracking-tight:   -0.01em;
  --tracking-normal:   0;
  --tracking-wide:     0.02em;
  --tracking-wider:    0.05em;
  --tracking-widest:   0.1em;
}

/* ─── RESPONSIVE TYPE SCALE ─── */
@media (min-width: 768px) {
  :root {
    --text-hero: 4rem;
    --text-5xl: 3rem;
    --text-4xl: 2.5rem;
    --text-3xl: 2rem;
  }
}

@media (min-width: 1024px) {
  :root {
    --text-hero: 4.5rem;
    --text-5xl: 3.5rem;
    --text-4xl: 3rem;
    --text-3xl: 2.25rem;
  }
}

/* ─── GLOBAL RESET ─── */
html, body {
  font-family: var(--font-body) !important;
  background: var(--bg-page) !important;
  background-color: var(--bg-page) !important;
  color: var(--text-main) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 400 !important;
}

/* ─── TYPOGRAPHY ENFORCEMENT ─── */
/* Cormorant Garamond = 600–700 ONLY. Never 400. Never 500. */
h1, h2, h3, h4, h5, h6,
.heading, .title, .section-title,
.kw-section-title, .page-title,
.hero-title, .banner-title,
.card-title, .quote-text {
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  color: var(--text-main) !important;
  letter-spacing: var(--tracking-tight) !important;
  line-height: var(--leading-snug) !important;
}

h1 { font-size: var(--text-5xl) !important; }
h2 { font-size: var(--text-3xl) !important; }
h3 { font-size: var(--text-xl) !important; }
h4 { font-size: var(--text-lg) !important; }

/* Italic Cormorant ONLY for pull quotes, Sanskrit, decorative */
.quote-text {
  font-style: italic !important;
  font-weight: 600 !important;
  font-size: var(--text-2xl) !important;
}

/* Inter = 400–700 only. Never 300. Never 800/900. */
p, li, td, span, div, dd, dt,
.description, .content-text,
.kw-icon-text-wrap p,
.body-text, .form-input,
.footer-link, .nav-link {
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
  color: var(--text-main) !important;
  line-height: var(--leading-relaxed) !important;
  font-size: var(--text-base) !important;
}

/* Labels, metadata = Inter 500 */
.caption, .meta, .small-text, .date,
.category, .breadcrumb, .form-label,
.form-helper, .quote-role {
  font-family: var(--font-body) !important;
  font-weight: 500 !important;
  color: var(--text-muted) !important;
  font-size: var(--text-xs) !important;
  line-height: var(--leading-normal) !important;
}

/* Buttons, nav, subheads = Inter 600 */
.btn, button, input[type="submit"], input[type="button"],
.kw-btn-medium, .kw-btn-big, .kw-btn-small,
.button-primary, .button-secondary,
.nav-link, .nav-link-active,
.book-btn, .check-experts,
.footer-heading, .badge {
  font-family: var(--font-body) !important;
  font-weight: 600 !important;
}

/* Emphasis within UI = Inter 700 */
.card-price, .premium-price,
.rating-badge, .verified-badge {
  font-family: var(--font-body) !important;
  font-weight: 700 !important;
}

/* All uppercase MUST have letter-spacing 0.02em minimum */
.button-primary, .button-secondary,
.nav-link, .nav-link-active,
.footer-heading, .badge,
.section-overline,
.kw-btn-medium, .kw-btn-big,
.btn, button, input[type="submit"] {
  text-transform: uppercase !important;
  letter-spacing: var(--tracking-wide) !important;
}

/* ─── HEADER ─── */
#header.kw-header, #header.kw-header.kw-dark,
#header.kw-header .kw-top-bar,
#header.kw-header .kw-hsection,
#header.kw-header .kw-hsection.kw-sticky,
.main-header, .site-header, .navbar {
  background: var(--bg-dark) !important;
  background-color: var(--bg-dark) !important;
  color: var(--text-on-dark) !important;
  border-color: var(--color-oxblood-800) !important;
}

#header.kw-header a,
#header.kw-header .kw-login,
#header.kw-header .kw-dropdown-invoker,
#header.kw-header .kw-hr-list a,
#header.kw-header .kw-current-location,
#header.kw-header .kw-current-location b,
#header.kw-header marquee {
  color: var(--text-on-dark) !important;
  font-family: var(--font-body) !important;
  font-weight: 500 !important;
  font-size: var(--text-sm) !important;
  letter-spacing: var(--tracking-wide) !important;
}

#header.kw-header a:hover,
#header.kw-header .kw-login:hover {
  color: var(--accent-premium) !important;
}

/* Logo */
#header.kw-header img[alt*="logo"],
.footer-logo, footer img, .site-footer img {
  filter: brightness(1.05) contrast(0.95) !important;
  max-height: 55px !important;
}

/* ─── HEADER BUTTONS ─── */
/* Primary CTA: Oxblood bg + Gold text */
#header.kw-header .kw-btn-medium,
#header.kw-header .kw-btn-big,
#header.kw-header .kw-yellow-type-2,
.kw-btn-medium, .kw-btn-big, .kw-btn-small,
.btn-primary, .btn-book, .btn-consult,
.submit-btn, .btn-action, .kw-yellow-type-2 {
  background: var(--button-primary-bg) !important;
  background-color: var(--button-primary-bg) !important;
  color: var(--button-primary-text) !important;
  border: 1.5px solid var(--color-oxblood-700) !important;
  border-radius: 6px !important;
  font-size: var(--text-sm) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: var(--tracking-wide) !important;
  padding: 12px 24px !important;
  box-shadow: 0 2px 8px rgba(45, 10, 15, 0.25) !important;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
  text-decoration: none !important;
}

#header.kw-header .kw-btn-medium:hover,
.btn-primary:hover, .btn-book:hover,
.submit-btn:hover, .kw-yellow-type-2:hover {
  background: var(--button-primary-hover-bg) !important;
  background-color: var(--button-primary-hover-bg) !important;
  color: var(--accent-highlight) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 4px 16px rgba(45, 10, 15, 0.35) !important;
}

/* Secondary / Ghost button on parchment */
.btn-secondary, .btn-outline, .kw-white-type-2 {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--color-oxblood-800) !important;
  border: 1.5px solid var(--color-oxblood-800) !important;
  border-radius: 6px !important;
  font-size: var(--text-sm) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: var(--tracking-wide) !important;
  padding: 12px 24px !important;
  transition: all 0.25s ease !important;
}

.btn-secondary:hover, .kw-white-type-2:hover {
  background: var(--color-oxblood-800) !important;
  background-color: var(--color-oxblood-800) !important;
  color: var(--color-sacred-gold) !important;
}

/* ─── HERO / BANNER ─── */
.hero, .banner, .slider, .intro-section,
.content-header, .page-header, .kw-section:first-of-type,
#wrapper > div:nth-child(2) {
  background: var(--gradient-hero) !important;
  background-color: var(--bg-dark) !important;
  background-image: var(--gradient-hero) !important;
  color: var(--text-on-dark) !important;
}

.hero h1, .hero h2, .banner h1, .banner h2,
.page-header h1, .content-header h1,
.kw-section:first-of-type h1,
.kw-section:first-of-type h2 {
  font-family: var(--font-display) !important;
  font-size: var(--text-hero) !important;
  font-weight: 700 !important;
  color: var(--text-on-dark) !important;
  line-height: var(--leading-tight) !important;
  letter-spacing: var(--tracking-tighter) !important;
}

.hero p, .banner p, .intro-section p {
  color: var(--text-on-dark-muted) !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-lg) !important;
  font-weight: 400 !important;
  line-height: var(--leading-normal) !important;
}

/* Gold highlight words on dark */
.hero .highlight, .banner .highlight,
.dark-section .accent-text, .authority-band .brand-word {
  background: var(--gradient-gold-text) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  font-weight: 700 !important;
}

/* ─── MOBILE BOTTOM NAV ─── */
.mobile-bottom-nav, nav.mobile-bottom-nav,
.mobile-bottom-nav .mobile-bottom-nav__item {
  background: var(--bg-dark) !important;
  background-color: var(--bg-dark) !important;
  color: var(--text-on-dark) !important;
  border-top: 1px solid var(--color-oxblood-800) !important;
}

.mobile-bottom-nav a,
.mobile-bottom-nav__item-content a,
.mobile-bottom-nav i {
  color: var(--text-on-dark) !important;
  font-size: var(--text-xs) !important;
  font-weight: 500 !important;
}

.mobile-bottom-nav__item:active {
  background: rgba(226, 180, 76, 0.12) !important;
}

/* ─── CARDS / BOXES ─── */
.card, .panel, .service-box, .feature-box,
.testimonial, .info-box, .content-box,
.astrologer-profile, .profile-card,
.kw-icon-boxes, .kw-type-1, .box, .small-box {
  background: var(--bg-card) !important;
  background-color: var(--bg-card) !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 12px rgba(44, 42, 38, 0.06) !important;
  transition: all 0.3s ease !important;
}

.card:hover, .kw-icon-boxes:hover,
.service-box:hover, .feature-box:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 8px 30px rgba(44, 42, 38, 0.12) !important;
  border-color: var(--color-bronze-200) !important;
}

.card h3, .box h3, .kw-icon-text-wrap h3,
.service-box h3, .feature-box h3 {
  font-family: var(--font-display) !important;
  font-size: var(--text-xl) !important;
  font-weight: 600 !important;
  color: var(--text-main) !important;
  line-height: var(--leading-tight) !important;
}

/* Featured cards */
.card-featured, .featured-service, .highlight-box,
.box-featured, .kw-icon-boxes.kw-type-1:hover {
  background: var(--color-parchment-300) !important;
  background-color: var(--color-parchment-300) !important;
  border: 1px solid var(--color-bronze-200) !important;
  box-shadow: 0 4px 20px rgba(196, 168, 124, 0.15) !important;
}

/* Dark cards (premium astrologer) */
.astrologer-card, .expert-card, .dark-card {
  background: var(--bg-dark-card) !important;
  background-color: var(--bg-dark-card) !important;
  border: 1px solid var(--color-oxblood-700) !important;
  color: var(--text-on-dark) !important;
}

.astrologer-card h3, .astrologer-card .name,
.expert-card h4, .dark-card .title {
  font-family: var(--font-display) !important;
  font-size: var(--text-xl) !important;
  font-weight: 600 !important;
  color: var(--accent-premium) !important;
  line-height: var(--leading-tight) !important;
}

.astrologer-card p, .expert-card p,
.dark-card .meta, .dark-card .specialty {
  color: var(--text-on-dark-muted) !important;
  font-size: var(--text-sm) !important;
  font-weight: 400 !important;
}

/* ─── LISTING PAGE FIXES ─── */
/* Kill pink photo backgrounds */
.photo-wrap, .img-wrap, .image-box,
[class*="photo"], [class*="img-wrap"],
[class*="image-box"], [class*="thumb"],
[class*="avatar"] {
  background: var(--bg-dark-card) !important;
  background-color: var(--bg-dark-card) !important;
  background-image: none !important;
}

/* Kill pink sidebar headers */
.services-sidebar h3, .sidebar-services h3,
.filter-sidebar h3, [class*="sidebar"] h3,
[class*="sidebar"] h4, .widget-title,
.panel-heading, .panel-title {
  background: var(--bg-dark) !important;
  background-color: var(--bg-dark) !important;
  background-image: none !important;
  color: var(--text-on-dark) !important;
  font-family: var(--font-display) !important;
  font-size: var(--text-lg) !important;
  font-weight: 600 !important;
  border: none !important;
  padding: 12px 16px !important;
}

/* Card buttons on listing */
[class*="card"] .btn, [class*="listing"] .btn,
[class*="item"] .btn, a[class*="view"],
a[class*="appointment"], a[class*="book"],
button[class*="view"], button[class*="appointment"] {
  background: var(--button-primary-bg) !important;
  background-color: var(--button-primary-bg) !important;
  background-image: none !important;
  color: var(--button-primary-text) !important;
  border: 1.5px solid var(--color-oxblood-700) !important;
  border-radius: 6px !important;
  font-size: var(--text-sm) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: var(--tracking-wide) !important;
  box-shadow: none !important;
  padding: 10px 20px !important;
}

[class*="card"] .btn:hover,
a[class*="view"]:hover, a[class*="appointment"]:hover {
  background: var(--button-primary-hover-bg) !important;
  background-color: var(--button-primary-hover-bg) !important;
  color: var(--accent-highlight) !important;
  transform: translateY(-2px) !important;
}

/* Kill pink card borders */
[class*="card"], [class*="listing"],
[class*="item"] {
  border-color: var(--border-subtle) !important;
  border-bottom-color: var(--border-subtle) !important;
}

/* ─── PROFILE PAGE ─── */
.profile-banner, .astrologer-banner,
.expert-banner, [class*="profile"] [class*="banner"],
[class*="astrologer"] [class*="banner"],
.cover-section, .profile-cover {
  background: var(--gradient-hero) !important;
  background-color: var(--bg-dark) !important;
  background-image: var(--gradient-hero) !important;
  color: var(--text-on-dark) !important;
}

.profile-banner h1, .astrologer-banner h1,
.expert-name, .astrologer-name {
  font-family: var(--font-display) !important;
  font-size: var(--text-4xl) !important;
  font-weight: 700 !important;
  color: var(--text-on-dark) !important;
  line-height: var(--leading-tight) !important;
}

.profile-banner p, .astrologer-banner p,
.profile-meta, .language-tag {
  color: var(--text-on-dark-muted) !important;
  font-size: var(--text-sm) !important;
  font-weight: 400 !important;
}

/* Book Appointment button */
.book-btn, .book-appointment, .appointment-btn,
.btn-appointment, a[href*="book"],
a[href*="appointment"], .book-a-appointment {
  background: var(--button-primary-bg) !important;
  background-color: var(--button-primary-bg) !important;
  color: var(--button-primary-text) !important;
  border: 1.5px solid var(--color-oxblood-700) !important;
  border-radius: 8px !important;
  padding: 14px 32px !important;
  font-size: var(--text-sm) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: var(--tracking-wide) !important;
  font-family: var(--font-body) !important;
  box-shadow: 0 4px 15px rgba(45, 10, 15, 0.3) !important;
  transition: all 0.25s ease !important;
}

.book-btn:hover, .book-appointment:hover {
  background: var(--button-primary-hover-bg) !important;
  background-color: var(--button-primary-hover-bg) !important;
  color: var(--accent-highlight) !important;
  transform: translateY(-2px) !important;
}

/* Service tags on profile */
.service-tag, .skill-tag, .expertise-tag,
.specialty-tag, .tag-item, .profile-tag,
.kw-tags a, .service-list a, .specialties a {
  background: var(--bg-dark-card) !important;
  background-color: var(--bg-dark-card) !important;
  color: var(--text-on-dark) !important;
  border: 1px solid var(--color-oxblood-700) !important;
  border-radius: 999px !important;
  padding: 6px 16px !important;
  font-size: var(--text-xs) !important;
  font-weight: 500 !important;
  font-family: var(--font-body) !important;
  letter-spacing: var(--tracking-wide) !important;
  transition: all 0.2s ease !important;
}

.service-tag:hover, .skill-tag:hover {
  background: var(--color-oxblood-700) !important;
  background-color: var(--color-oxblood-700) !important;
  color: var(--accent-highlight) !important;
  border-color: var(--color-sacred-gold) !important;
}

/* ─── SERVICE DETAIL PAGE ─── */
.service-detail, .service-page,
.numerology-page, .detail-page,
[class*="detail"] [class*="section"]:not(.dark-section) {
  background: var(--bg-page) !important;
  background-color: var(--bg-page) !important;
  color: var(--text-main) !important;
}

.service-detail h2, .service-page h2,
.numerology-page h2, .detail-page h2 {
  font-family: var(--font-display) !important;
  font-size: var(--text-3xl) !important;
  font-weight: 700 !important;
  color: var(--text-main) !important;
}

/* Check Experts button */
.check-experts, .experts-btn, .btn-experts,
a[href*="expert"], [class*="check"] [class*="expert"] {
  background: var(--button-primary-bg) !important;
  background-color: var(--button-primary-bg) !important;
  color: var(--button-primary-text) !important;
  border: 1.5px solid var(--color-oxblood-700) !important;
  border-radius: 8px !important;
  padding: 14px 32px !important;
  font-size: var(--text-sm) !important;
  font-weight: 600 !important;
  text-transform: uppercase !important;
  letter-spacing: var(--tracking-wide) !important;
  box-shadow: 0 4px 15px rgba(45, 10, 15, 0.3) !important;
  transition: all 0.25s ease !important;
}

.check-experts:hover, .experts-btn:hover {
  background: var(--button-primary-hover-bg) !important;
  background-color: var(--button-primary-hover-bg) !important;
  color: var(--accent-highlight) !important;
  transform: translateY(-2px) !important;
}

/* Service icon circles */
.service-icon, .category-icon, .icon-circle,
.service-img-circle, .kw-icon-circle,
[class*="icon"] [class*="circle"], .round-icon {
  background: var(--bg-dark-card) !important;
  background-color: var(--bg-dark-card) !important;
  border: 2px solid var(--accent-premium) !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 15px rgba(45, 10, 15, 0.2) !important;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275) !important;
}

.service-icon:hover, .category-icon:hover,
.icon-circle:hover {
  transform: scale(1.08) !important;
  box-shadow: 0 8px 25px rgba(226, 180, 76, 0.25) !important;
  border-color: var(--color-gold-light) !important;
}

.service-name, .category-name, .icon-label,
.service-title, .kw-service-name {
  color: var(--text-main) !important;
  font-weight: 600 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-sm) !important;
}

.service-name:hover, .category-name:hover {
  color: var(--color-oxblood-800) !important;
}

/* ─── FORMS ─── */
input, select, textarea, .form-control,
.form-group input, .form-group select,
.form-group textarea {
  background: var(--color-parchment-300) !important;
  background-color: var(--color-parchment-300) !important;
  border: 1.5px solid var(--border-subtle) !important;
  color: var(--text-main) !important;
  border-radius: 8px !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-base) !important;
  font-weight: 400 !important;
  padding: 12px 16px !important;
  box-shadow: none !important;
  line-height: var(--leading-normal) !important;
}

input::placeholder, textarea::placeholder,
.form-control::placeholder {
  color: var(--text-muted) !important;
  opacity: 0.8 !important;
  font-weight: 400 !important;
}

input:focus, select:focus, textarea:focus,
.form-control:focus {
  border-color: var(--border-focus-light) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(226, 180, 76, 0.2) !important;
}

/* ─── PREMIUM / RATINGS — GOLD ─── */
.premium-badge, .pro-badge, .verified-badge,
.rating-badge, .award-badge {
  background: var(--bg-dark-card) !important;
  background-color: var(--bg-dark-card) !important;
  color: var(--accent-premium) !important;
  border: 1px solid var(--accent-premium) !important;
  border-radius: 999px !important;
  font-size: var(--text-2xs) !important;
  padding: 4px 12px !important;
  font-weight: 600 !important;
  letter-spacing: var(--tracking-widest) !important;
  text-transform: uppercase !important;
  font-family: var(--font-body) !important;
}

.rating-stars, .star-rating, .stars,
.fa-star, .glyphicon-star {
  color: var(--accent-premium) !important;
  transition: transform 0.2s ease !important;
}

.rating-stars:hover, .fa-star:hover {
  transform: scale(1.15) !important;
  color: var(--color-gold-light) !important;
}

.price, .premium-price, .value-tag {
  background: var(--gradient-gold-text) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
  font-weight: 700 !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-lg) !important;
}

/* ─── CHIPS / TAGS ─── */
.chip, .tag, .badge, .label,
.category-tag, .service-tag,
.label-default, .label-primary,
.kw-dropdown-list li a {
  background: var(--color-parchment-200) !important;
  background-color: var(--color-parchment-200) !important;
  color: var(--color-oxblood-800) !important;
  border: 1px solid var(--border-subtle) !important;
  border-radius: 999px !important;
  font-size: var(--text-xs) !important;
  padding: 4px 12px !important;
  font-weight: 500 !important;
  font-family: var(--font-body) !important;
  letter-spacing: var(--tracking-wide) !important;
}

/* ─── LINKS ─── */
a, .link, .read-more, .text-link {
  color: var(--color-oxblood-800) !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
  position: relative !important;
  font-family: var(--font-body) !important;
}

a:hover, .link:hover, .read-more:hover {
  color: var(--color-oxblood-700) !important;
}

/* Gold underline animation on links */
a::after {
  content: '' !important;
  position: absolute !important;
  width: 0 !important;
  height: 1.5px !important;
  bottom: -2px !important;
  left: 0 !important;
  background: var(--color-sacred-gold) !important;
  transition: width 0.3s ease !important;
}

a:hover::after {
  width: 100% !important;
}

/* Footer links no underline */
footer a::after, .footer a::after {
  display: none !important;
}

/* ─── DIVIDERS ─── */
hr, .divider, .separator, .border-top,
.section-divider, .box-footer {
  border-color: var(--border-subtle) !important;
  opacity: 0.5 !important;
}

/* ─── DROPDOWNS ─── */
.kw-dropdown-list, .dropdown-menu,
.mobile-menu, .nav-dropdown, .sidebar {
  background: var(--bg-dark-card) !important;
  background-color: var(--bg-dark-card) !important;
  color: var(--text-on-dark) !important;
  border: 1px solid var(--color-oxblood-700) !important;
  border-radius: 8px !important;
  box-shadow: 0 8px 30px rgba(0,0,0,0.3) !important;
}

.kw-dropdown-list a, .dropdown-menu a,
.mobile-menu a, .nav-dropdown a {
  color: var(--text-on-dark) !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-sm) !important;
  font-weight: 500 !important;
}

.kw-dropdown-list a:hover, .dropdown-menu a:hover {
  color: var(--accent-premium) !important;
  background: rgba(226, 180, 76, 0.1) !important;
}

/* ─── TABLES ─── */
table, .table, .data-table,
.table-bordered, .table-striped {
  background: var(--bg-card) !important;
  background-color: var(--bg-card) !important;
  border-color: var(--border-subtle) !important;
}

th, .table-header, .table > thead > tr > th {
  background: var(--bg-dark) !important;
  background-color: var(--bg-dark) !important;
  color: var(--text-on-dark) !important;
  font-family: var(--font-display) !important;
  font-weight: 700 !important;
  font-size: var(--text-sm) !important;
  border-color: var(--color-oxblood-800) !important;
}

td, .table-cell, .table > tbody > tr > td {
  color: var(--text-main) !important;
  border-color: var(--border-subtle) !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-sm) !important;
  font-weight: 400 !important;
}

.table > tbody > tr:hover > td {
  background: var(--color-parchment-300) !important;
  background-color: var(--color-parchment-300) !important;
}

/* ─── ALERTS ─── */
.alert-success, .alert_message, .alert {
  background: var(--color-parchment-300) !important;
  background-color: var(--color-parchment-300) !important;
  color: var(--text-main) !important;
  border: 1px solid var(--border-subtle) !important;
  border-left: 4px solid var(--color-sacred-gold) !important;
  border-radius: 8px !important;
  font-family: var(--font-body) !important;
}

/* ─── FAQ / ACCORDION ─── */
.accordion, .faq-item, .toggle-item,
.panel-heading, .accordion-header,
.question-box, .faq-box, .panel-title,
.panel-title a {
  background: var(--bg-card) !important;
  background-color: var(--bg-card) !important;
  color: var(--text-main) !important;
  border: 1px solid var(--border-subtle) !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-sm) !important;
}

.accordion-header:hover, .faq-item:hover,
.panel-title a:hover {
  background: var(--color-parchment-300) !important;
  background-color: var(--color-parchment-300) !important;
}

.accordion-header i, .faq-item i,
.panel-title i, .arrow-icon {
  color: var(--color-oxblood-800) !important;
}

/* ─── FOOTER ─── */
footer, .footer, .main-footer, .site-footer,
#footer, footer .container, footer .row,
footer [class*="col-"], footer div,
footer section, footer .kw-section,
footer .kw-hsection {
  background: var(--bg-dark) !important;
  background-color: var(--bg-dark) !important;
  background-image: none !important;
  color: var(--text-on-dark) !important;
}

footer h3, footer h4, footer .footer-title,
footer .widget-title, footer .section-title {
  font-family: var(--font-body) !important;
  font-size: var(--text-sm) !important;
  font-weight: 600 !important;
  color: var(--text-on-dark) !important;
  text-transform: uppercase !important;
  letter-spacing: var(--tracking-wider) !important;
  border-bottom: 1px solid rgba(226, 180, 76, 0.3) !important;
  padding-bottom: 10px !important;
  margin-bottom: 15px !important;
}

footer a, footer li a, footer .useful-links a {
  color: var(--text-on-dark-muted) !important;
  font-family: var(--font-body) !important;
  font-size: var(--text-sm) !important;
  font-weight: 400 !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}

footer a:hover, footer li a:hover {
  color: var(--accent-premium) !important;
  padding-left: 4px !important;
}

footer p, footer span, footer li,
footer .about-text, footer .footer-text {
  color: var(--text-on-dark-muted) !important;
  font-family: var(--font-body) !important;
  line-height: var(--leading-relaxed) !important;
  font-size: var(--text-sm) !important;
  font-weight: 400 !important;
}

/* Footer "Make a payment" button */
footer .btn, footer button, footer .payment-btn,
footer .make-payment, footer a[href*="payment"],
footer .kw-appoinment, footer [class*="payment"] {
  background: var(--button-primary-bg) !important;
  background-color: var(--button-primary-bg) !important;
  color: var(--button-primary-text) !important;
  border: 1.5px solid var(--color-oxblood-700) !important;
  border-radius: 6px !important;
  padding: 12px 24px !important;
  font-size: var(--text-sm) !important;
  font-weight: 600 !important;
  font-family: var(--font-body) !important;
  text-transform: uppercase !important;
  letter-spacing: var(--tracking-wide) !important;
  text-decoration: none !important;
  display: inline-block !important;
  box-shadow: none !important;
  transition: all 0.25s ease !important;
}

footer .btn:hover, footer a[href*="payment"]:hover {
  background: var(--button-primary-hover-bg) !important;
  background-color: var(--button-primary-hover-bg) !important;
  color: var(--accent-highlight) !important;
  transform: translateY(-2px) !important;
}

/* Footer social icons */
footer .social-icons a, footer .social a,
footer .social-links a, footer .fa-facebook,
footer .fa-instagram, footer .fa-twitter,
footer .fa-linkedin, footer .fa-tumblr {
  background: transparent !important;
  background-color: transparent !important;
  border: 1px solid rgba(253, 248, 240, 0.35) !important;
  color: var(--text-on-dark) !important;
  border-radius: 50% !important;
  width: 40px !important;
  height: 40px !important;
  line-height: 38px !important;
  text-align: center !important;
  display: inline-block !important;
  margin-right: 8px !important;
  transition: all 0.3s ease !important;
  font-size: var(--text-sm) !important;
}

footer .social-icons a:hover, footer .social a:hover {
  background: var(--accent-premium) !important;
  background-color: var(--accent-premium) !important;
  border-color: var(--accent-premium) !important;
  color: var(--bg-dark) !important;
  transform: translateY(-3px) !important;
}

/* Footer contact icons */
footer .fa, footer .fas, footer .far,
footer .lnr, footer i, footer .icon {
  color: var(--accent-premium) !important;
  margin-right: 8px !important;
}

/* Footer logo */
footer img, footer .footer-logo img,
footer .logo img {
  filter: brightness(1.05) !important;
  max-height: 50px !important;
  background: transparent !important;
}

/* Copyright bar */
footer .copyright, footer .copy,
.copyright, .copy, footer .copyright-bar,
footer .footer-bottom, .kw-copyright {
  background: var(--bg-dark) !important;
  background-color: var(--bg-dark) !important;
  color: rgba(253, 248, 240, 0.5) !important;
  border-top: 1px solid rgba(253, 248, 240, 0.08) !important;
  padding-top: 20px !important;
  padding-bottom: 20px !important;
  text-align: center !important;
  font-size: var(--text-2xs) !important;
  font-family: var(--font-body) !important;
  font-weight: 400 !important;
}

/* ─── SCROLL TO TOP ─── */
.scroll-to-top, .back-to-top, .go-top, .scrollup {
  background: var(--button-primary-bg) !important;
  background-color: var(--button-primary-bg) !important;
  color: var(--button-primary-text) !important;
  border: 1.5px solid var(--color-oxblood-700) !important;
  border-radius: 8px !important;
  width: 44px !important;
  height: 44px !important;
  line-height: 42px !important;
  text-align: center !important;
  font-size: var(--text-lg) !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.3) !important;
  transition: all 0.3s ease !important;
}

.scroll-to-top:hover, .back-to-top:hover {
  background: var(--button-primary-hover-bg) !important;
  background-color: var(--button-primary-hover-bg) !important;
  color: var(--accent-highlight) !important;
  transform: translateY(-3px) !important;
}

/* ─── SCROLLBAR ─── */
::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: var(--color-parchment-100); }
::-webkit-scrollbar-thumb { background: var(--color-oxblood-800); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--color-oxblood-950); }

/* ─── ANIMATIONS ─── */
@keyframes fadeInUp {
  from { opacity: 0; transform: translateY(20px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}

@keyframes pulse-glow {
  0% { box-shadow: 0 4px 15px rgba(74, 14, 23, 0.3); }
  50% { box-shadow: 0 4px 25px rgba(74, 14, 23, 0.5); }
  100% { box-shadow: 0 4px 15px rgba(74, 14, 23, 0.3); }
}

html body .card,
html body .kw-icon-boxes,
html body .service-box,
html body .feature-box,
html body .testimonial {
  animation: fadeInUp 0.5s ease-out forwards !important;
}

html body .btn-primary:hover,
html body .book-btn:hover,
html body .check-experts:hover {
  animation: pulse-glow 1.5s infinite !important;
}

html body .premium-badge,
html body .verified-badge {
  background-size: 200% 100% !important;
  animation: shimmer 3s infinite !important;
}

html {
  scroll-behavior: smooth !important;
}

/* ─── NUCLEAR: Kill any remaining pink/magenta/teal/blue ─── */
[style*="background-color: rgb(233, 30, 99)"],
[style*="background-color: #e91e63"],
[style*="background-color: #d63384"],
[style*="background-color: #D63384"],
[style*="background: #d63384"],
[style*="background: #e91e63"],
[style*="background: pink"],
[style*="background: #ff69b4"],
[style*="background-color: pink"],
[style*="background-color: rgb(214, 51, 132)"],
[style*="background-color: #ff00"],
[style*="background-color: #00bcd4"],
[style*="background-color: #009688"],
[style*="background-color: #2196f3"],
[style*="background-color: #9c27b0"] {
  background: var(--bg-dark) !important;
  background-color: var(--bg-dark) !important;
  background-image: none !important;
}
