/* ============================================================
   BANGALOREESCORTS-X: BLACK / CHARCOAL / CYAN / YELLOW PALETTE
   Inspired by the supplied reference screenshot. Loaded last.
============================================================ */

:root {
  --be-black: #050504;
  --be-black-soft: #0d0e0f;
  --be-charcoal: #2e2d2d;
  --be-panel: #17191b;
  --be-panel-2: #202326;
  --be-cyan: #0cbdeb;
  --be-cyan-deep: #0184a5;
  --be-cyan-dark: #014e60;
  --be-cyan-soft: rgba(12, 189, 235, 0.13);
  --be-yellow: #e3e306;
  --be-yellow-soft: rgba(227, 227, 6, 0.12);
  --be-white: #f3f8f9;
  --be-copy: #d8e1e3;
  --be-muted: #9aa9ad;
  --be-line: rgba(12, 189, 235, 0.28);
  --be-line-soft: rgba(255, 255, 255, 0.11);
  --be-shadow: 0 14px 34px rgba(0, 0, 0, 0.38);

  /* Existing theme tokens */
  --bg: var(--be-charcoal) !important;
  --paper: var(--be-panel) !important;
  --paper-soft: var(--be-panel-2) !important;
  --ink: var(--be-white) !important;
  --muted: var(--be-muted) !important;
  --line: var(--be-line) !important;
  --brand: var(--be-cyan) !important;
  --brand-soft: var(--be-cyan-soft) !important;
  --lux-red: var(--be-cyan-deep) !important;
  --lux-gold: var(--be-yellow) !important;
  --wx-bg: var(--be-charcoal) !important;
  --wx-paper: var(--be-panel) !important;
  --wx-soft: var(--be-panel-2) !important;
  --wx-ink: var(--be-white) !important;
  --wx-muted: var(--be-muted) !important;
  --wx-line: var(--be-line) !important;
  --wx-brand: var(--be-cyan) !important;
  --wx-brand-dark: var(--be-cyan-deep) !important;
  --wx-red: var(--be-cyan-deep) !important;
  --wx-gold: var(--be-yellow) !important;
}

html,
body {
  background-color: var(--be-charcoal) !important;
  background-image:
    radial-gradient(circle at 12% 8%, rgba(12, 189, 235, 0.08), transparent 27%),
    radial-gradient(circle at 88% 86%, rgba(227, 227, 6, 0.035), transparent 23%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.018) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.018) 50%, rgba(255, 255, 255, 0.018) 75%, transparent 75%, transparent) !important;
  background-size: auto, auto, 8px 8px !important;
  color: var(--be-copy) !important;
}

body,
body p,
body li,
body label,
body td,
body th,
body dd,
body dt,
body blockquote,
body .entry-content,
body .wp-block-paragraph {
  color: var(--be-copy) !important;
}

body h1,
body h2,
body h3,
body h4,
body h5,
body h6,
body .section-heading,
body .section-heading-main,
body .block-title,
body .blog-title,
body .sx-section-title,
body .sp-section-title,
body .wizard-title,
body .ds-card-title,
body .ep-title,
body .ae-topbar-title,
body .loc-panel-title,
body .loc-directory-label {
  color: var(--be-cyan) !important;
  text-shadow: 0 0 18px rgba(12, 189, 235, 0.08);
}

body a {
  color: var(--be-cyan) !important;
}

body a:hover,
body a:focus-visible {
  color: var(--be-yellow) !important;
}

::selection {
  background: var(--be-cyan) !important;
  color: var(--be-black) !important;
}

/* ============================================================
   SITE SHELL AND PAGE ROOTS
============================================================ */
body .site,
body .site-content,
body main,
body .site-main,
body .home-main,
body .wx-page,
body .blog-main,
body .sx-packages,
body .sx-checkout,
body .loc-page,
body .city-page,
body .country-page,
body .location-directory,
body .agency-directory-main,
body .tour-directory-main,
body .trans-directory-main,
body .couple-directory-main,
body .single-profile,
body .mt-profile-page,
body .sd-premium-page,
body .normal-account-page,
body .registration-page,
body .premium-login-wrap,
body .verification-page,
body .wx-info-page,
body .tr-page,
body .te-page,
body .dr-root,
body .ep-root,
body .ae-wrap,
body .ds-root,
body .dash-layout,
body .wizard-page {
  background-color: transparent !important;
  color: var(--be-copy) !important;
}

