/* ==========================================================================
   EUROPE ODYSSEY - PREMIUM LUXURY UI & UX DESIGN SYSTEM
   Bespoke Child Theme Enhancements for Luxury European Tours
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. DESIGN TOKENS & CSS VARIABLES
   -------------------------------------------------------------------------- */
:root {
  /* Brand Luxury Palette */
  --eo-navy-950: #050c18;
  --eo-navy-900: #0b1528;
  --eo-navy-850: #0f1d36;
  --eo-navy-800: #142544;
  --eo-navy-700: #1c335a;

  /* Primary Sapphire Accent */
  --eo-sapphire-600: #1d4ed8;
  --eo-sapphire-500: #2563eb;
  --eo-sapphire-400: #3b82f6;
  --eo-sapphire-glow: rgba(29, 78, 216, 0.22);

  /* Luxury Warm Gold Accent */
  --eo-gold-600: #b58d3d;
  --eo-gold-500: #c5a059;
  --eo-gold-400: #d4af37;
  --eo-gold-300: #e2c56f;
  --eo-gold-100: #fbf7ee;
  --eo-gold-glow: rgba(197, 160, 89, 0.25);

  /* Refined Terracotta / Italian Sienna */
  --eo-sienna-600: #c24e23;
  --eo-sienna-500: #db592a;
  --eo-sienna-light: #fef5f1;

  /* Surface & Text */
  --eo-bg-body: #f8fafc;
  --eo-bg-card: #ffffff;
  --eo-bg-subtle: #f1f5f9;
  --eo-text-main: #0f172a;
  --eo-text-body: #334155;
  --eo-text-muted: #64748b;
  --eo-text-light: #94a3b8;

  /* Borders & Dividers */
  --eo-border-subtle: rgba(15, 34, 61, 0.07);
  --eo-border-medium: #e2e8f0;
  --eo-border-focus: rgba(29, 78, 216, 0.4);

  /* Shadows & Elevation */
  --eo-shadow-sm: 0 2px 6px rgba(11, 21, 40, 0.04);
  --eo-shadow-md: 0 6px 20px -2px rgba(11, 21, 40, 0.08);
  --eo-shadow-lg: 0 16px 36px -6px rgba(11, 21, 40, 0.12);
  --eo-shadow-xl: 0 24px 52px -12px rgba(11, 21, 40, 0.16);
  --eo-shadow-card-hover: 0 20px 40px -8px rgba(11, 21, 40, 0.14);
  --eo-shadow-button: 0 8px 24px rgba(29, 78, 216, 0.3);

  /* Radii */
  --eo-radius-sm: 8px;
  --eo-radius-md: 14px;
  --eo-radius-lg: 20px;
  --eo-radius-pill: 9999px;

  /* Transitions */
  --eo-transition-fast: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  --eo-transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  --eo-transition-smooth: all 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

/* --------------------------------------------------------------------------
   2. GLOBAL TYPOGRAPHY & LUXURY REFINEMENTS (FULL WEBSITE TYPOGRAPHY)
   -------------------------------------------------------------------------- */
:root {
  --e-global-typography-primary-font-family: 'Playfair Display', Georgia, serif;
  --e-global-typography-secondary-font-family: 'Plus Jakarta Sans', sans-serif;
  --e-global-typography-text-font-family: 'Plus Jakarta Sans', sans-serif;
  --e-global-typography-accent-font-family: 'Plus Jakarta Sans', sans-serif;
}

body,
p,
span,
li,
a,
input,
textarea,
select,
button,
label,
.btn,
.sidebar,
.widget,
.st-meta,
.meta-item,
.service-desc {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  color: var(--eo-text-body);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  background-color: var(--eo-bg-body);
  line-height: 1.65;
}

/* Master Editorial Headings: Playfair Display for Luxury Prestige */
h1,
h2,
h3,
h4,
.entry-title,
.post-title,
.page-title,
.st-heading,
.title-section,
.st-editorial-title,
.single-st_tours .st-service-header h1,
.single-location .banner-content h1,
.single-location h1.entry-title,
.page-template-template-tour-search .banner-content h1,
.st-blog h1.title,
.st-blog h2.post-title,
.st-blog h2.post-title a,
.article-style3 .post-inner h1.title,
.article-style3 .post-inner h2.post-title,
.article-style3 .post-inner h2.post-title a,
.elementor-heading-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  color: var(--eo-text-main);
  font-weight: 700;
  letter-spacing: -0.015em;
  line-height: 1.3 !important;
}

/* Subheadings / Interface Labels stay Crisp Sans-Serif */
h5,
h6,
.sub-title,
.section-sub-title,
.st-sub-heading,
.meta-nav,
.item-meta,
.badge,
.tag-item {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  letter-spacing: 0.02em;
}

/* Custom Scrollbar */
::-webkit-scrollbar {
  width: 8px;
  height: 8px;
}

::-webkit-scrollbar-track {
  background: #f1f5f9;
}

::-webkit-scrollbar-thumb {
  background: #cbd5e1;
  border-radius: 4px;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--eo-gold-500);
}

/* Selection Color - Universal High-Contrast Luxury Selection */
::selection,
*::selection {
  background-color: #0b1528 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: none !important;
}

::-moz-selection,
*::-moz-selection {
  background-color: #0b1528 !important;
  color: #ffffff !important;
  text-shadow: none !important;
}

/* Radiant Gold Highlight on Dark Navy Components */
.form-head ::selection,
.form-head *::selection,
#topbar ::selection,
#topbar *::selection,
footer ::selection,
footer *::selection,
.bg-navy ::selection,
.bg-navy *::selection {
  background-color: #dfba73 !important;
  color: #070f1e !important;
  -webkit-text-fill-color: #070f1e !important;
  text-shadow: none !important;
}

.form-head ::-moz-selection,
.form-head *::-moz-selection,
#topbar ::-moz-selection,
#topbar *::-moz-selection,
footer ::-moz-selection,
footer *::-moz-selection,
.bg-navy ::-moz-selection,
.bg-navy *::-moz-selection {
  background-color: #dfba73 !important;
  color: #070f1e !important;
  text-shadow: none !important;
}

/* --------------------------------------------------------------------------
   3. TOPBAR & LUXURY HEADER NAVIGATION
   -------------------------------------------------------------------------- */
#topbar {
  background: var(--eo-navy-900) !important;
  color: #e2e8f0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  padding: 8px 0 !important;
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.2px;
}

#topbar a {
  color: #cbd5e1 !important;
  transition: var(--eo-transition-fast);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

#topbar a:hover {
  color: var(--eo-gold-400) !important;
}

#topbar i,
#topbar [class^="stt-icon-"] {
  color: var(--eo-gold-400) !important;
  font-size: 14px;
}

#topbar .topbar-items li {
  margin-right: 20px;
}

/* Header Container & Sticky Glassmorphism */
.header.header-sticky-menu {
  background: rgba(255, 255, 255, 0.96) !important;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  box-shadow: 0 4px 20px rgba(11, 21, 40, 0.05);
  border-bottom: 1px solid var(--eo-border-subtle);
  transition: var(--eo-transition);
  padding: 12px 24px !important;
}

.header.header-sticky-menu.is-sticky,
.header.header-sticky-menu.scrolled-header {
  padding: 8px 24px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 10px 30px rgba(11, 21, 40, 0.09) !important;
}

.header .logo img {
  max-height: 48px;
  width: auto;
  transition: var(--eo-transition-fast);
}

.header.is-sticky .logo img,
.header.scrolled-header .logo img {
  max-height: 42px;
}

/* Main Navigation Menu */
#st-main-menu>ul>li>a {
  color: var(--eo-navy-900) !important;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: -0.01em;
  padding: 10px 16px !important;
  position: relative;
  transition: var(--eo-transition-fast);
}

#st-main-menu>ul>li>a:hover,
#st-main-menu>ul>li.current-menu-item>a,
#st-main-menu>ul>li.current_page_item>a {
  color: var(--eo-sapphire-600) !important;
}

/* Elegant Underline Indicator on Hover */
#st-main-menu>ul>li>a::after {
  content: '';
  position: absolute;
  bottom: 4px;
  left: 16px;
  right: 16px;
  height: 2px;
  background: linear-gradient(90deg, var(--eo-sapphire-600), var(--eo-gold-500));
  border-radius: 2px;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

#st-main-menu>ul>li>a:hover::after,
#st-main-menu>ul>li.current-menu-item>a::after,
#st-main-menu>ul>li.current_page_item>a::after {
  transform: scaleX(1);
}

/* Dropdown Sub-menus */
#st-main-menu ul.sub-menu {
  background: #ffffff !important;
  border-radius: var(--eo-radius-md) !important;
  border: 1px solid var(--eo-border-subtle) !important;
  box-shadow: var(--eo-shadow-lg) !important;
  padding: 10px 0 !important;
  overflow: hidden;
}

#st-main-menu ul.sub-menu li a {
  color: var(--eo-text-body) !important;
  font-size: 14px;
  font-weight: 500;
  padding: 9px 22px !important;
  transition: var(--eo-transition-fast);
}

#st-main-menu ul.sub-menu li a:hover {
  color: var(--eo-sapphire-600) !important;
  background: var(--eo-bg-subtle) !important;
  padding-left: 26px !important;
}

/* --------------------------------------------------------------------------
   4. LUXURY FLOATING SEARCH ENGINE (HERO & ARCHIVE WIDGETS)
   -------------------------------------------------------------------------- */
.st-banner-search-form,
.st-search-form-el,
.search-form-v2 {
  background: #ffffff !important;
  border-radius: var(--eo-radius-lg) !important;
  box-shadow: var(--eo-shadow-xl) !important;
  border: 1px solid rgba(226, 232, 240, 0.8) !important;
  padding: 8px !important;
  transition: var(--eo-transition);
}

.st-banner-search-form:hover,
.search-form-v2:hover {
  box-shadow: 0 28px 60px -12px rgba(11, 21, 40, 0.2) !important;
  border-color: rgba(197, 160, 89, 0.3) !important;
}

/* Form Fields */
.st-banner-search-form .form-group,
.search-form-v2 .form-group {
  border-right: 1px solid var(--eo-border-medium) !important;
  padding: 10px 18px !important;
  margin-bottom: 0 !important;
  position: relative;
  transition: var(--eo-transition-fast);
}

.st-banner-search-form .form-group:last-of-type,
.search-form-v2 .form-group:last-of-type {
  border-right: none !important;
}

.st-banner-search-form .form-group label,
.search-form-v2 .form-group label {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  color: var(--eo-text-muted) !important;
  margin-bottom: 4px !important;
  display: block;
}

.st-banner-search-form .form-group .render,
.search-form-v2 .form-group .render,
.search-form-v2 input[type="text"],
.st-banner-search-form input[type="text"] {
  font-size: 15px !important;
  font-weight: 600 !important;
  color: var(--eo-navy-950) !important;
}

/* Search Submit Button */
.btn-search,
.button-search-wrapper .btn-search,
.st-banner-search-form .btn-search {
  background: linear-gradient(135deg, var(--eo-sapphire-600) 0%, var(--eo-navy-850) 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: var(--eo-radius-md) !important;
  font-weight: 600 !important;
  font-size: 15px !important;
  letter-spacing: 0.3px !important;
  padding: 14px 28px !important;
  box-shadow: var(--eo-shadow-button) !important;
  transition: var(--eo-transition) !important;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.btn-search:hover,
.button-search-wrapper .btn-search:hover,
.st-banner-search-form .btn-search:hover {
  background: linear-gradient(135deg, var(--eo-sapphire-500) 0%, var(--eo-navy-900) 100%) !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(29, 78, 216, 0.4) !important;
  color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   5. ELEVATED TOUR CARDS (HOMEPAGE, TOUR LIST, LOCATION PAGES)
   -------------------------------------------------------------------------- */
.services-item.grid .item.service-border,
.item-service.grid,
.services-item .item,
.item-tour .item.item-tours.service-border,
.item-tour .item-tours,
.item-tours {
  background: var(--eo-bg-card) !important;
  border-radius: var(--eo-radius-lg) !important;
  border: 1px solid var(--eo-border-subtle) !important;
  box-shadow: var(--eo-shadow-sm) !important;
  overflow: hidden !important;
  transition: var(--eo-transition) !important;
  position: relative;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.services-item.grid .item.service-border:hover,
.services-item .item:hover,
.item-tour .item.item-tours.service-border:hover,
.item-tour .item-tours:hover,
.item-tours:hover {
  transform: translateY(-8px);
  box-shadow: var(--eo-shadow-card-hover) !important;
  border-color: rgba(197, 160, 89, 0.35) !important;
}

/* Card Image & Hover Zoom */
.services-item .featured-image,
.item-tours .featured-image,
.listitemsuraj1 {
  position: relative;
  overflow: hidden;
  border-radius: var(--eo-radius-lg) var(--eo-radius-lg) 0 0;
  aspect-ratio: 16 / 10;
  background: #e2e8f0;
}

.services-item .featured-image img,
.item-tours .featured-image img,
.listitemsuraj1 img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.services-item .item:hover .featured-image img,
.item-tour .item-tours:hover .featured-image img,
.item-tours:hover .featured-image img {
  transform: scale(1.06);
}

.feature_class.st_featured.Unavailable {
  background: #f43f5e !important;
  color: #ffffff !important;
  padding: 4px 10px !important;
  border-radius: var(--eo-radius-pill) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.service-duration {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--eo-text-muted) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.footer-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}

#modern-search-result .service-list-wrapper.row {
  row-gap: 28px !important;
}

/* Luxury Feature / Sale Badges */
.st-tag-feature-sale {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 3;
}

.st-tag-feature-sale .featured,
.st-tag-feature-sale .sale-tag,
.service-tag {
  background: rgba(11, 21, 40, 0.82) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.15);
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
  padding: 5px 12px !important;
  border-radius: var(--eo-radius-pill) !important;
  display: inline-flex;
  align-items: center;
  gap: 4px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.st-tag-feature-sale .featured {
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: #ffffff !important;
  border: none;
}

/* Wishlist Floating Button */
.service-add-wishlist {
  position: absolute;
  top: 14px;
  right: 14px;
  z-index: 3;
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.9) !important;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.1) !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: var(--eo-transition-fast);
}

.service-add-wishlist:hover {
  background: #ffffff !important;
  transform: scale(1.12);
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.15) !important;
}

.service-add-wishlist i,
.service-add-wishlist svg {
  color: var(--eo-text-muted) !important;
  font-size: 16px;
  transition: var(--eo-transition-fast);
}

.service-add-wishlist:hover i,
.service-add-wishlist:hover svg,
.service-add-wishlist.added i {
  color: #ef4444 !important;
}

/* Card Content Area */
.services-item .content-item,
.item-tours .content-item {
  padding: 20px 22px 22px !important;
  display: flex;
  flex-direction: column;
  flex-grow: 1;
}

.services-item .service-location,
.item-tours .service-location {
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--eo-gold-600) !important;
  display: flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 8px !important;
}

.services-item .title,
.item-tours .title {
  margin-bottom: 12px !important;
}

.services-item .title a,
.item-tours .title a {
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;
  color: var(--eo-navy-950) !important;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: var(--eo-transition-fast);
}

.services-item .title a:hover,
.item-tours .title a:hover {
  color: var(--eo-sapphire-600) !important;
}

/* Card Metadata (Duration, Group Size) */
.services-item .service-review,
.item-tours .reviews {
  margin-bottom: 14px;
}

.services-item .rate,
.item-tours .rate {
  color: #f59e0b !important;
  font-size: 14px;
  font-weight: 700;
  display: flex;
  align-items: center;
  gap: 4px;
}

.services-item .rate .count,
.item-tours .reviews .summary {
  color: var(--eo-text-muted);
  font-size: 12px;
  font-weight: 500;
  margin-left: 4px;
}

/* Card Price Footer */
.services-item .section-footer,
.item-tours .section-footer {
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid var(--eo-border-subtle);
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.services-item .price-wrapper,
.item-tours .price-wrapper {
  display: flex;
  flex-direction: column;
}

.services-item .price-wrapper .price-tour .label,
.item-tours .price-wrapper .fr_text {
  font-size: 12px;
  color: var(--eo-text-muted);
  font-weight: 500;
  margin-right: 4px;
}

.services-item .price-wrapper .price-tour .price,
.item-tours .price-wrapper .price,
.item-tours .price-wrapper .price .text-lg {
  font-size: 20px !important;
  font-weight: 800 !important;
  color: var(--eo-navy-950) !important;
  letter-spacing: -0.02em;
}

/* --------------------------------------------------------------------------
   6. TOUR SEARCH & ARCHIVE PAGE (/europe-odyssey-tour/)
   -------------------------------------------------------------------------- */
#tour-top-search .banner {
  position: relative;
  background-position: center center !important;
  background-size: cover !important;
  padding: 90px 0 80px !important;
}

#tour-top-search .banner::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(180deg, rgba(11, 21, 40, 0.65) 0%, rgba(11, 21, 40, 0.88) 100%) !important;
  z-index: 1;
}

#tour-top-search .banner .container {
  position: relative;
  z-index: 2;
}

#tour-top-search .banner .banner-content h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  color: #ffffff !important;
  font-size: 42px !important;
  font-weight: 700 !important;
  margin-bottom: 12px !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

/* Search Result Filters Bar */
.modern-search-result .toolbar {
  background: #ffffff;
  padding: 16px 24px;
  border-radius: var(--eo-radius-md);
  border: 1px solid var(--eo-border-medium);
  box-shadow: var(--eo-shadow-sm);
  margin-bottom: 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

/* Filter Dropdown Buttons */
.btn-sort,
.btn-filter,
.btn-date {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-pill) !important;
  padding: 8px 18px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--eo-text-body) !important;
  transition: var(--eo-transition-fast) !important;
}

.btn-sort:hover,
.btn-filter:hover,
.btn-date:hover {
  border-color: var(--eo-sapphire-600) !important;
  color: var(--eo-sapphire-600) !important;
  background: var(--eo-bg-subtle) !important;
}

.btn-clear-filter {
  color: #ef4444 !important;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
  transition: var(--eo-transition-fast);
}

.btn-clear-filter:hover {
  text-decoration: underline;
}

/* Pagination */
#moderm-pagination,
.st-pagination {
  margin-top: 45px !important;
  text-align: center;
}

#moderm-pagination .page-numbers,
.st-pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: var(--eo-radius-sm);
  background: #ffffff;
  border: 1px solid var(--eo-border-medium);
  color: var(--eo-text-body);
  font-weight: 700;
  font-size: 14px;
  margin: 0 4px;
  transition: var(--eo-transition-fast);
  text-decoration: none;
}

#moderm-pagination .page-numbers:hover,
.st-pagination .page-numbers:hover {
  border-color: var(--eo-sapphire-600);
  color: var(--eo-sapphire-600);
  background: var(--eo-bg-subtle);
}

#moderm-pagination .page-numbers.current,
.st-pagination .page-numbers.current {
  background: linear-gradient(135deg, var(--eo-sapphire-600) 0%, var(--eo-navy-850) 100%) !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 4px 14px rgba(29, 78, 216, 0.3);
}

/* --------------------------------------------------------------------------
   7. SINGLE TOUR PAGE (/st_tour/create-your-milan-tour/)
   -------------------------------------------------------------------------- */
.single-st_tours .st-service-header {
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid var(--eo-border-medium);
}

.single-st_tours .st-service-header h1 {
  font-size: 34px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  line-height: 1.25 !important;
  margin-bottom: 10px !important;
}

/* Tour Feature Icons Strip (Duration, Tour Type, Language, etc.) */
.st-service-feature {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
  gap: 16px;
  background: #ffffff;
  border-radius: var(--eo-radius-md);
  border: 1px solid var(--eo-border-medium);
  padding: 18px 22px;
  margin-bottom: 30px;
  box-shadow: var(--eo-shadow-sm);
}

.st-service-feature .item {
  display: flex;
  align-items: center;
  gap: 12px;
}

.st-service-feature .item .icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background: var(--eo-gold-100);
  color: var(--eo-gold-600);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  flex-shrink: 0;
}

.st-service-feature .item .info .name {
  font-size: 11px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--eo-text-muted);
}

.st-service-feature .item .info .value {
  font-size: 14px;
  font-weight: 700;
  color: var(--eo-navy-950);
}

/* --- OVERRIDE PREVIOUS CLASHING ORANGE & HARSH BLUE HEADINGS --- */
#st-content-wrapper .st-heading-section,
#st-content-wrapper .accordion-button,
.single-st_tours .st-heading-section {
  background: #ffffff !important;
  color: var(--eo-navy-950) !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-left: 5px solid var(--eo-gold-500) !important;
  border-radius: var(--eo-radius-md) !important;
  box-shadow: var(--eo-shadow-sm) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 17px !important;
  padding: 14px 22px !important;
  max-width: 100% !important;
  transition: var(--eo-transition-fast);
}

#st-content-wrapper .accordion-button:not(.collapsed) {
  border-color: var(--eo-gold-500) !important;
  box-shadow: var(--eo-shadow-md) !important;
}

/* Itinerary Timeline Overhaul */
.st-program-list.style1 {
  position: relative;
  padding-left: 20px;
  margin-top: 25px;
}

.st-program-list.style1::before {
  content: '';
  position: absolute;
  top: 15px;
  bottom: 15px;
  left: 20px;
  width: 2px;
  background: linear-gradient(180deg, var(--eo-gold-500) 0%, rgba(197, 160, 89, 0.2) 100%);
}

.st-program-list.style1 .item {
  position: relative;
  background: #ffffff;
  border-radius: var(--eo-radius-md) !important;
  border: 1px solid var(--eo-border-medium) !important;
  box-shadow: var(--eo-shadow-sm);
  margin-bottom: 18px !important;
  padding: 0 !important;
  overflow: hidden;
  transition: var(--eo-transition-fast);
}

.st-program-list.style1 .item:hover {
  box-shadow: var(--eo-shadow-md);
  border-color: rgba(197, 160, 89, 0.4) !important;
}

.st-program-list.style1 .item .header {
  padding: 16px 22px !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  color: var(--eo-navy-950) !important;
  background: #ffffff !important;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
}

/* Refined Timeline Arrow */
.st-program-list.style1 .item .header .arrow {
  background: var(--eo-bg-subtle) !important;
  color: var(--eo-navy-900) !important;
  border: 1px solid var(--eo-border-medium);
  border-radius: 50% !important;
  width: 32px !important;
  height: 32px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  font-size: 14px !important;
  padding: 0 !important;
  transition: var(--eo-transition-fast);
}

.st-program-list.style1 .item.active .header .arrow {
  background: var(--eo-sapphire-600) !important;
  color: #ffffff !important;
  border-color: var(--eo-sapphire-600) !important;
  transform: rotate(180deg);
}

.st-program-list.style1 .item.active .body {
  padding: 18px 24px !important;
  background: var(--eo-bg-subtle) !important;
  border-top: 1px solid var(--eo-border-medium);
  font-size: 15px;
  line-height: 1.65;
  color: var(--eo-text-body);
}

/* --------------------------------------------------------------------------
   8. INTERACTIVE MILAN TOUR CUSTOMIZER (WPFORMS ENHANCEMENTS)
   -------------------------------------------------------------------------- */
#wpforms-form-14544,
div.wpforms-container-full .wpforms-form {
  background: #ffffff;
  border-radius: var(--eo-radius-lg);
  border: 1px solid var(--eo-border-medium);
  box-shadow: var(--eo-shadow-md);
  padding: 30px !important;
  margin: 30px 0 !important;
}

/* Custom Sight Cards from Checkboxes (High-End Luxury Suite) */
div.wpforms-container-full ul.wpforms-icon-choices {
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin: 12px 0 26px !important;
  padding: 0 !important;
  list-style: none !important;
  width: 100% !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item {
  background: #ffffff !important;
  border: 1.5px solid #e5e9f0 !important;
  border-radius: 14px !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  box-shadow: 0 2px 8px rgba(11, 21, 40, 0.03) !important;
  transition: all 0.28s cubic-bezier(0.16, 1, 0.3, 1) !important;
  overflow: hidden !important;
  cursor: pointer !important;
  position: relative !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item:hover {
  border-color: #c5a059 !important;
  box-shadow: 0 6px 20px rgba(11, 21, 40, 0.07), 0 0 10px rgba(197, 160, 89, 0.15) !important;
  transform: translateY(-2px) !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item label.wpforms-field-label-inline {
  display: flex !important;
  align-items: center !important;
  padding: 13px 18px !important;
  margin: 0 !important;
  width: 100% !important;
  cursor: pointer !important;
  line-height: normal !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item .wpforms-icon-choices-icon {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #f8fafc 0%, #f1f5f9 100%) !important;
  border: 1px solid #e2e8f0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin: 0 14px 0 0 !important;
  float: none !important;
  transition: all 0.25s ease !important;
  flex-shrink: 0 !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item .wpforms-icon-choices-icon svg {
  width: 19px !important;
  height: 19px !important;
  fill: #0b1528 !important;
  transition: all 0.25s ease !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item:hover .wpforms-icon-choices-icon {
  background: #0b1528 !important;
  border-color: #0b1528 !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item:hover .wpforms-icon-choices-icon svg {
  fill: #d4af37 !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 0 12px 0 0 !important;
  cursor: pointer !important;
  accent-color: #0b1528 !important;
  flex-shrink: 0 !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item .wpforms-icon-choices-label {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: #0f172a !important;
  margin: 0 !important;
  padding: 0 !important;
  flex: 1 !important;
  letter-spacing: -0.01em !important;
}

/* Luxury Action Badge on Right (+ Select / ✓ Selected) */
div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item label.wpforms-field-label-inline::after {
  content: '+ Select' !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  padding: 6px 14px !important;
  border-radius: 100px !important;
  background: #f1f5f9 !important;
  color: #475569 !important;
  border: 1px solid #e2e8f0 !important;
  transition: all 0.25s ease !important;
  margin-left: 12px !important;
  flex-shrink: 0 !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item:hover label.wpforms-field-label-inline::after {
  background: #0b1528 !important;
  color: #ffffff !important;
  border-color: #0b1528 !important;
}

/* Checked State */
div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item:has(input:checked),
div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item.is-selected {
  border-color: #c5a059 !important;
  background: linear-gradient(135deg, #fffdf8 0%, #ffffff 100%) !important;
  box-shadow: 0 4px 18px rgba(197, 160, 89, 0.2) !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item:has(input:checked) label.wpforms-field-label-inline::after,
div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item.is-selected label.wpforms-field-label-inline::after {
  content: '✓ Selected' !important;
  background: #0b1528 !important;
  color: #d4af37 !important;
  border-color: #c5a059 !important;
  box-shadow: 0 2px 8px rgba(11, 21, 40, 0.3) !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item:has(input:checked) .wpforms-icon-choices-label,
div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item.is-selected .wpforms-icon-choices-label {
  color: #0b1528 !important;
  font-weight: 700 !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item:has(input:checked) .wpforms-icon-choices-icon,
div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item.is-selected .wpforms-icon-choices-icon {
  background: #0b1528 !important;
  border-color: #c5a059 !important;
}

div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item:has(input:checked) .wpforms-icon-choices-icon svg,
div.wpforms-container-full ul.wpforms-icon-choices li.wpforms-icon-choices-item.is-selected .wpforms-icon-choices-icon svg {
  fill: #d4af37 !important;
}

/* Category Headings in Customizer Form */
div.wpforms-container-full .itnaryicon legend.wpforms-field-label,
div.wpforms-container-full .wpforms-field-checkbox legend.wpforms-field-label {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #0b1528 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  margin-top: 10px !important;
  margin-bottom: 14px !important;
  padding-bottom: 6px !important;
  border-bottom: 2.5px solid #c5a059 !important;
  display: inline-block !important;
}

/* Hide squished injected counter bar and extra meta badges */
.eo-sight-counter-bar,
.eo-sight-meta {
  display: none !important;
}

/* Inputs & Form Controls */
div.wpforms-container-full input[type=text],
div.wpforms-container-full input[type=email],
div.wpforms-container-full input[type=tel],
div.wpforms-container-full input[type=number],
div.wpforms-container-full input[type=date],
div.wpforms-container-full select,
div.wpforms-container-full textarea {
  border-radius: var(--eo-radius-sm) !important;
  border: 1.5px solid var(--eo-border-medium) !important;
  padding: 12px 16px !important;
  font-size: 14px !important;
  color: var(--eo-navy-950) !important;
  background: #ffffff !important;
  transition: var(--eo-transition-fast) !important;
  width: 100% !important;
  max-width: 100% !important;
  box-shadow: none !important;
}

div.wpforms-container-full input:focus,
div.wpforms-container-full select:focus,
div.wpforms-container-full textarea:focus {
  border-color: var(--eo-sapphire-600) !important;
  box-shadow: 0 0 0 3px var(--eo-sapphire-glow) !important;
  outline: none !important;
}

/* WPForms Submit Button */
div.wpforms-container .wpforms-form button[type=submit].wpforms-submit {
  background: linear-gradient(135deg, var(--eo-sapphire-600) 0%, var(--eo-navy-850) 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: var(--eo-radius-md) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  padding: 14px 34px !important;
  letter-spacing: 0.4px !important;
  box-shadow: var(--eo-shadow-button) !important;
  transition: var(--eo-transition) !important;
  cursor: pointer;
}

div.wpforms-container .wpforms-form button[type=submit].wpforms-submit:hover {
  background: linear-gradient(135deg, var(--eo-sapphire-500) 0%, var(--eo-navy-900) 100%) !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(29, 78, 216, 0.4) !important;
}

/* --------------------------------------------------------------------------
   9. STICKY LUXURY BOOKING SIDEBAR CARD
   -------------------------------------------------------------------------- */
.form-book-wrapper {
  background: #ffffff !important;
  border-radius: var(--eo-radius-lg) !important;
  border: 1px solid var(--eo-border-subtle) !important;
  box-shadow: var(--eo-shadow-xl) !important;
  padding: 26px 24px !important;
  position: sticky !important;
  top: 90px !important;
  z-index: 9;
  transition: var(--eo-transition);
}

/* Segmented Pill Tabs for Book vs Inquiry */
.form-book-wrapper .nav-tabs.nav-fill-st {
  background: var(--eo-bg-subtle) !important;
  border-radius: var(--eo-radius-pill) !important;
  padding: 4px !important;
  border: none !important;
  display: flex !important;
  margin-bottom: 22px !important;
}

.form-book-wrapper .nav-tabs.nav-fill-st li {
  flex: 1;
  text-align: center;
}

.form-book-wrapper .nav-tabs.nav-fill-st li a {
  border: none !important;
  border-radius: var(--eo-radius-pill) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--eo-text-muted) !important;
  padding: 9px 16px !important;
  display: block;
  transition: var(--eo-transition-fast);
}

.form-book-wrapper .nav-tabs.nav-fill-st li a.active {
  background: #ffffff !important;
  color: var(--eo-navy-950) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
}

/* Pricing Header in Booking Card */
.form-book-wrapper .form-head .price {
  border-bottom: 1px solid var(--eo-border-medium);
  padding-bottom: 16px;
  margin-bottom: 20px;
  display: flex;
  align-items: baseline;
  gap: 6px;
}

.form-book-wrapper .form-head .price .label {
  font-size: 13px;
  font-weight: 500;
  color: var(--eo-text-muted);
  text-transform: uppercase;
}

.form-book-wrapper .form-head .price .value .item {
  font-size: 28px !important;
  font-weight: 800 !important;
  color: var(--eo-navy-950) !important;
  letter-spacing: -0.02em;
}

/* Guest Selector Steppers */
.form-book-wrapper .form-guest-search .guest-wrapper {
  padding: 12px 0;
  border-bottom: 1px solid var(--eo-border-subtle);
}

.form-book-wrapper .guest-wrapper label {
  font-size: 14px;
  font-weight: 700;
  color: var(--eo-navy-950);
  margin-bottom: 0;
}

.form-book-wrapper .guest-wrapper .render {
  font-size: 12px;
  color: var(--eo-text-muted);
}

.form-book-wrapper .st-number-wrapper {
  background: var(--eo-bg-subtle);
  border-radius: var(--eo-radius-pill);
  padding: 2px 6px;
}

.form-book-wrapper .st-input-number {
  background: transparent !important;
  border: none !important;
  width: 36px !important;
  text-align: center;
  font-weight: 700;
  font-size: 15px;
  color: var(--eo-navy-950);
}

/* Booking CTA Button */
.form-book-wrapper .btn-book-ajax,
.form-book-wrapper button[type="submit"] {
  background: linear-gradient(135deg, var(--eo-sapphire-600) 0%, var(--eo-navy-850) 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: var(--eo-radius-md) !important;
  font-weight: 700 !important;
  font-size: 16px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  padding: 15px 24px !important;
  width: 100% !important;
  box-shadow: var(--eo-shadow-button) !important;
  transition: var(--eo-transition) !important;
  margin-top: 20px;
}

.form-book-wrapper .btn-book-ajax:hover,
.form-book-wrapper button[type="submit"]:hover {
  background: linear-gradient(135deg, var(--eo-sapphire-500) 0%, var(--eo-navy-900) 100%) !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 30px rgba(29, 78, 216, 0.45) !important;
}

/* Trust Badges Widget Under Booking Form */
.eo-trust-badges {
  margin-top: 20px;
  padding-top: 18px;
  border-top: 1px solid var(--eo-border-medium);
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.eo-trust-badge-item {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 12.5px;
  color: var(--eo-text-body);
  font-weight: 500;
}

.eo-trust-badge-item i,
.eo-trust-badge-item svg {
  color: #10b981;
  font-size: 15px;
  flex-shrink: 0;
}

/* --------------------------------------------------------------------------
   10. DESTINATION LOCATION PAGE (/st_location/italy/)
   -------------------------------------------------------------------------- */
.single-location .banner {
  border-radius: 0 0 var(--eo-radius-lg) var(--eo-radius-lg);
  overflow: hidden;
  position: relative;
}

.single-location .banner h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 46px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  text-shadow: 0 4px 16px rgba(0, 0, 0, 0.35);
}

/* Editorial Destination Sections */
.single-location .elementor-heading-title {
  color: var(--eo-navy-950) !important;
  letter-spacing: -0.01em;
}

.single-location .elementor-widget-text-editor {
  font-size: 16px !important;
  line-height: 1.75 !important;
  color: var(--eo-text-body) !important;
}

/* Location Tour Grid */
.single-location .service-list-wrapper.grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
  gap: 28px !important;
  margin-top: 35px !important;
}

/* --------------------------------------------------------------------------
   11. MOBILE RESPONSIVENESS & FLOATING CONTROLS
   -------------------------------------------------------------------------- */
@media screen and (max-width: 991px) {
  #topbar {
    display: none !important;
  }

  .header.header-sticky-menu {
    padding: 10px 16px !important;
  }

  .single-st_tours .st-service-header h1 {
    font-size: 26px !important;
  }

  #tour-top-search .banner .banner-content h1,
  .single-location .banner h1 {
    font-size: 32px !important;
  }

  .st-service-feature {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  div.wpforms-container-full ul.wpforms-icon-choices {
    grid-template-columns: 1fr !important;
  }
}

@media screen and (max-width: 767px) {

  /* Mobile Bottom Booking Bar */
  #st-content-wrapper .hotel-target-book-mobile {
    position: fixed !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    background: rgba(255, 255, 255, 0.98) !important;
    backdrop-filter: blur(12px) !important;
    -webkit-backdrop-filter: blur(12px) !important;
    border-top: 1px solid var(--eo-border-medium) !important;
    box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.1) !important;
    padding: 12px 18px !important;
    z-index: 9999 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
  }

  #st-content-wrapper .hotel-target-book-mobile .price-wrapper .price {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: var(--eo-navy-950) !important;
  }

  #st-content-wrapper .hotel-target-book-mobile .btn-mpopup {
    background: linear-gradient(135deg, var(--eo-sapphire-600) 0%, var(--eo-navy-850) 100%) !important;
    color: #ffffff !important;
    border-radius: var(--eo-radius-pill) !important;
    padding: 10px 22px !important;
    font-weight: 700 !important;
    font-size: 14px !important;
    box-shadow: 0 4px 14px rgba(29, 78, 216, 0.3) !important;
  }

  /* WhatsApp button positioning so it doesn't overlap */
  .joinchat__button {
    bottom: 74px !important;
    right: 14px !important;
    z-index: 9998 !important;
  }

  #gotop {
    bottom: 125px !important;
    right: 14px !important;
  }
}

/* Back To Top Sleek Circular Button */
#gotop {
  background: rgba(11, 21, 40, 0.85) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  color: #ffffff !important;
  border-radius: 50% !important;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2) !important;
  transition: var(--eo-transition-fast) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

#gotop:hover {
  background: var(--eo-gold-500) !important;
  transform: translateY(-3px) !important;
}

/* --------------------------------------------------------------------------
   12. MILAN BESPOKE SIGHT SELECTION LIVE COUNTER BAR
   -------------------------------------------------------------------------- */
.eo-sight-counter-bar {
  background: #ffffff;
  border: 1.5px solid var(--eo-border-medium);
  border-radius: var(--eo-radius-md);
  padding: 14px 20px;
  margin: 12px 0 20px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  box-shadow: var(--eo-shadow-sm);
  transition: var(--eo-transition);
}

.eo-sight-counter-bar.has-selected {
  border-color: var(--eo-gold-500);
  background: linear-gradient(135deg, #ffffff 0%, var(--eo-gold-100) 100%);
  box-shadow: 0 6px 20px var(--eo-gold-glow);
}

.eo-sight-counter-bar .eo-counter-left {
  display: flex;
  align-items: center;
  gap: 10px;
}

.eo-sight-counter-bar .eo-counter-icon {
  font-size: 20px;
}

.eo-sight-counter-bar .eo-counter-text {
  font-size: 14px;
  font-weight: 600;
  color: var(--eo-navy-950);
}

.eo-sight-counter-bar .eo-count-num {
  color: var(--eo-sapphire-600);
  font-size: 16px;
  font-weight: 800;
}

.eo-sight-counter-bar .eo-counter-badge {
  background: var(--eo-navy-900);
  color: var(--eo-gold-400);
  border-radius: var(--eo-radius-pill);
  padding: 5px 14px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  flex-shrink: 0;
}

.eo-sight-counter-bar.has-selected .eo-counter-badge {
  background: linear-gradient(135deg, var(--eo-sapphire-600) 0%, var(--eo-navy-850) 100%);
  color: #ffffff;
}

/* --------------------------------------------------------------------------
   13. ITALY LOCATION PAGE: QUICK-JUMP STICKY SUB-NAVIGATION
   -------------------------------------------------------------------------- */
.eo-location-quick-nav-wrapper {
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--eo-border-medium);
  box-shadow: 0 4px 16px rgba(11, 21, 40, 0.04);
  position: sticky;
  top: 72px;
  z-index: 98;
  padding: 10px 0;
  margin-bottom: 30px;
}

.eo-location-quick-nav {
  display: flex;
  align-items: center;
  gap: 10px;
  overflow-x: auto;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  padding: 2px 0;
}

.eo-location-quick-nav::-webkit-scrollbar {
  display: none;
}

.eo-location-quick-nav .eo-nav-pill {
  white-space: nowrap;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--eo-text-body);
  background: var(--eo-bg-subtle);
  border: 1px solid var(--eo-border-medium);
  padding: 8px 18px;
  border-radius: var(--eo-radius-pill);
  text-decoration: none;
  transition: var(--eo-transition-fast);
}

.eo-location-quick-nav .eo-nav-pill:hover,
.eo-location-quick-nav .eo-nav-pill.active {
  background: var(--eo-navy-900);
  color: #ffffff;
  border-color: var(--eo-navy-900);
}

.eo-location-quick-nav .eo-nav-pill.eo-pill-highlight {
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%);
  color: #ffffff;
  border: none;
  box-shadow: 0 4px 12px var(--eo-gold-glow);
}

/* --------------------------------------------------------------------------
   14. SINGLE TOUR GALLERY & MEDIA STYLING (.st-gallery, .fotorama)
   -------------------------------------------------------------------------- */
.st-gallery {
  border-radius: var(--eo-radius-lg);
  overflow: hidden;
  box-shadow: var(--eo-shadow-md);
  margin-bottom: 30px;
  background: #000000;
}

.st-gallery .fotorama__stage {
  border-radius: var(--eo-radius-lg) var(--eo-radius-lg) 0 0;
}

.st-gallery .fotorama__thumb-border {
  border-color: var(--eo-gold-500) !important;
  border-radius: var(--eo-radius-sm);
}

.st-gallery .fotorama__nav__shaft {
  padding: 8px 0 !important;
}

.st-gallery .fotorama__thumb {
  border-radius: var(--eo-radius-sm);
  overflow: hidden;
}

/* --------------------------------------------------------------------------
   15. EDITORIAL MAGAZINE TYPOGRAPHY & PULL QUOTES
   -------------------------------------------------------------------------- */
.single-location .elementor-widget-heading .elementor-heading-title {
  position: relative;
  padding-bottom: 12px;
}

.single-location .elementor-widget-heading .elementor-heading-title::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 48px;
  height: 3px;
  background: var(--eo-gold-500);
  border-radius: 2px;
}

/* --------------------------------------------------------------------------
   16. TOUR CARDS LIST VIEW MODERNIZATION
   -------------------------------------------------------------------------- */
.item-service.list,
.services-item.list .item {
  background: #ffffff !important;
  border-radius: var(--eo-radius-lg) !important;
  border: 1px solid var(--eo-border-subtle) !important;
  box-shadow: var(--eo-shadow-sm) !important;
  transition: var(--eo-transition) !important;
  margin-bottom: 24px !important;
  overflow: hidden;
}

.item-service.list:hover,
.services-item.list .item:hover {
  transform: translateY(-4px);
  box-shadow: var(--eo-shadow-card-hover) !important;
  border-color: rgba(197, 160, 89, 0.35) !important;
}

/* --------------------------------------------------------------------------
   17. LUXURY FOOTER STYLING (.elementor-194)
   -------------------------------------------------------------------------- */
.elementor-194 {
  background: linear-gradient(180deg, var(--eo-navy-900) 0%, var(--eo-navy-950) 100%) !important;
  color: #94a3b8 !important;
  padding-top: 50px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
}

.elementor-194 .elementor-heading-title {
  color: #ffffff !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  margin-bottom: 18px !important;
  position: relative;
}

.elementor-194 a {
  color: #cbd5e1 !important;
  transition: var(--eo-transition-fast);
}

.elementor-194 a:hover {
  color: var(--eo-gold-400) !important;
  padding-left: 4px;
}

/* --------------------------------------------------------------------------
   18. MILAN SIGHT CARDS ENHANCED META & STATUS BADGES
   -------------------------------------------------------------------------- */
.eo-sight-meta {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  margin-top: 6px !important;
  padding-top: 6px !important;
  border-top: 1px dashed var(--eo-border-subtle) !important;
}

.eo-sight-tag {
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: var(--eo-text-muted) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
}

.eo-sight-check-badge {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.4px !important;
  text-transform: uppercase !important;
  padding: 3px 10px !important;
  border-radius: var(--eo-radius-pill) !important;
  background: var(--eo-bg-subtle) !important;
  color: var(--eo-text-muted) !important;
  border: 1px solid var(--eo-border-medium) !important;
  transition: var(--eo-transition-fast) !important;
}

.wpforms-icon-choices-item.is-selected .eo-sight-check-badge {
  background: linear-gradient(135deg, var(--eo-sapphire-600) 0%, var(--eo-navy-850) 100%) !important;
  color: #ffffff !important;
  border: none !important;
  box-shadow: 0 2px 8px var(--eo-sapphire-glow) !important;
}

.wpforms-icon-choices-item.is-selected .eo-sight-tag {
  color: var(--eo-sapphire-600) !important;
  font-weight: 700 !important;
}

/* --------------------------------------------------------------------------
   19. ITINERARY NUMBERED STEP BADGES (.eo-step-badge)
   -------------------------------------------------------------------------- */
.eo-step-badge {
  background: var(--eo-navy-900) !important;
  color: var(--eo-gold-400) !important;
  border-radius: var(--eo-radius-pill) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
  padding: 3px 10px !important;
  margin-right: 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 6px rgba(11, 21, 40, 0.15) !important;
}

.st-program-list.style1 .item.active .eo-step-badge {
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   20. TOUR LISTING QUICK-FILTER CATEGORY PILLS BAR
   -------------------------------------------------------------------------- */
.eo-tour-pills-bar {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  overflow-x: auto !important;
  scrollbar-width: none !important;
  -webkit-overflow-scrolling: touch !important;
  padding: 8px 0 24px !important;
  margin-bottom: 20px !important;
}

.eo-tour-pills-bar::-webkit-scrollbar {
  display: none !important;
}

.eo-tour-pill {
  background: #ffffff !important;
  border: 1.5px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-pill) !important;
  padding: 8px 18px !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: var(--eo-navy-950) !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: var(--eo-shadow-sm) !important;
  transition: var(--eo-transition-fast) !important;
}

.eo-tour-pill:hover {
  border-color: var(--eo-gold-500) !important;
  transform: translateY(-2px) !important;
  box-shadow: var(--eo-shadow-md) !important;
}

.eo-tour-pill.active {
  background: linear-gradient(135deg, var(--eo-navy-900) 0%, var(--eo-navy-950) 100%) !important;
  color: #ffffff !important;
  border-color: var(--eo-navy-900) !important;
  box-shadow: 0 4px 14px rgba(11, 21, 40, 0.25) !important;
}

/* --------------------------------------------------------------------------
   21. ITALY LOCATION LUXURY DOSSIER STRIP (.eo-location-dossier)
   -------------------------------------------------------------------------- */
.eo-location-dossier-wrapper {
  margin-bottom: 35px !important;
}

.eo-location-dossier {
  background: #ffffff;
  border: 1px solid var(--eo-border-medium);
  border-radius: var(--eo-radius-lg);
  box-shadow: var(--eo-shadow-sm);
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
  padding: 24px 28px;
}

.eo-dossier-col {
  display: flex;
  align-items: center;
  gap: 14px;
}

.eo-dossier-icon {
  font-size: 26px;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: var(--eo-gold-100);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.eo-dossier-info {
  display: flex;
  flex-direction: column;
}

.eo-dossier-info strong {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: var(--eo-text-muted);
  margin-bottom: 2px;
}

.eo-dossier-info span {
  font-size: 13.5px;
  font-weight: 600;
  color: var(--eo-navy-950);
}

/* --------------------------------------------------------------------------
   22. FLATPICKR LUXURY CALENDAR THEME
   -------------------------------------------------------------------------- */
.flatpickr-calendar {
  background: #ffffff !important;
  border-radius: var(--eo-radius-lg) !important;
  border: 1px solid var(--eo-border-medium) !important;
  box-shadow: var(--eo-shadow-xl) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  padding: 12px !important;
  overflow: hidden !important;
}

.flatpickr-months {
  background: var(--eo-navy-900) !important;
  border-radius: var(--eo-radius-md) var(--eo-radius-md) 0 0 !important;
  padding: 10px 0 !important;
  color: #ffffff !important;
}

.flatpickr-current-month {
  color: var(--eo-gold-400) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

.flatpickr-current-month .flatpickr-monthDropdown-months {
  font-weight: 700 !important;
}

.flatpickr-day.selected,
.flatpickr-day.startRange,
.flatpickr-day.endRange {
  background: linear-gradient(135deg, var(--eo-sapphire-600) 0%, var(--eo-navy-850) 100%) !important;
  border-color: var(--eo-sapphire-600) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  box-shadow: 0 4px 10px var(--eo-sapphire-glow) !important;
}

.flatpickr-day.today {
  border-color: var(--eo-gold-500) !important;
}

.flatpickr-day:hover {
  background: var(--eo-gold-100) !important;
  border-color: var(--eo-gold-500) !important;
}

/* --------------------------------------------------------------------------
   23. HERO LOCATION SMART SEARCH POPUP & AUTOCOMPLETE DROPDOWN
   -------------------------------------------------------------------------- */
.destination-search .dropdown-menu,
.st-search-destination-tour .dropdown-menu {
  background: #ffffff !important;
  border-radius: var(--eo-radius-lg) !important;
  border: 1px solid var(--eo-border-medium) !important;
  box-shadow: var(--eo-shadow-xl) !important;
  padding: 16px 8px !important;
  margin-top: 14px !important;
  min-width: 320px !important;
  backdrop-filter: blur(16px) !important;
  animation: eoDropdownFade 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

@keyframes eoDropdownFade {
  from {
    opacity: 0;
    transform: translateY(-8px) scale(0.98);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

.destination-search .dropdown-menu ul.st-scrollbar {
  max-height: 340px !important;
  padding: 0 4px !important;
  list-style: none !important;
  margin: 0 !important;
}

.destination-search .dropdown-menu .location-heading {
  padding: 8px 14px 10px !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: var(--eo-gold-600) !important;
  border-bottom: 1px solid var(--eo-border-subtle) !important;
  margin-bottom: 6px !important;
}

.destination-search .dropdown-menu li.item {
  padding: 10px 14px !important;
  border-radius: var(--eo-radius-sm) !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--eo-navy-950) !important;
  cursor: pointer !important;
  transition: var(--eo-transition-fast) !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.destination-search .dropdown-menu li.item:hover {
  background: var(--eo-gold-100) !important;
  color: var(--eo-navy-900) !important;
  transform: translateX(4px) !important;
}

.destination-search .dropdown-menu li.item.parent_li {
  font-weight: 700 !important;
  color: var(--eo-navy-900) !important;
  background: rgba(11, 21, 40, 0.02) !important;
  margin-top: 4px !important;
}

.destination-search .dropdown-menu li.item .stt-icon-location1 {
  color: var(--eo-gold-500) !important;
  font-size: 15px !important;
}

/* --------------------------------------------------------------------------
   24. POPULAR DESTINATIONS LUXURY POSTCARD TILES (.st_destination)
   -------------------------------------------------------------------------- */
.st-list-destination {
  margin-top: 30px !important;
  margin-bottom: 25px !important;
}

.st-list-destination .destination-item {
  position: relative !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 12px 35px rgba(7, 15, 30, 0.22) !important;
  transition: all 0.45s cubic-bezier(0.16, 1, 0.3, 1) !important;
  background: #070f1e !important;
  margin-bottom: 30px !important;
  border: 1px solid rgba(197, 160, 89, 0.16) !important;
  height: 380px !important;
}

.st-list-destination .destination-item:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 24px 50px rgba(7, 15, 30, 0.35), 0 0 30px rgba(197, 160, 89, 0.22) !important;
  border-color: rgba(197, 160, 89, 0.5) !important;
}

.st-list-destination .destination-item .image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  overflow: hidden !important;
  border-radius: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.st-list-destination .destination-item .image a.st-link {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.st-list-destination .destination-item .image img,
.st-list-destination .destination-item img {
  width: 100% !important;
  height: 100% !important;
  min-height: 100% !important;
  max-height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 0 !important;
  transition: transform 0.85s cubic-bezier(0.16, 1, 0.3, 1) !important;
  display: block !important;
}

.st-list-destination .destination-item:hover .image img,
.st-list-destination .destination-item:hover img {
  transform: scale(1.08) !important;
}

/* Luxury Multi-layer Gradient Scrim */
.st-list-destination .destination-item .image::after,
.st-list-destination .destination-item .image:after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(7, 15, 30, 0) 25%, rgba(7, 15, 30, 0.35) 55%, rgba(7, 15, 30, 0.88) 85%, rgba(7, 15, 30, 0.98) 100%) !important;
  opacity: 1 !important;
  pointer-events: none !important;
  z-index: 2 !important;
  transition: background 0.4s ease !important;
}

.st-list-destination .destination-item:hover .image::after,
.st-list-destination .destination-item:hover .image:after {
  background: linear-gradient(180deg, rgba(7, 15, 30, 0) 20%, rgba(7, 15, 30, 0.45) 55%, rgba(7, 15, 30, 0.92) 85%, rgba(7, 15, 30, 0.99) 100%) !important;
}

/* Destination Title & Tour Count Badge */
.st-list-destination .destination-item .content,
.st-list-destination.bottom .content,
.st-list-destination .content {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  right: 0 !important;
  top: auto !important;
  width: 100% !important;
  transform: none !important;
  -webkit-transform: none !important;
  padding: 26px 24px !important;
  z-index: 10 !important;
  text-align: left !important;
  pointer-events: none !important;
  background: transparent !important;
  margin: 0 !important;
}

.st-list-destination .destination-item .content * {
  pointer-events: auto !important;
}

.st-list-destination .destination-item .content .title,
.st-list-destination .content .title {
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  line-height: 1.15 !important;
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.st-list-destination .destination-item .content .title a,
.st-list-destination .content .title a {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  letter-spacing: -0.01em !important;
  text-decoration: none !important;
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.8) !important;
  transition: color 0.3s ease, transform 0.3s ease !important;
}

.st-list-destination .destination-item:hover .content .title a,
.st-list-destination .content .title a:hover {
  color: #d4af37 !important;
  transform: translateX(4px) !important;
}

.st-list-destination .destination-item .content .desc,
.st-list-destination .content .desc {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 8px !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.st-list-destination .destination-item .content .desc a,
.st-list-destination .content .desc a {
  display: inline-flex !important;
  align-items: center !important;
  background: rgba(197, 160, 89, 0.18) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(197, 160, 89, 0.45) !important;
  border-radius: 9999px !important;
  padding: 6px 14px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  letter-spacing: 0.6px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.3) !important;
  transition: all 0.3s ease !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.st-list-destination .destination-item:hover .content .desc a,
.st-list-destination .content .desc a:hover {
  background: #c5a059 !important;
  border-color: #d4af37 !important;
  color: #070f1e !important;
  box-shadow: 0 6px 16px rgba(197, 160, 89, 0.45) !important;
}

/* --------------------------------------------------------------------------
   25. SINGLE TOUR INQUIRY FORM MODAL & TAB (#wpforms-14623)
   -------------------------------------------------------------------------- */
#nav-inquirement {
  padding: 20px 0 !important;
}

#wpforms-14623 .wpforms-field {
  margin-bottom: 16px !important;
}

#wpforms-14623 .wpforms-field-label {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  margin-bottom: 6px !important;
  display: block !important;
}

#wpforms-14623 input[type="text"],
#wpforms-14623 input[type="email"],
#wpforms-14623 input[type="tel"],
#wpforms-14623 textarea {
  width: 100% !important;
  background: #ffffff !important;
  border: 1.5px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-sm) !important;
  padding: 12px 16px !important;
  font-size: 14px !important;
  color: var(--eo-text-main) !important;
  transition: var(--eo-transition-fast) !important;
}

#wpforms-14623 input:focus,
#wpforms-14623 textarea:focus {
  border-color: var(--eo-sapphire-600) !important;
  box-shadow: 0 0 0 3px var(--eo-sapphire-glow) !important;
  outline: none !important;
}

#wpforms-14623 .wpforms-submit {
  width: 100% !important;
  background: linear-gradient(135deg, var(--eo-navy-900) 0%, var(--eo-sapphire-600) 100%) !important;
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  padding: 14px 24px !important;
  border: none !important;
  border-radius: var(--eo-radius-sm) !important;
  box-shadow: var(--eo-shadow-button) !important;
  cursor: pointer !important;
  transition: var(--eo-transition) !important;
}

#wpforms-14623 .wpforms-submit:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(29, 78, 216, 0.4) !important;
}

/* --------------------------------------------------------------------------
   26. TRAVELER AJAX BOOKING FEEDBACK & ALERTS (.message-wrapper, .alert)
   -------------------------------------------------------------------------- */
.message-wrapper .alert,
.message-wrapper-2 .alert {
  border-radius: var(--eo-radius-md) !important;
  padding: 16px 20px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  border: none !important;
  box-shadow: var(--eo-shadow-md) !important;
  animation: eoAlertSlide 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

@keyframes eoAlertSlide {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.message-wrapper .alert-danger,
.message-wrapper-2 .alert-danger {
  background: #fef2f2 !important;
  color: #991b1b !important;
  border-left: 4px solid #ef4444 !important;
}

.message-wrapper .alert-success,
.message-wrapper-2 .alert-success {
  background: #f0fdf4 !important;
  color: #166534 !important;
  border-left: 4px solid #22c55e !important;
}

.message-wrapper .alert-info,
.message-wrapper-2 .alert-info {
  background: #eff6ff !important;
  color: #1e40af !important;
  border-left: 4px solid #3b82f6 !important;
}

/* --------------------------------------------------------------------------
   27. FOTORAMA LUXURY GALLERY CONTROLS (.st-gallery .fotorama)
   -------------------------------------------------------------------------- */
.st-gallery .fotorama {
  border-radius: var(--eo-radius-lg) !important;
  overflow: hidden !important;
  box-shadow: var(--eo-shadow-lg) !important;
}

.st-gallery .fotorama__stage {
  border-radius: var(--eo-radius-lg) !important;
  overflow: hidden !important;
}

.st-gallery .fotorama__nav-wrap {
  margin-top: 14px !important;
}

.st-gallery .fotorama__thumb {
  border-radius: var(--eo-radius-sm) !important;
  overflow: hidden !important;
}

.st-gallery .fotorama__thumb-border {
  border: 2.5px solid var(--eo-gold-500) !important;
  border-radius: var(--eo-radius-sm) !important;
  background: transparent !important;
}

.st-gallery .fotorama__arr {
  background: rgba(11, 21, 40, 0.65) !important;
  backdrop-filter: blur(8px) !important;
  border-radius: 50% !important;
  width: 44px !important;
  height: 44px !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  transition: var(--eo-transition-fast) !important;
}

.st-gallery .fotorama__arr:hover {
  background: var(--eo-gold-600) !important;
  transform: scale(1.1) !important;
}

.st-gallery .fotorama__fullscreen-icon {
  background: rgba(11, 21, 40, 0.65) !important;
  backdrop-filter: blur(8px) !important;
  border-radius: 50% !important;
  width: 40px !important;
  height: 40px !important;
  margin: 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  transition: var(--eo-transition-fast) !important;
}

.st-gallery .fotorama__fullscreen-icon:hover {
  background: var(--eo-navy-900) !important;
  transform: scale(1.1) !important;
}

/* --------------------------------------------------------------------------
   28. LUXURY CLIENT LOGIN & REGISTER POPUP (#st-login-form)
   -------------------------------------------------------------------------- */
#st-login-form.modal {
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
}

#st-login-form .modal-content {
  border-radius: var(--eo-radius-lg) !important;
  border: 1px solid var(--eo-border-medium) !important;
  box-shadow: var(--eo-shadow-xl) !important;
  overflow: hidden !important;
}

#st-login-form .modal-header {
  background: var(--eo-navy-900) !important;
  padding: 18px 24px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
}

#st-login-form .modal-header .close {
  color: #ffffff !important;
  opacity: 0.8 !important;
  font-size: 20px !important;
}

#st-login-form .modal-header .close:hover {
  opacity: 1 !important;
  color: var(--eo-gold-400) !important;
}

#st-login-form .account-tabs {
  display: flex !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#st-login-form .account-tabs li {
  padding: 8px 18px !important;
  border-radius: var(--eo-radius-pill) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: rgba(255, 255, 255, 0.7) !important;
  cursor: pointer !important;
  transition: var(--eo-transition-fast) !important;
}

#st-login-form .account-tabs li.active {
  background: var(--eo-gold-500) !important;
  color: #ffffff !important;
  box-shadow: 0 4px 12px var(--eo-gold-glow) !important;
}

#st-login-form .modal-body {
  padding: 28px !important;
}

#st-login-form .heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  margin-bottom: 20px !important;
}

#st-login-form input[type="text"],
#st-login-form input[type="password"],
#st-login-form input[type="email"] {
  border-radius: var(--eo-radius-sm) !important;
  border: 1.5px solid var(--eo-border-medium) !important;
  padding: 12px 16px !important;
  font-size: 14px !important;
}

#st-login-form input:focus {
  border-color: var(--eo-sapphire-600) !important;
  box-shadow: 0 0 0 3px var(--eo-sapphire-glow) !important;
}

#st-login-form input[type="submit"] {
  background: linear-gradient(135deg, var(--eo-navy-900) 0%, var(--eo-sapphire-600) 100%) !important;
  color: #ffffff !important;
  border-radius: var(--eo-radius-sm) !important;
  font-weight: 700 !important;
  padding: 12px 24px !important;
  box-shadow: var(--eo-shadow-button) !important;
  transition: var(--eo-transition) !important;
}

/* --------------------------------------------------------------------------
   29. ELEMENTOR SWIPER SLIDER CONTROLS & PRESS CAROUSEL
   -------------------------------------------------------------------------- */
.elementor-swiper-button-prev,
.elementor-swiper-button-next {
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  box-shadow: var(--eo-shadow-md) !important;
  border: 1px solid var(--eo-border-medium) !important;
  color: var(--eo-navy-900) !important;
  transition: var(--eo-transition-fast) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.elementor-swiper-button-prev:hover,
.elementor-swiper-button-next:hover {
  background: var(--eo-navy-900) !important;
  color: var(--eo-gold-400) !important;
  border-color: var(--eo-navy-900) !important;
  transform: scale(1.08) !important;
  box-shadow: var(--eo-shadow-lg) !important;
}

.elementor-swiper-button-prev svg,
.elementor-swiper-button-next svg {
  width: 18px !important;
  height: 18px !important;
  fill: currentColor !important;
}

/* Press & Travel Writer Logos: Sophisticated Monochrome Carousel */
.elementor-widget-image-carousel .swiper-slide img {
  filter: grayscale(100%) !important;
  opacity: 0.65 !important;
  transition: var(--eo-transition) !important;
  max-height: 52px !important;
  width: auto !important;
  margin: 0 auto !important;
}

.elementor-widget-image-carousel .swiper-slide:hover img {
  filter: grayscale(0%) !important;
  opacity: 1 !important;
  transform: scale(1.04) !important;
}

/* --------------------------------------------------------------------------
   30. MOBILE STICKY BOOKING BAR & FLOATING CONTROLS COORDINATION
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  .hotel-target-book-mobile {
    position: fixed !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    z-index: 9990 !important;
    background: rgba(11, 21, 40, 0.94) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    border-top: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: 0 -8px 24px rgba(0, 0, 0, 0.25) !important;
    padding: 12px 18px !important;
  }

  .hotel-target-book-mobile .price-wrapper {
    color: rgba(255, 255, 255, 0.8) !important;
    font-size: 13px !important;
  }

  .hotel-target-book-mobile .price-wrapper .price {
    color: var(--eo-gold-400) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    margin-left: 6px !important;
  }

  .hotel-target-book-mobile .btn-mpopup {
    background: linear-gradient(135deg, var(--eo-gold-500) 0%, var(--eo-gold-400) 100%) !important;
    color: #ffffff !important;
    font-weight: 700 !important;
    padding: 10px 22px !important;
    border-radius: var(--eo-radius-pill) !important;
    box-shadow: 0 4px 14px var(--eo-gold-glow) !important;
  }

  /* Prevent WhatsApp floating button from obscuring mobile booking bar */
  .joinchat.joinchat--btn {
    bottom: 82px !important;
    transition: bottom 0.3s ease !important;
  }

  #gotop {
    bottom: 82px !important;
  }
}

/* --------------------------------------------------------------------------
   31. CLEANUP OF TOUR CARD AVATARS & RATINGS
   -------------------------------------------------------------------------- */
/* Hide cluttered random author gravatars on tour cards */
.services-item .service-avatar,
.item-tour .service-avatar {
  display: none !important;
}

/* Star ratings when 0 reviews: clean presentation */
.services-item .reviews .summary {
  font-size: 12.5px !important;
  color: var(--eo-text-muted) !important;
  font-weight: 600 !important;
}

/* --------------------------------------------------------------------------
   32. HEADER MAIN MENU & LUXURY SUBMENU DROPDOWNS
   -------------------------------------------------------------------------- */
.main-menu {
  display: flex !important;
  align-items: center !important;
}

.main-menu>li>a {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  color: var(--eo-navy-950) !important;
  padding: 12px 18px !important;
  transition: var(--eo-transition-fast) !important;
  position: relative !important;
}

.main-menu>li:hover>a,
.main-menu>li.current-menu-item>a,
.main-menu>li.current-menu-parent>a {
  color: var(--eo-sapphire-600) !important;
}

/* Luxury sliding indicator */
.main-menu>li>a::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 18px !important;
  right: 18px !important;
  height: 2.5px !important;
  background: linear-gradient(90deg, var(--eo-sapphire-600), var(--eo-gold-500)) !important;
  border-radius: var(--eo-radius-pill) !important;
  transform: scaleX(0) !important;
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.main-menu>li:hover>a::after,
.main-menu>li.current-menu-item>a::after {
  transform: scaleX(1) !important;
}

/* Luxury Glassmorphic Submenu Dropdown */
.main-menu li.menu-item-has-children .menu-dropdown {
  background: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-radius: var(--eo-radius-md) !important;
  border: 1px solid var(--eo-border-medium) !important;
  box-shadow: 0 20px 48px -6px rgba(11, 21, 40, 0.16), 0 0 0 1px rgba(197, 160, 89, 0.15) !important;
  padding: 8px 0 !important;
  min-width: 220px !important;
  animation: eoDropdownFade 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  overflow: visible !important;
}

.main-menu li.menu-item-has-children .menu-dropdown li {
  padding: 0 !important;
  position: relative !important;
}

.main-menu li.menu-item-has-children .menu-dropdown li a {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 20px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: var(--eo-navy-950) !important;
  text-decoration: none !important;
  transition: var(--eo-transition-fast) !important;
  border-left: 3px solid transparent !important;
}

.main-menu li.menu-item-has-children .menu-dropdown li:hover>a {
  background: var(--eo-gold-100) !important;
  color: var(--eo-sapphire-600) !important;
  border-left-color: var(--eo-gold-500) !important;
  padding-left: 24px !important;
}

.main-menu li.menu-item-has-children .menu-dropdown li .fa-angle-right,
.main-menu li.menu-item-has-children .menu-dropdown li .fa-angle-down {
  color: var(--eo-gold-500) !important;
  font-size: 12px !important;
  margin-left: 8px !important;
}