body .home-left,
body .home-right,
body .main-right,
body .wx-standard-left,
body .wx-standard-sidebar,
body .agency-directory-left,
body .tour-directory-left,
body .trans-directory-left,
body .couple-directory-left,
body .location-left,
body .sd-left,
body .sd-wrap,
body .wx-info-body,
body .wx-contact-body,
body .nu-shell,
body .nu-edge-shell {
  background: transparent !important;
}

/* ============================================================
   HEADER
============================================================ */
body .site-header.premium-header {
  background: var(--be-black) !important;
  border-top: 5px solid var(--be-cyan) !important;
  border-bottom: 1px solid rgba(12, 189, 235, 0.48) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.48), inset 0 -1px 0 rgba(255, 255, 255, 0.03) !important;
}

body .site-header.premium-header::before {
  content: "";
  display: block;
  height: 2px;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: linear-gradient(90deg, var(--be-cyan-deep), var(--be-cyan), #dffaff, var(--be-cyan), var(--be-cyan-deep));
  opacity: 0.9;
  pointer-events: none;
}

body .site-header.premium-header .premium-header-inner,
body .site-header.premium-header .premium-header-main,
body .site-header.premium-header .premium-header-top,
body .site-header.premium-header .premium-header-bottom,
body .site-header.premium-header .header-nav,
body .site-header.premium-header .nav-menu,
body .site-header.premium-header .header-ad,
body .site-header.premium-header .header-logo,
body .mobile-premium-header,
body .mobile-top-row,
body .mobile-bottom-row {
  background: var(--be-black) !important;
}

body .site-header.premium-header .header-logo {
  background: linear-gradient(90deg, #030303 0%, #111315 78%, rgba(17, 19, 21, 0) 100%) !important;
}

body .site-header.premium-header .premium-header-bottom {
  border-top: 1px solid var(--be-line-soft) !important;
}

body .site-header.premium-header .nav-menu li a,
body .site-header.premium-header .wx-primary-menu > li > a,
body .site-header.premium-header .mobile-top-link,
body .site-header.premium-header .mobile-login-btn,
body .site-header.premium-header .mobile-menu-btn,
body .site-header.premium-header .mobile-cc-toggle {
  color: var(--be-cyan) !important;
  background: transparent !important;
  border-color: transparent !important;
  text-shadow: 0 0 12px rgba(12, 189, 235, 0.1) !important;
}

body .site-header.premium-header .nav-menu li a:hover,
body .site-header.premium-header .nav-menu li.current-menu-item > a,
body .site-header.premium-header .nav-menu li.current_page_item > a,
body .site-header.premium-header .wx-primary-menu > li > a:hover,
body .site-header.premium-header .mobile-top-link:hover,
body .site-header.premium-header .mobile-login-btn:hover {
  color: var(--be-yellow) !important;
  background: var(--be-yellow-soft) !important;
  border-color: rgba(227, 227, 6, 0.36) !important;
}

body .site-header.premium-header .nav-menu li a::before,
body .site-header.premium-header .nav-menu li a::after {
  background: var(--be-cyan) !important;
  border-color: var(--be-cyan) !important;
}

body .site-header.premium-header .header-search input,
body .site-header.premium-header .mobile-cc-search {
  background: #090a0b !important;
  border: 1px solid var(--be-cyan-deep) !important;
  color: var(--be-white) !important;
  box-shadow: inset 0 1px 8px rgba(0, 0, 0, 0.42) !important;
}

body .site-header.premium-header .header-search input::placeholder,
body .site-header.premium-header .mobile-cc-search::placeholder {
  color: #91a5aa !important;
}

body .site-header.premium-header .header-search button,
body .site-header.premium-header .header-auth .btn-auth,
body .site-header.premium-header .lang-current,
body .site-header.premium-header .mobile-search-icon,
body .mobile-theme-toggle {
  background: #111315 !important;
  border: 1px solid var(--be-cyan-deep) !important;
  color: var(--be-cyan) !important;
  box-shadow: none !important;
}

body .site-header.premium-header .header-search button:hover,
body .site-header.premium-header .header-auth .btn-auth:hover,
body .site-header.premium-header .lang-current:hover,
body .site-header.premium-header .mobile-search-icon:hover,
body .mobile-theme-toggle:hover {
  background: var(--be-cyan) !important;
  border-color: var(--be-cyan) !important;
  color: var(--be-black) !important;
}

body .site-header.premium-header .header-auth .btn-register,
body .site-header.premium-header .header-auth .btn-contact {
  background: var(--be-yellow) !important;
  border-color: var(--be-yellow) !important;
  color: var(--be-black) !important;
}

body .site-header.premium-header .header-auth .btn-register:hover,
body .site-header.premium-header .header-auth .btn-contact:hover {
  background: #ffff35 !important;
  color: var(--be-black) !important;
}

body .site-header.premium-header .language-menu,
body .mobile-cc-dropdown,
body .global-drawer,
body .mobile-nav-drawer,
body .drawer-panel {
  background: #090a0b !important;
  border: 1px solid var(--be-cyan-deep) !important;
  color: var(--be-copy) !important;
  box-shadow: var(--be-shadow) !important;
}

body .site-header.premium-header .language-menu a,
body .site-header.premium-header .language-menu a span,
body .mobile-cc-dropdown button,
body .global-drawer a,
body .mobile-nav-drawer a {
  color: var(--be-copy) !important;
}

body .site-header.premium-header .language-menu a:hover,
body .mobile-cc-dropdown button:hover,
body .global-drawer a:hover,
body .mobile-nav-drawer a:hover {
  background: var(--be-cyan-soft) !important;
  color: var(--be-cyan) !important;
}

body .site-header.premium-header .lang-current .lang-arrow,
body .mobile-cc-arrow {
  color: var(--be-yellow) !important;
}

/* ============================================================
   HEROES, CONTENT PANELS AND CARDS
============================================================ */
body .fp-hero,
body .wx-page-hero,
body .blog-hero,
body .loc-hero,
body .city-hero,
body .country-hero,
body .location-hero,
body .sx-packages-hero,
body .sx-checkout-hero,
body .wx-info-hero,
body .nu-hero,
body .mt-premium-hero,
body .sd-hero,
body .sp-title-bar,
body .verification-card,
body .premium-login-card,
body .wizard-card,
body .tr-card,
body .te-card,
body .dr-card,
body .ep-card,
body .ae-main,
body .ds-card,
body .dash-main,
body .nu-card,
body .listing-block,
body .wx-listing-block,
body .banner-wrap,
body .wx-banner-wrap,
body .loc-hero-panel,
body .loc-toolbar,
body .loc-grid,
body .cc-strip,
body .cc-strip .cc-cities,
body .agency-card,
body .escort-card,
body .blog-card,
body .sx-package-card,
body .sx-checkout-form,
body .sx-payment-box,
body .bsr-review-card,
body .sd-card,
body .mt-hero-gallery-card,
body .mt-hero-content,
body .sd-gallery-card,
body .sd-hero-content,
body .wx-contact-hero-card,
body .wx-info-section,
body .wx-contact-form-card,
body .account-card,
body .nu-profile-card,
body .te-section,
body .tr-section,
body .dr-section,
body .ep-submit-bar,
body .ae-topbar,
body .ae-sidenav,
body .ds-topbar,
body .ds-sidebar,
body .dash-header,
body .dash-sidebar {
  background-color: var(--be-panel) !important;
  background-image: linear-gradient(145deg, rgba(255, 255, 255, 0.018), rgba(0, 0, 0, 0.08)) !important;
  border-color: var(--be-line) !important;
  color: var(--be-copy) !important;
  box-shadow: var(--be-shadow) !important;
}

body .fp-hero,
body .blog-hero,
body .loc-hero,
body .city-hero,
body .country-hero,
body .location-hero,
body .sx-packages-hero,
body .sx-checkout-hero,
body .wx-info-hero,
body .nu-hero,
body .sp-title-bar {
  border-top: 2px solid var(--be-cyan) !important;
}

body .fp-kicker,
body .wx-eyebrow,
body .loc-kicker,
body .sx-eyebrow,
body .wx-info-eyebrow,
body .nu-eyebrow,
body .mt-eyebrow,
body .sd-eyebrow,
body .bsr-reviews-eyebrow,
body .agency-card-badge,
body .escort-card .badge,
body .sp-verified-badge,
body .mt-verified-badge,
body .sd-verified-badge,
body .footer-badges span {
  background: var(--be-cyan-soft) !important;
  border-color: rgba(12, 189, 235, 0.44) !important;
  color: var(--be-cyan) !important;
}

body .fp-hero p,
body .wx-page-hero p,
body .blog-sub,
body .loc-hero p,
body .country-subtitle,
body .city-subtitle,
body .fp-hero-copy p,
body .wizard-sub,
body .ep-subtitle,
body .te-subtitle,
body .tr-subtitle,
body .dr-subtitle,
body .login-sub,
body .wx-info-meta,
body .wx-contact-meta,
body .agency-card-desc,
body .blog-excerpt,
body .sd-agency,
body .mt-meta-line,
body .sd-meta-line {
  color: var(--be-muted) !important;
}

body .block-head,
body .section-heading,
body .ds-card-head,
body .nu-card-head,
body .wx-info-section + .wx-info-section,
body .sx-package-actions,
body .footer-bottom,
body .compact-footer-bottom {
  border-color: var(--be-line-soft) !important;
}

body .escort-card,
body .agency-card,
body .blog-card,
body .sx-package-card,
body .bsr-review-card,
body .nu-profile-card,
body .account-card {
  transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease !important;
}

body .escort-card:hover,
body .agency-card:hover,
body .blog-card:hover,
body .sx-package-card:hover,
body .bsr-review-card:hover,
body .nu-profile-card:hover,
body .account-card:hover {
  transform: translateY(-3px) !important;
  border-color: var(--be-cyan) !important;
  box-shadow: 0 16px 38px rgba(0, 0, 0, 0.52), 0 0 0 1px rgba(12, 189, 235, 0.16) !important;
}

body .escort-card h3,
body .escort-card h4,
body .escort-card .escort-name,
body .agency-card h3,
body .agency-card h4,
body .agency-card .agency-card-title,
body .blog-card h2,
body .blog-card h3,
body .sx-package-card h3,
body .bsr-review-card h3,
body .nu-profile-card h3,
body .sd-name,
body .mt-title,
body .sd-title,
body .sp-main-title {
  color: var(--be-white) !important;
}

body .agency-card-cta,
body .escort-card .card-cta,
body .fp-card-btn,
body .blog-card .read-more {
  color: var(--be-cyan) !important;
}

/* ============================================================
   LOCATION DIRECTORY AND SEARCH CONTROLS
============================================================ */
body .cc-strip {
  border-bottom-color: var(--be-line) !important;
}

body .cc-strip .cc-country-select,
body .loc-mini-search input,
body .loc-mini-search select,
body .loc-toolbar input,
body .loc-toolbar select,
body .city-search input,
body .country-search input {
  background: #090a0b !important;
  border-color: var(--be-cyan-deep) !important;
  color: var(--be-white) !important;
}

body .cc-strip .cc-country-dropdown,
body .cc-strip .cc-country-list,
body .cc-strip .cc-country-dropdown button {
  background: #090a0b !important;
  border-color: var(--be-line) !important;
  color: var(--be-copy) !important;
}

body .cc-strip .cc-country-dropdown button:hover {
  background: var(--be-cyan-soft) !important;
  color: var(--be-cyan) !important;
}

body .cc-strip .cc-city,
body .city-pill,
body .loc-flat-city,
body .loc-home-btn,
body .mobile-cc-city-list a,
body .mobile-cc-city-list button {
  background: #0b0c0d !important;
  border: 1px solid var(--be-line) !important;
  color: var(--be-copy) !important;
  box-shadow: none !important;
}

body .cc-strip .cc-city:hover,
body .cc-strip .cc-city.active,
body .city-pill:hover,
body .loc-flat-city:hover,
body .loc-home-btn:hover,
body .mobile-cc-city-list a:hover,
body .mobile-cc-city-list button:hover {
  background: var(--be-cyan) !important;
  border-color: var(--be-cyan) !important;
  color: var(--be-black) !important;
}

body .cc-strip .cc-city-count,
body .loc-flat-city-count,
body .city-pill-count {
  background: var(--be-yellow) !important;
  color: var(--be-black) !important;
}

body .cc-strip .cc-search,
body .cc-strip .cc-available,
body .cc-strip .cc-verified,
body .cc-strip .cc-filters {
  background: var(--be-cyan-deep) !important;
  color: var(--be-white) !important;
}

body .cc-strip .cc-search:hover,
body .cc-strip .cc-available:hover,
body .cc-strip .cc-verified:hover,
body .cc-strip .cc-filters:hover {
  background: var(--be-yellow) !important;
  color: var(--be-black) !important;
}

/* ============================================================
   BUTTONS, CTA AND PAGINATION
============================================================ */
body button,
body input[type="submit"],
body input[type="button"],
body .button,
body .btn,
body .fp-primary-btn,
body .fp-secondary-btn,
body .ds-btn,
body .ep-btn,
body .ae-btn,
body .sx-btn,
body .btn-primary,
body .btn-secondary,
body .login-register-btn,
body .account-btn,
body .wx-pagination .page-numbers,
body .blog-pagination .page-numbers,
body .city-pagination .page-numbers,
body .country-pagination .page-numbers {
  border-color: var(--be-cyan-deep) !important;
  box-shadow: none !important;
}

body .fp-primary-btn,
body .ds-btn-gold,
body .btn-gold,
body .btn-primary,
body input[type="submit"],
body button[type="submit"],
body .sx-package-card .sx-btn,
body .sx-checkout-form .sx-btn,
body .login-register-btn:not(.login-register-btn-outline) {
  background: var(--be-yellow) !important;
  border-color: var(--be-yellow) !important;
  color: var(--be-black) !important;
}

body .fp-primary-btn:hover,
body .ds-btn-gold:hover,
body .btn-gold:hover,
body .btn-primary:hover,
body input[type="submit"]:hover,
body button[type="submit"]:hover,
body .sx-package-card .sx-btn:hover,
body .sx-checkout-form .sx-btn:hover,
body .login-register-btn:not(.login-register-btn-outline):hover {
  background: #ffff32 !important;
  color: var(--be-black) !important;
}

body .fp-secondary-btn,
body .ds-btn-ghost,
body .ep-btn-ghost,
body .ae-btn-ghost,
body .btn-secondary,
body .button:not(.button-primary),
body .login-register-btn-outline,
body .wx-pagination .page-numbers,
body .blog-pagination .page-numbers,
body .city-pagination .page-numbers,
body .country-pagination .page-numbers {
  background: #0b0c0d !important;
  border-color: var(--be-cyan-deep) !important;
  color: var(--be-cyan) !important;
}

body .fp-secondary-btn:hover,
body .ds-btn-ghost:hover,
body .ep-btn-ghost:hover,
body .ae-btn-ghost:hover,
body .btn-secondary:hover,
body .button:not(.button-primary):hover,
body .login-register-btn-outline:hover,
body .wx-pagination .page-numbers:hover,
body .blog-pagination .page-numbers:hover,
body .city-pagination .page-numbers:hover,
body .country-pagination .page-numbers:hover,
body .wx-pagination .page-numbers.current,
body .blog-pagination .page-numbers.current,
body .city-pagination .page-numbers.current,
body .country-pagination .page-numbers.current {
  background: var(--be-cyan) !important;
  border-color: var(--be-cyan) !important;
  color: var(--be-black) !important;
}

body .price,
body .sx-package-price,
body .sx-premium-stat strong,
body .fp-hero-stat strong,
body .loc-hero-stats strong,
body .bsr-review-stat strong,
body .ds-stat-value,
body .premium-price,
body .booking-line,
body .contact-highlight {
  color: var(--be-yellow) !important;
}

/* ============================================================
   FORMS, TABLES, FILTERS AND DROPDOWNS
============================================================ */
body input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):not([type="button"]),
body textarea,
body select,
body .tr-input,
body .te-input,
body .ep-input,
body .field input,
body .field textarea,
body .field select {
  background: #090a0b !important;
  border-color: rgba(12, 189, 235, 0.38) !important;
  color: var(--be-white) !important;
  caret-color: var(--be-cyan) !important;
  box-shadow: inset 0 1px 5px rgba(0, 0, 0, 0.24) !important;
}

body input::placeholder,
body textarea::placeholder {
  color: #84959a !important;
  opacity: 1 !important;
}

body input:focus,
body textarea:focus,
body select:focus {
  border-color: var(--be-cyan) !important;
  box-shadow: 0 0 0 3px rgba(12, 189, 235, 0.14) !important;
  outline: none !important;
}

body select option {
  background: #090a0b !important;
  color: var(--be-white) !important;
}

body table,
body .widefat,
body .form-table {
  background: var(--be-panel) !important;
  border-color: var(--be-line) !important;
  color: var(--be-copy) !important;
}

body table thead,
body table th,
body .widefat thead,
body .widefat th {
  background: #0b0c0d !important;
  color: var(--be-cyan) !important;
  border-color: var(--be-line) !important;
}

body table td,
body table tr,
body .widefat td {
  border-color: var(--be-line-soft) !important;
}

body table tbody tr:nth-child(even) {
  background: rgba(255, 255, 255, 0.018) !important;
}

body hr,
body .separator,
body .divider {
  border-color: var(--be-line-soft) !important;
  background: var(--be-line-soft) !important;
}

/* ============================================================
   DASHBOARDS, REGISTRATION WIZARDS AND EDITORS
============================================================ */
body .wizard-page,
body .wizard-theme {
  --midnight: var(--be-black) !important;
  --slate: var(--be-panel) !important;
  --deep-slate: #101214 !important;
  --champagne: var(--be-yellow) !important;
  --rose-gold: #c3c304 !important;
  --warm-gold: #ffff32 !important;
  --bg-primary: var(--be-black) !important;
  --bg-secondary: var(--be-panel) !important;
  --bg-tertiary: #101214 !important;
  --bg-elevated: var(--be-panel-2) !important;
  --text-primary: var(--be-white) !important;
  --text-secondary: var(--be-copy) !important;
  --text-muted: var(--be-muted) !important;
  --border-gold: var(--be-cyan) !important;
  --gradient-gold: linear-gradient(135deg, var(--be-cyan-deep), var(--be-cyan)) !important;
  --gradient-gold-hover: linear-gradient(135deg, var(--be-cyan), #8deaff) !important;
  --gradient-glow: radial-gradient(circle at 50% 0%, rgba(12, 189, 235, 0.16), transparent 52%) !important;
  --shadow-gold: 0 4px 20px rgba(12, 189, 235, 0.22) !important;
  --shadow-gold-lg: 0 8px 32px rgba(12, 189, 235, 0.28) !important;
}

body .ds-root,
body .ep-root,
body .ae-wrap,
body .dash-layout,
body .tr-page,
body .te-page,
body .dr-root {
  --gold: var(--be-yellow) !important;
  --accent: var(--be-cyan) !important;
  --brand: var(--be-cyan) !important;
  --primary: var(--be-cyan) !important;
  --text: var(--be-white) !important;
  --text-muted: var(--be-muted) !important;
  --text-dim: #7f9298 !important;
  --bg: var(--be-black) !important;
  --bg2: #101214 !important;
  --bg3: var(--be-panel) !important;
  --bg4: var(--be-panel-2) !important;
  --border: var(--be-line) !important;
  --border2: var(--be-line-soft) !important;
}

body .ds-card-title,
body .ds-card-head > span,
body .ds-page-title,
body .ds-avatar-name,
body .ep-title,
body .ep-card-title,
body .ae-topbar-title,
body .ae-section-title,
body .tr-title,
body .te-title,
body .dr-title {
  color: var(--be-cyan) !important;
}

body .progress-dots .active,
body .tr-step.active,
body .ep-step-list .active,
body .ae-sidenav-link.active,
body .ds-sidebar a.active,
body .dash-sidebar a.active {
  background: var(--be-cyan-soft) !important;
  border-color: var(--be-cyan) !important;
  color: var(--be-cyan) !important;
}

/* ============================================================
   PROFILE SIDEBARS, CONTACT ACTIONS AND EMPTY STATES
============================================================ */
body .main-right-inner,
body .sidebar-card,
body .profile-sidebar,
body .contact-card,
body .booking-card,
body .location-contact-card,
body .wx-empty-state,
body .loc-no-results,
body .no-results,
body .nu-empty,
body .mt-empty,
body .sd-empty {
  background: var(--be-panel) !important;
  border-color: var(--be-line) !important;
  color: var(--be-copy) !important;
}

body .whatsapp-btn,
body .location-whatsapp-btn,
body .sd-cta-btn.whatsapp,
body .bsr-lw-action--whatsapp {
  background: var(--be-cyan-deep) !important;
  border-color: var(--be-cyan) !important;
  color: var(--be-white) !important;
}

body .call-btn,
body .location-call-btn,
body .sd-cta-btn.call,
body .bsr-lw-action--phone {
  background: var(--be-yellow) !important;
  border-color: var(--be-yellow) !important;
  color: var(--be-black) !important;
}

body .whatsapp-btn:hover,
body .location-whatsapp-btn:hover,
body .sd-cta-btn.whatsapp:hover,
body .bsr-lw-action--whatsapp:hover {
  background: var(--be-cyan) !important;
  color: var(--be-black) !important;
}

body .call-btn:hover,
body .location-call-btn:hover,
body .sd-cta-btn.call:hover,
body .bsr-lw-action--phone:hover {
  background: #ffff32 !important;
  color: var(--be-black) !important;
}

/* ============================================================
   NOTICES AND STATUS ELEMENTS
============================================================ */
body .notice,
body .alert,
body .wx-contact-alert,
body .ds-success-banner,
body .ds-error-banner,
body .ep-success,
body .dr-alert {
  background: #101214 !important;
  border-color: var(--be-line) !important;
  color: var(--be-copy) !important;
}

body .notice-success,
body .alert-success,
body .wx-contact-alert--success,
body .ds-success-banner,
body .dr-alert-success {
  border-left-color: #3fd58b !important;
}

body .notice-error,
body .alert-error,
body .wx-contact-alert--error,
body .ds-error-banner,
body .dr-alert-error {
  border-left-color: #ff6262 !important;
}

/* ============================================================
   FOOTER
============================================================ */
body .site-footer.premium-footer,
body .site-footer.premium-footer.compact-premium-footer {
  background:
    radial-gradient(circle at 10% 0%, rgba(12, 189, 235, 0.12), transparent 30%),
    linear-gradient(180deg, #111315 0%, #030303 100%) !important;
  border-top: 5px solid var(--be-cyan) !important;
  color: var(--be-copy) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.035) !important;
}

body .footer-glow {
  background: linear-gradient(90deg, rgba(12, 189, 235, 0.12), transparent 45%, rgba(227, 227, 6, 0.04)) !important;
}

body .premium-footer h4,
body .compact-premium-footer h4 {
  color: var(--be-cyan) !important;
}

body .premium-footer .footer-text,
body .compact-premium-footer .footer-text,
body .premium-footer .footer-bottom,
body .compact-premium-footer .compact-footer-bottom,
body .compact-premium-footer .compact-footer-bottom span {
  color: var(--be-muted) !important;
}

body .premium-footer ul a,
body .compact-premium-footer ul a {
  color: var(--be-copy) !important;
  background: transparent !important;
  border-color: transparent !important;
}

body .premium-footer ul a:hover,
body .compact-premium-footer ul a:hover {
  color: var(--be-yellow) !important;
  background: var(--be-yellow-soft) !important;
  border-color: rgba(227, 227, 6, 0.18) !important;
}

body .premium-footer .footer-bottom a,
body .compact-premium-footer .compact-footer-bottom a,
body .compact-premium-footer .footer-bottom-links a {
  color: var(--be-yellow) !important;
}

body .premium-footer .footer-bottom a:hover,
body .compact-premium-footer .compact-footer-bottom a:hover,
body .compact-premium-footer .footer-bottom-links a:hover {
  color: var(--be-cyan) !important;
}

/* ============================================================
   ACCESSIBILITY AND RESPONSIVE POLISH
============================================================ */
body :focus-visible {
  outline: 2px solid var(--be-yellow) !important;
  outline-offset: 3px !important;
}

@media (max-width: 991px) {
  body .site-header.premium-header {
    border-top-width: 4px !important;
  }

  body .mobile-top-row,
  body .mobile-bottom-row {
    border-color: var(--be-line-soft) !important;
  }

  body .listing-block,
  body .wx-listing-block,
  body .banner-wrap,
  body .wx-banner-wrap,
  body .fp-hero,
  body .loc-hero,
  body .blog-hero {
    border-left-color: transparent !important;
    border-right-color: transparent !important;
    border-radius: 0 !important;
  }
}

/* ============================================================
   LOCATION AND INTERNAL CONTENT CONTRAST FIX
   Keep content cards inside the dark palette and prevent inherited
   pale text from becoming unreadable on legacy white backgrounds.
============================================================ */
body .location-directory,
body .location-grid.home-grid,
body .city-directory-page,
body .country-directory-page {
  background: transparent !important;
}

body .location-content,
body .location-content.content-card,
body .city-content,
body .country-content,
body .content-card {
  background-color: var(--be-panel) !important;
  background-image: linear-gradient(145deg, rgba(255, 255, 255, 0.018), rgba(0, 0, 0, 0.08)) !important;
  border: 1px solid var(--be-line) !important;
  color: var(--be-copy) !important;
  box-shadow: var(--be-shadow) !important;
}

body .location-content .section-heading,
body .location-content h2,
body .location-content h3,
body .location-content h4,
body .city-content h2,
body .city-content h3,
body .country-content h2,
body .country-content h3,
body .content-card h2,
body .content-card h3,
body .content-card h4 {
  color: var(--be-cyan) !important;
  border-color: var(--be-line-soft) !important;
}

body .location-prose,
body .location-prose p,
body .location-prose li,
body .location-prose ol,
body .location-prose ul,
body .location-content p,
body .location-content li,
body .city-content p,
body .city-content li,
body .country-content p,
body .country-content li,
body .content-card p,
body .content-card li,
body .content-card span:not(.button):not(.btn) {
  color: var(--be-copy) !important;
}

body .location-prose strong,
body .location-content strong,
body .city-content strong,
body .country-content strong,
body .content-card strong {
  color: var(--be-white) !important;
}

body .location-prose a,
body .location-content a,
body .city-content a,
body .country-content a,
body .content-card a {
  color: var(--be-cyan) !important;
}

body .location-prose a:hover,
body .location-content a:hover,
body .city-content a:hover,
body .country-content a:hover,
body .content-card a:hover {
  color: var(--be-yellow) !important;
}

body .location-prose table,
body .location-prose th,
body .location-prose td {
  background: var(--be-panel-2) !important;
  border-color: var(--be-line-soft) !important;
  color: var(--be-copy) !important;
}

body .location-prose th {
  color: var(--be-cyan) !important;
}

body .no-results {
  background: var(--be-panel) !important;
  border-color: var(--be-line) !important;
  color: var(--be-copy) !important;
}

body .no-results h3 {
  color: var(--be-cyan) !important;
}

body .no-results p {
  color: var(--be-copy) !important;
}