/* Nested 2nd-Level Submenu */
.main-menu li.menu-item-has-children .menu-dropdown .menu-dropdown {
  top: -8px !important;
  left: 100% !important;
  margin-left: 6px !important;
}

/* --------------------------------------------------------------------------
   33. TOUR ARCHIVE TOP FILTER BAR (.top-filter, .filter-price)
   -------------------------------------------------------------------------- */
.top-filter {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-md) !important;
  padding: 12px 20px !important;
  box-shadow: var(--eo-shadow-sm) !important;
  margin-bottom: 25px !important;
}

.top-filter ul {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-wrap: wrap !important;
}

.top-filter ul li .title {
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: var(--eo-gold-600) !important;
  margin: 0 4px 0 0 !important;
  white-space: nowrap !important;
}

.top-filter .btn.btn-link,
.top-filter .form-extra-field button {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--eo-navy-950) !important;
  text-decoration: none !important;
  padding: 7px 14px !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-pill) !important;
  background: #ffffff !important;
  transition: var(--eo-transition-fast) !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
}

.top-filter .btn.btn-link:hover,
.top-filter .form-extra-field button:hover {
  background: var(--eo-bg-subtle) !important;
  border-color: var(--eo-gold-500) !important;
  color: var(--eo-navy-900) !important;
}

.top-filter .dropdown-menu.range-slider {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-lg) !important;
  box-shadow: var(--eo-shadow-xl) !important;
  padding: 22px 24px !important;
  min-width: 280px !important;
  margin-top: 10px !important;
}

.top-filter .dropdown-menu.range-slider .irs-bar {
  background: linear-gradient(90deg, var(--eo-sapphire-600), var(--eo-gold-500)) !important;
}

.top-filter .dropdown-menu.range-slider .irs-from,
.top-filter .dropdown-menu.range-slider .irs-to,
.top-filter .dropdown-menu.range-slider .irs-single {
  background: var(--eo-navy-900) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  border-radius: var(--eo-radius-sm) !important;
}

/* --------------------------------------------------------------------------
   34. NIXPULSE AI LUXURY CONCIERGE DESK (.nxp-support-float)
   -------------------------------------------------------------------------- */
.nxp-support-float {
  z-index: 99980 !important;
}

.nxp-support-btn {
  background: linear-gradient(135deg, var(--eo-navy-900) 0%, var(--eo-navy-950) 100%) !important;
  border: 1.5px solid var(--eo-gold-500) !important;
  box-shadow: 0 10px 30px rgba(11, 21, 40, 0.4), 0 0 15px var(--eo-gold-glow) !important;
  color: var(--eo-gold-400) !important;
  font-size: 24px !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.nxp-support-btn:hover {
  transform: scale(1.08) translateY(-2px) !important;
  box-shadow: 0 14px 36px rgba(11, 21, 40, 0.5), 0 0 20px rgba(197, 160, 89, 0.5) !important;
  border-color: var(--eo-gold-300) !important;
}

.nxp-support-window {
  background: rgba(11, 21, 40, 0.96) !important;
  backdrop-filter: blur(24px) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  border: 1px solid rgba(197, 160, 89, 0.35) !important;
  border-radius: var(--eo-radius-lg) !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.6) !important;
  width: 360px !important;
  height: 460px !important;
}

.nxp-support-header {
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  padding-bottom: 12px !important;
}

.nxp-support-header h4 {
  font-family: 'Playfair Display', Georgia, serif !important;
  color: var(--eo-gold-400) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
}

.nxp-chat-bubble.nxp-bubble-ai {
  background: rgba(255, 255, 255, 0.08) !important;
  color: #f1f5f9 !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: var(--eo-radius-md) var(--eo-radius-md) var(--eo-radius-md) 2px !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

.nxp-chat-bubble.nxp-bubble-user {
  background: linear-gradient(135deg, var(--eo-sapphire-600) 0%, var(--eo-navy-850) 100%) !important;
  color: #ffffff !important;
  border-radius: var(--eo-radius-md) var(--eo-radius-md) 2px var(--eo-radius-md) !important;
  font-size: 13px !important;
}

.nxp-chat-input {
  background: rgba(5, 12, 24, 0.8) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  border-radius: var(--eo-radius-sm) !important;
  color: #ffffff !important;
  font-size: 13px !important;
  padding: 10px 14px !important;
}

.nxp-chat-input:focus {
  border-color: var(--eo-gold-500) !important;
  box-shadow: 0 0 0 2px var(--eo-gold-glow) !important;
}

.nxp-btn-send {
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: #0b1528 !important;
  font-weight: 700 !important;
  border-radius: var(--eo-radius-sm) !important;
  padding: 10px 18px !important;
  transition: var(--eo-transition-fast) !important;
}

.nxp-btn-send:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 12px var(--eo-gold-glow) !important;
}

/* Mobile Spacing for Support Chat */
@media (max-width: 767px) {
  .nxp-support-float {
    bottom: 82px !important;
    right: 80px !important;
  }
}

/* --------------------------------------------------------------------------
   35. ITALY DESTINATION EDITORIAL NARRATIVE & HIGHLIGHTS
   -------------------------------------------------------------------------- */
.single-location .elementor-widget-heading h2.elementor-heading-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 34px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  letter-spacing: -0.01em !important;
  position: relative !important;
  padding-bottom: 14px !important;
  margin-top: 25px !important;
  margin-bottom: 20px !important;
}

.single-location .elementor-widget-heading h2.elementor-heading-title::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 50px !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--eo-gold-500), var(--eo-sapphire-600)) !important;
  border-radius: var(--eo-radius-pill) !important;
}

.single-location .elementor-widget-text-editor {
  font-size: 16px !important;
  line-height: 1.8 !important;
  color: var(--eo-text-body) !important;
}

.single-location .elementor-widget-text-editor p {
  margin-bottom: 20px !important;
}

/* --------------------------------------------------------------------------
   36. MILAN SIGHT CARDS 3D DEPTH & HOVER ELEVATION
   -------------------------------------------------------------------------- */
.wpforms-icon-choices-item {
  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 !important;
}

.wpforms-icon-choices-item:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 28px -4px rgba(11, 21, 40, 0.12) !important;
  border-color: var(--eo-gold-400) !important;
}

.wpforms-icon-choices-item.is-selected {
  border-color: var(--eo-gold-500) !important;
  box-shadow: 0 10px 25px -4px var(--eo-gold-glow), 0 0 0 1px var(--eo-gold-500) !important;
  background: #ffffff !important;
}

.eo-sight-counter-bar {
  animation: eoPulseSubtle 3s infinite ease-in-out !important;
}

@keyframes eoPulseSubtle {

  0%,
  100% {
    box-shadow: var(--eo-shadow-md);
  }

  50% {
    box-shadow: 0 10px 30px -4px rgba(197, 160, 89, 0.35);
  }
}

/* --------------------------------------------------------------------------
   37. GLOBAL SEARCH & ARCHIVE RESULT CARDS POLISH
   -------------------------------------------------------------------------- */
.modern-search-result .item-tour {
  margin-bottom: 30px !important;
}

.modern-search-result .item-tour .item {
  border-radius: var(--eo-radius-lg) !important;
  overflow: hidden !important;
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  box-shadow: var(--eo-shadow-sm) !important;
  transition: var(--eo-transition) !important;
}

.modern-search-result .item-tour .item:hover {
  transform: translateY(-6px) !important;
  box-shadow: var(--eo-shadow-card-hover) !important;
  border-color: rgba(197, 160, 89, 0.4) !important;
}

.modern-search-result .item-tour .featured-image {
  position: relative !important;
  overflow: hidden !important;
  height: 220px !important;
}

.modern-search-result .item-tour .featured-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.modern-search-result .item-tour:hover .featured-image img {
  transform: scale(1.06) !important;
}

/* --------------------------------------------------------------------------
   38. LUXURY INCLUSIONS & EXCLUSIONS DOSSIER (.include-exclude)
   -------------------------------------------------------------------------- */
#headingInExClude .accordion-button {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 14px 0 !important;
}

#headingInExClude .accordion-button:not(.collapsed)::after {
  transform: rotate(-180deg) !important;
}

#collapseInExClude .accordion-body {
  padding: 10px 0 25px 0 !important;
}

/* --------------------------------------------------------------------------
   38. INCLUSIONS & EXCLUSIONS - HIGH-END BESPOKE EDITORIAL CARDS
   -------------------------------------------------------------------------- */
.eo-inc-exc-section {
  border: none !important;
  background: transparent !important;
  margin-top: 35px !important;
  margin-bottom: 35px !important;
}

#headingInExClude .accordion-button {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: #0b1528 !important;
  background: transparent !important;
  padding: 0 0 16px 0 !important;
  border: none !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  position: relative !important;
}

#headingInExClude .accordion-button::after {
  display: none !important;
}

.eo-inc-exc-title-text {
  position: relative !important;
  padding-bottom: 10px !important;
}

.eo-inc-exc-title-text::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 50px !important;
  height: 3px !important;
  background: linear-gradient(90deg, #c5a059, #dfba73) !important;
  border-radius: 3px !important;
}

.eo-inc-exc-body {
  padding: 10px 0 0 0 !important;
  background: transparent !important;
  border: none !important;
}

.eo-inc-exc-row {
  display: flex !important;
  flex-wrap: wrap !important;
}

.eo-inc-col,
.eo-exc-col {
  display: flex !important;
}

/* Inclusions Card */
.eo-inc-card {
  width: 100% !important;
  background: #ffffff !important;
  border: 1.5px solid rgba(16, 185, 129, 0.22) !important;
  border-radius: 18px !important;
  padding: 26px 28px !important;
  box-shadow: 0 4px 20px rgba(16, 185, 129, 0.06), 0 1px 3px rgba(0, 0, 0, 0.02) !important;
  display: flex !important;
  flex-direction: column !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  position: relative !important;
  overflow: hidden !important;
}

.eo-inc-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, #10b981 0%, #34d399 100%) !important;
}

.eo-inc-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 28px rgba(16, 185, 129, 0.12) !important;
  border-color: rgba(16, 185, 129, 0.4) !important;
}

/* Exclusions Card */
.eo-exc-card {
  width: 100% !important;
  background: #ffffff !important;
  border: 1.5px solid rgba(226, 232, 240, 0.9) !important;
  border-radius: 18px !important;
  padding: 26px 28px !important;
  box-shadow: 0 4px 20px rgba(11, 21, 40, 0.03), 0 1px 3px rgba(0, 0, 0, 0.02) !important;
  display: flex !important;
  flex-direction: column !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  position: relative !important;
  overflow: hidden !important;
}

.eo-exc-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, #ef4444 0%, #f87171 100%) !important;
}

.eo-exc-card:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 10px 28px rgba(11, 21, 40, 0.07) !important;
  border-color: rgba(203, 213, 225, 1) !important;
}

/* Card Headers */
.eo-inc-card-header,
.eo-exc-card-header {
  margin-bottom: 20px !important;
  padding-bottom: 14px !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

.eo-inc-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 6px 14px !important;
  border-radius: 100px !important;
  margin-bottom: 8px !important;
}

.eo-badge-include {
  background: #ecfdf5 !important;
  color: #065f46 !important;
  border: 1px solid rgba(16, 185, 129, 0.25) !important;
}

.eo-badge-include svg {
  stroke: #059669 !important;
}

.eo-badge-exclude {
  background: #fef2f2 !important;
  color: #991b1b !important;
  border: 1px solid rgba(239, 68, 68, 0.2) !important;
}

.eo-badge-exclude svg {
  stroke: #dc2626 !important;
}

.eo-inc-card-desc,
.eo-exc-card-desc {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  color: #64748b !important;
  font-weight: 500 !important;
  margin: 0 !important;
  line-height: 1.4 !important;
}

/* Lists */
ul.eo-luxury-inc-list,
ul.eo-luxury-exc-list,
body.single-st_tours ul.include,
body.single-st_tours ul.exclude {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

/* Fallback Inclusions Card when custom card wrapper not present */
ul.include:not(.eo-luxury-inc-list) {
  background: #ffffff !important;
  border: 1.5px solid rgba(16, 185, 129, 0.22) !important;
  border-radius: 18px !important;
  padding: 24px 26px !important;
  box-shadow: 0 4px 20px rgba(16, 185, 129, 0.06) !important;
}

ul.exclude:not(.eo-luxury-exc-list) {
  background: #ffffff !important;
  border: 1.5px solid rgba(226, 232, 240, 0.9) !important;
  border-radius: 18px !important;
  padding: 24px 26px !important;
  box-shadow: 0 4px 20px rgba(11, 21, 40, 0.03) !important;
}

/* List Items */
.eo-inc-item,
body.single-st_tours ul.include li {
  background: #f8fafc !important;
  border: 1px solid #edf2f7 !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 13px !important;
  transition: all 0.2s ease !important;
}

.eo-inc-item:hover,
body.single-st_tours ul.include li:hover {
  background: #f0fdf4 !important;
  border-color: rgba(16, 185, 129, 0.3) !important;
  transform: translateX(3px) !important;
}

.eo-exc-item,
body.single-st_tours ul.exclude li {
  background: #f8fafc !important;
  border: 1px solid #edf2f7 !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 13px !important;
  transition: all 0.2s ease !important;
}

.eo-exc-item:hover,
body.single-st_tours ul.exclude li:hover {
  background: #fef2f2 !important;
  border-color: rgba(239, 68, 68, 0.25) !important;
  transform: translateX(3px) !important;
}

/* Icon Badges */
.eo-icon-pill {
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  min-height: 24px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 1px !important;
  flex-shrink: 0 !important;
}

.eo-pill-check {
  background: #10b981 !important;
  color: #ffffff !important;
  box-shadow: 0 2px 6px rgba(16, 185, 129, 0.35) !important;
}

.eo-pill-check svg {
  stroke: #ffffff !important;
}

.eo-pill-cross {
  background: #ef4444 !important;
  color: #ffffff !important;
  box-shadow: 0 2px 6px rgba(239, 68, 68, 0.3) !important;
}

.eo-pill-cross svg {
  stroke: #ffffff !important;
}

.eo-inc-item-text,
body.single-st_tours ul.include li {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
  color: #0f172a !important;
}

.eo-exc-item-text,
body.single-st_tours ul.exclude li {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
  color: #475569 !important;
}

/* --------------------------------------------------------------------------
   39. BESPOKE REVIEWS & GUEST TESTIMONIALS SUITE (#reviews)
   -------------------------------------------------------------------------- */
#reviews {
  margin-top: 25px !important;
}

.review-box {
  background: linear-gradient(135deg, #ffffff 0%, var(--eo-bg-subtle) 100%) !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-xl) !important;
  padding: 30px !important;
  box-shadow: var(--eo-shadow-md) !important;
  margin-bottom: 35px !important;
  position: relative !important;
  overflow: hidden !important;
}

.review-box::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--eo-gold-500), var(--eo-sapphire-600)) !important;
}

.review-box-score {
  text-align: center !important;
  padding: 10px 20px !important;
}

.review-box-score .review-score {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 52px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  line-height: 1 !important;
  margin-bottom: 8px !important;
}

.review-box-score .review-score .per-total {
  font-size: 22px !important;
  color: var(--eo-gold-600) !important;
  font-weight: 500 !important;
}

.review-box-score .review-score-text {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: var(--eo-gold-600) !important;
  margin-bottom: 6px !important;
  letter-spacing: 0.3px !important;
}

.review-box-score .review-score-base {
  font-size: 13px !important;
  color: var(--eo-text-muted) !important;
}

.review-sumary .item {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-bottom: 12px !important;
}

.review-sumary .item .label {
  width: 90px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: var(--eo-navy-900) !important;
  text-align: left !important;
}

.review-sumary .item .progress {
  flex: 1 !important;
  height: 8px !important;
  background: #e2e8f0 !important;
  border-radius: var(--eo-radius-pill) !important;
  overflow: hidden !important;
  margin-bottom: 0 !important;
}

.review-sumary .item .progress .percent {
  border-radius: var(--eo-radius-pill) !important;
}

.review-sumary .item .progress .percent.green {
  background: linear-gradient(90deg, #10b981, #059669) !important;
}

.review-sumary .item .progress .percent.darkgreen {
  background: linear-gradient(90deg, var(--eo-gold-500), var(--eo-gold-600)) !important;
}

.review-sumary .item .number {
  width: 25px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--eo-text-muted) !important;
  text-align: right !important;
}

/* Individual Review Card */
.comment-item {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-lg) !important;
  padding: 24px 28px !important;
  margin-bottom: 20px !important;
  box-shadow: var(--eo-shadow-sm) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.comment-item:hover {
  transform: translateY(-2px) !important;
  box-shadow: var(--eo-shadow-md) !important;
  border-color: rgba(197, 160, 89, 0.35) !important;
}

.comment-item .media-heading {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  color: var(--eo-navy-950) !important;
}

.comment-item .media-left img {
  border-radius: 50% !important;
  border: 2px solid var(--eo-gold-400) !important;
  box-shadow: 0 4px 10px rgba(11, 21, 40, 0.1) !important;
}

.comment-item .date {
  font-size: 12px !important;
  color: var(--eo-text-muted) !important;
}

.comment-item-body .title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-900) !important;
  margin: 12px 0 8px 0 !important;
}

.comment-item .review-star i.fa-star,
.comment-item .st-stars i.fa-star {
  color: var(--eo-gold-500) !important;
  margin-right: 2px !important;
}

.comment-item .detail {
  font-size: 14.5px !important;
  line-height: 1.7 !important;
  color: var(--eo-text-body) !important;
}

/* Write Review Box & Rating Form */
#write-review {
  margin-top: 30px !important;
}

#write-review .heading a.toggle-section {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: var(--eo-bg-subtle) !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-md) !important;
  padding: 12px 22px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-900) !important;
  transition: all 0.25s ease !important;
}

#write-review .heading a.toggle-section:hover {
  background: var(--eo-navy-900) !important;
  color: #ffffff !important;
  border-color: var(--eo-navy-900) !important;
}

#respond.comment-respond {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-xl) !important;
  padding: 30px 34px !important;
  box-shadow: var(--eo-shadow-lg) !important;
  margin-top: 20px !important;
}

#respond .form-control {
  border: 1.5px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-md) !important;
  padding: 12px 16px !important;
  font-size: 14px !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

#respond .form-control:focus {
  border-color: var(--eo-gold-500) !important;
  box-shadow: 0 0 0 3px var(--eo-gold-glow) !important;
  outline: none !important;
}

.review-items .item {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 8px 0 !important;
  border-bottom: 1px solid var(--eo-border-light) !important;
}

.review-items .item label {
  font-weight: 600 !important;
  font-size: 13.5px !important;
  color: var(--eo-navy-900) !important;
  margin: 0 !important;
}

.review-items .rates i.fa-star {
  font-size: 16px !important;
  cursor: pointer !important;
  margin-left: 3px !important;
  color: #cbd5e1 !important;
  transition: color 0.15s ease, transform 0.15s ease !important;
}

.review-items .rates i.fa-star:hover,
.review-items .rates i.fa-star.active,
.review-items .rates i.fa-star.selected {
  color: var(--eo-gold-500) !important;
  transform: scale(1.15) !important;
}

#respond #submit {
  background: linear-gradient(135deg, var(--eo-navy-900) 0%, var(--eo-navy-950) 100%) !important;
  color: var(--eo-gold-400) !important;
  border: 1.5px solid var(--eo-gold-500) !important;
  border-radius: var(--eo-radius-md) !important;
  padding: 13px 30px !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  letter-spacing: 0.5px !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#respond #submit:hover {
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: var(--eo-navy-950) !important;
  border-color: var(--eo-gold-400) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px var(--eo-gold-glow) !important;
}

/* --------------------------------------------------------------------------
   40. WOOCOMMERCE LUXURY CART EXPERIENCE (.st-woo-cartpage)
   -------------------------------------------------------------------------- */
.st-woo-cartpage {
  margin-top: 30px !important;
  margin-bottom: 60px !important;
}

.st-woo-heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  margin-bottom: 22px !important;
  position: relative !important;
  padding-bottom: 10px !important;
}

.st-woo-heading::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 40px !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--eo-gold-500), var(--eo-sapphire-600)) !important;
  border-radius: var(--eo-radius-pill) !important;
}

.woocommerce-cart-form table.shop_table.cart {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-lg) !important;
  overflow: hidden !important;
  box-shadow: var(--eo-shadow-sm) !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
}

.woocommerce-cart-form table.shop_table.cart thead th {
  background: var(--eo-navy-900) !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  padding: 16px 20px !important;
  border: none !important;
}

.woocommerce-cart-form table.shop_table.cart tbody td {
  padding: 20px !important;
  vertical-align: middle !important;
  border-top: 1px solid var(--eo-border-light) !important;
}

.woocommerce-cart-form table.shop_table.cart tbody tr:hover {
  background: var(--eo-bg-subtle) !important;
}

.woocommerce-cart-form .product-thumbnail img {
  border-radius: var(--eo-radius-md) !important;
  box-shadow: var(--eo-shadow-sm) !important;
  border: 1px solid var(--eo-border-medium) !important;
  width: 90px !important;
  height: 70px !important;
  object-fit: cover !important;
}

.woocommerce-cart-form .booking-item-wishlist-title a {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 16.5px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  transition: color 0.2s ease !important;
}

.woocommerce-cart-form .booking-item-wishlist-title a:hover {
  color: var(--eo-gold-600) !important;
}

.woocommerce-cart-form .booking-item-price {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
}

.woocommerce-cart-form td.actions {
  background: #f8fafc !important;
  padding: 20px !important;
}

.woocommerce-cart-form .coupon {
  display: inline-flex !important;
  gap: 10px !important;
  align-items: center !important;
}

.woocommerce-cart-form .coupon input.input-text {
  border: 1.5px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-pill) !important;
  padding: 10px 18px !important;
  font-size: 13.5px !important;
  min-width: 180px !important;
}

.woocommerce-cart-form .coupon input.input-text:focus {
  border-color: var(--eo-gold-500) !important;
  box-shadow: 0 0 0 2px var(--eo-gold-glow) !important;
}

.woocommerce-cart-form .coupon button.button,
.woocommerce-cart-form button[name="update_cart"] {
  background: var(--eo-navy-900) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: var(--eo-radius-pill) !important;
  padding: 11px 22px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
  transition: all 0.25s ease !important;
}

.woocommerce-cart-form .coupon button.button:hover,
.woocommerce-cart-form button[name="update_cart"]:hover {
  background: var(--eo-gold-600) !important;
  color: #0b1528 !important;
  transform: translateY(-1px) !important;
}

/* Cart Collaterals & Totals Card */
.cart-collaterals {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-xl) !important;
  padding: 28px !important;
  box-shadow: var(--eo-shadow-lg) !important;
  position: relative !important;
  overflow: hidden !important;
}

.cart-collaterals::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--eo-gold-500), var(--eo-sapphire-600)) !important;
}

.cart-collaterals table.shop_table {
  width: 100% !important;
  margin-bottom: 24px !important;
}

.cart-collaterals table.shop_table tr th,
.cart-collaterals table.shop_table tr td {
  padding: 14px 0 !important;
  border-bottom: 1px solid var(--eo-border-light) !important;
}

.cart-collaterals table.shop_table tr.order-total td strong {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 24px !important;
  color: var(--eo-navy-950) !important;
}

.cart-collaterals .wc-proceed-to-checkout a.checkout-button {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: var(--eo-navy-950) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  padding: 16px 24px !important;
  border-radius: var(--eo-radius-pill) !important;
  border: none !important;
  box-shadow: 0 8px 24px var(--eo-gold-glow) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.cart-collaterals .wc-proceed-to-checkout a.checkout-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 30px rgba(197, 160, 89, 0.45) !important;
  color: #000000 !important;
}

/* --------------------------------------------------------------------------
   41. WOOCOMMERCE BESPOKE CHECKOUT SUITE (form.woocommerce-checkout)
   -------------------------------------------------------------------------- */
form.woocommerce-checkout {
  margin-top: 30px !important;
  margin-bottom: 60px !important;
}

#customer_details {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-xl) !important;
  padding: 32px 36px !important;
  box-shadow: var(--eo-shadow-sm) !important;
}

#customer_details h3 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  margin-bottom: 22px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid var(--eo-border-light) !important;
}

form.woocommerce-checkout .form-row input.input-text,
form.woocommerce-checkout .form-row select,
form.woocommerce-checkout .form-row textarea {
  border: 1.5px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-md) !important;
  padding: 12px 16px !important;
  font-size: 14px !important;
  color: var(--eo-navy-900) !important;
  background: #ffffff !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

form.woocommerce-checkout .form-row input.input-text:focus,
form.woocommerce-checkout .form-row select:focus,
form.woocommerce-checkout .form-row textarea:focus {
  border-color: var(--eo-gold-500) !important;
  box-shadow: 0 0 0 3px var(--eo-gold-glow) !important;
  outline: none !important;
}

/* Checkout Review Order & Payment Sidebar */
.woocommerce-checkout-review-order-table,
.booking-item-payment {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-xl) !important;
  padding: 26px 28px !important;
  box-shadow: var(--eo-shadow-lg) !important;
  position: relative !important;
  overflow: hidden !important;
}

.woocommerce-checkout-review-order-table::before,
.booking-item-payment::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, var(--eo-gold-500), var(--eo-sapphire-600)) !important;
}

#payment {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-xl) !important;
  padding: 28px !important;
  box-shadow: var(--eo-shadow-sm) !important;
  margin-top: 25px !important;
}

#payment ul.payment_methods {
  border-bottom: 1px solid var(--eo-border-light) !important;
  padding-bottom: 18px !important;
  margin-bottom: 20px !important;
}

#payment ul.payment_methods li {
  padding: 12px 0 !important;
  font-weight: 600 !important;
  color: var(--eo-navy-900) !important;
}

#payment div.payment_box {
  background: var(--eo-bg-subtle) !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-md) !important;
  padding: 16px 20px !important;
  font-size: 13.5px !important;
  color: var(--eo-text-body) !important;
}

#place_order {
  display: block !important;
  width: 100% !important;
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: var(--eo-navy-950) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  padding: 18px 26px !important;
  border-radius: var(--eo-radius-pill) !important;
  border: none !important;
  box-shadow: 0 10px 28px var(--eo-gold-glow) !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#place_order:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 36px rgba(197, 160, 89, 0.5) !important;
  color: #000000 !important;
}

/* --------------------------------------------------------------------------
   42. USER DASHBOARD & WISHLIST CONCIERGE (.page-wrapper.chiller-theme)
   -------------------------------------------------------------------------- */
.page-wrapper.chiller-theme #sidebar.sidebar-wrapper {
  background: var(--eo-navy-950) !important;
  border-right: 1px solid rgba(197, 160, 89, 0.25) !important;
  box-shadow: var(--eo-shadow-xl) !important;
}

.page-wrapper.chiller-theme .sidebar-header {
  border-bottom: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding: 20px 24px !important;
}

.page-wrapper.chiller-theme .user-info .user-name {
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 15px !important;
}

.page-wrapper.chiller-theme .user-info .user-role {
  color: var(--eo-gold-400) !important;
  font-size: 12px !important;
}

.page-wrapper.chiller-theme .sidebar-menu ul li a {
  color: #cbd5e1 !important;
  font-size: 13.5px !important;
  padding: 12px 24px !important;
  transition: all 0.2s ease !important;
}

.page-wrapper.chiller-theme .sidebar-menu ul li:hover>a,
.page-wrapper.chiller-theme .sidebar-menu ul li.active>a {
  color: var(--eo-gold-400) !important;
  background: rgba(197, 160, 89, 0.1) !important;
  border-left: 3px solid var(--eo-gold-500) !important;
}

/* Dashboard KPI Cards */
.st-dashboard-stat.st-month-madison {
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-xl) !important;
  padding: 24px 28px !important;
  box-shadow: var(--eo-shadow-sm) !important;
  position: relative !important;
  overflow: hidden !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

.st-dashboard-stat.st-month-madison:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--eo-shadow-md) !important;
  border-color: rgba(197, 160, 89, 0.4) !important;
}

.st-dashboard-stat.st-month-madison::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, var(--eo-gold-500), var(--eo-sapphire-600)) !important;
}

.st-dashboard-stat .title {
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: var(--eo-text-muted) !important;
  margin-bottom: 10px !important;
}

.st-dashboard-stat .details .number {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
}

/* Wishlist Page (.st-wishlist-wrap) */
.st-wishlist-wrap .nav-tabs {
  border-bottom: 2px solid var(--eo-border-medium) !important;
  margin-bottom: 28px !important;
}

.st-wishlist-wrap .nav-tabs>li>a {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: var(--eo-text-muted) !important;
  border: none !important;
  padding: 12px 24px !important;
  border-radius: 0 !important;
  position: relative !important;
}

.st-wishlist-wrap .nav-tabs>li.active>a,
.st-wishlist-wrap .nav-tabs>li>a:hover {
  color: var(--eo-navy-950) !important;
  background: transparent !important;
}

.st-wishlist-wrap .nav-tabs>li.active>a::after {
  content: '' !important;
  position: absolute !important;
  bottom: -2px !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: var(--eo-gold-500) !important;
  border-radius: var(--eo-radius-pill) !important;
}

/* --------------------------------------------------------------------------
   43. EDITORIAL BLOG & BESPOKE TRAVEL CHRONICLES (.blog-style3, .st-blog, .single-post)
   -------------------------------------------------------------------------- */
.blog-style3 {
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%) !important;
  padding: 25px 0 60px 0 !important;
}

/* Blog Listing Feed Cards (.article-style3 in archive) */
.blog-style3 .blog-wrapper {
  margin-top: 10px !important;
}

.blog-style3 .article-style3.post {
  background: #ffffff !important;
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  margin-bottom: 35px !important;
  box-shadow: 0 6px 22px rgba(11, 21, 40, 0.04) !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.blog-style3 .article-style3.post:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 16px 40px rgba(11, 21, 40, 0.1) !important;
  border-color: rgba(197, 160, 89, 0.45) !important;
}

.blog-style3 .article-style3 .header {
  position: relative !important;
  overflow: hidden !important;
  max-height: 340px !important;
}

.blog-style3 .article-style3 .header img {
  width: 100% !important;
  height: 340px !important;
  object-fit: cover !important;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.blog-style3 .article-style3.post:hover .header img {
  transform: scale(1.04) !important;
}

/* Category Badge in Header */
.blog-style3 .article-style3 .header .cate {
  position: absolute !important;
  top: 20px !important;
  left: 24px !important;
  z-index: 2 !important;
}

.blog-style3 .article-style3 .header .cate ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  gap: 8px !important;
}

.blog-style3 .article-style3 .header .cate ul li {
  background: rgba(255, 255, 255, 0.95) !important;
  backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(197, 160, 89, 0.35) !important;
  border-radius: 9999px !important;
  padding: 5px 16px !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08) !important;
}

.blog-style3 .article-style3 .header .cate ul li a {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  color: #b58d3d !important;
  text-decoration: none !important;
}

/* Post Inner & Content */
.blog-style3 .article-style3 .post-inner {
  padding: 30px 36px 32px 36px !important;
}

.blog-style3 .article-style3 .post-inner h2.post-title,
.blog-style3 .article-style3 .post-inner h2.post-title a {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: #070f1e !important;
  text-decoration: none !important;
  transition: color 0.25s ease !important;
  margin: 0 0 14px 0 !important;
}

.blog-style3 .article-style3 .post-inner h2.post-title a:hover {
  color: #c5a059 !important;
}

.blog-style3 .article-style3 .post-desciption p {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: #475569 !important;
  margin-bottom: 20px !important;
}

/* Meta Bar */
.blog-style3 .article-style3 .meta {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  color: #94a3b8 !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(11, 21, 40, 0.06) !important;
}

.blog-style3 .article-style3 .meta a {
  color: #64748b !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  transition: color 0.2s ease !important;
}

.blog-style3 .article-style3 .meta a:hover {
  color: #c5a059 !important;
}

/* ==========================================================================
   SINGLE BLOG POST DETAILS PAGE (.single-post)
   ========================================================================== */
.single-post .blog-style3 {
  padding: 15px 0 60px 0 !important;
}

.single-post .article-style3 {
  background: #ffffff !important;
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  box-shadow: 0 10px 35px rgba(11, 21, 40, 0.05) !important;
  margin-bottom: 35px !important;
}

.single-post .article-style3 .header {
  position: relative !important;
  max-height: 480px !important;
  overflow: hidden !important;
}

.single-post .article-style3 .header img {
  width: 100% !important;
  height: auto !important;
  max-height: 480px !important;
  object-fit: cover !important;
}

.single-post .article-style3 .header .cate {
  position: absolute !important;
  top: 24px !important;
  left: 28px !important;
  z-index: 2 !important;
}

.single-post .article-style3 .header .cate ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  gap: 8px !important;
}

.single-post .article-style3 .header .cate ul li {
  background: rgba(255, 255, 255, 0.95) !important;
  backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(197, 160, 89, 0.35) !important;
  border-radius: 9999px !important;
  padding: 6px 18px !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08) !important;
}

.single-post .article-style3 .header .cate ul li a {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  color: #b58d3d !important;
  text-decoration: none !important;
}

.single-post .article-style3 .post-inner {
  padding: 38px 46px 10px 46px !important;
}

.single-post .article-style3 .post-inner h1.title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 38px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  color: #070f1e !important;
  letter-spacing: -0.015em !important;
  margin: 0 0 16px 0 !important;
}

.single-post .article-style3 .post-inner .meta {
  display: flex !important;
  align-items: center !important;
  gap: 18px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  color: #64748b !important;
  padding-bottom: 22px !important;
  border-bottom: 1px solid rgba(11, 21, 40, 0.07) !important;
}

/* Editorial Post Body */
.single-post .article-style3 .post-content {
  padding: 20px 46px 36px 46px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 17px !important;
  line-height: 1.85 !important;
  color: #334155 !important;
}

.single-post .article-style3 .post-content p {
  margin-bottom: 24px !important;
}

.single-post .article-style3 .post-content p:first-of-type::first-letter,
.single-post .article-style3 .post-content .first-content::first-letter,
.single-post .has-drop-cap::first-letter {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 52px !important;
  line-height: 0.9 !important;
  font-weight: 800 !important;
  float: left !important;
  margin: 4px 12px 0 0 !important;
  color: #c5a059 !important;
}

.single-post .article-style3 .post-content h2,
.single-post .article-style3 .post-content h2.wp-block-heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  line-height: 1.35 !important;
  margin-top: 36px !important;
  margin-bottom: 16px !important;
  position: relative !important;
}

.single-post .article-style3 .post-content h2::after {
  content: '' !important;
  display: block !important;
  width: 45px !important;
  height: 2px !important;
  background: #c5a059 !important;
  margin-top: 8px !important;
}

.single-post .article-style3 .post-content blockquote,
.single-post .article-style3 .post-content .wp-block-quote {
  background: #fbf7ee !important;
  border-left: 3px solid #c5a059 !important;
  border-radius: 0 14px 14px 0 !important;
  padding: 24px 32px !important;
  margin: 32px 0 !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 19px !important;
  font-style: italic !important;
  color: #070f1e !important;
  line-height: 1.6 !important;
}

.single-post .article-style3 .post-content blockquote p,
.single-post .article-style3 .post-content .wp-block-quote p {
  margin: 0 0 10px 0 !important;
}

.single-post .article-style3 .post-content blockquote cite,
.single-post .article-style3 .post-content .wp-block-quote cite {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-style: normal !important;
  font-weight: 700 !important;
  color: #8a6a2a !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
}

.single-post .article-style3 .post-content ul {
  list-style: none !important;
  padding: 0 !important;
  margin: 20px 0 28px 0 !important;
}

.single-post .article-style3 .post-content ul li {
  position: relative !important;
  padding-left: 28px !important;
  margin-bottom: 12px !important;
  line-height: 1.7 !important;
}

.single-post .article-style3 .post-content ul li::before {
  content: '✦' !important;
  position: absolute !important;
  left: 0 !important;
  top: 0 !important;
  color: #c5a059 !important;
  font-size: 14px !important;
}

/* Tags & Social Sharing Bar */
.single-post .article-style3 .tags-share {
  padding: 22px 46px !important;
  background: #fafbfc !important;
  border-top: 1px solid rgba(11, 21, 40, 0.08) !important;
  border-bottom: 1px solid rgba(11, 21, 40, 0.08) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
}

.single-post .article-style3 .tags {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.single-post .article-style3 .tags .tag-item {
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 9999px !important;
  padding: 6px 16px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.single-post .article-style3 .tags .tag-item:hover {
  background: #c5a059 !important;
  color: #ffffff !important;
  border-color: #c5a059 !important;
  transform: translateY(-1px) !important;
}

.single-post .article-style3 .share {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.single-post .article-style3 .share .share-item {
  width: 38px !important;
  height: 38px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  border: 1px solid #e2e8f0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #64748b !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
}

.single-post .article-style3 .share .share-item:hover {
  background: #070f1e !important;
  color: #ffffff !important;
  border-color: #070f1e !important;
  transform: translateY(-2px) !important;
}

/* Post Pagination / Next-Prev Nav */
.single-post .article-style3 .pagination {
  padding: 24px 46px !important;
}

.single-post .article-style3 .pagination .nav-links {
  display: flex !important;
  justify-content: space-between !important;
  gap: 20px !important;
  width: 100% !important;
}

.single-post .article-style3 .pagination .nav-links a {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  text-decoration: none !important;
  color: #070f1e !important;
  transition: color 0.2s ease !important;
}

.single-post .article-style3 .pagination .nav-links a:hover {
  color: #c5a059 !important;
}

.single-post .article-style3 .pagination .nav-links a .post-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
}

/* Comments Section */
.single-post .article-style3 #comment-wrapper {
  padding: 32px 46px 42px 46px !important;
  border-top: 1px solid rgba(11, 21, 40, 0.08) !important;
}

.single-post .article-style3 #comment-wrapper h2.title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  margin-bottom: 24px !important;
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.single-post .article-style3 #comment-wrapper h2.title::after {
  content: 'Join the Discussion' !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #94a3b8 !important;
}

.single-post #write-comment form input[type="text"],
.single-post #write-comment form input[type="email"],
.single-post #write-comment form textarea {
  width: 100% !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 10px !important;
  padding: 12px 18px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  transition: all 0.25s ease !important;
  margin-bottom: 16px !important;
}

.single-post #write-comment form input:focus,
.single-post #write-comment form textarea:focus {
  background: #ffffff !important;
  border-color: #c5a059 !important;
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.18) !important;
  outline: none !important;
}

.single-post #write-comment input[type="submit"],
.single-post #write-comment button[type="submit"] {
  background: linear-gradient(135deg, #c5a059 0%, #b38e44 100%) !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 14px 34px !important;
  border-radius: 9999px !important;
  border: none !important;
  box-shadow: 0 8px 22px rgba(197, 160, 89, 0.32) !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.single-post #write-comment input[type="submit"]:hover {
  background: linear-gradient(135deg, #dfba73 0%, #c5a059 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 28px rgba(197, 160, 89, 0.45) !important;
}

/* ==========================================================================
   LUXURY BLOG SIDEBAR (.sidebar-right)
   ========================================================================== */
.sidebar-right .wp-block-group,
.sidebar-right .widget {
  background: #ffffff !important;
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  border-radius: 16px !important;
  padding: 26px 28px !important;
  margin-bottom: 26px !important;
  box-shadow: 0 4px 16px rgba(11, 21, 40, 0.03) !important;
}

.sidebar-right h4,
.sidebar-right .wp-block-heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  margin: 0 0 18px 0 !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(197, 160, 89, 0.3) !important;
  position: relative !important;
}

/* Search Widget */
.sidebar-right .wp-block-search__input {
  border-radius: 9999px !important;
  border: 1px solid #e2e8f0 !important;
  padding: 11px 20px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  background: #f8fafc !important;
}

.sidebar-right .wp-block-search__input:focus {
  border-color: #c5a059 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.18) !important;
  outline: none !important;
}

.sidebar-right .wp-block-search__button {
  background: #070f1e !important;
  color: #ffffff !important;
  border-radius: 9999px !important;
  border: none !important;
  padding: 10px 22px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  transition: all 0.25s ease !important;
}

.sidebar-right .wp-block-search__button:hover {
  background: #c5a059 !important;
}

/* VIP Concierge Card in Sidebar */
.eo-blog-sidebar-concierge-card {
  background: linear-gradient(135deg, #070f1e 0%, #0d1a33 100%) !important;
  border: 1px solid rgba(197, 160, 89, 0.35) !important;
  border-radius: 16px !important;
  padding: 28px 24px !important;
  text-align: center !important;
  color: #ffffff !important;
  box-shadow: 0 12px 30px rgba(7, 15, 30, 0.14) !important;
  position: relative !important;
  overflow: hidden !important;
  margin-bottom: 26px !important;
}

.eo-blog-sidebar-concierge-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 3px !important;
  background: linear-gradient(90deg, #c5a059, #dfba73, #ffffff) !important;
}

.eo-blog-sidebar-concierge-card .eo-card-badge {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  color: #c5a059 !important;
  margin-bottom: 8px !important;
}

.eo-blog-sidebar-concierge-card .eo-card-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  margin: 0 0 10px 0 !important;
}

.eo-blog-sidebar-concierge-card .eo-card-desc {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
  color: #94a3b8 !important;
  margin-bottom: 18px !important;
}

.eo-blog-sidebar-concierge-card .eo-card-actions {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

.eo-blog-sidebar-concierge-card .eo-btn-whatsapp {
  background: #25d366 !important;
  color: #ffffff !important;
  border-radius: 9999px !important;
  padding: 10px 18px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.3) !important;
  transition: all 0.25s ease !important;
}

.eo-blog-sidebar-concierge-card .eo-btn-whatsapp:hover {
  background: #1eb956 !important;
  transform: translateY(-2px) !important;
}

.eo-blog-sidebar-concierge-card .eo-btn-tailor {
  background: linear-gradient(135deg, #c5a059 0%, #b38e44 100%) !important;
  color: #ffffff !important;
  border-radius: 9999px !important;
  padding: 10px 18px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  display: inline-block !important;
  transition: all 0.25s ease !important;
}

.eo-blog-sidebar-concierge-card .eo-btn-tailor:hover {
  background: linear-gradient(135deg, #dfba73 0%, #c5a059 100%) !important;
  transform: translateY(-2px) !important;
}

/* Latest Posts in Sidebar */
.sidebar-right .wp-block-latest-posts {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.sidebar-right .wp-block-latest-posts li {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  margin-bottom: 16px !important;
  padding-bottom: 16px !important;
  border-bottom: 1px solid rgba(11, 21, 40, 0.05) !important;
}

.sidebar-right .wp-block-latest-posts li:last-child {
  border-bottom: none !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.sidebar-right .wp-block-latest-posts__featured-image img {
  width: 68px !important;
  height: 68px !important;
  border-radius: 10px !important;
  object-fit: cover !important;
}

.sidebar-right .wp-block-latest-posts__post-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  color: #070f1e !important;
  text-decoration: none !important;
  display: block !important;
  transition: color 0.2s ease !important;
}

.sidebar-right .wp-block-latest-posts__post-title:hover {
  color: #c5a059 !important;
}

.sidebar-right .wp-block-latest-posts__post-date {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 12px !important;
  color: #94a3b8 !important;
  display: block !important;
  margin-top: 4px !important;
}

/* Categories List in Sidebar */
.sidebar-right .wp-block-categories {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.sidebar-right .wp-block-categories li {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid rgba(11, 21, 40, 0.05) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.sidebar-right .wp-block-categories li a {
  color: #334155 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.sidebar-right .wp-block-categories li a:hover {
  color: #c5a059 !important;
  padding-left: 4px !important;
}

.sidebar-right .wp-block-categories li span.wp-block-categories__post-count {
  background: #f1f5f9 !important;
  color: #64748b !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  border-radius: 9999px !important;
  padding: 2px 8px !important;
}

/* Tag Cloud in Sidebar */
.sidebar-right .wp-block-tag-cloud {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.sidebar-right .wp-block-tag-cloud a {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 9999px !important;
  padding: 6px 14px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
}

.sidebar-right .wp-block-tag-cloud a:hover {
  background: #c5a059 !important;
  color: #ffffff !important;
  border-color: #c5a059 !important;
  transform: translateY(-1px) !important;
}

/* --------------------------------------------------------------------------
   44. ELEVATED 404 & SYSTEM PAGES (.st-404-page)
   -------------------------------------------------------------------------- */
.st-404-page {
  padding: 90px 0 !important;
  text-align: center !important;
  background: radial-gradient(circle at 50% 20%, rgba(197, 160, 89, 0.08) 0%, rgba(11, 21, 40, 0.03) 100%) !important;
}

.st-404-page h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 48px !important;
  font-weight: 800 !important;
  color: var(--eo-navy-950) !important;
  margin-top: 25px !important;
  margin-bottom: 12px !important;
}

.st-404-page h3 {
  font-size: 18px !important;
  font-weight: 400 !important;
  color: var(--eo-text-muted) !important;
  max-width: 540px !important;
  margin: 0 auto 30px auto !important;
  line-height: 1.6 !important;
}

.st-404-page a[href*="site_url"],
.st-404-page p a {
  display: inline-flex !important;
  align-items: center !important;
  background: linear-gradient(135deg, var(--eo-navy-900) 0%, var(--eo-navy-950) 100%) !important;
  color: var(--eo-gold-400) !important;
  border: 1.5px solid var(--eo-gold-500) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 14px 34px !important;
  border-radius: var(--eo-radius-pill) !important;
  box-shadow: 0 8px 24px rgba(11, 21, 40, 0.25) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  text-decoration: none !important;
}

.st-404-page a[href*="site_url"]:hover,
.st-404-page p a:hover {
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: var(--eo-navy-950) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 30px var(--eo-gold-glow) !important;
}

/* --------------------------------------------------------------------------
   45. BESPOKE ABOUT US & BRAND HERITAGE SUITE (.page-id-8028, .st-about)
   -------------------------------------------------------------------------- */
.page-id-8028 #st-content-wrapper,
.page-template-template-home-modern .st-page-default,
.st-about-page {
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 50%, #f8fafc 100%) !important;
  padding-bottom: 70px !important;
}

.page-id-8028 .st-blog,
.st-about-wrapper {
  max-width: 1040px !important;
  margin: 0 auto !important;
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-2xl) !important;
  padding: 50px 60px !important;
  box-shadow: var(--eo-shadow-md) !important;
  position: relative !important;
  overflow: hidden !important;
}

.page-id-8028 .st-blog::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, var(--eo-gold-500), var(--eo-sapphire-600), var(--eo-gold-400)) !important;
}

.page-id-8028 .st-blog h2:first-of-type,
.st-about-wrapper h2.main-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  color: var(--eo-navy-950) !important;
  line-height: 1.3 !important;
  margin-bottom: 25px !important;
  position: relative !important;
  padding-bottom: 16px !important;
}

.page-id-8028 .st-blog h2:first-of-type::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 60px !important;
  height: 3px !important;
  background: var(--eo-gold-500) !important;
  border-radius: var(--eo-radius-pill) !important;
}

.page-id-8028 .st-blog h3 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  margin-top: 35px !important;
  margin-bottom: 18px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.page-id-8028 .st-blog h3::before {
  content: '✦' !important;
  color: var(--eo-gold-500) !important;
  font-size: 18px !important;
}

.page-id-8028 .st-blog h4 {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: var(--eo-gold-600) !important;
  margin-top: 20px !important;
  margin-bottom: 12px !important;
}

.page-id-8028 .st-blog p {
  font-size: 16px !important;
  line-height: 1.85 !important;
  color: var(--eo-text-body) !important;
  margin-bottom: 20px !important;
}

.page-id-8028 .st-blog ul {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important;
  gap: 20px !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 25px 0 35px 0 !important;
}

.page-id-8028 .st-blog ul li {
  background: var(--eo-bg-subtle) !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-lg) !important;
  padding: 24px 26px !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: var(--eo-navy-900) !important;
  position: relative !important;
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
}

.page-id-8028 .st-blog ul li:hover {
  transform: translateY(-4px) !important;
  box-shadow: var(--eo-shadow-md) !important;
  border-color: rgba(197, 160, 89, 0.45) !important;
  background: #ffffff !important;
}

.page-id-8028 .st-blog ul li strong {
  display: block !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 18px !important;
  color: var(--eo-navy-950) !important;
  margin-bottom: 8px !important;
}

/* --------------------------------------------------------------------------
   46. LUXURY CONTACT US & BESPOKE CONCIERGE SUITE (.page-id-313, .contact-info)
   -------------------------------------------------------------------------- */
/* Eliminate any hidden map blank space and tighten top rhythm */
.page-id-313 .elementor-hidden-desktop,
.page-id-313 .elementor-hidden-laptop,
.page-id-313 .elementor-hidden-tablet,
.page-id-313 .elementor-hidden-mobile,
.page-id-313 .elementor-element-f38538b {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  visibility: hidden !important;
  overflow: hidden !important;
}

.page-id-313 #st-content-wrapper,
.page-id-313 .st-page-default,
.page-template-template-blank .entry-content {
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%) !important;
  padding: 25px 0 60px 0 !important;
  margin: 0 !important;
}

.page-id-313 .container,
.page-id-313 .entry-content {
  max-width: 1140px !important;
  margin: 0 auto !important;
}

.page-id-313 .elementor-element-4828ac6e {
  margin-top: 10px !important;
  margin-bottom: 40px !important;
}

/* Contact Information Main Editorial Heading */
.page-id-313 .elementor-element-39321ae8 .elementor-heading-title,
.page-id-313 h2#nxp-contact-information {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 38px !important;
  font-weight: 800 !important;
  color: #070f1e !important;
  line-height: 1.25 !important;
  letter-spacing: -0.02em !important;
  margin: 0 0 12px 0 !important;
}

/* Contact Subtitle: Clean, legible, high-end sans-serif */
.page-id-313 .elementor-element-3eccb2eb .elementor-heading-title,
.page-id-313 h2#nxp-for-any-inquiries-or-to-get-in-touch-please-contact-us-at-the-info-below-or-fill-out-the-form {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  color: #64748b !important;
  line-height: 1.65 !important;
  letter-spacing: normal !important;
  margin: 0 0 20px 0 !important;
}

/* Gold Accent Divider */
.page-id-313 .elementor-element-1f7e55d,
.page-id-313 .elementor-element-12627ea0 {
  margin-bottom: 24px !important;
}

.page-id-313 .elementor-divider-separator {
  border-top: 2px solid #c5a059 !important;
  width: 60px !important;
}

/* Luxury Contact Info Cards (Address, Phone, WhatsApp, Email, Hours) */
.page-id-313 .elementor-widget-icon-box {
  margin-bottom: 16px !important;
}

.page-id-313 .elementor-widget-icon-box .elementor-icon-box-wrapper {
  display: flex !important;
  align-items: center !important;
  background: #ffffff !important;
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  border-radius: 14px !important;
  padding: 16px 20px !important;
  box-shadow: 0 4px 14px rgba(11, 21, 40, 0.04) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.page-id-313 .elementor-widget-icon-box .elementor-icon-box-wrapper:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(197, 160, 89, 0.5) !important;
  box-shadow: 0 10px 24px rgba(197, 160, 89, 0.12) !important;
}

.page-id-313 .elementor-widget-icon-box .elementor-icon-box-icon {
  margin-right: 18px !important;
  margin-bottom: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: #fbf7ee !important;
  border: 1px solid rgba(197, 160, 89, 0.25) !important;
  color: #c5a059 !important;
  font-size: 18px !important;
  flex-shrink: 0 !important;
}

.page-id-313 .elementor-widget-icon-box .elementor-icon-box-title {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  color: #070f1e !important;
  margin-bottom: 4px !important;
}

.page-id-313 .elementor-widget-icon-box .elementor-icon-box-description {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #334155 !important;
  margin: 0 !important;
  line-height: 1.5 !important;
}

/* Right Column Contact Form: Single Unified Luxury Card (No Nested Boxes) */
.page-id-313 .elementor-element-10a400c,
.page-id-313 .elementor-element-10a400c>.elementor-widget-wrap,
.page-id-313 .elementor-element-1c32a863,
.page-id-313 .elementor-element-1c32a863>.elementor-widget-container,
.page-id-313 .elementor-shortcode {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
}

.page-id-313 .elementor-element-1c32a863>.elementor-widget-container::before,
.page-id-313 .elementor-shortcode::before {
  display: none !important;
  content: none !important;
}

/* Single Master White Card */
.page-id-313 .wpforms-container,
.page-id-313 .wpforms-container-full {
  background: #ffffff !important;
  border: 1px solid rgba(197, 160, 89, 0.28) !important;
  border-radius: 20px !important;
  padding: 42px 38px !important;
  box-shadow: 0 16px 45px rgba(7, 15, 30, 0.07) !important;
  position: relative !important;
  overflow: hidden !important;
  margin: 0 !important;
  max-width: 100% !important;
}

.page-id-313 .wpforms-container::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, #c5a059 0%, #dfba73 50%, #070f1e 100%) !important;
}

/* Reset all inner WPForms containers so NO nested box can appear */
.page-id-313 .wpforms-form,
.page-id-313 .wpforms-field-container,
.page-id-313 .wpforms-render-modern {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* WPForms Input Fields Styling */
.page-id-313 .wpforms-field {
  margin-bottom: 22px !important;
}

.page-id-313 .wpforms-field-label {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 8px !important;
  display: block !important;
}

.page-id-313 .wpforms-field-label .wpforms-required-label {
  color: #c5a059 !important;
}

.page-id-313 .wpforms-field input[type="text"],
.page-id-313 .wpforms-field input[type="email"],
.page-id-313 .wpforms-field textarea {
  width: 100% !important;
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 10px !important;
  padding: 13px 18px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  color: #0f172a !important;
  box-shadow: none !important;
  transition: all 0.25s ease !important;
}

.page-id-313 .wpforms-field input[type="text"]:focus,
.page-id-313 .wpforms-field input[type="email"]:focus,
.page-id-313 .wpforms-field textarea:focus {
  background: #ffffff !important;
  border-color: #c5a059 !important;
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.2) !important;
  outline: none !important;
}

/* Luxury Gold Form Submit Button */
.page-id-313 .wpforms-form .wpforms-submit,
.page-id-313 button[type="submit"] {
  width: 100% !important;
  background: linear-gradient(135deg, #c5a059 0%, #b38e44 100%) !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  padding: 16px 36px !important;
  border-radius: 9999px !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  box-shadow: 0 10px 25px rgba(197, 160, 89, 0.35) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer !important;
  margin-top: 8px !important;
}

.page-id-313 .wpforms-form .wpforms-submit:hover,
.page-id-313 button[type="submit"]:hover {
  background: linear-gradient(135deg, #dfba73 0%, #c5a059 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 32px rgba(197, 160, 89, 0.45) !important;
  color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   47. LEGAL, POLICY & EDITORIAL TERMS DOSSIER (.page-id-10176, .page-id-10356)
   -------------------------------------------------------------------------- */
.page-id-10176 .st-blog,
.page-id-10356 .st-blog,
.privacy-policy .st-blog,
.terms-conditions .st-blog {
  max-width: 900px !important;
  margin: 0 auto !important;
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-xl) !important;
  padding: 45px 55px !important;
  box-shadow: var(--eo-shadow-sm) !important;
}

.page-id-10176 h2.wp-block-heading,
.page-id-10356 h2,
.page-id-10356 p b:first-child {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  margin-top: 30px !important;
  margin-bottom: 14px !important;
  display: block !important;
}

.page-id-10176 p,
.page-id-10356 p {
  font-size: 15.5px !important;
  line-height: 1.85 !important;
  color: var(--eo-text-body) !important;
  margin-bottom: 18px !important;
}

.page-id-10176 ol,
.page-id-10176 ul,
.page-id-10356 ol,
.page-id-10356 ul {
  padding-left: 24px !important;
  margin-bottom: 22px !important;
}

.page-id-10176 li,
.page-id-10356 li {
  font-size: 15px !important;
  line-height: 1.75 !important;
  color: var(--eo-navy-900) !important;
  margin-bottom: 8px !important;
}

/* --------------------------------------------------------------------------
   48. STANDALONE LOGIN, REGISTER & RESET PASSWORD PORTAL
   -------------------------------------------------------------------------- */
.page-template-template-login-normal,
.page-template-template-login,
.page-template-template-register,
.page-id-311,
.page-id-312,
.page-id-6198,
.page-id-10193,
.page-id-5741 {
  background: linear-gradient(135deg, #0b1528 0%, #08101e 100%) !important;
  min-height: 100vh !important;
}

.page-template-template-login-normal .container-fluid,
.page-template-template-login .container,
.page-id-311 .container {
  padding-top: 50px !important;
  padding-bottom: 80px !important;
}

.page-template-template-login-normal .page-title,
.page-id-311 h1.page-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 34px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  text-align: center !important;
  margin-bottom: 40px !important;
}

.page-template-template-login-normal .row[data-gutter="60"]>div,
.page-id-311 .col-md-4 {
  background: rgba(255, 255, 255, 0.05) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  border: 1px solid rgba(197, 160, 89, 0.25) !important;
  border-radius: var(--eo-radius-xl) !important;
  padding: 34px 30px !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.4) !important;
  color: #f1f5f9 !important;
  margin-bottom: 25px !important;
}

.page-template-template-login-normal h3,
.page-id-311 h3 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: var(--eo-gold-400) !important;
  margin-bottom: 20px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
  padding-bottom: 12px !important;
}

.page-template-template-login-normal .form-control,
.page-id-311 .form-control {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: var(--eo-radius-md) !important;
  color: #ffffff !important;
  padding: 12px 16px !important;
  font-size: 14px !important;
  transition: all 0.25s ease !important;
}

.page-template-template-login-normal .form-control:focus,
.page-id-311 .form-control:focus {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: var(--eo-gold-500) !important;
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.25) !important;
  outline: none !important;
}

.page-template-template-login-normal .form-control::placeholder,
.page-id-311 .form-control::placeholder {
  color: rgba(255, 255, 255, 0.5) !important;
}

.page-template-template-login-normal .btn-primary,
.page-id-311 .btn-primary,
.page-id-311 input[type="submit"] {
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: var(--eo-navy-950) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  padding: 13px 28px !important;
  border-radius: var(--eo-radius-pill) !important;
  border: none !important;
  box-shadow: 0 8px 20px var(--eo-gold-glow) !important;
  transition: all 0.25s ease !important;
}

.page-template-template-login-normal .btn-primary:hover,
.page-id-311 .btn-primary:hover,
.page-id-311 input[type="submit"]:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 28px rgba(197, 160, 89, 0.45) !important;
  color: #000000 !important;
}

/* --------------------------------------------------------------------------
   49. BOOKING SUCCESS & CONCIERGE ORDER CONFIRMATION (.page-id-8095, .page-id-10162)
   -------------------------------------------------------------------------- */
.page-id-8095 .st-content-wrapper,
.page-id-10162 .st-content-wrapper,
.booking-success-page {
  padding: 60px 0 90px 0 !important;
  background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%) !important;
}

.page-id-8095 .booking-success-box,
.page-id-10162 .order-confirm-box,
.st-order-success-wrap {
  max-width: 780px !important;
  margin: 0 auto !important;
  background: #ffffff !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-2xl) !important;
  padding: 45px 50px !important;
  box-shadow: var(--eo-shadow-xl) !important;
  text-align: center !important;
  position: relative !important;
  overflow: hidden !important;
}

.page-id-8095 .booking-success-box::before,
.page-id-10162 .order-confirm-box::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, #10b981, var(--eo-gold-500), #10b981) !important;
}

.page-id-8095 .icon-success,
.page-id-10162 .icon-success {
  width: 72px !important;
  height: 72px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 100%) !important;
  border: 2px solid #10b981 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #10b981 !important;
  font-size: 32px !important;
  margin-bottom: 22px !important;
  box-shadow: 0 10px 25px rgba(16, 185, 129, 0.25) !important;
}

.page-id-8095 h2,
.page-id-10162 h2 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 32px !important;
  font-weight: 800 !important;
  color: var(--eo-navy-950) !important;
  margin-bottom: 12px !important;
}

.page-id-8095 p,
.page-id-10162 p {
  font-size: 16px !important;
  color: var(--eo-text-muted) !important;
  line-height: 1.6 !important;
}

/* --------------------------------------------------------------------------
   50. BECOME A LOCAL EXPERT & PARTNER PORTAL (.page-id-319, .become-local-expert)
   -------------------------------------------------------------------------- */
.page-id-319 .elementor-section,
.page-id-285 .elementor-section,
.partner-page .elementor-section {
  position: relative !important;
}

.page-id-319 .elementor-heading-title,
.page-id-285 .elementor-heading-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  color: var(--eo-navy-950) !important;
  font-weight: 700 !important;
}

.page-id-319 .elementor-widget-button a.elementor-button,
.page-id-285 .elementor-widget-button a.elementor-button {
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: var(--eo-navy-950) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  border-radius: var(--eo-radius-pill) !important;
  padding: 14px 32px !important;
  box-shadow: 0 8px 24px var(--eo-gold-glow) !important;
  transition: all 0.3s ease !important;
}

.page-id-319 .elementor-widget-button a.elementor-button:hover,
.page-id-285 .elementor-widget-button a.elementor-button:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 12px 30px rgba(197, 160, 89, 0.45) !important;
  color: #000000 !important;
}

/* --------------------------------------------------------------------------
   51. GLOBAL MICRO-ANIMATIONS, LUXURY SCROLLBAR & PRINT DOSSIER
   -------------------------------------------------------------------------- */
@keyframes eoFadeInUp {
  from {
    opacity: 0;
    transform: translateY(20px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.eo-animate-fade-up {
  animation: eoFadeInUp 0.6s cubic-bezier(0.16, 1, 0.3, 1) both !important;
}

/* Bespoke Luxury Scrollbar */
::-webkit-scrollbar {
  width: 9px !important;
  height: 9px !important;
}

::-webkit-scrollbar-track {
  background: #0b1528 !important;
}

::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, var(--eo-gold-500) 0%, var(--eo-gold-600) 100%) !important;
  border-radius: var(--eo-radius-pill) !important;
  border: 2px solid #0b1528 !important;
}

::-webkit-scrollbar-thumb:hover {
  background: var(--eo-gold-400) !important;
}

/* Print Itinerary / Voucher Styles */
@media print {

  header,
  footer,
  #header,
  #footer,
  .nxp-chat-widget,
  #nxp-chat-root,
  .st-header,
  .st-footer,
  .cart-collaterals,
  .woocommerce-cart-form td.actions,
  .eo-back-to-top,
  .review-box {
    display: none !important;
  }

  body,
  #st-content-wrapper,
  .container {
    background: #ffffff !important;
    color: #000000 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
  }

  h1,
  h2,
  h3,
  h4 {
    color: #000000 !important;
  }
}

/* ==========================================================================
   52. RECREATED LUXURY TOPBAR & MAIN HEADER (FULL BESPOKE SUITE)
   ========================================================================== */

/* Topbar Sticky Container */
#sticktopbar {
  position: relative;
  z-index: 100000;
  transition: all 0.35s ease;
}

#topbar.eo-luxury-topbar {
  background: linear-gradient(90deg, #070f1e 0%, #0b1528 50%, #070f1e 100%) !important;
  color: #e2e8f0 !important;
  border-bottom: 1px solid rgba(197, 160, 89, 0.25) !important;
  padding: 8px 0 !important;
  font-size: 13px;
  line-height: 1.4;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
}

.eo-topbar-container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 28px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.eo-topbar-left {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
}

.eo-topbar-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(197, 160, 89, 0.12);
  border: 1px solid rgba(197, 160, 89, 0.35);
  border-radius: var(--eo-radius-pill);
  padding: 3px 12px;
  font-size: 12px;
  font-weight: 600;
  color: var(--eo-gold-300);
}

.eo-topbar-badge .eo-badge-spark {
  animation: eoSparkle 2s infinite ease-in-out;
}

@keyframes eoSparkle {

  0%,
  100% {
    opacity: 0.6;
    transform: scale(0.9);
  }

  50% {
    opacity: 1;
    transform: scale(1.15);
  }
}

.eo-topbar-concierge {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-size: 12.5px;
  font-weight: 500;
}

.eo-concierge-link {
  color: #cbd5e1 !important;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  transition: var(--eo-transition-fast);
}

.eo-concierge-link:hover {
  color: var(--eo-gold-400) !important;
}

.eo-concierge-link i {
  color: var(--eo-gold-400);
  font-size: 13px;
}

.eo-whatsapp-link i {
  color: #25d366 !important;
}

.eo-divider {
  color: rgba(255, 255, 255, 0.2);
  font-size: 11px;
}

/* Topbar Right Menu */
.eo-topbar-right {
  display: flex;
  align-items: center;
}

.eo-topbar-menu {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.eo-social-pill a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.15);
  color: #cbd5e1 !important;
  transition: var(--eo-transition-fast);
}

.eo-social-pill a:hover {
  background: var(--eo-gold-500);
  border-color: var(--eo-gold-400);
  color: #070f1e !important;
  transform: translateY(-2px);
  box-shadow: 0 4px 12px var(--eo-gold-glow);
}

.eo-social-pill svg {
  fill: currentColor;
  width: 13px !important;
  height: 13px !important;
}

/* VIP Account Button */
.eo-account-item .eo-account-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(197, 160, 89, 0.15);
  border: 1px solid rgba(197, 160, 89, 0.4);
  color: var(--eo-gold-300) !important;
  border-radius: var(--eo-radius-pill);
  padding: 4px 14px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.3px;
  text-transform: uppercase;
  transition: var(--eo-transition-fast);
}

.eo-account-item .eo-account-btn:hover {
  background: var(--eo-gold-500);
  color: #070f1e !important;
  box-shadow: 0 4px 14px var(--eo-gold-glow);
}

/* --------------------------------------------------------------------------
   MAIN LUXURY NAVBAR
   -------------------------------------------------------------------------- */
#eo-main-site-header.eo-luxury-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 99999 !important;
  background: rgba(255, 255, 255, 0.96) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border-bottom: 1px solid rgba(197, 160, 89, 0.2) !important;
  box-shadow: 0 4px 25px rgba(11, 21, 40, 0.05) !important;
  padding: 14px 32px !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

#eo-main-site-header.eo-luxury-header.is-sticky,
#eo-main-site-header.eo-luxury-header.scrolled-header {
  padding: 10px 32px !important;
  background: rgba(255, 255, 255, 0.98) !important;
  box-shadow: 0 12px 35px rgba(11, 21, 40, 0.09) !important;
  border-bottom-color: rgba(197, 160, 89, 0.3) !important;
}

.eo-brand-logo-wrap img {
  max-height: 50px !important;
  width: auto !important;
  transition: var(--eo-transition-fast);
  display: block;
}

#eo-main-site-header.is-sticky .eo-brand-logo-wrap img {
  max-height: 42px !important;
}

/* Hamburger Button */
.eo-hamburger-btn {
  display: none;
  background: transparent;
  border: none;
  cursor: pointer;
  padding: 8px;
  flex-direction: column;
  gap: 5px;
  margin-right: 14px;
}

.eo-hamburger-btn .eo-hamburger-line {
  display: block;
  width: 24px;
  height: 2.5px;
  background: var(--eo-navy-950);
  border-radius: 2px;
  transition: var(--eo-transition-fast);
}

/* Main Navigation Menu */
.eo-main-menu-list {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.eo-main-menu-list>li>a {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px !important;
  color: var(--eo-navy-950) !important;
  padding: 10px 16px !important;
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  border-radius: var(--eo-radius-sm);
  transition: var(--eo-transition-fast) !important;
}

.eo-main-menu-list>li>a:hover,
.eo-main-menu-list>li.current-menu-item>a,
.eo-main-menu-list>li.current_page_item>a {
  color: var(--eo-sapphire-600) !important;
}

/* Gold animated underline */
.eo-main-menu-list>li>a::after {
  content: '';
  position: absolute;
  bottom: 2px;
  left: 16px;
  right: 16px;
  height: 2px;
  background: linear-gradient(90deg, var(--eo-sapphire-600), var(--eo-gold-500));
  border-radius: 2px;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.eo-main-menu-list>li>a:hover::after,
.eo-main-menu-list>li.current-menu-item>a::after,
.eo-main-menu-list>li.current_page_item>a::after {
  transform: scaleX(1);
}

/* Dropdown Sub-menus */
.eo-main-menu-list ul.sub-menu {
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 240px;
  background: #ffffff !important;
  border-radius: var(--eo-radius-md) !important;
  border: 1px solid rgba(197, 160, 89, 0.25) !important;
  box-shadow: 0 20px 48px -10px rgba(11, 21, 40, 0.16) !important;
  padding: 10px 0 !important;
  list-style: none !important;
  margin: 0 !important;
  z-index: 999999;
}

.eo-main-menu-list ul.sub-menu li a {
  display: block !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--eo-text-body) !important;
  padding: 10px 22px !important;
  transition: var(--eo-transition-fast) !important;
  position: relative;
}

.eo-main-menu-list ul.sub-menu li a:hover {
  color: var(--eo-sapphire-600) !important;
  background: var(--eo-bg-subtle) !important;
  padding-left: 28px !important;
}

.eo-main-menu-list ul.sub-menu li a:hover::before {
  content: '';
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 4px;
  height: 16px;
  background: var(--eo-gold-500);
  border-radius: 2px;
}

/* Header Right Actions List */
.header__right .items.eo-actions-list,
.eo-actions-list {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 14px !important;
}

.header__right .items.eo-actions-list>li,
.eo-actions-list>li {
  margin: 0 !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
}

.eo-action-icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: var(--eo-bg-subtle);
  border: 1px solid var(--eo-border-medium);
  color: var(--eo-navy-950) !important;
  font-size: 16px;
  transition: var(--eo-transition-fast);
  text-decoration: none;
  position: relative;
}

.eo-action-icon-btn:hover {
  background: #ffffff;
  border-color: var(--eo-gold-500);
  color: #ef4444 !important;
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(11, 21, 40, 0.08);
}

/* User Pill in Header */
.eo-user-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: var(--eo-bg-subtle) !important;
  border: 1px solid var(--eo-border-medium) !important;
  border-radius: var(--eo-radius-pill) !important;
  padding: 5px 14px 5px 6px !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
  text-decoration: none !important;
  transition: var(--eo-transition-fast) !important;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
  line-height: 1 !important;
}

.eo-user-pill:hover {
  border-color: var(--eo-gold-500);
  background: #ffffff;
  box-shadow: 0 4px 14px rgba(11, 21, 40, 0.08);
}

.eo-user-avatar {
  border-radius: 50%;
}

/* High-Converting CTA Button: Tailor Your Journey */
.eo-header-cta-btn,
.eo-header-cta-btn:link,
.eo-header-cta-btn:visited,
.header__right .items li a.eo-header-cta-btn,
.header__right .items li.eo-cta-action a.eo-header-cta-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  background: linear-gradient(135deg, #070f1e 0%, #162a4d 50%, #070f1e 100%) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  padding: 12px 24px !important;
  border-radius: var(--eo-radius-pill) !important;
  border: 1.5px solid #c5a059 !important;
  box-shadow: 0 4px 18px rgba(7, 15, 30, 0.3) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  text-decoration: none !important;
  position: relative;
  overflow: hidden;
  white-space: nowrap !important;
  flex-shrink: 0 !important;
}

.eo-header-cta-btn span,
.header__right .items li a.eo-header-cta-btn span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-weight: 800 !important;
  display: inline-block !important;
}

.eo-header-cta-btn i,
.header__right .items li a.eo-header-cta-btn i {
  color: #dfbf78 !important;
  -webkit-text-fill-color: #dfbf78 !important;
  font-size: 13px !important;
  transition: transform 0.25s ease !important;
}

.eo-header-cta-btn:hover,
.header__right .items li a.eo-header-cta-btn:hover {
  background: linear-gradient(135deg, #c5a059 0%, #dfbf78 100%) !important;
  border-color: #c5a059 !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(197, 160, 89, 0.45) !important;
  color: #070f1e !important;
  -webkit-text-fill-color: #070f1e !important;
}

.eo-header-cta-btn:hover span,
.header__right .items li a.eo-header-cta-btn:hover span {
  color: #070f1e !important;
  -webkit-text-fill-color: #070f1e !important;
}

.eo-header-cta-btn:hover i,
.header__right .items li a.eo-header-cta-btn:hover i {
  color: #070f1e !important;
  -webkit-text-fill-color: #070f1e !important;
  transform: translateX(4px);
}


/* ==========================================================================
   53. RECREATED LUXURY MASTER FOOTER (WORLD-CLASS SUITE)
   ========================================================================== */
footer#main-footer.eo-luxury-master-footer {
  background: linear-gradient(180deg, #070f1e 0%, #03070f 100%) !important;
  color: #94a3b8 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  position: relative !important;
  margin-top: 0 !important;
  padding: 0 !important;
  overflow: hidden;
}

footer#main-footer.eo-luxury-master-footer::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(197, 160, 89, 0.6), transparent);
}

/* VIP Newsletter Section */
.eo-footer-newsletter-wrap {
  padding: 60px 0 30px;
  position: relative;
  z-index: 2;
}

.eo-newsletter-card {
  background: rgba(15, 29, 54, 0.75);
  border: 1px solid rgba(197, 160, 89, 0.3);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-radius: var(--eo-radius-xl);
  padding: 40px 48px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.5);
  position: relative;
  overflow: hidden;
}

.eo-newsletter-card::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 250px;
  height: 100%;
  background: radial-gradient(circle, rgba(197, 160, 89, 0.08) 0%, transparent 70%);
  pointer-events: none;
}

.eo-newsletter-eyebrow {
  display: block;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 2px;
  color: var(--eo-gold-400);
  margin-bottom: 8px;
  text-transform: uppercase;
}

.eo-newsletter-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  line-height: 1.25 !important;
  margin-bottom: 10px !important;
}

.eo-newsletter-desc {
  font-size: 14.5px !important;
  line-height: 1.65 !important;
  color: #94a3b8 !important;
  margin: 0 !important;
}

.eo-newsletter-input-group {
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.07);
  border: 1.5px solid rgba(255, 255, 255, 0.15);
  border-radius: var(--eo-radius-pill);
  padding: 4px;
  transition: var(--eo-transition-fast);
}

.eo-newsletter-input-group:focus-within {
  border-color: var(--eo-gold-500);
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.25);
  background: rgba(255, 255, 255, 0.12);
}

.eo-newsletter-input {
  flex: 1;
  background: transparent !important;
  border: none !important;
  color: #ffffff !important;
  font-size: 14.5px !important;
  padding: 12px 20px !important;
  outline: none !important;
}

.eo-newsletter-input::placeholder {
  color: #64748b !important;
}

.eo-newsletter-submit-btn {
  background: linear-gradient(135deg, var(--eo-gold-600) 0%, var(--eo-gold-400) 100%) !important;
  color: #070f1e !important;
  border: none !important;
  border-radius: var(--eo-radius-pill) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  padding: 12px 24px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}

.eo-newsletter-submit-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px var(--eo-gold-glow);
  color: #000000 !important;
}

.eo-newsletter-note {
  display: block;
  font-size: 12px;
  color: #64748b;
  margin-top: 10px;
}

.eo-newsletter-note i {
  color: var(--eo-gold-500);
  margin-right: 4px;
}

/* Main 4 Columns */
.eo-footer-main-wrap {
  padding: 50px 0 50px;
}

.eo-footer-brand .eo-footer-logo {
  max-height: 48px;
  width: auto;
  margin-bottom: 18px;
}

.eo-footer-brand .eo-footer-logo-text {
  font-family: 'Playfair Display', serif;
  font-size: 26px;
  font-weight: 700;
  color: #ffffff;
  display: block;
  margin-bottom: 16px;
}

.eo-footer-about {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #94a3b8 !important;
  margin-bottom: 24px !important;
}

/* Concierge Hotline Card in Footer */
.eo-footer-concierge-card {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--eo-radius-md);
  padding: 16px 18px;
  margin-bottom: 22px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.eo-concierge-item {
  display: flex;
  align-items: center;
  gap: 12px;
}

.eo-gold-icon {
  color: var(--eo-gold-400) !important;
  font-size: 15px;
  flex-shrink: 0;
}

.eo-concierge-label {
  display: block;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #64748b;
  font-weight: 700;
}

.eo-concierge-val {
  color: #f1f5f9 !important;
  font-size: 13.5px;
  font-weight: 700;
  text-decoration: none;
  transition: var(--eo-transition-fast);
}

.eo-concierge-val:hover {
  color: var(--eo-gold-400) !important;
}

/* Footer Socials */
.eo-footer-socials {
  display: flex;
  align-items: center;
  gap: 10px;
}

.eo-social-circle {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #cbd5e1 !important;
  font-size: 14px;
  transition: var(--eo-transition-fast);
  text-decoration: none;
}

.eo-social-circle:hover {
  background: var(--eo-gold-500);
  border-color: var(--eo-gold-400);
  color: #070f1e !important;
  transform: translateY(-3px);
  box-shadow: 0 6px 16px var(--eo-gold-glow);
}

/* Headings in Footer */
.eo-footer-heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  margin-bottom: 22px !important;
  position: relative;
  padding-bottom: 12px;
}

.eo-footer-heading::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 32px;
  height: 2px;
  background: var(--eo-gold-500);
  border-radius: 2px;
}

/* Navigation Links List */
.eo-footer-links-list {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 11px;
}

.eo-footer-links-list li a {
  color: #94a3b8 !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  transition: all 0.25s ease;
}

.eo-footer-links-list li a:hover {
  color: var(--eo-gold-400) !important;
  transform: translateX(5px);
}

/* Trust Feature Box in Footer */
.eo-trust-feature-box {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: var(--eo-radius-md);
  padding: 20px 22px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.eo-trust-mini-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}

.eo-trust-mini-item strong {
  display: block;
  font-size: 13.5px;
  color: #f8fafc;
  margin-bottom: 2px;
}

.eo-trust-mini-item p {
  font-size: 12.5px !important;
  color: #64748b !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

.eo-outline-pill-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  border: 1.5px solid var(--eo-gold-500);
  color: var(--eo-gold-400) !important;
  border-radius: var(--eo-radius-pill);
  padding: 10px 20px;
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  text-decoration: none;
  transition: var(--eo-transition-fast);
}

.eo-outline-pill-btn:hover {
  background: var(--eo-gold-500);
  color: #070f1e !important;
  box-shadow: 0 4px 16px var(--eo-gold-glow);
}

.eo-text-link {
  color: #cbd5e1 !important;
  font-size: 13px;
  text-decoration: none;
  transition: var(--eo-transition-fast);
}

.eo-text-link:hover {
  color: var(--eo-gold-400) !important;
  text-decoration: underline;
}

/* Trust & Payment Strip */
.eo-footer-trust-strip {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  padding: 22px 0;
  background: rgba(0, 0, 0, 0.25);
}

.eo-trust-badge-pill {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: #cbd5e1;
  font-weight: 600;
}

.eo-payment-badges {
  color: #94a3b8;
}

.eo-payment-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #94a3b8;
  transition: var(--eo-transition-fast);
}

.eo-payment-icon:hover {
  color: #ffffff;
  transform: translateY(-2px);
}

/* Legal Sub-bottom */
.eo-footer-sub-bottom {
  padding: 24px 0 30px;
  font-size: 13px;
  color: #64748b;
}

.eo-copyright-text p {
  margin: 0 !important;
}

.eo-footer-legal-links {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}

.eo-footer-legal-links a {
  color: #94a3b8 !important;
  text-decoration: none;
  transition: var(--eo-transition-fast);
}

.eo-footer-legal-links a:hover {
  color: var(--eo-gold-400) !important;
}

/* ==========================================================================
   54. TOUR LIST, SEARCH, CITY & DETAILS PAGE REFINEMENTS
   ========================================================================== */
/* Tour Cards Grid */
.services-item.grid .item,
.item-tour .item.item-tours.service-border {
  border-radius: var(--eo-radius-lg) !important;
  box-shadow: 0 4px 18px rgba(11, 21, 40, 0.06) !important;
  border: 1px solid rgba(15, 34, 61, 0.09) !important;
  background: #ffffff !important;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.services-item.grid .item:hover,
.item-tour .item.item-tours.service-border:hover {
  transform: translateY(-8px) !important;
  box-shadow: 0 22px 45px -10px rgba(11, 21, 40, 0.16) !important;
  border-color: rgba(197, 160, 89, 0.4) !important;
}

.services-item .featured-image::after,
.item-tours .featured-image::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 60px;
  background: linear-gradient(180deg, transparent 0%, rgba(11, 21, 40, 0.5) 100%);
  pointer-events: none;
  z-index: 1;
}

.services-item .title a,
.item-tours .title a {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  color: var(--eo-navy-950) !important;
}

.services-item .title a:hover,
.item-tours .title a:hover {
  color: var(--eo-sapphire-600) !important;
}

/* Back To Top Sleek Floating Button */
#gotop.eo-back-to-top {
  background: linear-gradient(135deg, #0b1528 0%, #1c335a 100%) !important;
  border: 1.5px solid var(--eo-gold-500) !important;
  color: var(--eo-gold-400) !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3) !important;
}

#gotop.eo-back-to-top:hover {
  background: var(--eo-gold-500) !important;
  color: #070f1e !important;
  transform: translateY(-4px) !important;
}

@media screen and (max-width: 991px) {
  .eo-hamburger-btn {
    display: flex !important;
  }

  .eo-topbar-badge {
    display: none !important;
  }

  .eo-newsletter-card {
    padding: 30px 24px !important;
  }

  .eo-newsletter-title {
    font-size: 24px !important;
  }
}

/* ==========================================================================
   55. BESPOKE LUXURY TOUR CARDS ARCHITECTURE (.eo-luxury-tour-card)
   ========================================================================== */
.eo-tour-col {
  margin-bottom: 30px !important;
}

.eo-luxury-tour-card {
  background: #ffffff !important;
  border: 1px solid rgba(0, 0, 0, 0.08) !important;
  border-radius: 16px !important;
  position: relative !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05) !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), box-shadow 0.35s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.35s ease !important;
}

.eo-luxury-tour-card:hover {
  transform: translateY(-5px) !important;
  border-color: rgba(223, 105, 81, 0.3) !important;
  box-shadow: 0 14px 34px rgba(0, 0, 0, 0.09) !important;
}

/* Card Media Wrapper */
.eo-card-media-wrapper {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 16 / 10.5 !important;
  background-color: #f3f4f6 !important;
  border-radius: 16px 16px 0 0 !important;
}

.eo-card-img-anchor {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  position: relative !important;
  overflow: hidden !important;
  border-radius: 16px 16px 0 0 !important;
}

.eo-zoom-img,
.eo-card-media-wrapper img.image-feature,
.eo-card-media-wrapper img.img-responsive {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.eo-luxury-tour-card:hover .eo-zoom-img,
.eo-luxury-tour-card:hover .eo-card-media-wrapper img.image-feature,
.eo-luxury-tour-card:hover .eo-card-media-wrapper img.img-responsive {
  transform: scale(1.06) !important;
}

.eo-card-overlay-gradient {
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.06) 0%, rgba(0, 0, 0, 0) 50%, rgba(0, 0, 0, 0.25) 100%) !important;
  pointer-events: none !important;
  border-radius: 16px 16px 0 0 !important;
}

/* Card Badges Strip (Top-Left) */
.eo-card-badges-strip {
  position: absolute !important;
  top: 12px !important;
  left: 12px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
  z-index: 5 !important;
  pointer-events: none !important;
}

.eo-badge-pill {
  display: inline-flex !important;
  align-items: center !important;
  padding: 4px 10px !important;
  border-radius: 20px !important;
  font-family: inherit, sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.03em !important;
  line-height: 1 !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
}

.eo-badge-gold {
  background: #c5a059 !important;
  color: #ffffff !important;
}

.eo-badge-sale {
  background: #059669 !important;
  color: #ffffff !important;
}

.eo-badge-inquire {
  background: rgba(17, 24, 39, 0.85) !important;
  color: #fbbf24 !important;
}

/* Wishlist Button (Top-Right: clean white circular button) */
.eo-wishlist-trigger,
.service-add-wishlist.login,
.featured-image .service-add-wishlist {
  position: absolute !important;
  top: 12px !important;
  right: 12px !important;
  width: 36px !important;
  height: 36px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12) !important;
  border: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 5 !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
  padding: 0 !important;
}

.eo-wishlist-trigger:hover,
.service-add-wishlist.login:hover,
.featured-image .service-add-wishlist:hover {
  transform: scale(1.08) !important;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.18) !important;
}

.eo-wishlist-trigger svg,
.service-add-wishlist svg {
  stroke: #6b7280 !important;
  transition: all 0.2s ease !important;
}

.eo-wishlist-trigger.added svg,
.service-add-wishlist.added svg {
  fill: #ef4444 !important;
  stroke: #ef4444 !important;
}

/* Europe Odyssey Brand Stamp Emblem (Bottom-Right of Image) */
.eo-card-brand-stamp {
  position: absolute !important;
  bottom: -13px !important;
  right: 14px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  border: 2px solid #ffffff !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  z-index: 6 !important;
  overflow: hidden !important;
  pointer-events: none !important;
}

.eo-card-brand-stamp img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  border-radius: 50% !important;
  display: block !important;
}

/* Card Body Content */
.eo-card-body,
.services-item .content-item,
.item-tours .content-item {
  padding: 16px 18px 16px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  background: #ffffff !important;
  border-radius: 0 0 16px 16px !important;
}

.eo-card-title,
.services-item .title,
.item-tours .title {
  font-family: inherit, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 15.5px !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
  color: #111827 !important;
  margin: 0 0 10px 0 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  min-height: 42px !important;
}

.eo-card-title a,
.services-item .title a,
.item-tours .title a {
  color: #111827 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.eo-card-title a:hover,
.services-item .title a:hover,
.item-tours .title a:hover {
  color: #df6951 !important;
}

/* Card Bottom Bar (Duration on Left, Price on Right) */
.section-footer.eo-card-footer,
.services-item .section-footer,
.item-tours .section-footer {
  margin-top: auto !important;
  padding: 10px 0 0 0 !important;
  border-top: none !important;
  width: 100% !important;
  display: block !important;
  background: transparent !important;
}

.footer-inner.eo-card-bottom-bar,
.section-footer .footer-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
}

/* Left: Duration badge with clock */
.service-duration.eo-card-duration,
.footer-inner .service-duration {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-family: inherit, -apple-system, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: #555e68 !important;
  background: transparent !important;
  padding: 0 !important;
  border: none !important;
  margin: 0 !important;
}

.eo-clock-icon {
  width: 15px !important;
  height: 15px !important;
  stroke: #6b7280 !important;
  flex-shrink: 0 !important;
}

/* Right: Price with thunder icon */
.price-wrapper.eo-card-price-wrapper,
.footer-inner .price-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  margin: 0 !important;
  flex-direction: row !important;
}

.eo-thunder-icon {
  width: 12px !important;
  height: 14px !important;
  fill: #ffab53 !important;
  stroke: #ffab53 !important;
  flex-shrink: 0 !important;
}

.eo-from-label,
.footer-inner .price-wrapper .fr_text {
  font-family: inherit, -apple-system, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #6b7280 !important;
  text-transform: lowercase !important;
  letter-spacing: 0 !important;
  margin: 0 2px 0 0 !important;
}

.eo-price-val,
.footer-inner .price-wrapper span.price {
  font-family: inherit, -apple-system, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  line-height: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
}

.eo-price-val .text-lg,
.eo-price-val .item,
.footer-inner .price-wrapper span.price .text-lg,
.footer-inner .price-wrapper span.price .item {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #111827 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

.eo-price-val .onsale,
.footer-inner .price-wrapper span.price .onsale {
  font-size: 12px !important;
  color: #9ca3af !important;
  text-decoration: line-through !important;
  margin-right: 4px !important;
  font-weight: 500 !important;
}

/* Hide duplicate / obsolete card elements to keep card completely clean */
.eo-card-action-btn,
.eo-card-rating-strip,
.eo-card-location,
.footer-inner .eo-card-action-btn {
  display: none !important;
}



/* ==========================================================================
   56. SINGLE TOUR DETAILS & STICKY BOOKING EXPERIENCE
   ========================================================================== */
.eo-single-service-header {
  padding-bottom: 24px !important;
  border-bottom: 1px solid rgba(11, 21, 40, 0.08) !important;
  margin-bottom: 30px !important;
}

.eo-single-tour-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 34px !important;
  font-weight: 800 !important;
  color: #070f1e !important;
  line-height: 1.25 !important;
  margin-bottom: 8px !important;
  letter-spacing: -0.01em !important;
}

.eo-single-tour-location {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  color: #4a5568 !important;
  display: flex !important;
  align-items: center !important;
  margin-bottom: 12px !important;
}

.eo-single-trust-pills {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
}

.eo-trust-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 5px 12px !important;
  background: #f8fafc !important;
  border: 1px solid rgba(197, 160, 89, 0.25) !important;
  border-radius: 8px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  color: #1e293b !important;
}

.eo-trust-pill svg {
  color: #c5a059 !important;
}

/* Feature Badges Strip (Duration, Style, Group, Meeting) */
.eo-luxury-feature-strip {
  margin-bottom: 35px !important;
}

.eo-feature-card {
  background: #ffffff !important;
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  border-radius: 14px !important;
  padding: 16px 18px !important;
  gap: 14px !important;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.02) !important;
  transition: border-color 0.3s ease, transform 0.3s ease !important;
}

.eo-feature-card:hover {
  border-color: rgba(197, 160, 89, 0.4) !important;
  transform: translateY(-2px) !important;
}

.eo-feature-icon-box {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  border-radius: 12px !important;
  background: rgba(197, 160, 89, 0.12) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid rgba(197, 160, 89, 0.25) !important;
}

.eo-feature-label {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: #8892b0 !important;
  margin-bottom: 2px !important;
}

.eo-feature-val {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0b1528 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Sticky Booking Widget */
.eo-sticky-booking-widget {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 100px !important;
  z-index: 20 !important;
}

.form-book-wrapper {
  background: #ffffff !important;
  border: 1.5px solid rgba(197, 160, 89, 0.35) !important;
  border-radius: 20px !important;
  padding: 26px 24px !important;
  box-shadow: 0 15px 40px -10px rgba(7, 15, 30, 0.1) !important;
}

.form-book-wrapper .form-head {
  padding-bottom: 18px !important;
  border-bottom: 1px solid rgba(11, 21, 40, 0.08) !important;
  margin-bottom: 20px !important;
}

.form-book-wrapper .form-head .price .label {
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-weight: 700 !important;
  color: #8892b0 !important;
}

.form-book-wrapper .form-head .price .value {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #070f1e !important;
}

.form-book-wrapper .form-date-field {
  background: #f8fafc !important;
  border: 1px solid rgba(11, 21, 40, 0.1) !important;
  border-radius: 12px !important;
  padding: 12px 16px !important;
  transition: border-color 0.3s ease !important;
}

.form-book-wrapper .form-date-field:focus-within {
  border-color: #c5a059 !important;
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.15) !important;
}

.form-book-wrapper .btn-book-ajax,
.form-book-wrapper .btn-large.btn-full {
  background: linear-gradient(135deg, #c5a059 0%, #dfba73 100%) !important;
  color: #070f1e !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  border-radius: 12px !important;
  padding: 16px 24px !important;
  border: none !important;
  box-shadow: 0 6px 20px rgba(197, 160, 89, 0.3) !important;
  transition: all 0.3s ease !important;
  width: 100% !important;
  display: block !important;
}

.form-book-wrapper .btn-book-ajax:hover,
.form-book-wrapper .btn-large.btn-full:hover {
  background: linear-gradient(135deg, #b38e47 0%, #c5a059 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 25px rgba(197, 160, 89, 0.4) !important;
}

/* Concierge Direct Assistance Box */
.eo-concierge-assistance-card {
  margin-top: 20px !important;
  background: linear-gradient(145deg, #070f1e 0%, #0d1a33 100%) !important;
  border: 1px solid rgba(197, 160, 89, 0.3) !important;
  border-radius: 16px !important;
  padding: 20px 18px !important;
  color: #ffffff !important;
  box-shadow: 0 10px 25px rgba(7, 15, 30, 0.15) !important;
}

.eo-concierge-avatar {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  background: rgba(197, 160, 89, 0.15) !important;
  border: 1px solid rgba(197, 160, 89, 0.4) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.eo-concierge-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #dfba73 !important;
}

.eo-concierge-sub {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11px !important;
  color: #94a3b8 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
}

.eo-concierge-text {
  font-size: 12.5px !important;
  line-height: 1.5 !important;
  color: #cbd5e1 !important;
  margin: 12px 0 14px 0 !important;
}

.eo-concierge-btn {
  flex: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 8px 12px !important;
  border-radius: 8px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
}

.eo-btn-whatsapp {
  background: #25d366 !important;
  color: #ffffff !important;
}

.eo-btn-whatsapp:hover {
  background: #1eb857 !important;
  color: #ffffff !important;
  transform: translateY(-1px) !important;
}

.eo-btn-call {
  background: rgba(255, 255, 255, 0.1) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
}

.eo-btn-call:hover {
  background: rgba(255, 255, 255, 0.2) !important;
  color: #ffffff !important;
}

/* Peak Season Notice Pill */
.eo-booking-notice-pill {
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  background: rgba(197, 160, 89, 0.08) !important;
  border: 1px solid rgba(197, 160, 89, 0.25) !important;
  border-radius: 10px !important;
  padding: 10px 14px !important;
  font-size: 11.5px !important;
  line-height: 1.45 !important;
  color: #475569 !important;
}

.eo-booking-notice-pill svg {
  flex-shrink: 0 !important;
  margin-top: 2px !important;
}


/* ==========================================================================
   57. DESTINATION / LOCATION GUIDE PAGES (.eo-luxury-destination-page)
   ========================================================================== */
.eo-destination-hero {
  position: relative !important;
  background-size: cover !important;
  background-position: center center !important;
  padding: 60px 0 80px 0 !important;
  color: #ffffff !important;
  border-bottom: 2px solid rgba(197, 160, 89, 0.35) !important;
}

.eo-dest-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 46px !important;
  font-weight: 800 !important;
  color: #ffffff !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 12px !important;
  text-shadow: 0 4px 15px rgba(0, 0, 0, 0.4) !important;
}

.eo-dest-subtitle {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 17px !important;
  color: #e2e8f0 !important;
  max-width: 680px !important;
  margin: 0 auto !important;
  line-height: 1.6 !important;
}

.eo-dest-meta-strip {
  margin-top: 28px !important;
}

.eo-dest-meta-item {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

.eo-meta-num {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 800 !important;
  color: #dfba73 !important;
  line-height: 1 !important;
}

.eo-meta-label {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #94a3b8 !important;
  margin-top: 4px !important;
}

.eo-dest-meta-divider {
  width: 1px !important;
  height: 36px !important;
  background: rgba(255, 255, 255, 0.2) !important;
  align-self: center !important;
}

/* Editorial Overview Card */
.eo-dest-editorial-card {
  background: #ffffff !important;
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  border-left: 4px solid #c5a059 !important;
  border-radius: 16px !important;
  padding: 30px 34px !important;
  box-shadow: 0 6px 25px rgba(7, 15, 30, 0.04) !important;
}

.eo-editorial-badge {
  display: inline-block !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #c5a059 !important;
}

.eo-editorial-heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  margin-bottom: 12px !important;
}

.eo-editorial-text {
  font-size: 15.5px !important;
  line-height: 1.75 !important;
  color: #4a5568 !important;
  margin: 0 !important;
}

/* Section Headings */
.eo-section-eyebrow {
  display: block !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  color: #c5a059 !important;
  margin-bottom: 4px !important;
}

.eo-section-heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 28px !important;
  font-weight: 800 !important;
  color: #070f1e !important;
  margin: 0 !important;
}

.eo-btn-gold-outline {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 10px 20px !important;
  border: 1.5px solid #c5a059 !important;
  border-radius: 10px !important;
  color: #0b1528 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
}

.eo-btn-gold-outline:hover {
  background: #0b1528 !important;
  color: #dfba73 !important;
  border-color: #0b1528 !important;
}

/* Bespoke CTA Banner */
.eo-bespoke-cta-banner {
  background: linear-gradient(135deg, #070f1e 0%, #0e1e38 100%) !important;
  border: 1px solid rgba(197, 160, 89, 0.3) !important;
  border-radius: 20px !important;
  padding: 36px 40px !important;
  color: #ffffff !important;
  box-shadow: 0 15px 40px rgba(7, 15, 30, 0.2) !important;
}

.eo-cta-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  margin-bottom: 8px !important;
}

.eo-cta-desc {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: #94a3b8 !important;
  margin: 0 !important;
}

.eo-btn-whatsapp-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 12px 22px !important;
  background: #25d366 !important;
  color: #ffffff !important;
  border-radius: 30px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
}

.eo-btn-whatsapp-pill:hover {
  background: #1eb857 !important;
  color: #ffffff !important;
  transform: translateY(-2px) !important;
}

.eo-btn-call-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  padding: 12px 22px !important;
  background: rgba(255, 255, 255, 0.1) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: 30px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
}

.eo-btn-call-pill:hover {
  background: rgba(255, 255, 255, 0.2) !important;
  color: #ffffff !important;
}


/* ==========================================================================
   58. LUXURY CART & CHECKOUT UX (WOOCOMMERCE & TRAVELER)
   ========================================================================== */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce,
.st-checkout-page {
  padding: 40px 0 !important;
}

/* Cart Table Luxury Styling */
.woocommerce-cart table.cart,
.woocommerce-cart table.shop_table {
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.03) !important;
}

.woocommerce-cart table.cart thead th,
.woocommerce-checkout table.shop_table thead th {
  background: #0b1528 !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  padding: 16px 20px !important;
  border: none !important;
}

.woocommerce-cart table.cart tbody td {
  padding: 20px !important;
  vertical-align: middle !important;
  border-bottom: 1px solid rgba(11, 21, 40, 0.06) !important;
}

.woocommerce-cart table.cart td.product-thumbnail img {
  border-radius: 10px !important;
  width: 72px !important;
  height: 54px !important;
  object-fit: cover !important;
}

.woocommerce-cart table.cart td.product-name a {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #0b1528 !important;
  text-decoration: none !important;
}

.woocommerce-cart table.cart td.product-name a:hover {
  color: #c5a059 !important;
}

/* Coupon & Actions Bar */
.woocommerce-cart table.cart td.actions .coupon {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

.woocommerce-cart table.cart td.actions .coupon input.input-text {
  height: 46px !important;
  border: 1px solid rgba(11, 21, 40, 0.12) !important;
  border-radius: 10px !important;
  padding: 0 16px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
}

.woocommerce-cart table.cart td.actions .coupon input.input-text:focus {
  border-color: #c5a059 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.2) !important;
}

.woocommerce-cart .button,
.woocommerce-checkout .button,
.woocommerce-cart input.button,
.woocommerce-checkout input.button {
  background: #0b1528 !important;
  color: #dfba73 !important;
  border: 1px solid #c5a059 !important;
  border-radius: 10px !important;
  padding: 12px 24px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  transition: all 0.3s ease !important;
}

.woocommerce-cart .button:hover,
.woocommerce-checkout .button:hover,
.woocommerce-cart input.button:hover,
.woocommerce-checkout input.button:hover {
  background: #c5a059 !important;
  color: #070f1e !important;
}

/* Cart Totals & Order Review Box */
.cart-collaterals .cart_totals,
#order_review {
  background: #ffffff !important;
  border: 1.5px solid rgba(197, 160, 89, 0.3) !important;
  border-radius: 18px !important;
  padding: 28px !important;
  box-shadow: 0 10px 30px rgba(7, 15, 30, 0.06) !important;
}

.cart_totals h2,
#order_review_heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  margin-bottom: 20px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(11, 21, 40, 0.08) !important;
}

.wc-proceed-to-checkout .checkout-button,
#place_order {
  background: linear-gradient(135deg, #c5a059 0%, #dfba73 100%) !important;
  color: #070f1e !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  border-radius: 12px !important;
  padding: 16px 28px !important;
  width: 100% !important;
  display: block !important;
  text-align: center !important;
  box-shadow: 0 6px 20px rgba(197, 160, 89, 0.35) !important;
  border: none !important;
}

.wc-proceed-to-checkout .checkout-button:hover,
#place_order:hover {
  background: linear-gradient(135deg, #b38e47 0%, #c5a059 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 25px rgba(197, 160, 89, 0.45) !important;
}

/* Custom links styled like luxury pills */
.addmoret,
.addmoretc {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px 24px !important;
  border-radius: 10px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  text-decoration: none !important;
  transition: all 0.3s ease !important;
  margin-top: 15px !important;
}

.addmoret {
  background: #0b1528 !important;
  color: #dfba73 !important;
  border: 1px solid #c5a059 !important;
}

.addmoret:hover {
  background: #c5a059 !important;
  color: #070f1e !important;
}

.addmoretc {
  background: #f1f5f9 !important;
  color: #0b1528 !important;
  border: 1px solid rgba(11, 21, 40, 0.1) !important;
}

.addmoretc:hover {
  background: #0b1528 !important;
  color: #ffffff !important;
}


/* ==========================================================================
   59. VIP AUTH MODALS & PAGES (#st-login-form, #st-register-form)
   ========================================================================== */
.login-regiter-popup .modal-content {
  border-radius: 20px !important;
  border: 1.5px solid rgba(197, 160, 89, 0.35) !important;
  overflow: hidden !important;
  box-shadow: 0 25px 60px rgba(7, 15, 30, 0.25) !important;
}

.login-regiter-popup .modal-header {
  background: linear-gradient(135deg, #070f1e 0%, #0d1a33 100%) !important;
  padding: 22px 28px !important;
  border-bottom: 1px solid rgba(197, 160, 89, 0.25) !important;
}

.login-regiter-popup .modal-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  color: #dfba73 !important;
  letter-spacing: 0.02em !important;
}

.login-regiter-popup .modal-header .close {
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.2) !important;
  border-radius: 50% !important;
  width: 34px !important;
  height: 34px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
}

.login-regiter-popup .modal-header .close:hover {
  background: #c5a059 !important;
  color: #070f1e !important;
}

.login-regiter-popup .modal-body {
  padding: 28px !important;
  background: #ffffff !important;
}

.login-regiter-popup .form-control {
  height: 50px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(11, 21, 40, 0.12) !important;
  padding: 0 16px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  background: #f8fafc !important;
  transition: all 0.3s ease !important;
}

.login-regiter-popup .form-control:focus {
  background: #ffffff !important;
  border-color: #c5a059 !important;
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.2) !important;
  outline: none !important;
}

.login-regiter-popup .form-submit,
.login-regiter-popup input[type="submit"] {
  background: linear-gradient(135deg, #c5a059 0%, #dfba73 100%) !important;
  color: #070f1e !important;
  border: none !important;
  border-radius: 10px !important;
  height: 50px !important;
  width: 100% !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  box-shadow: 0 6px 18px rgba(197, 160, 89, 0.3) !important;
  cursor: pointer !important;
  transition: all 0.3s ease !important;
}

.login-regiter-popup .form-submit:hover,
.login-regiter-popup input[type="submit"]:hover {
  background: linear-gradient(135deg, #b38e47 0%, #c5a059 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 22px rgba(197, 160, 89, 0.4) !important;
}

.login-regiter-popup .st-link {
  color: #c5a059 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.login-regiter-popup .st-link:hover {
  color: #0b1528 !important;
  text-decoration: underline !important;
}

/* ==========================================================================
   24. EUROPE ODYSSEY ULTRA-LUXURY LOADING EFFECT & OVERLAY SYSTEM
   ========================================================================== */

/* 1. PERMANENT SUPPRESSION OF DATED ORANGE BARS & GLITCHY ANIMATIONS */
.st-loader,
.st-loader:before,
.st-loader:after,
.st-loader-ccv,
.loader-wrapper .lds-ripple,
.loader-wrapper .lds-ripple div {
  animation: none !important;
}

.st-loader:before,
.st-loader:after,
.loader-wrapper .lds-ripple,
.loader-wrapper .lds-ripple div {
  display: none !important;
  content: none !important;
  width: 0 !important;
  height: 0 !important;
  background: transparent !important;
  border: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* Fallback: If legacy raw .st-loader is invoked directly without luxury template */
.st-loader {
  width: 52px !important;
  height: 52px !important;
  border-radius: 50% !important;
  background: transparent !important;
  border: 2px solid rgba(197, 160, 89, 0.2) !important;
  border-top: 2.5px solid #c5a059 !important;
  border-right: 2.5px solid #dfba73 !important;
  box-shadow: 0 0 24px rgba(197, 160, 89, 0.28) !important;
  animation: eoLuxurySpin 0.95s cubic-bezier(0.5, 0.1, 0.4, 0.9) infinite !important;
  margin: 0 !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  z-index: 1000 !important;
}

/* 2. LUXURY FULL-VIEWPORT FROSTED GLASS OVERLAYS */
.map-content-loading,
.map-loading,
.loader-wrapper,
.eo-luxury-loader-overlay {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  z-index: 99999999 !important;
  background: rgba(255, 255, 255, 0.76) !important;
  backdrop-filter: blur(14px) saturate(180%) !important;
  -webkit-backdrop-filter: blur(14px) saturate(180%) !important;
  box-sizing: border-box !important;
  margin: 0 !important;
  padding: 20px !important;
  display: none;
  align-items: center !important;
  justify-content: center !important;
  flex-direction: column !important;
  pointer-events: all !important;
  transition: opacity 0.35s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.35s ease !important;
}

/* Prevent ancestor transforms from capturing fixed overlays */
.modern-search-result,
#modern-search-result,
.search-result-page {
  transform: none !important;
}

/* Localized Loader for Single Service Booking Forms (No full-page freezing) */
.form-book-wrapper .loader-wrapper,
.form-book-wrapper .eo-luxury-loader-overlay,
#booking-request .loader-wrapper,
#booking-request .eo-luxury-loader-overlay,
.tour-booking-form .loader-wrapper,
.st-form-book-wrapper .loader-wrapper {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  border-radius: 18px !important;
  z-index: 99 !important;
  background: rgba(255, 255, 255, 0.72) !important;
  backdrop-filter: blur(2.5px) !important;
  -webkit-backdrop-filter: blur(2.5px) !important;
  padding: 0 !important;
  margin: 0 !important;
}

.form-book-wrapper .loader-wrapper .eo-luxury-loader-card,
#booking-request .loader-wrapper .eo-luxury-loader-card {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  transform: scale(0.85) !important;
}

.form-book-wrapper .loader-wrapper .eo-luxury-loader-brand,
.form-book-wrapper .loader-wrapper .eo-luxury-loader-title,
.form-book-wrapper .loader-wrapper .eo-luxury-loader-track,
#booking-request .loader-wrapper .eo-luxury-loader-brand,
#booking-request .loader-wrapper .eo-luxury-loader-title,
#booking-request .loader-wrapper .eo-luxury-loader-track {
  display: none !important;
}

.form-book-wrapper .loader-wrapper .eo-luxury-compass-spinner,
#booking-request .loader-wrapper .eo-luxury-compass-spinner {
  width: 32px !important;
  height: 32px !important;
  margin: 0 auto !important;
}

/* Active Loader Display States */
.map-content-loading[style*="display: block"],
.map-content-loading[style*="display: flex"],
.map-loading[style*="display: block"],
.map-loading[style*="display: flex"],
.loader-wrapper[style*="display: block"],
.loader-wrapper[style*="display: flex"],
.modern-search-result.loading .map-content-loading,
.modern-search-result.loading>.loader-wrapper,
.map-content-loading.is-active,
.loader-wrapper.is-active,
.map-loading.is-active {
  display: flex !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: all !important;
}

/* Subtle results blur and dim while search query updates */
.modern-search-result.loading {
  pointer-events: none !important;
  user-select: none !important;
}

.modern-search-result.loading .service-list-wrapper,
.modern-search-result.loading .row-wrapper,
.modern-search-result.loading .item-service {
  opacity: 0.38 !important;
  filter: blur(4px) !important;
  transition: opacity 0.35s ease, filter 0.35s ease !important;
}

/* 3. BESPOKE LUXURY FLOATING CARD */
.eo-luxury-loader-card {
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid rgba(197, 160, 89, 0.38) !important;
  border-radius: 22px !important;
  padding: 36px 44px 30px !important;
  box-shadow: 0 24px 64px -12px rgba(15, 23, 42, 0.16),
    0 0 0 1px rgba(255, 255, 255, 0.95),
    0 0 40px rgba(197, 160, 89, 0.22) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  max-width: 330px !important;
  width: 90% !important;
  position: relative !important;
  z-index: 100000000 !important;
  animation: eoCardEntrance 0.38s cubic-bezier(0.34, 1.45, 0.64, 1) forwards !important;
}

/* 4. DUAL-ORBIT COMPASS SPINNER */
.eo-luxury-compass-spinner {
  position: relative !important;
  width: 72px !important;
  height: 72px !important;
  margin: 0 auto 18px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.eo-orbit-ring {
  position: absolute !important;
  border-radius: 50% !important;
  box-sizing: border-box !important;
}

.eo-ring-outer {
  width: 72px !important;
  height: 72px !important;
  border: 1.5px solid rgba(197, 160, 89, 0.18) !important;
  border-top: 2px solid #c5a059 !important;
  border-right: 2px solid #dfba73 !important;
  animation: eoLuxurySpin 1.35s cubic-bezier(0.45, 0.05, 0.55, 0.95) infinite !important;
}

.eo-ring-middle {
  width: 54px !important;
  height: 54px !important;
  border: 1.5px dashed rgba(197, 160, 89, 0.45) !important;
  border-bottom: 2px solid #9a7632 !important;
  animation: eoLuxurySpinReverse 2.2s linear infinite !important;
}

.eo-compass-star {
  position: relative !important;
  z-index: 3 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  animation: eoPulseCompass 2.2s ease-in-out infinite !important;
}

.eo-compass-star svg {
  filter: drop-shadow(0 2px 8px rgba(197, 160, 89, 0.45)) !important;
}

/* 5. LUXURY TYPOGRAPHY & BRANDING */
.eo-luxury-loader-brand {
  font-family: 'Cinzel', 'Playfair Display', Georgia, serif !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: #9a7632 !important;
  margin: 0 0 6px 0 !important;
  line-height: 1.2 !important;
}

.eo-luxury-loader-title {
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: #0b1528 !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 18px 0 !important;
  line-height: 1.35 !important;
}

/* 6. LUXURY SHIMMER PROGRESS TRACK */
.eo-luxury-loader-track {
  width: 140px !important;
  height: 3px !important;
  background: rgba(197, 160, 89, 0.16) !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  position: relative !important;
}

.eo-luxury-loader-bar {
  width: 45% !important;
  height: 100% !important;
  background: linear-gradient(90deg, #dfba73 0%, #c5a059 50%, #9a7632 100%) !important;
  border-radius: 999px !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  box-shadow: 0 0 10px rgba(197, 160, 89, 0.6) !important;
  animation: eoShimmerWave 1.6s ease-in-out infinite !important;
}

/* 7. KEYFRAME ANIMATIONS */
@keyframes eoLuxurySpin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes eoLuxurySpinReverse {
  0% {
    transform: rotate(360deg);
  }

  100% {
    transform: rotate(0deg);
  }
}

@keyframes eoPulseCompass {

  0%,
  100% {
    transform: scale(1);
    opacity: 0.95;
  }

  50% {
    transform: scale(1.08);
    opacity: 1;
  }
}

@keyframes eoShimmerWave {
  0% {
    left: -50%;
  }

  50% {
    left: 55%;
  }

  100% {
    left: 110%;
  }
}

@keyframes eoCardEntrance {
  0% {
    opacity: 0;
    transform: translateY(14px) scale(0.96);
  }

  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* Responsive adjustments */
@media (max-width: 576px) {
  .eo-luxury-loader-card {
    padding: 28px 30px 24px !important;
    max-width: 290px !important;
    border-radius: 18px !important;
  }

  .eo-luxury-compass-spinner {
    width: 62px !important;
    height: 62px !important;
  }

  .eo-ring-outer {
    width: 62px !important;
    height: 62px !important;
  }

  .eo-ring-middle {
    width: 46px !important;
    height: 46px !important;
  }

  .eo-luxury-loader-title {
    font-size: 13.5px !important;
  }

  .eo-luxury-loader-track {
    width: 120px !important;
  }
}

/* ==========================================================================
   EUROPE ODYSSEY - BESPOKE LUXURY TOUR DETAILS PAGE (UI & UX ELEVATION)
   ========================================================================== */

/* 1. Header & Title Neutralization (Eliminate Harsh Orange Banner) */
body.single-st_tours #st-content-wrapper .st-service-header,
body.single-st_tours #st-content-wrapper .st-service-header h1.st-heading,
#st-content-wrapper .st-service-header h1.st-heading {
  background: transparent !important;
  color: #070f1e !important;
  font-family: 'Playfair Display', 'Cinzel', Georgia, serif !important;
  font-size: 36px !important;
  font-weight: 800 !important;
  line-height: 1.22 !important;
  letter-spacing: -0.02em !important;
  padding: 0 !important;
  margin: 0 0 14px 0 !important;
  border: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

body.single-st_tours .sub-heading.eo-single-tour-location {
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  display: flex !important;
  align-items: center !important;
  margin-bottom: 14px !important;
}

body.single-st_tours .eo-single-trust-pills .eo-trust-pill {
  background: #fbf9f4 !important;
  border: 1px solid rgba(197, 160, 89, 0.35) !important;
  color: #070f1e !important;
  font-size: 12.5px !important;
  font-weight: 600 !important;
  padding: 6px 14px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  box-shadow: 0 2px 8px rgba(197, 160, 89, 0.08) !important;
  transition: all 0.25s ease !important;
}

body.single-st_tours .eo-single-trust-pills .eo-trust-pill:hover {
  background: #ffffff !important;
  border-color: #c5a059 !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 4px 14px rgba(197, 160, 89, 0.16) !important;
}

/* Feature Cards Strip (Duration, Style, Group, Meeting Point) */
body.single-st_tours .eo-luxury-feature-strip {
  margin: 18px 0 24px 0 !important;
}

body.single-st_tours .eo-luxury-feature-strip .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
}

body.single-st_tours .eo-luxury-feature-strip .col-6,
body.single-st_tours .eo-luxury-feature-strip .col-lg-3 {
  display: flex !important;
  flex-direction: column !important;
}

body.single-st_tours .eo-luxury-feature-strip .eo-feature-card {
  background: #ffffff !important;
  border: 1px solid rgba(197, 160, 89, 0.28) !important;
  border-radius: 12px !important;
  padding: 10px 12px !important;
  box-shadow: 0 2px 8px rgba(7, 15, 30, 0.03) !important;
  transition: all 0.25s ease !important;
  height: 100% !important;
  min-height: 64px !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

body.single-st_tours .eo-luxury-feature-strip .eo-feature-card:hover {
  transform: translateY(-2px) !important;
  border-color: #c5a059 !important;
  box-shadow: 0 6px 18px rgba(197, 160, 89, 0.16) !important;
}

body.single-st_tours .eo-feature-icon-box {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  border-radius: 9px !important;
  background: linear-gradient(135deg, rgba(197, 160, 89, 0.14) 0%, rgba(197, 160, 89, 0.04) 100%) !important;
  border: 1px solid rgba(197, 160, 89, 0.3) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-right: 0 !important;
  flex-shrink: 0 !important;
}

body.single-st_tours .eo-feature-icon-box svg {
  width: 18px !important;
  height: 18px !important;
  stroke: #c5a059 !important;
  display: block !important;
}

body.single-st_tours .eo-feature-info {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
  flex: 1 !important;
  overflow: hidden !important;
}

body.single-st_tours .eo-feature-label {
  font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-weight: 700 !important;
  color: #64748b !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.2 !important;
  margin-bottom: 2px !important;
}

body.single-st_tours .eo-feature-val {
  font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  line-height: 1.25 !important;
}

/* 2. Right-Side Booking Card (Premium Sticky Sidebar) */
body.single-st_tours .widgets.eo-sticky-booking-widget {
  position: -webkit-sticky !important;
  position: sticky !important;
  top: 96px !important;
  z-index: 25 !important;
}

body.single-st_tours #st-content-wrapper .form-book-wrapper,
body.single-st_tours .form-book-wrapper {
  background: #ffffff !important;
  border-radius: 18px !important;
  border: 1.5px solid rgba(197, 160, 89, 0.3) !important;
  box-shadow: 0 12px 36px rgba(7, 15, 30, 0.08), 0 2px 8px rgba(197, 160, 89, 0.06) !important;
  overflow: hidden !important;
  margin-bottom: 20px !important;
  position: relative !important;
}

/* Right Side Price Header - Luxury Sapphire & Luminous Gold (No Black Text!) */
body.single-st_tours #st-content-wrapper .form-book-wrapper .form-head,
body.single-st_tours .form-book-wrapper .form-head {
  background: linear-gradient(135deg, #070f1e 0%, #0f1f3d 100%) !important;
  padding: 13px 18px !important;
  border: none !important;
  border-bottom: 2px solid #c5a059 !important;
  border-radius: 16px 16px 0 0 !important;
  color: #ffffff !important;
  position: relative !important;
}

body.single-st_tours .form-head .price,
body.single-st_tours .form-head .price *,
body.single-st_tours .form-head .price span,
body.single-st_tours .form-head .price .value,
body.single-st_tours .form-head .price .value *,
body.single-st_tours .form-head .price .value .item,
body.single-st_tours .form-head .price .text-lg,
#st-content-wrapper .form-book-wrapper .form-head .price * {
  color: #ffffff !important;
  font-family: 'Playfair Display', Georgia, serif !important;
}

body.single-st_tours .form-head .price {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
}

body.single-st_tours .form-head .price span.label {
  display: block !important;
  font-size: 10.5px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.12em !important;
  color: #dfba73 !important;
  font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
  font-weight: 700 !important;
  margin-bottom: 2px !important;
  line-height: 1 !important;
}

/* Hide duplicate from inside .value */
body.single-st_tours .form-head .price .value .text-small {
  display: none !important;
}

body.single-st_tours .form-head .price span.value {
  font-size: 26px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  display: block !important;
}

body.single-st_tours .form-head .price .symbol {
  font-size: 20px !important;
  font-weight: 600 !important;
  color: #dfba73 !important;
  margin-right: 2px !important;
}

/* Book / Inquiry Switcher Tabs (Compact Segmented Pills) */
body.single-st_tours .form-book-wrapper nav ul.nav-tabs.nav-fill-st {
  background: #f1f3f7 !important;
  padding: 3px !important;
  border-radius: 10px !important;
  margin: 10px 14px 8px 14px !important;
  border: 1px solid #e2e8f0 !important;
  display: flex !important;
  gap: 4px !important;
}

body.single-st_tours .form-book-wrapper nav ul.nav-tabs.nav-fill-st li {
  flex: 1 !important;
  margin: 0 !important;
}

body.single-st_tours .form-book-wrapper nav ul.nav-tabs.nav-fill-st li a {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  border-radius: 7px !important;
  padding: 7px 12px !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: #64748b !important;
  background: transparent !important;
  border: none !important;
  transition: all 0.2s ease !important;
}

body.single-st_tours .form-book-wrapper nav ul.nav-tabs.nav-fill-st li a.active {
  background: #070f1e !important;
  color: #ffffff !important;
  box-shadow: 0 2px 8px rgba(7, 15, 30, 0.18) !important;
}

body.single-st_tours .form-book-wrapper nav ul.nav-tabs.nav-fill-st li a:hover:not(.active) {
  color: #070f1e !important;
}

/* Form Container Tab Content (Tight Spacing) */
body.single-st_tours #st-content-wrapper .form-book-wrapper .tab-content {
  border: none !important;
  border-bottom: none !important;
  padding: 0 !important;
  background: #ffffff !important;
}

body.single-st_tours .form-book-wrapper .tab-pane {
  padding: 0 14px 14px 14px !important;
}

/* Inputs, Date, Time and Guest Selectors */
body.single-st_tours .form-book-wrapper .form-group {
  margin-bottom: 7px !important;
}

body.single-st_tours .form-book-wrapper .date-wrapper {
  border: 1px solid #e2e8f0 !important;
  border-radius: 9px !important;
  padding: 7px 11px !important;
  background: #fafbfc !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
}

body.single-st_tours .form-book-wrapper .date-wrapper:hover {
  border-color: #c5a059 !important;
  background: #ffffff !important;
  box-shadow: 0 0 0 2px rgba(197, 160, 89, 0.12) !important;
}

body.single-st_tours .form-book-wrapper .date-wrapper .check-in-wrapper label {
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-weight: 700 !important;
  color: #64748b !important;
  margin-bottom: 1px !important;
  display: block !important;
}

body.single-st_tours .form-book-wrapper .date-wrapper .render {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: #070f1e !important;
}

body.single-st_tours .form-book-wrapper .date-wrapper .arrow {
  color: #c5a059 !important;
  font-size: 13px !important;
}

/* Start Time */
body.single-st_tours .form-book-wrapper .st-form-starttime label {
  font-size: 10px !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  font-weight: 700 !important;
  color: #64748b !important;
  margin-bottom: 2px !important;
  display: block !important;
}

body.single-st_tours .form-book-wrapper select.st_tour_starttime {
  height: 35px !important;
  border-radius: 9px !important;
  border: 1px solid #e2e8f0 !important;
  background: #fafbfc !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  color: #070f1e !important;
  padding: 6px 11px !important;
  transition: all 0.2s ease !important;
  width: 100% !important;
}

body.single-st_tours .form-book-wrapper select.st_tour_starttime:focus {
  border-color: #c5a059 !important;
  box-shadow: 0 0 0 2px rgba(197, 160, 89, 0.15) !important;
  background: #ffffff !important;
  outline: none !important;
}

/* Guest Selector Cards (Compact & Elegant) */
body.single-st_tours .form-guest-search {
  background: #f8fafc !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 10px !important;
  padding: 4px 11px !important;
  margin-bottom: 7px !important;
}

body.single-st_tours .form-guest-search .guest-wrapper {
  padding: 5px 0 !important;
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid #edf2f7 !important;
  margin-bottom: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

body.single-st_tours .form-guest-search .guest-wrapper:last-child {
  border-bottom: none !important;
}

body.single-st_tours .form-guest-search .guest-wrapper .check-in-wrapper label {
  font-size: 12px !important;
  font-weight: 600 !important;
  color: #070f1e !important;
  margin: 0 !important;
}

body.single-st_tours .form-guest-search .guest-wrapper .check-in-wrapper .render {
  font-size: 9.5px !important;
  color: #94a3b8 !important;
  font-weight: 500 !important;
}

body.single-st_tours .form-guest-search .st-number-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

body.single-st_tours .form-guest-search .st-number-wrapper .prev,
body.single-st_tours .form-guest-search .st-number-wrapper .next,
body.single-st_tours .form-guest-search .btn-minus,
body.single-st_tours .form-guest-search .btn-add {
  width: 22px !important;
  height: 22px !important;
  border-radius: 5px !important;
  background: #ffffff !important;
  border: 1px solid #cbd5e1 !important;
  color: #070f1e !important;
  font-weight: 700 !important;
  font-size: 11px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: all 0.15s ease !important;
}

body.single-st_tours .form-guest-search .st-number-wrapper .prev:hover,
body.single-st_tours .form-guest-search .st-number-wrapper .next:hover,
body.single-st_tours .form-guest-search .btn-minus:hover,
body.single-st_tours .form-guest-search .btn-add:hover {
  background: #c5a059 !important;
  color: #ffffff !important;
  border-color: #c5a059 !important;
}

body.single-st_tours .form-guest-search .st-number-wrapper input {
  font-size: 12.5px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  min-width: 20px !important;
  width: 20px !important;
  text-align: center !important;
  border: none !important;
  background: transparent !important;
  padding: 0 !important;
}

/* Guest Name Inputs (Compact) */
body.single-st_tours .guest_name_input {
  margin-bottom: 7px !important;
}

body.single-st_tours .guest_name_input label {
  font-size: 10.5px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  color: #64748b !important;
  margin-bottom: 3px !important;
  display: block !important;
}

body.single-st_tours .guest_name_control .control-item {
  display: flex !important;
  gap: 5px !important;
  margin-bottom: 4px !important;
}

body.single-st_tours .guest_name_control select {
  width: 72px !important;
  height: 30px !important;
  font-size: 11.5px !important;
  padding: 2px 6px !important;
  border-radius: 6px !important;
  border: 1px solid #e2e8f0 !important;
  background: #fafbfc !important;
}

body.single-st_tours .guest_name_control input {
  height: 30px !important;
  font-size: 11.5px !important;
  padding: 4px 8px !important;
  border-radius: 6px !important;
  border: 1px solid #e2e8f0 !important;
  background: #fafbfc !important;
  flex: 1 !important;
}

/* BOOK NOW Button */
body.single-st_tours .btn-book-ajax {
  width: 100% !important;
  background: linear-gradient(135deg, #dfba73 0%, #c5a059 50%, #9a7632 100%) !important;
  color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 13px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 10px 18px !important;
  min-height: 38px !important;
  border-radius: 9px !important;
  border: none !important;
  box-shadow: 0 4px 14px rgba(197, 160, 89, 0.35) !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
  margin-top: 5px !important;
}

body.single-st_tours .btn-book-ajax:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 18px rgba(197, 160, 89, 0.45) !important;
  background: linear-gradient(135deg, #e5c583 0%, #d4b067 50%, #a8833e 100%) !important;
  color: #ffffff !important;
}

/* Trust Checklist in Booking Card */
body.single-st_tours .eo-trust-badges {
  margin-top: 8px !important;
  padding: 7px 0 0 0 !important;
  border-top: 1px solid rgba(197, 160, 89, 0.18) !important;
}

body.single-st_tours .eo-trust-badges .eo-trust-badge-item {
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  margin-bottom: 3px !important;
}

body.single-st_tours .eo-trust-badges .eo-trust-badge-item svg {
  color: #10b981 !important;
  flex-shrink: 0 !important;
}

/* Concierge Direct Assistance Card (Ultra Compact) */
body.single-st_tours .eo-concierge-assistance-card {
  background: #f8fafc !important;
  border: 1px solid rgba(197, 160, 89, 0.25) !important;
  border-radius: 10px !important;
  padding: 8px 12px !important;
  margin-top: 8px !important;
}

body.single-st_tours .eo-concierge-header {
  margin-bottom: 6px !important;
}

body.single-st_tours .eo-concierge-avatar {
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: #070f1e !important;
  border: 1px solid #c5a059 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

body.single-st_tours .eo-concierge-avatar svg {
  width: 14px !important;
  height: 14px !important;
}

body.single-st_tours .eo-concierge-title {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
}

body.single-st_tours .eo-concierge-sub {
  font-size: 10px !important;
  color: #c5a059 !important;
  font-weight: 600 !important;
}

body.single-st_tours .eo-concierge-text {
  display: none !important;
}

body.single-st_tours .eo-concierge-btn {
  flex: 1 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  padding: 6px 10px !important;
  border-radius: 7px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

body.single-st_tours .eo-btn-whatsapp {
  background: #25d366 !important;
  color: #ffffff !important;
}

body.single-st_tours .eo-btn-call {
  background: #070f1e !important;
  color: #c5a059 !important;
  border: 1px solid #c5a059 !important;
}

body.single-st_tours .eo-booking-notice-pill {
  font-size: 10px !important;
  padding: 5px 8px !important;
  margin-top: 6px !important;
  border-radius: 7px !important;
  background: #fefce8 !important;
  border: 1px solid #fef08a !important;
  color: #854d0e !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

/* 3. Section Titles (Neutralize All Flat Orange Boxes & Ugly Collapsible Pill Buttons) */
body.single-st_tours #st-content-wrapper .st-heading-section,
body.single-st_tours #st-content-wrapper .accordion-button,
#st-content-wrapper .st-heading-section,
#st-content-wrapper .accordion-button {
  background: transparent !important;
  color: #070f1e !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 0 12px 0 !important;
  margin: 0 0 16px 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  text-align: left !important;
  position: relative !important;
}

/* Discreet gold underline for section titles */
body.single-st_tours .st-heading-section::after {
  content: '' !important;
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 38px !important;
  height: 2.5px !important;
  background: linear-gradient(90deg, #c5a059 0%, #dfba73 100%) !important;
  border-radius: 2px !important;
}

/* Remove default bootstrap arrow on section title accordion-buttons */
body.single-st_tours .accordion-button::after,
body.single-st_tours .st-heading-section .accordion-button::after,
#headingInExClude .accordion-button::after,
#headingItinerary .accordion-button::after,
#headingFaq .accordion-button::after,
#headingDescription .accordion-button::after {
  display: none !important;
}

body.single-st_tours .accordion-item {
  border: none !important;
  background: transparent !important;
  margin-bottom: 28px !important;
  padding: 0 !important;
  box-shadow: none !important;
}

body.single-st_tours .accordion-body {
  padding: 0 !important;
}

/* 4. Itinerary Timeline Overhaul */
body.single-st_tours .st-program-list.style1 {
  position: relative !important;
  padding-left: 0 !important;
  margin-top: 10px !important;
}

body.single-st_tours .st-program-list.style1 .row {
  margin-bottom: 14px !important;
  align-items: center !important;
}

body.single-st_tours .st-program-list.style1 .itinerary_image {
  width: 68px !important;
  height: 68px !important;
  border-radius: 12px !important;
  object-fit: cover !important;
  border: 2px solid rgba(197, 160, 89, 0.35) !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08) !important;
  margin: 0 auto 5px auto !important;
  display: block !important;
}

body.single-st_tours .st-program-list.style1 .itinerary_image_title {
  font-size: 11px !important;
  font-weight: 700 !important;
  color: #475569 !important;
  text-align: center !important;
  line-height: 1.3 !important;
}

body.single-st_tours .st-program-list.style1 .item {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.02) !important;
  margin: 0 !important;
}

body.single-st_tours .st-program-list.style1 .item:hover {
  border-color: rgba(197, 160, 89, 0.45) !important;
  box-shadow: 0 6px 18px rgba(197, 160, 89, 0.1) !important;
}

body.single-st_tours .st-program-list.style1 .item.active {
  border-color: rgba(197, 160, 89, 0.65) !important;
  box-shadow: 0 6px 20px rgba(197, 160, 89, 0.14) !important;
}

body.single-st_tours .st-program-list.style1 .item .header {
  padding: 14px 18px !important;
  background: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  cursor: pointer !important;
  border: none !important;
}

body.single-st_tours .eo-step-badge {
  background: linear-gradient(135deg, #070f1e 0%, #0d1a33 100%) !important;
  color: #c5a059 !important;
  font-weight: 700 !important;
  font-size: 10.5px !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 4px 10px !important;
  border-radius: 16px !important;
  margin-right: 12px !important;
  flex-shrink: 0 !important;
  border: 1px solid rgba(197, 160, 89, 0.35) !important;
}

body.single-st_tours .st-program-list.style1 .item.active .eo-step-badge {
  background: linear-gradient(135deg, #c5a059 0%, #b38f48 100%) !important;
  color: #070f1e !important;
  border-color: #c5a059 !important;
}

body.single-st_tours .st-program-list.style1 .item .header h5 {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  margin: 0 !important;
  flex-grow: 1 !important;
  transition: color 0.2s ease !important;
}

body.single-st_tours .st-program-list.style1 .item:hover .header h5 {
  color: #c5a059 !important;
}

/* Arrow Toggle for Itinerary & FAQs (Refined Gold Circular Chevron) */
body.single-st_tours .st-program-list .item .header .arrow,
.st-program-list.style1 .item .header .arrow,
#collapseFaq .st-program-list .item .header .arrow {
  background: #f8f6f0 !important;
  color: #c5a059 !important;
  border: 1.5px solid rgba(197, 160, 89, 0.35) !important;
  border-radius: 50% !important;
  width: 32px !important;
  height: 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 13px !important;
  padding: 0 !important;
  margin: 0 0 0 10px !important;
  float: none !important;
  position: static !important;
  flex-shrink: 0 !important;
  transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), background 0.25s ease, color 0.25s ease !important;
}

body.single-st_tours .st-program-list .item.active .header .arrow,
.st-program-list.style1 .item.active .header .arrow,
#collapseFaq .st-program-list .item.active .header .arrow {
  transform: rotate(180deg) !important;
  background: #070f1e !important;
  color: #c5a059 !important;
  border-color: #c5a059 !important;
}

/* Itinerary & FAQ Body Expand (Allow jQuery natural slide animation) */
body.single-st_tours .st-program-list .item .body {
  display: none;
  padding: 16px 20px 18px 20px !important;
  background: #fafbfc !important;
  border-top: 1px solid rgba(197, 160, 89, 0.15) !important;
  font-size: 14px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
}

body.single-st_tours .st-program-list .item.active>.body {
  display: block;
}

/* 5. FAQs Luxury Accordion Cards */
body.single-st_tours #collapseFaq .st-program-list .item {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 12px !important;
  margin-bottom: 9px !important;
  overflow: hidden !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02) !important;
}

body.single-st_tours #collapseFaq .st-program-list .item:hover {
  border-color: rgba(197, 160, 89, 0.45) !important;
}

body.single-st_tours #collapseFaq .st-program-list .item.active {
  border-color: #c5a059 !important;
  box-shadow: 0 4px 16px rgba(197, 160, 89, 0.1) !important;
}

body.single-st_tours #collapseFaq .st-program-list .item .header {
  padding: 14px 18px !important;
  background: #ffffff !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  cursor: pointer !important;
  border: none !important;
}

body.single-st_tours #collapseFaq .st-program-list .item .header svg {
  color: #c5a059 !important;
  margin-right: 12px !important;
  flex-shrink: 0 !important;
}

body.single-st_tours #collapseFaq .st-program-list .item .header h5 {
  font-size: 14.5px !important;
  font-weight: 600 !important;
  color: #070f1e !important;
  margin: 0 !important;
  flex-grow: 1 !important;
}

body.single-st_tours #collapseFaq .st-program-list .item:hover .header h5 {
  color: #c5a059 !important;
}

/* 6. Inclusions & Exclusions Section Layout & Spacing */
body.single-st_tours #headingInExClude {
  margin-top: 15px !important;
  margin-bottom: 8px !important;
}

body.single-st_tours #collapseInExClude .accordion-body {
  padding-top: 10px !important;
}

/* 7. Tour Highlights - Ultra-Luxury Editorial Cards */
body.single-st_tours .st-highlight {
  margin-top: 28px !important;
  margin-bottom: 32px !important;
}

body.single-st_tours .st-highlight .st-heading-section {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  margin-bottom: 20px !important;
  letter-spacing: -0.3px !important;
}

body.single-st_tours .st-highlight ul {
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
}

/* Neutralize any legacy ::before pseudo-element text injection */
body.single-st_tours .st-highlight ul li::before,
.st-highlight ul li::before {
  content: none !important;
  display: none !important;
}

body.single-st_tours .st-highlight ul li {
  background: #ffffff !important;
  border: 1px solid #eef2f6 !important;
  border-left: 4px solid #c5a059 !important;
  border-radius: 14px !important;
  padding: 18px 24px !important;
  margin-bottom: 0 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  line-height: 1.7 !important;
  font-weight: 400 !important;
  color: #334155 !important;
  box-shadow: 0 4px 16px rgba(7, 15, 30, 0.04) !important;
  display: block !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.single-st_tours .st-highlight ul li:hover {
  border-color: rgba(197, 160, 89, 0.45) !important;
  border-left-color: #c5a059 !important;
  transform: translateX(4px) !important;
  box-shadow: 0 8px 24px rgba(197, 160, 89, 0.12) !important;
}

/* ==========================================================================
   57. VIP CONCIERGE ASSISTANCE CARD & DIRECT ACTION BUTTONS (SINGLE TOUR SIDEBAR)
   ========================================================================== */
.eo-concierge-assistance-card {
  background: #ffffff !important;
  border: 1.5px solid rgba(197, 160, 89, 0.35) !important;
  border-radius: 16px !important;
  padding: 18px 20px !important;
  margin-top: 22px !important;
  box-shadow: 0 8px 24px rgba(7, 15, 30, 0.05) !important;
  transition: all 0.3s ease !important;
}

.eo-concierge-assistance-card:hover {
  border-color: #c5a059 !important;
  box-shadow: 0 12px 30px rgba(197, 160, 89, 0.15) !important;
}

.eo-concierge-avatar {
  width: 40px !important;
  height: 40px !important;
  border-radius: 50% !important;
  background: #070f1e !important;
  border: 1.5px solid #c5a059 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
}

.eo-concierge-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  line-height: 1.25 !important;
}

.eo-concierge-sub {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 12px !important;
  color: #64748b !important;
}

.eo-concierge-actions {
  display: flex !important;
  gap: 10px !important;
  margin-top: 14px !important;
}

.eo-concierge-btn,
.eo-concierge-btn:link,
.eo-concierge-btn:visited {
  flex: 1 1 50% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 12px 14px !important;
  border-radius: 10px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px !important;
  text-decoration: none !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
}

/* WhatsApp Concierge Button - Radiant Green with Crisp Contrast */
.eo-btn-whatsapp,
.eo-btn-whatsapp:link,
.eo-btn-whatsapp:visited {
  background: linear-gradient(135deg, #25d366 0%, #128c7e 100%) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  box-shadow: 0 4px 14px rgba(37, 211, 102, 0.32) !important;
}

.eo-btn-whatsapp span,
.eo-btn-whatsapp svg {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}

.eo-btn-whatsapp:hover {
  background: linear-gradient(135deg, #20ba5a 0%, #0e7065 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(37, 211, 102, 0.45) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

/* Call VIP Desk Button - High Contrast Royal Navy with Gold Border & White Text */
.eo-btn-call,
.eo-btn-call:link,
.eo-btn-call:visited {
  background: linear-gradient(135deg, #070f1e 0%, #162a4d 100%) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1.5px solid #c5a059 !important;
  box-shadow: 0 4px 14px rgba(7, 15, 30, 0.25) !important;
}

.eo-btn-call span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-weight: 700 !important;
}

.eo-btn-call svg {
  stroke: #dfbf78 !important;
  color: #dfbf78 !important;
}

.eo-btn-call:hover {
  background: linear-gradient(135deg, #c5a059 0%, #dfbf78 100%) !important;
  border-color: #c5a059 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 22px rgba(197, 160, 89, 0.45) !important;
  color: #070f1e !important;
  -webkit-text-fill-color: #070f1e !important;
}

.eo-btn-call:hover span {
  color: #070f1e !important;
  -webkit-text-fill-color: #070f1e !important;
}

.eo-btn-call:hover svg {
  stroke: #070f1e !important;
}

/* Peak Season Notice Pill */
.eo-booking-notice-pill {
  background: #fcf9f2 !important;
  border: 1px solid rgba(197, 160, 89, 0.35) !important;
  border-radius: 8px !important;
  padding: 10px 14px !important;
  font-size: 11.5px !important;
  line-height: 1.5 !important;
  color: #715720 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin-top: 12px !important;
}

.eo-booking-notice-pill svg {
  flex-shrink: 0 !important;
  margin-top: 2px !important;
}

/* ==========================================================================
   58. BESPOKE TOUR ITINERARY TIMELINE (ZERO LOGO CLUTTER, PURE LUXURY MILESTONES)
   ========================================================================== */
.eo-luxury-timeline-wrapper {
  position: relative !important;
  padding: 10px 0 20px 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

.eo-timeline-step {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 18px !important;
  position: relative !important;
  width: 100% !important;
}

/* Timeline Axis (Left Side Marker & Continuous Golden Track) */
.eo-timeline-axis {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: 44px !important;
  flex-shrink: 0 !important;
  padding-top: 6px !important;
}

.eo-timeline-node {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  background: #070f1e !important;
  border: 2px solid #c5a059 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  box-shadow: 0 4px 14px rgba(7, 15, 30, 0.15) !important;
  z-index: 2 !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  box-sizing: border-box !important;
}

.eo-node-num {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #dfbf78 !important;
  letter-spacing: 0.5px !important;
  line-height: 1 !important;
}

.eo-timeline-step.active .eo-timeline-node,
.eo-timeline-step:hover .eo-timeline-node {
  background: linear-gradient(135deg, #c5a059 0%, #dfbf78 100%) !important;
  border-color: #c5a059 !important;
  box-shadow: 0 0 16px rgba(197, 160, 89, 0.45) !important;
  transform: scale(1.05) !important;
}

.eo-timeline-step.active .eo-node-num,
.eo-timeline-step:hover .eo-node-num {
  color: #070f1e !important;
}

.eo-timeline-photo {
  width: 44px !important;
  height: 44px !important;
  border-radius: 12px !important;
  background-size: cover !important;
  background-position: center !important;
  border: 2px solid #c5a059 !important;
  box-shadow: 0 4px 14px rgba(7, 15, 30, 0.15) !important;
  position: relative !important;
  z-index: 2 !important;
}

.eo-photo-step {
  position: absolute !important;
  bottom: -4px !important;
  right: -4px !important;
  background: #070f1e !important;
  color: #c5a059 !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  width: 18px !important;
  height: 18px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 1px solid #c5a059 !important;
}

.eo-timeline-track {
  position: absolute !important;
  top: 48px !important;
  bottom: -20px !important;
  width: 2px !important;
  background: linear-gradient(180deg, #c5a059 0%, rgba(197, 160, 89, 0.25) 100%) !important;
  z-index: 1 !important;
}

.eo-timeline-step:last-child .eo-timeline-track {
  display: none !important;
}

/* Timeline Content (Right Side Accordion Card) */
.eo-timeline-content {
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.eo-timeline-content .item {
  background: #ffffff !important;
  border: 1.5px solid #e2e8f0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  box-shadow: 0 3px 12px rgba(7, 15, 30, 0.03) !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
  margin: 0 !important;
}

.eo-timeline-content .item:hover {
  border-color: rgba(197, 160, 89, 0.5) !important;
  box-shadow: 0 8px 24px rgba(197, 160, 89, 0.12) !important;
}

.eo-timeline-content .item.active {
  border-color: #c5a059 !important;
  box-shadow: 0 8px 24px rgba(197, 160, 89, 0.15) !important;
}

.eo-timeline-content .item .header {
  padding: 16px 20px !important;
  background: #ffffff !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  cursor: pointer !important;
  border: none !important;
  gap: 12px !important;
}

.eo-step-title-group {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.eo-step-title-group .eo-step-badge,
.eo-timeline-content .item .header .eo-step-badge {
  background: linear-gradient(135deg, #070f1e 0%, #162a4d 100%) !important;
  color: #dfbf78 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  padding: 5px 12px !important;
  border-radius: 20px !important;
  border: 1px solid rgba(197, 160, 89, 0.35) !important;
  flex-shrink: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  order: 1 !important;
  margin: 0 !important;
}

.eo-timeline-content .item.active .eo-step-badge {
  background: linear-gradient(135deg, #c5a059 0%, #dfbf78 100%) !important;
  color: #070f1e !important;
  border-color: #c5a059 !important;
}

.eo-step-title-group h5,
.eo-timeline-content .item .header h5 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 16.5px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  margin: 0 !important;
  order: 2 !important;
  flex: 1 1 auto !important;
  transition: color 0.2s ease !important;
  float: none !important;
}

.eo-timeline-content .item:hover .header h5 {
  color: #c5a059 !important;
}

.eo-timeline-content .item .header .arrow {
  order: 3 !important;
  float: none !important;
}

.eo-timeline-content .item .body {
  display: none;
  padding: 20px 24px !important;
  background: #fbfbfd !important;
  border-top: 1px solid rgba(197, 160, 89, 0.15) !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  line-height: 1.7 !important;
  color: #475569 !important;
}

.eo-timeline-content .item.active>.body {
  display: block !important;
}

/* ==========================================================================
   59. WORLD-CLASS ORDER CONFIRMATION PAGE SUITE
   ========================================================================== */
.eo-confirm-page-wrapper {
  background: #fcfbf9 !important;
  min-height: 70vh !important;
}

.eo-luxury-confirm-card {
  background: #ffffff !important;
  border: 1.5px solid rgba(197, 160, 89, 0.35) !important;
  border-radius: 24px !important;
  padding: 48px 40px !important;
  box-shadow: 0 20px 60px rgba(7, 15, 30, 0.08) !important;
  position: relative !important;
  overflow: hidden !important;
}

.eo-luxury-confirm-card::before {
  content: '' !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, #c5a059 0%, #dfbf78 50%, #c5a059 100%) !important;
}

.eo-confirm-icon-wrap {
  width: 88px !important;
  height: 88px !important;
  border-radius: 50% !important;
  margin: 0 auto 20px auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
}

.eo-icon-success {
  background: rgba(37, 211, 102, 0.1) !important;
  border: 2px solid #25d366 !important;
  box-shadow: 0 0 30px rgba(37, 211, 102, 0.25) !important;
}

.eo-icon-pending {
  background: rgba(224, 169, 71, 0.1) !important;
  border: 2px solid #e0a947 !important;
  box-shadow: 0 0 30px rgba(224, 169, 71, 0.25) !important;
}

.eo-confirm-kicker {
  display: block !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 800 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  color: #c5a059 !important;
  margin-bottom: 8px !important;
}

.eo-confirm-title {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  margin-bottom: 14px !important;
  line-height: 1.25 !important;
}

.eo-confirm-desc {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
  color: #64748b !important;
  max-width: 580px !important;
  margin: 0 auto 30px auto !important;
}

.eo-confirm-perks-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 16px !important;
  margin-bottom: 34px !important;
}

.eo-perk-item {
  background: #fbfbfd !important;
  border: 1px solid rgba(197, 160, 89, 0.2) !important;
  border-radius: 14px !important;
  padding: 18px 14px !important;
  text-align: center !important;
}

.eo-perk-icon {
  font-size: 24px !important;
  margin-bottom: 6px !important;
}

.eo-perk-label {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #070f1e !important;
  margin-bottom: 3px !important;
}

.eo-perk-sub {
  font-size: 11.5px !important;
  color: #64748b !important;
}

.eo-confirm-actions {
  display: flex !important;
  justify-content: center !important;
  gap: 14px !important;
  margin-bottom: 26px !important;
  flex-wrap: wrap !important;
}

.eo-confirm-btn {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 14px 26px !important;
  border-radius: 30px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
}

.eo-confirm-btn.eo-btn-whatsapp {
  background: linear-gradient(135deg, #25d366 0%, #128c7e 100%) !important;
  color: #ffffff !important;
  box-shadow: 0 6px 20px rgba(37, 211, 102, 0.35) !important;
}

.eo-confirm-btn.eo-btn-outline {
  background: #070f1e !important;
  color: #ffffff !important;
  border: 1.5px solid #c5a059 !important;
}

.eo-confirm-btn.eo-btn-outline:hover {
  background: linear-gradient(135deg, #c5a059 0%, #dfbf78 100%) !important;
  color: #070f1e !important;
}

.eo-confirm-footer-note {
  font-size: 13px !important;
  color: #64748b !important;
  border-top: 1px solid #f1f5f9 !important;
  padding-top: 20px !important;
}

.eo-confirm-footer-note a {
  color: #c5a059 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

/* ==========================================================================
   60. DESTINATION LOCATION PORTAL (/st_location/italy/ & ALL DESTINATIONS)
   ========================================================================== */
body.single-location,
body.tax-st_location {
  background: #faf9f6 !important;
}

body.single-location .banner,
body.tax-st_location .banner {
  border-radius: 0 0 28px 28px !important;
  overflow: hidden !important;
  box-shadow: 0 20px 50px rgba(7, 15, 30, 0.12) !important;
  position: relative !important;
}

body.single-location .banner::after,
body.tax-st_location .banner::after {
  content: '' !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(7, 15, 30, 0.35) 0%, rgba(7, 15, 30, 0.75) 100%) !important;
  pointer-events: none !important;
}

body.single-location .banner-content,
body.tax-st_location .banner-content {
  position: relative !important;
  z-index: 2 !important;
}

body.single-location h1.entry-title,
body.tax-st_location h1.entry-title,
body.single-location .banner h1 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 46px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  letter-spacing: -0.5px !important;
  text-shadow: 0 4px 20px rgba(0, 0, 0, 0.6) !important;
}

body.single-location .st-overview-content,
body.tax-st_location .st-overview-content {
  margin-top: 40px !important;
}

body.single-location .service-list-wrapper.grid,
body.tax-st_location .service-list-wrapper.grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)) !important;
  gap: 28px !important;
}

body.single-location .service-list-wrapper.grid .item-service,
body.tax-st_location .service-list-wrapper.grid .item-service {
  background: #ffffff !important;
  border-radius: 18px !important;
  border: 1px solid rgba(197, 160, 89, 0.22) !important;
  box-shadow: 0 8px 30px rgba(7, 15, 30, 0.05) !important;
  overflow: hidden !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

body.single-location .service-list-wrapper.grid .item-service:hover,
body.tax-st_location .service-list-wrapper.grid .item-service:hover {
  transform: translateY(-5px) !important;
  border-color: #c5a059 !important;
  box-shadow: 0 16px 40px rgba(197, 160, 89, 0.18) !important;
}

/* --------------------------------------------------------------------------
   61. LUXURY TOPBAR & WP ADMIN BAR INTEGRATION
   -------------------------------------------------------------------------- */
#sticktopbar {
  position: relative !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 1000 !important;
  margin: 0 !important;
  padding: 0 !important;
}

#topbar.eo-luxury-topbar,
#topbar.style-elementor,
#topbar {
  background: #070f1e !important;
  border-bottom: 1px solid rgba(197, 160, 89, 0.25) !important;
  padding: 0 40px !important;
  height: 38px !important;
  min-height: 38px !important;
  color: #ffffff !important;
  position: relative !important;
  top: 0 !important;
  z-index: 1000 !important;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 13px !important;
  line-height: 38px !important;
  display: flex !important;
  align-items: center !important;
}

.eo-topbar-container {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  max-width: 1440px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  height: 100% !important;
  flex-wrap: nowrap !important;
}

.eo-topbar-left {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
  flex-wrap: nowrap !important;
}

.eo-topbar-concierge {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  font-size: 13px !important;
  white-space: nowrap !important;
}

.eo-concierge-link {
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 500 !important;
  font-size: 13px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  transition: color 0.2s ease !important;
}

.eo-concierge-link i,
.eo-concierge-link .fa {
  color: #c5a059 !important;
  font-size: 13px !important;
}

.eo-concierge-link:hover {
  color: #c5a059 !important;
}

.eo-divider {
  color: rgba(255, 255, 255, 0.25) !important;
  font-size: 12px !important;
}

.topbar-right,
.eo-topbar-right {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex-wrap: nowrap !important;
}

.eo-topbar-menu {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-wrap: nowrap !important;
}

.eo-social-pill a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
  color: #ffffff !important;
  transition: all 0.2s ease !important;
}

.eo-social-pill a:hover {
  background: #c5a059 !important;
  border-color: #c5a059 !important;
  color: #070f1e !important;
  transform: translateY(-2px) !important;
}

.eo-social-pill svg {
  fill: currentColor !important;
  width: 12px !important;
  height: 12px !important;
}

/* MAIN SITE HEADER NAVIGATION */
#eo-main-site-header.eo-luxury-header {
  position: sticky !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  z-index: 9999 !important;
  background: #ffffff !important;
  border-bottom: 1px solid rgba(197, 160, 89, 0.2) !important;
  box-shadow: 0 4px 20px rgba(11, 21, 40, 0.06) !important;
  padding: 1px 40px !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

/* WP ADMIN BAR RESPONSIVE INTEGRATION - ZERO COLLISION */
body.admin-bar #sticktopbar {
  margin-top: 32px !important;
  top: 0 !important;
  position: relative !important;
}

body.admin-bar #topbar {
  margin-top: 0 !important;
  top: 0 !important;
  position: relative !important;
}

body.admin-bar #eo-main-site-header.eo-luxury-header {
  top: 32px !important;
}

@media screen and (max-width: 782px) {
  body.admin-bar #sticktopbar {
    margin-top: 46px !important;
    top: 0 !important;
  }

  body.admin-bar #topbar {
    margin-top: 0 !important;
    top: 0 !important;
  }

  body.admin-bar #eo-main-site-header.eo-luxury-header {
    top: 46px !important;
  }
}

/* HERO SUBTITLE CRYSTAL LEGIBILITY */
.elementor-element-2e38d74d,
.elementor-element-2e38d74d p,
.elementor-element-2e38d74d .elementor-heading-title {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  letter-spacing: 0.3px !important;
  text-align: center !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.8), 0 4px 16px rgba(0, 0, 0, 0.6) !important;
  margin: 12px auto !important;
  max-width: 820px !important;
  padding: 0 !important;
}

/* HERO SEARCH ENGINE - BESPOKE SLEEK POD (BALANCED & NO DEAD SPACE) */
.elementor-widget-st_banner_form,
.elementor-element-b00b899 {
  display: flex !important;
  justify-content: center !important;
  width: 100% !important;
}

.st-banner-search-form,
.st-banner-search-form.style_2,
.st-banner-search-form .tab-pane,
.st-banner-search-form .st-search-form-el,
.st-banner-search-form .st-search-el,
.st-banner-search-form .search-form-v2 {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  max-width: 640px !important;
  width: 100% !important;
}

/* HIDE UNUSED DATE / GUEST FIELDS IN SINGLE SEARCH MODE TO PREVENT EMPTY SPACE */
.st-banner-search-form .form-date-search,
.st-banner-search-form .form-date-field,
.st-banner-search-form .field-guest,
.st-banner-search-form .st-search-date-tour,
.st-banner-search-form .st-search-guest-tour,
.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .form-date-field,
.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .field-guest {
  display: none !important;
  width: 0 !important;
  min-width: 0 !important;
  max-width: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  visibility: hidden !important;
}

/* THE LUXURY WHITE CAPSULE PILL */
.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form,
.st-banner-search-form .search-form {
  background: #ffffff !important;
  border-radius: 60px !important;
  border: 1.5px solid rgba(197, 160, 89, 0.45) !important;
  box-shadow: 0 16px 45px rgba(7, 15, 30, 0.18), 0 0 20px rgba(197, 160, 89, 0.12) !important;
  padding: 8px 10px 8px 26px !important;
  max-width: 640px !important;
  width: 100% !important;
  margin: 0 auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  box-sizing: border-box !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form:hover,
.st-banner-search-form .search-form:hover {
  border-color: #c5a059 !important;
  box-shadow: 0 22px 55px rgba(7, 15, 30, 0.24), 0 0 28px rgba(197, 160, 89, 0.25) !important;
}

/* FORM FLEX CONTAINER */
.st-banner-search-form.style_2 .search-form .form,
.st-banner-search-form .search-form form,
.st-banner-search-form .form {
  width: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin: 0 !important;
  padding: 0 !important;
  gap: 16px !important;
}

/* LOCATION DESTINATION FIELD - EXPANDS FULLY ACROSS THE LEFT */
.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search,
.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .destination-search.st-search-destination-tour,
.st-banner-search-form .destination-search {
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  border-right: none !important;
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .field-detination,
.st-banner-search-form .field-detination {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  cursor: pointer !important;
  min-height: 50px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  width: 100% !important;
}

.st-banner-search-form.style_2 .st-search-form-el .st-search-el .search-form .field-detination:after,
.st-banner-search-form .field-detination:after {
  display: none !important;
}

.st-banner-search-form .field-detination .stt-icon-location1 {
  font-size: 24px !important;
  color: #c5a059 !important;
  flex-shrink: 0 !important;
}

.st-banner-search-form .st-form-dropdown-icon {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  text-align: left !important;
}

.st-banner-search-form .st-form-dropdown-icon label {
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
  color: #94a3b8 !important;
  margin: 0 0 2px 0 !important;
  display: block !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
}

.st-banner-search-form .st-form-dropdown-icon input[type="text"] {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #0b1528 !important;
  background: transparent !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  width: 100% !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
}

/* BUTTON WRAPPER & SEARCH BUTTON AT FAR RIGHT */
.st-banner-search-form.style_2 .st-search-form-el .button-search-wrapper,
.st-banner-search-form .button-search-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
}

.st-banner-search-form.style_2 .st-search-form-el .button-search-wrapper .btn-search,
.st-banner-search-form .btn-search,
.button-search-wrapper .btn-search {
  background: linear-gradient(135deg, #1b357d 0%, #0d1e48 100%) !important;
  color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  letter-spacing: 0.5px !important;
  border-radius: 40px !important;
  padding: 13px 32px !important;
  min-height: 48px !important;
  border: none !important;
  box-shadow: 0 6px 18px rgba(13, 30, 72, 0.35) !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  cursor: pointer !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  white-space: nowrap !important;
}

.st-banner-search-form.style_2 .st-search-form-el .button-search-wrapper .btn-search:hover,
.st-banner-search-form .btn-search:hover,
.button-search-wrapper .btn-search:hover {
  background: linear-gradient(135deg, #254db0 0%, #152e6d 100%) !important;
  transform: translateY(-1px) scale(1.02) !important;
  box-shadow: 0 10px 24px rgba(13, 30, 72, 0.5) !important;
  color: #ffffff !important;
}

/* --------------------------------------------------------------------------
   62. LUXURY TRIPADVISOR TRUST MEDALLION (HERO) & HIGH CONTRAST TYPOGRAPHY
   -------------------------------------------------------------------------- */
.tripadvisor.eo-luxury-tripadvisor,
.tripadvisor,
.elementor-element-4dfa455 .tripadvisor,
div.tripadvisor {
  width: 100% !important;
  max-width: 440px !important;
  background: rgba(11, 21, 40, 0.88) !important;
  backdrop-filter: blur(24px) !important;
  -webkit-backdrop-filter: blur(24px) !important;
  border: 1.5px solid rgba(212, 175, 55, 0.55) !important;
  border-radius: 20px !important;
  padding: 22px 28px !important;
  margin: 0 auto 18px auto !important;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.55), 0 0 25px rgba(212, 175, 55, 0.22) !important;
  text-align: center !important;
  color: #ffffff !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.tripadvisor.eo-luxury-tripadvisor:hover,
.tripadvisor:hover {
  transform: translateY(-3px) !important;
  border-color: rgba(212, 175, 55, 0.8) !important;
  box-shadow: 0 24px 50px rgba(0, 0, 0, 0.65), 0 0 32px rgba(212, 175, 55, 0.35) !important;
}

/* "Bravo!" Heading - Crisp Pure White with Luxury Shadow */
.tripadvisor h2,
.elementor-element-4dfa455 .tripadvisor h2,
div.tripadvisor h2 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 32px !important;
  font-weight: 700 !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  line-height: 1.25 !important;
  letter-spacing: 0.5px !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.85) !important;
}

/* "Europe Odyssey Tour" - Luminous Soft Gold / Silver */
.tripadvisor p:first-of-type,
.elementor-element-4dfa455 .tripadvisor p:first-of-type,
div.tripadvisor p:first-of-type {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  color: #f8fafc !important;
  -webkit-text-fill-color: #f8fafc !important;
  margin: 0 0 5px 0 !important;
  padding: 0 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.3px !important;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.8) !important;
}

/* "rated 'excellent' by 930 travelers" - High Contrast Luminous Silver with Emerald highlight */
.tripadvisor p:nth-of-type(2),
.elementor-element-4dfa455 .tripadvisor p:nth-of-type(2),
div.tripadvisor p:nth-of-type(2) {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #e2e8f0 !important;
  -webkit-text-fill-color: #e2e8f0 !important;
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
  line-height: 1.4 !important;
  letter-spacing: 0.2px !important;
  text-shadow: 0 1px 6px rgba(0, 0, 0, 0.8) !important;
}

.tripadvisor p,
.elementor-element-4dfa455 .tripadvisor p,
div.tripadvisor p {
  color: #e2e8f0 !important;
  -webkit-text-fill-color: #e2e8f0 !important;
}

.tripadvisor .ti-small-logo {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  margin-top: 4px !important;
}

.tripadvisor .ti-small-logo img {
  height: 24px !important;
  width: auto !important;
  padding: 0 !important;
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.7)) brightness(1.15) !important;
}

/* SUBTITLE DIRECTLY UNDER THE BANNER/SEARCH */
.elementor-element-2e38d74d {
  margin-bottom: 22px !important;
}

.elementor-element-2e38d74d .elementor-heading-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  text-align: center !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.9), 0 1px 4px rgba(0, 0, 0, 0.95) !important;
  letter-spacing: 0.2px !important;
}

/* ==========================================================================
   CUSTOMER REVIEW CARDS (TRUSTINDEX SHORTCODE) - ULTRA HIGH CONTRAST TYPOGRAPHY
   Overrides any global dark headings or muted text for review cards
   ========================================================================== */
.nxrev-widget-wrap,
.nxrev-theme-glass,
.nxrev-carousel-wrap,
.nxrev-grid-wrap {
  position: relative !important;
  z-index: 5 !important;
}

.nxrev-carousel-header .nxrev-widget-title,
.nxrev-widget-wrap h3.nxrev-widget-title,
.nxrev-theme-glass h3.nxrev-widget-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  text-shadow: 0 2px 10px rgba(0, 0, 0, 0.8) !important;
  margin: 8px 0 0 0 !important;
}

.nxrev-badge-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: rgba(56, 189, 248, 0.18) !important;
  border: 1px solid rgba(56, 189, 248, 0.45) !important;
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  padding: 4px 14px !important;
  border-radius: 9999px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
}

.nxrev-topic-pills-bar .nxrev-topic-pill {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  background: rgba(15, 23, 42, 0.75) !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  backdrop-filter: blur(8px) !important;
  padding: 7px 16px !important;
  border-radius: 9999px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
  cursor: pointer !important;
}

.nxrev-topic-pills-bar .nxrev-topic-pill.active {
  background: #fbbf24 !important;
  color: #0b1528 !important;
  -webkit-text-fill-color: #0b1528 !important;
  border-color: #f59e0b !important;
  box-shadow: 0 4px 14px rgba(251, 191, 36, 0.4) !important;
}

/* Review Cards: Solid Frosted Navy Container (Strictly Glass Theme) */
.nxrev-theme-glass .nxrev-card,
.nxrev-card.nxrev-glass-card {
  background: rgba(11, 21, 40, 0.90) !important;
  backdrop-filter: blur(20px) !important;
  -webkit-backdrop-filter: blur(20px) !important;
  border: 1.5px solid rgba(255, 255, 255, 0.22) !important;
  border-radius: 20px !important;
  padding: 26px !important;
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.65), inset 0 1px 0 rgba(255, 255, 255, 0.15) !important;
  color: #ffffff !important;
}

/* Review Author Name: CRISP PURE WHITE (Strictly Glass Theme) */
.nxrev-theme-glass .nxrev-author-name,
.nxrev-theme-glass h4.nxrev-author-name,
.nxrev-card.nxrev-glass-card .nxrev-author-name {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em !important;
  margin: 0 !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.8) !important;
}

/* Review Card Title: CRISP PURE WHITE (Strictly Glass Theme) */
.nxrev-theme-glass .nxrev-card-title,
.nxrev-theme-glass h5.nxrev-card-title,
.nxrev-card.nxrev-glass-card .nxrev-card-title {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  margin: 12px 0 10px 0 !important;
  text-shadow: 0 2px 8px rgba(0, 0, 0, 0.8) !important;
}

/* Review Card Body: LUMINOUS HIGH-CONTRAST SLATE (Strictly Glass Theme) */
.nxrev-theme-glass .nxrev-card-text,
.nxrev-theme-glass p.nxrev-card-text,
.nxrev-card.nxrev-glass-card .nxrev-card-text {
  color: #f1f5f9 !important;
  -webkit-text-fill-color: #f1f5f9 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  line-height: 1.7 !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.7) !important;
}

/* Read more / Show less buttons (Glass Theme) */
.nxrev-theme-glass .nxrev-expand-btn,
.nxrev-theme-glass .nxrev-collapse-btn {
  color: #38bdf8 !important;
  -webkit-text-fill-color: #38bdf8 !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 0 0 4px !important;
  text-decoration: underline !important;
}

/* Metadata (Glass Theme) */
.nxrev-theme-glass .nxrev-meta-sub {
  font-family: 'Plus Jakarta Sans', sans-serif !important;
}

.nxrev-theme-glass .nxrev-date {
  color: #94a3b8 !important;
  -webkit-text-fill-color: #94a3b8 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
}

.nxrev-theme-glass .nxrev-destination-tag {
  background: rgba(16, 185, 129, 0.22) !important;
  color: #34d399 !important;
  -webkit-text-fill-color: #34d399 !important;
  border: 1px solid rgba(16, 185, 129, 0.45) !important;
  border-radius: 6px !important;
  padding: 2px 8px !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
}

.nxrev-theme-glass .nxrev-trip-type-tag {
  background: rgba(56, 189, 248, 0.22) !important;
  color: #7dd3fc !important;
  -webkit-text-fill-color: #7dd3fc !important;
  border: 1px solid rgba(56, 189, 248, 0.45) !important;
  border-radius: 6px !important;
  padding: 2px 8px !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
}

.nxrev-theme-glass .nxrev-stars {
  color: #fbbf24 !important;
  -webkit-text-fill-color: #fbbf24 !important;
  font-size: 18px !important;
  letter-spacing: 2px !important;
  text-shadow: 0 0 10px rgba(251, 191, 36, 0.6) !important;
}

.nxrev-theme-glass .nxrev-rating-num {
  color: #fbbf24 !important;
  -webkit-text-fill-color: #fbbf24 !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  margin-left: 8px !important;
}

.nxrev-theme-glass .nxrev-tour-pill {
  background: rgba(30, 58, 138, 0.45) !important;
  color: #bfdbfe !important;
  -webkit-text-fill-color: #bfdbfe !important;
  border: 1px solid rgba(147, 197, 253, 0.35) !important;
  border-radius: 8px !important;
  padding: 6px 12px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5) !important;
}

.nxrev-theme-glass .nxrev-helpful-btn,
.nxrev-theme-glass .nxrev-share-btn {
  color: #e2e8f0 !important;
  -webkit-text-fill-color: #e2e8f0 !important;
  background: rgba(255, 255, 255, 0.1) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  border-radius: 8px !important;
  padding: 5px 12px !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: all 0.25s ease !important;
}

.nxrev-theme-glass .nxrev-helpful-btn:hover,
.nxrev-theme-glass .nxrev-share-btn:hover {
  background: rgba(255, 255, 255, 0.22) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: rgba(255, 255, 255, 0.45) !important;
}

.nxrev-theme-glass .nxrev-video-play-btn {
  background: linear-gradient(135deg, rgba(220, 38, 38, 0.35) 0%, rgba(185, 28, 28, 0.45) 100%) !important;
  border: 1.5px solid rgba(239, 68, 68, 0.7) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-weight: 700 !important;
  font-size: 13.5px !important;
  border-radius: 8px !important;
  padding: 9px 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  cursor: pointer !important;
  box-shadow: 0 4px 15px rgba(220, 38, 38, 0.3) !important;
  transition: all 0.25s ease !important;
}

.nxrev-theme-glass .nxrev-video-play-btn:hover {
  background: linear-gradient(135deg, rgba(220, 38, 38, 0.55) 0%, rgba(185, 28, 28, 0.65) 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(220, 38, 38, 0.5) !important;
}

/* ==========================================================================
   EQUAL BOX HEIGHT GUARANTEE ACROSS ALL REVIEWS CAROUSELS
   ========================================================================== */
.nxrev-carousel-track,
.nxrev-ta-slider-wrap .nxrev-carousel-track {
  display: flex !important;
  align-items: stretch !important;
}

.nxrev-slide,
.nxrev-ta-slider-wrap .nxrev-slide {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  align-self: stretch !important;
  box-sizing: border-box !important;
}

.nxrev-card,
.nxrev-theme-light .nxrev-card,
.nxrev-theme-glass .nxrev-card,
.nxrev-theme-dark .nxrev-card,
.nxrev-theme-tripadvisor .nxrev-card,
.nxrev-card.nxrev-tripadvisor-card {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  height: 100% !important;
  flex: 1 1 auto !important;
  box-sizing: border-box !important;
}

.nxrev-card-body,
.nxrev-card.nxrev-tripadvisor-card .nxrev-card-body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* HIDE EVERYTHING BELOW READ MORE */
.nxrev-management-reply,
.nxrev-management-reply-wrap,
.nxrev-reply-badge,
.nxrev-reply-toggle-btn,
.nxrev-reply-header,
.nxrev-reply-text,
.nxrev-theme-tripadvisor .nxrev-management-reply,
.nxrev-theme-tripadvisor .nxrev-management-reply-wrap,
.nxrev-card.nxrev-tripadvisor-card .nxrev-management-reply,
.nxrev-card.nxrev-tripadvisor-card .nxrev-management-reply-wrap,
.nxrev-theme-tripadvisor .nxrev-card-footer,
.nxrev-card.nxrev-tripadvisor-card .nxrev-card-footer {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}

/* ==========================================================================
   62A. DEDICATED TRIPADVISOR / TRUSTINDEX ELITE CAROUSEL & CARDS
   ========================================================================== */
.nxrev-theme-tripadvisor .nxrev-card,
.nxrev-card.nxrev-tripadvisor-card {
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 14px !important;
  padding: 22px 20px !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.05) !important;
  color: #111827 !important;
  min-height: 250px !important;
  height: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  flex: 1 1 auto !important;
  box-sizing: border-box !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
  overflow: hidden !important;
}

.nxrev-theme-tripadvisor .nxrev-card:hover,
.nxrev-card.nxrev-tripadvisor-card:hover {
  transform: translateY(-4px) !important;
  border-color: #00aa6c !important;
  box-shadow: 0 12px 30px rgba(0, 170, 108, 0.12) !important;
}

/* TripAdvisor Card Header Layout */
.nxrev-card.nxrev-tripadvisor-card .nxrev-card-header {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  margin-bottom: 12px !important;
  padding: 0 !important;
  height: 48px !important;
  min-height: 48px !important;
  max-height: 48px !important;
}

.nxrev-card.nxrev-tripadvisor-card .nxrev-card-user {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
}

.nxrev-card.nxrev-tripadvisor-card .nxrev-avatar {
  width: 44px !important;
  height: 44px !important;
  min-width: 44px !important;
  max-width: 44px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 2px solid #00aa6c !important;
}

.nxrev-card.nxrev-tripadvisor-card .nxrev-user-meta {
  display: flex !important;
  flex-direction: column !important;
  gap: 2px !important;
}

/* Author Name in TripAdvisor Cards: Bold Dark Charcoal */
.nxrev-theme-tripadvisor .nxrev-author-name,
.nxrev-card.nxrev-tripadvisor-card .nxrev-author-name,
.nxrev-card.nxrev-tripadvisor-card h4.nxrev-author-name {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em !important;
  margin: 0 !important;
  text-shadow: none !important;
}

/* Date in TripAdvisor Cards: Soft Charcoal Grey */
.nxrev-theme-tripadvisor .nxrev-date,
.nxrev-card.nxrev-tripadvisor-card .nxrev-date {
  color: #6b7280 !important;
  -webkit-text-fill-color: #6b7280 !important;
  font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
  font-size: 12.5px !important;
  font-weight: 400 !important;
  text-shadow: none !important;
}

/* TripAdvisor Rating Row: 5 Green Bubbles + Verified Icon */
.nxrev-card.nxrev-tripadvisor-card .nxrev-stars-row {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 6px 0 10px 0 !important;
  padding: 0 !important;
  height: 20px !important;
}

.nxrev-card.nxrev-tripadvisor-card .nxrev-ta-bubbles {
  display: inline-flex !important;
  gap: 3px !important;
  align-items: center !important;
}

.nxrev-card.nxrev-tripadvisor-card .nxrev-ta-verified-check {
  display: inline-flex !important;
  align-items: center !important;
  color: #00aa6c !important;
}

/* Card Title in TripAdvisor Cards: Equalized Height (2 lines guaranteed) */
.nxrev-theme-tripadvisor .nxrev-card-title,
.nxrev-card.nxrev-tripadvisor-card .nxrev-card-title,
.nxrev-card.nxrev-tripadvisor-card h5.nxrev-card-title {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 15.5px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 4px 0 8px 0 !important;
  height: 42px !important;
  min-height: 42px !important;
  max-height: 42px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-shadow: none !important;
}

/* Card Text / Body: Readable Slate Charcoal, 4-Line Clamped */
.nxrev-theme-tripadvisor .nxrev-card-text,
.nxrev-card.nxrev-tripadvisor-card .nxrev-card-text,
.nxrev-card.nxrev-tripadvisor-card p.nxrev-card-text {
  color: #374151 !important;
  -webkit-text-fill-color: #374151 !important;
  font-family: 'Plus Jakarta Sans', -apple-system, sans-serif !important;
  font-size: 13.5px !important;
  line-height: 1.6 !important;
  text-shadow: none !important;
  opacity: 1 !important;
  margin: 0 !important;
}

.nxrev-theme-tripadvisor .nxrev-card-text.truncated,
.nxrev-card.nxrev-tripadvisor-card .nxrev-card-text.truncated,
.nxrev-card.nxrev-tripadvisor-card p.nxrev-card-text.truncated {
  display: -webkit-box !important;
  -webkit-line-clamp: 4 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  text-shadow: none !important;
}

.nxrev-theme-tripadvisor .nxrev-card-text.full,
.nxrev-card.nxrev-tripadvisor-card .nxrev-card-text.full,
.nxrev-card.nxrev-tripadvisor-card p.nxrev-card-text.full {
  max-height: 160px !important;
  overflow-y: auto !important;
  padding-right: 4px !important;
}

/* TripAdvisor Read More Button */
.nxrev-card.nxrev-tripadvisor-card .nxrev-expand-btn,
.nxrev-card.nxrev-tripadvisor-card .nxrev-collapse-btn,
.nxrev-expand-btn,
.nxrev-collapse-btn {
  color: #00aa6c !important;
  -webkit-text-fill-color: #00aa6c !important;
  font-weight: 600 !important;
  font-size: 13px !important;
  text-decoration: underline !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 0 0 4px !important;
  display: inline !important;
}

/* TripAdvisor Slider Header Banner (Total Reviews & Social Proof) */
.nxrev-ta-header-banner {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 20px !important;
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  border-radius: 18px !important;
  padding: 24px 30px !important;
  margin-bottom: 26px !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
}

.nxrev-ta-banner-left {
  display: flex !important;
  align-items: center !important;
  gap: 16px !important;
}

.nxrev-ta-badge-icon-box {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 56px !important;
  height: 56px !important;
  border-radius: 50% !important;
  background: #e6f7f0 !important;
  border: 2px solid #00aa6c !important;
  flex-shrink: 0 !important;
}

.nxrev-ta-award-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: rgba(0, 170, 108, 0.08) !important;
  color: #00875a !important;
  -webkit-text-fill-color: #00875a !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  padding: 4px 12px !important;
  border-radius: 20px !important;
  margin-bottom: 6px !important;
  border: 1px solid rgba(0, 170, 108, 0.2) !important;
}

.nxrev-ta-title {
  font-family: "Playfair Display", Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
  margin: 0 0 6px 0 !important;
  line-height: 1.25 !important;
  text-shadow: none !important;
}

.nxrev-ta-score-bar {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}

.nxrev-ta-rating-text {
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  -webkit-text-fill-color: #0f172a !important;
}

.nxrev-ta-count {
  font-size: 14px !important;
  color: #4b5563 !important;
  -webkit-text-fill-color: #4b5563 !important;
}

.nxrev-ta-count strong {
  color: #111827 !important;
  -webkit-text-fill-color: #111827 !important;
  font-weight: 700 !important;
}

.nxrev-ta-btn-write {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background: #ffffff !important;
  border: 1.5px solid #00aa6c !important;
  color: #00aa6c !important;
  -webkit-text-fill-color: #00aa6c !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  padding: 10px 20px !important;
  border-radius: 24px !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
  box-shadow: 0 2px 8px rgba(0, 170, 108, 0.12) !important;
}

.nxrev-ta-btn-write:hover {
  background: #00aa6c !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 18px rgba(0, 170, 108, 0.25) !important;
}

/* Side navigation arrows for TripAdvisor Slider */
.nxrev-ta-slider-wrap .nxrev-carousel-track-container {
  position: relative !important;
  padding: 0 6px !important;
  overflow: hidden !important;
}

.nxrev-side-nav {
  position: absolute !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  border: 1px solid #e5e7eb !important;
  color: #374151 !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.12) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  z-index: 10 !important;
  transition: all 0.2s ease !important;
}

.nxrev-side-nav:hover {
  background: #00aa6c !important;
  color: #ffffff !important;
  border-color: #00aa6c !important;
  transform: translateY(-50%) scale(1.08) !important;
  box-shadow: 0 6px 18px rgba(0, 170, 108, 0.35) !important;
}

.nxrev-side-nav.nxrev-prev {
  left: 6px !important;
}

.nxrev-side-nav.nxrev-next {
  right: 6px !important;
}

/* 4-Columns Responsive Flex */
.nxrev-carousel-wrap[data-cols="4"] .nxrev-slide {
  flex: 0 0 calc(25% - 18px) !important;
  margin-right: 24px !important;
}

@media (max-width: 1200px) {
  .nxrev-carousel-wrap[data-cols="4"] .nxrev-slide {
    flex: 0 0 calc(33.333% - 16px) !important;
  }
}

@media (max-width: 900px) {
  .nxrev-carousel-wrap[data-cols="4"] .nxrev-slide,
  .nxrev-carousel-wrap[data-cols="3"] .nxrev-slide {
    flex: 0 0 calc(50% - 12px) !important;
  }
}

@media (max-width: 600px) {
  .nxrev-carousel-wrap[data-cols="4"] .nxrev-slide,
  .nxrev-carousel-wrap[data-cols="3"] .nxrev-slide {
    flex: 0 0 100% !important;
    margin-right: 0 !important;
  }
}

/* Trustindex Verified Footer Row */
.nxrev-ta-footer-row {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  margin-top: 18px !important;
  padding: 0 10px !important;
}

.nxrev-trustindex-badge {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  background: #00aa6c !important;
  color: #ffffff !important;
  padding: 6px 14px !important;
  border-radius: 20px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  box-shadow: 0 2px 8px rgba(0, 170, 108, 0.25) !important;
}

.nxrev-trustindex-badge strong {
  font-weight: 700 !important;
  letter-spacing: 0.02em !important;
}

.nxrev-ti-check {
  font-size: 13px !important;
  font-weight: 800 !important;
}

.nxrev-ti-info {
  opacity: 0.85 !important;
  font-size: 12px !important;
}

/* --------------------------------------------------------------------------
   62B. FLOATING ACTION BUTTONS (RESIZED & COMPACT FOR SLEEK VISUAL BALANCE)
   -------------------------------------------------------------------------- */
.nxp-support-float {
  position: fixed !important;
  bottom: 22px !important;
  right: 78px !important;
  z-index: 99980 !important;
}

.nxp-support-btn {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  border-radius: 50% !important;
  background: linear-gradient(135deg, #0b1528 0%, #060d1a 100%) !important;
  border: 1.5px solid rgba(212, 175, 55, 0.7) !important;
  box-shadow: 0 6px 20px rgba(11, 21, 40, 0.4), 0 0 12px rgba(212, 175, 55, 0.25) !important;
  color: #d4af37 !important;
  font-size: 20px !important;
  line-height: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
  padding: 0 !important;
}

.nxp-support-btn:hover {
  transform: scale(1.08) translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(11, 21, 40, 0.5), 0 0 18px rgba(212, 175, 55, 0.5) !important;
  border-color: #f59e0b !important;
}

/* FLOATING WHATSAPP ICON (COMPACT & BALANCED) */
.joinchat {
  --s: 46px !important;
  right: 22px !important;
  bottom: 22px !important;
  z-index: 99980 !important;
}

.joinchat__button {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  min-height: 46px !important;
  border-radius: 50% !important;
  box-shadow: 0 6px 20px rgba(37, 211, 102, 0.35) !important;
  background-size: 58% !important;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.joinchat__button:hover {
  transform: scale(1.08) translateY(-2px) !important;
  box-shadow: 0 10px 24px rgba(37, 211, 102, 0.5) !important;
}

.joinchat__button__image {
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
}

/* --------------------------------------------------------------------------
   63. LUXURY FOOTER HIGH-CONTRAST VISIBILITY (#main-footer)
   -------------------------------------------------------------------------- */
#main-footer {
  background: #070f1e !important;
  color: rgba(255, 255, 255, 0.88) !important;
  border-top: 1px solid rgba(197, 160, 89, 0.2) !important;
  position: relative !important;
  z-index: 10 !important;
  padding-top: 50px !important;
}

#main-footer h4,
#main-footer .footer-title,
#main-footer .widget-title {
  color: #ffffff !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  letter-spacing: 0.3px !important;
  margin-bottom: 20px !important;
  position: relative !important;
  padding-bottom: 10px !important;
}

#main-footer h4::after,
#main-footer .footer-title::after,
#main-footer .widget-title::after {
  content: '' !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 32px !important;
  height: 2px !important;
  background: #c5a059 !important;
  border-radius: 2px !important;
}

#main-footer p,
#main-footer li,
#main-footer span {
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
}

#main-footer a {
  color: rgba(255, 255, 255, 0.85) !important;
  text-decoration: none !important;
  transition: color 0.2s ease, transform 0.2s ease !important;
  font-size: 14px !important;
}

#main-footer a:hover {
  color: #c5a059 !important;
  transform: translateX(3px) !important;
}

#main-footer .f-copy,
#main-footer .copy-text,
#main-footer .copyright {
  color: rgba(255, 255, 255, 0.6) !important;
  font-size: 13px !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
  padding-top: 20px !important;
}

/* --------------------------------------------------------------------------
   64. ALL CUSTOM TOURS & ZERO-PRICE TOURS: FULL-WIDTH & HIDE RIGHT BOX
   -------------------------------------------------------------------------- */
body.eo-is-custom-tour .st-tour-content .col-12.col-lg-8,
body.eo-is-custom-tour .st-tour-content .col-12.col-lg-12,
body.eo-is-custom-tour .st-tour-content .col-sm-9,
body.eo-tour-no-sidebar .st-tour-content .col-12.col-lg-8,
body.eo-tour-no-sidebar .st-tour-content .col-12.col-lg-12,
body.eo-tour-no-sidebar .st-tour-content .col-sm-9,
.eo-tour-fullwidth,
.eo-is-custom-tour .col-lg-8,
.eo-is-custom-tour .col-sm-9 {
  flex: 0 0 100% !important;
  max-width: 100% !important;
  width: 100% !important;
}

body.eo-is-custom-tour .st-tour-content .col-12.col-lg-4,
body.eo-is-custom-tour .st-tour-content .col-sm-3,
body.eo-is-custom-tour .widgets.eo-sticky-booking-widget,
body.eo-is-custom-tour #booking-request,
body.eo-is-custom-tour .hotel-target-book-mobile,
body.eo-tour-no-sidebar .st-tour-content .col-12.col-lg-4,
body.eo-tour-no-sidebar .st-tour-content .col-sm-3,
body.eo-tour-no-sidebar .widgets.eo-sticky-booking-widget,
body.eo-tour-no-sidebar #booking-request,
body.eo-tour-no-sidebar .hotel-target-book-mobile,
.eo-is-custom-tour .col-lg-4,
.eo-is-custom-tour .col-sm-3,
.eo-no-sidebar .col-lg-4,
.eo-no-sidebar .col-sm-3 {
  display: none !important;
}

/* Luxury Itinerary Pricing Table */
.tourprice {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  border: 1px solid #e5e7eb !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04) !important;
  margin: 25px 0 !important;
  background: #ffffff !important;
}

.tourprice tbody tr:first-child {
  background: #0b1528 !important;
  color: #ffffff !important;
}

.tourprice tbody tr:first-child td {
  color: #d4af37 !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  padding: 14px 18px !important;
  border: none !important;
}

.tourprice tbody tr:first-child td p {
  color: #d4af37 !important;
  font-weight: 700 !important;
  margin: 0 !important;
}

.tourprice tbody tr:not(:first-child) {
  border-bottom: 1px solid #f1f5f9 !important;
  transition: background 0.2s ease !important;
}

.tourprice tbody tr:not(:first-child):hover {
  background: #f8fafc !important;
}

.tourprice tbody tr:not(:first-child) td {
  padding: 12px 18px !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
  font-size: 14.5px !important;
  color: #334155 !important;
}

.tourprice tbody tr:not(:first-child) td p {
  margin: 0 !important;
  font-size: 14.5px !important;
  color: #334155 !important;
}

/* ==========================================================================
   SECTION 59: ULTRA-LUXURY WOOCOMMERCE CART PAGE REDESIGN & WHITESPACE TIGHTENING
   ========================================================================== */

/* 1. Eliminate Excessive Top Spacing */
body.woocommerce-cart .st-breadcrumb {
  padding: 8px 0 10px !important;
  margin-bottom: 0 !important;
  border-bottom: 1px solid rgba(11, 21, 40, 0.08) !important;
  background: #ffffff !important;
}

body.woocommerce-cart .st-breadcrumb ul {
  padding: 0 !important;
  margin: 0 !important;
  font-size: 13px !important;
}

body.woocommerce-cart #st-content-wrapper {
  padding-top: 0 !important;
  padding-bottom: 25px !important; /* drastically reduced from default 100px */
}

body.woocommerce-cart #st-content-wrapper > .container {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
}

body.woocommerce-cart .woocommerce,
body.woocommerce-page .woocommerce {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
}

body.woocommerce-cart .st-woo-cartpage,
body.woocommerce-page .st-woo-cartpage,
.woocommerce .st-woo-cartpage,
.woocommerce-page .st-woo-cartpage {
  padding-top: 6px !important;
  margin-top: 0 !important;
  margin-bottom: 10px !important;
}

/* 2. Cart Page Headings (Cart items & Cart totals) */
body.woocommerce-cart .st-woo-heading,
body.woocommerce-page .st-woo-heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  color: #0b1528 !important;
  letter-spacing: -0.01em !important;
  margin: 0 0 14px 0 !important;
  padding-bottom: 6px !important;
  position: relative !important;
}

body.woocommerce-cart .st-woo-heading::after {
  content: "" !important;
  display: block !important;
  width: 36px !important;
  height: 2.5px !important;
  background: #c5a059 !important;
  margin-top: 6px !important;
  border-radius: 2px !important;
}

/* 3. Cart Table Luxury Modern Styling */
body.woocommerce-cart .st-woo-cartpage .col-left .shop_table,
body.woocommerce-cart table.shop_table.cart {
  width: 100% !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  background: #ffffff !important;
  border-radius: 14px !important;
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  box-shadow: 0 4px 20px rgba(11, 21, 40, 0.05) !important;
  overflow: hidden !important;
  margin-top: 0 !important;
  margin-bottom: 15px !important;
}

/* Table Header */
body.woocommerce-cart table.shop_table.cart thead tr {
  background: #0b1528 !important;
}

body.woocommerce-cart table.shop_table.cart thead th {
  padding: 13px 16px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 11.5px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  color: #ffffff !important;
  border: none !important;
  vertical-align: middle !important;
}

body.woocommerce-cart table.shop_table.cart thead th.product-name {
  text-align: left !important;
}

body.woocommerce-cart table.shop_table.cart thead th.product-price {
  text-align: right !important;
}

body.woocommerce-cart table.shop_table.cart thead th.product-quantity {
  text-align: center !important;
}

/* Table Body Rows */
body.woocommerce-cart table.shop_table.cart tbody tr.cart_item {
  border-bottom: 1px solid #f1f5f9 !important;
  transition: background 0.2s ease !important;
}

body.woocommerce-cart table.shop_table.cart tbody tr.cart_item:hover {
  background: #fafbfc !important;
}

body.woocommerce-cart table.shop_table.cart tbody td {
  padding: 16px 14px !important;
  border: none !important;
  border-bottom: 1px solid #f1f5f9 !important;
}

/* Remove Button Column */
body.woocommerce-cart table.shop_table.cart td.product-remove {
  width: 44px !important;
  text-align: center !important;
  vertical-align: top !important;
  padding-top: 18px !important;
}

body.woocommerce-cart table.shop_table.cart td.product-remove .booking-item-wishlist-remove,
body.woocommerce-cart table.shop_table.cart a.remove {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 50% !important;
  background: #fef2f2 !important;
  color: #ef4444 !important;
  border: 1px solid #fee2e2 !important;
  font-size: 13px !important;
  transition: all 0.2s ease !important;
  text-decoration: none !important;
  margin: 0 !important;
}

body.woocommerce-cart table.shop_table.cart td.product-remove .booking-item-wishlist-remove:hover,
body.woocommerce-cart table.shop_table.cart a.remove:hover {
  background: #ef4444 !important;
  color: #ffffff !important;
  border-color: #dc2626 !important;
  transform: scale(1.1) !important;
}

/* Thumbnail Column */
body.woocommerce-cart table.shop_table.cart td.product-thumbnail {
  width: 90px !important;
  text-align: center !important;
  vertical-align: top !important;
  padding-top: 16px !important;
  padding-left: 0 !important;
}

body.woocommerce-cart table.shop_table.cart td.product-thumbnail img {
  width: 82px !important;
  height: 62px !important;
  object-fit: cover !important;
  border-radius: 8px !important;
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
  display: block !important;
}

/* Product Info Column */
body.woocommerce-cart table.shop_table.cart td.product-name {
  vertical-align: top !important;
  padding: 16px 14px !important;
}

/* Service Type Badge */
body.woocommerce-cart .eo-cart-service-badge-wrap,
body.woocommerce-cart td.product-name .booking-item-wishlist-title {
  display: inline-flex !important;
  align-items: center !important;
  gap: 5px !important;
  background: #fdfaf3 !important;
  color: #936818 !important;
  border: 1px solid rgba(197, 160, 89, 0.4) !important;
  border-radius: 20px !important;
  padding: 2.5px 10px !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  margin: 0 0 6px 0 !important;
}

body.woocommerce-cart td.product-name .booking-item-wishlist-title i {
  color: #c5a059 !important;
  font-size: 11px !important;
}

/* Product Title */
body.woocommerce-cart table.shop_table.cart td.product-name h5.booking-item-title {
  margin: 0 0 8px 0 !important;
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 17px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

body.woocommerce-cart table.shop_table.cart td.product-name h5.booking-item-title a {
  color: #0b1528 !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

body.woocommerce-cart table.shop_table.cart td.product-name h5.booking-item-title a:hover {
  color: #c5a059 !important;
}

/* Product Variations / Details (Type Tour, Departure Date, Duration, etc.) */
body.woocommerce-cart table.shop_table.cart dl.variation {
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  font-size: 13px !important;
  color: #475569 !important;
  line-height: 1.5 !important;
}

body.woocommerce-cart table.shop_table.cart dl.variation dt {
  font-weight: 600 !important;
  color: #0b1528 !important;
  float: left !important;
  clear: left !important;
  margin-right: 6px !important;
  margin-bottom: 2px !important;
}

body.woocommerce-cart table.shop_table.cart dl.variation dd {
  margin-bottom: 2px !important;
  color: #475569 !important;
}

body.woocommerce-cart table.shop_table.cart dl.variation dd p {
  margin: 0 !important;
  display: inline !important;
}

/* Price Column */
body.woocommerce-cart table.shop_table.cart td.product-price {
  text-align: right !important;
  vertical-align: middle !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 18px !important;
  font-weight: 800 !important;
  color: #0b1528 !important;
  letter-spacing: -0.01em !important;
}

body.woocommerce-cart table.shop_table.cart td.product-price span.booking-item-price,
body.woocommerce-cart table.shop_table.cart td.product-price .woocommerce-Price-amount {
  color: #0b1528 !important;
  font-weight: 800 !important;
}

/* Quantity Column */
body.woocommerce-cart table.shop_table.cart td.product-quantity {
  text-align: center !important;
  vertical-align: middle !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #0b1528 !important;
}

/* Actions Row (Coupon & Update Cart) */
body.woocommerce-cart table.shop_table.cart td.actions {
  padding: 14px 18px !important;
  background: #f8fafc !important;
  border-top: 1px solid #e2e8f0 !important;
}

body.woocommerce-cart .eo-cart-actions-inner {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
}

body.woocommerce-cart table.shop_table.cart td.actions .coupon {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  float: none !important;
  padding-bottom: 0 !important;
}

body.woocommerce-cart table.shop_table.cart td.actions .coupon .input-text {
  height: 40px !important;
  min-width: 190px !important;
  border: 1.5px solid #cbd5e1 !important;
  border-radius: 8px !important;
  padding: 8px 14px !important;
  font-size: 13.5px !important;
  background: #ffffff !important;
  margin: 0 !important;
  outline: none !important;
  transition: border-color 0.2s ease !important;
}

body.woocommerce-cart table.shop_table.cart td.actions .coupon .input-text:focus {
  border-color: #c5a059 !important;
  box-shadow: 0 0 0 3px rgba(197, 160, 89, 0.15) !important;
}

body.woocommerce-cart table.shop_table.cart td.actions .coupon button[type="submit"],
body.woocommerce-cart .eo-apply-coupon-btn {
  height: 40px !important;
  background: #0b1528 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 0 18px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
  float: none !important;
}

body.woocommerce-cart table.shop_table.cart td.actions .coupon button[type="submit"]:hover,
body.woocommerce-cart .eo-apply-coupon-btn:hover {
  background: #c5a059 !important;
  color: #0b1528 !important;
}

body.woocommerce-cart table.shop_table.cart td.actions button[name="update_cart"],
body.woocommerce-cart .eo-update-cart-btn {
  height: 40px !important;
  background: #ffffff !important;
  color: #0b1528 !important;
  border: 1.5px solid #cbd5e1 !important;
  border-radius: 8px !important;
  padding: 0 20px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  transition: all 0.2s ease !important;
  cursor: pointer !important;
  float: none !important;
}

body.woocommerce-cart table.shop_table.cart td.actions button[name="update_cart"]:hover,
body.woocommerce-cart .eo-update-cart-btn:hover {
  border-color: #0b1528 !important;
  background: #0b1528 !important;
  color: #ffffff !important;
}

/* 4. Cart Totals Box (Right Column) */
body.woocommerce-cart .st-woo-cartpage .cart-collaterals {
  border: 1px solid rgba(11, 21, 40, 0.08) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 4px 20px rgba(11, 21, 40, 0.05) !important;
  padding: 24px !important;
  margin-top: 0 !important;
}

body.woocommerce-cart .st-woo-cartpage .cart-collaterals .shop_table {
  border: none !important;
  margin-bottom: 20px !important;
}

body.woocommerce-cart .st-woo-cartpage .cart-collaterals .shop_table tr {
  border-bottom: 1px solid #f1f5f9 !important;
}

body.woocommerce-cart .st-woo-cartpage .cart-collaterals .shop_table th {
  padding: 12px 0 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #475569 !important;
  text-align: left !important;
  border: none !important;
}

body.woocommerce-cart .st-woo-cartpage .cart-collaterals .shop_table td {
  padding: 12px 0 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #0b1528 !important;
  text-align: right !important;
  border: none !important;
}

body.woocommerce-cart .st-woo-cartpage .cart-collaterals .shop_table tr.order-total th {
  font-size: 16px !important;
  font-weight: 700 !important;
  color: #0b1528 !important;
  padding-top: 16px !important;
}

body.woocommerce-cart .st-woo-cartpage .cart-collaterals .shop_table tr.order-total td {
  font-size: 22px !important;
  font-weight: 800 !important;
  color: #0b1528 !important;
  padding-top: 16px !important;
}

body.woocommerce-cart .st-woo-cartpage .cart-collaterals .wc-proceed-to-checkout .checkout-button {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 50px !important;
  background: linear-gradient(135deg, #d4af37 0%, #c5a059 100%) !important;
  color: #0b1528 !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  border-radius: 9px !important;
  border: none !important;
  box-shadow: 0 4px 16px rgba(197, 160, 89, 0.35) !important;
  transition: all 0.28s ease !important;
  text-decoration: none !important;
}

body.woocommerce-cart .st-woo-cartpage .cart-collaterals .wc-proceed-to-checkout .checkout-button:hover {
  background: linear-gradient(135deg, #e5c358 0%, #d4af37 100%) !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(197, 160, 89, 0.5) !important;
  color: #0b1528 !important;
}

/* 5. Bottom "Add More Tours" Button & Wrapper */
body.woocommerce-cart blockquote.wp-block-quote {
  margin: 12px 0 0 0 !important;
  padding: 0 !important;
  border: none !important;
  background: transparent !important;
}

body.woocommerce-cart blockquote.wp-block-quote p {
  margin: 0 !important;
  padding: 0 !important;
}

.addmoret,
.addmoretc,
body.woocommerce-cart .addmoret {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  background: #0b1528 !important;
  color: #f6d27e !important;
  border: 1.5px solid #c5a059 !important;
  border-radius: 50px !important;
  padding: 10px 24px !important;
  font-family: 'Plus Jakarta Sans', sans-serif !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.06em !important;
  height: auto !important;
  max-width: none !important;
  box-shadow: 0 4px 14px rgba(11, 21, 40, 0.22) !important;
  transition: all 0.25s ease !important;
  text-decoration: none !important;
  line-height: normal !important;
  margin-bottom: 0 !important;
}

.addmoret:hover,
.addmoretc:hover,
body.woocommerce-cart .addmoret:hover {
  background: linear-gradient(135deg, #c5a059 0%, #d4af37 100%) !important;
  color: #0b1528 !important;
  border-color: #d4af37 !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 6px 20px rgba(197, 160, 89, 0.45) !important;
}