/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Jan 16 2026 | 10:15:47 */
/* =====================================================
   MARRAKECH BEST SECRETS – GLOBAL STYLE (LUXE VERSION)
   Elementor + Traveler
   Objectif : rendu premium, plus de "gros bloc vert",
              plus de boutons bordeaux, plus de bleu,
              et onglets lisibles (pas vert/vert).
   ===================================================== */

/* ---------- PALETTE ---------- */
:root {
  --mbs-cream: #F5F0EB;
  --mbs-green: #283220;
  --mbs-green-dark: #1f281a;
  --mbs-gold: #D0B595;
  --mbs-brown: #604E2A;
  --mbs-text: #1E1E1E;
  --mbs-muted: #A9A699;

  /* Header luxe */
  --mbs-topbar-bg: var(--mbs-green-dark);
  --mbs-topbar-text: rgba(245,240,235,0.92);
  --mbs-topbar-hover: var(--mbs-gold);

  --mbs-header-bg: var(--mbs-cream);
  --mbs-header-text: var(--mbs-green);
  --mbs-header-hover: var(--mbs-gold);
  --mbs-header-border: rgba(208,181,149,0.45);
  --mbs-header-shadow: 0 10px 30px rgba(0,0,0,0.08);

  /* Buttons */
  --mbs-btn-bg: var(--mbs-green);
  --mbs-btn-bg-hover: var(--mbs-green-dark);
  --mbs-btn-text: var(--mbs-cream);
  --mbs-btn-border: rgba(208,181,149,0.45);
  --mbs-btn-border-hover: rgba(208,181,149,0.70);

  /* Tabs/filters */
  --mbs-tab-bg: #ffffff;
  --mbs-tab-text: var(--mbs-green-dark);
  --mbs-tab-border: rgba(208,181,149,0.28);
  --mbs-tab-active-bg: var(--mbs-green-dark);
  --mbs-tab-active-text: var(--mbs-cream);
}

/* ---------- BASE ---------- */
body {
  background-color: var(--mbs-cream) !important;
  color: var(--mbs-text);
}

section,
.elementor-section {
  background: transparent;
}

/* ---------- TYPOGRAPHY ---------- */
h1, h2, h3, h4, h5 {
  color: var(--mbs-text);
  letter-spacing: 0.3px;
}

p { color: #4a4a4a; }

/* ---------- LINKS (NO BLUE) ---------- */
a,
a:visited {
  color: var(--mbs-green) !important;
  transition: color .25s ease;
}
a:hover,
a:focus {
  color: var(--mbs-brown) !important;
}

/* ---------- BUTTONS (FORCE NO BORDEAUX) ---------- */
button,
input[type="submit"],
.elementor-button,
.st-button,
.btn,
a.btn,
.btn-primary,
a.btn-primary,
button.btn-primary,
.st-btn-primary,
.st-button-primary {
  background-color: var(--mbs-btn-bg) !important;
  color: var(--mbs-btn-text) !important;
  border-radius: 12px !important;
  border: 1px solid var(--mbs-btn-border) !important;
  padding: 14px 22px !important;
  box-shadow: 0 8px 22px rgba(0,0,0,0.15);
  transition: all .25s ease;
  text-decoration: none !important;
}

/* Empêche la règle des liens de recolorer le texte des boutons <a> */
a.elementor-button,
a.elementor-button:visited,
a.st-button,
a.st-button:visited,
a.btn,
a.btn:visited,
a.btn-primary,
a.btn-primary:visited {
  color: var(--mbs-btn-text) !important;
}

button:hover,
input[type="submit"]:hover,
.elementor-button:hover,
.st-button:hover,
.btn:hover,
a.btn:hover,
.btn-primary:hover,
a.btn-primary:hover,
button.btn-primary:hover,
.st-btn-primary:hover,
.st-button-primary:hover {
  background-color: var(--mbs-btn-bg-hover) !important;
  border-color: var(--mbs-btn-border-hover) !important;
  transform: translateY(-1px);
  color: var(--mbs-btn-text) !important;
}

/* Secondary buttons */
.btn-outline,
.elementor-button-outline,
.btn.btn-outline,
a.btn.btn-outline {
  background: transparent !important;
  color: var(--mbs-green) !important;
  border: 1px solid rgba(40,50,32,0.35) !important;
  box-shadow: none !important;
  text-decoration: none !important;
}
.btn-outline:hover,
.elementor-button-outline:hover,
.btn.btn-outline:hover,
a.btn.btn-outline:hover {
  background: rgba(208,181,149,0.14) !important;
  border-color: rgba(208,181,149,0.55) !important;
  transform: translateY(-1px);
}

/* Focus (no blue outline) */
*:focus { outline: none !important; }
button:focus,
input[type="submit"]:focus,
.elementor-button:focus,
.st-button:focus,
.btn:focus,
a.btn:focus,
.btn-primary:focus,
a.btn-primary:focus {
  box-shadow: 0 0 0 3px rgba(208,181,149,0.22) !important;
}

/* ---------- TOPBAR (LUXE) ---------- */
body header #topbar {
  background-color: var(--mbs-topbar-bg) !important;
  background-image: none !important;
  color: var(--mbs-topbar-text) !important;
  border-bottom: 1px solid rgba(245,240,235,0.10) !important;
}

body header #topbar,
body header #topbar a,
body header #topbar span,
body header #topbar p {
  color: var(--mbs-topbar-text) !important;
}

body header #topbar a:hover { color: var(--mbs-topbar-hover) !important; }

body header #topbar i,
body header #topbar svg,
body header #topbar svg path {
  color: var(--mbs-topbar-text) !important;
  fill: var(--mbs-topbar-text) !important;
}
body header #topbar i:hover,
body header #topbar svg:hover,
body header #topbar svg:hover path {
  color: var(--mbs-topbar-hover) !important;
  fill: var(--mbs-topbar-hover) !important;
}

/* ---------- HEADER (CREAM + HAIRLINE GOLD) ---------- */
header,
.elementor-location-header {
  background-color: var(--mbs-header-bg) !important;
  border-bottom: 1px solid var(--mbs-header-border) !important;
  box-shadow: var(--mbs-header-shadow) !important;
}

header .container,
header .elementor-container,
.elementor-location-header .elementor-container,
.elementor-location-header .container {
  background: transparent !important;
}

/* Header links / menu */
header a,
header nav a,
.elementor-location-header a,
.elementor-location-header nav a {
  color: var(--mbs-header-text) !important;
  transition: color .25s ease;
  text-decoration: none !important;
}

header a:hover,
header nav a:hover,
.elementor-location-header a:hover,
.elementor-location-header nav a:hover {
  color: var(--mbs-header-hover) !important;
}

/* Header icons */
header svg, header i,
.elementor-location-header svg, .elementor-location-header i {
  color: var(--mbs-header-text) !important;
  fill: var(--mbs-header-text) !important;
}
header svg:hover, header i:hover,
.elementor-location-header svg:hover, .elementor-location-header i:hover {
  color: var(--mbs-gold) !important;
  fill: var(--mbs-gold) !important;
}

/* Dropdown menus (premium) */
header ul li ul,
header .sub-menu,
.elementor-location-header ul li ul,
.elementor-location-header .sub-menu {
  background: var(--mbs-green-dark) !important;
  border: 1px solid rgba(208,181,149,0.22) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,0.22) !important;
}

header ul li ul a,
header .sub-menu a,
.elementor-location-header ul li ul a,
.elementor-location-header .sub-menu a {
  color: rgba(245,240,235,0.92) !important;
}

header ul li ul a:hover,
header .sub-menu a:hover,
.elementor-location-header ul li ul a:hover,
.elementor-location-header .sub-menu a:hover {
  color: var(--mbs-gold) !important;
}

/* Mobile menu panel */
.elementor-nav-menu--dropdown,
.elementor-nav-menu__container.elementor-nav-menu--dropdown {
  background: var(--mbs-green-dark) !important;
  border-top: 1px solid rgba(208,181,149,0.22) !important;
}
.elementor-nav-menu--dropdown a { color: rgba(245,240,235,0.92) !important; }
.elementor-nav-menu--dropdown a:hover { color: var(--mbs-gold) !important; }

/* ---------- HERO ---------- */
.elementor-section.elementor-top-section:first-of-type {
  padding-top: 140px;
  padding-bottom: 140px;
}

.elementor-section.elementor-top-section:first-of-type h1 {
  color: #fff !important;
  text-shadow: 0 8px 30px rgba(0,0,0,0.45);
}

/* ---------- CARDS / LISTINGS ---------- */
.st-hotel,
.st-activity,
.st-tour,
.st_rental,
.property-item,
.service-item {
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(169,166,153,0.35);
  box-shadow: 0 18px 40px rgba(0,0,0,0.08);
  transition: all .25s ease;
}

.st-hotel:hover,
.st-activity:hover,
.st-tour:hover,
.st_rental:hover,
.property-item:hover {
  transform: translateY(-4px);
}

.st-hotel img,
.st-activity img,
.st-tour img,
.st_rental img {
  border-radius: 18px 18px 0 0;
}

/* Prices */
.price,
.price-wrapper,
.amount {
  color: var(--mbs-text) !important;
  font-weight: 600;
}

/* Ratings */
.star,
.review-score { color: var(--mbs-gold) !important; }

/* ---------- TABS / FILTER BUTTONS (FIX VERT/VERT) ---------- */
/* Base tabs (couvre Traveler + Bootstrap + Elementor) */
.st-tabs a,
.st-tabs button,
.st-advanced-search a,
.st-advanced-search button,
.nav-tabs > li > a,
.nav-pills > li > a,
.nav-tabs .nav-link,
.nav-pills .nav-link,
.elementor-widget-tabs .elementor-tab-title,
.elementor-tabs-wrapper .elementor-tab-title {
  background: var(--mbs-tab-bg) !important;
  color: var(--mbs-tab-text) !important;
  border: 1px solid var(--mbs-tab-border) !important;
  border-radius: 12px !important;
  padding: 10px 18px !important;
  box-shadow: 0 10px 26px rgba(0,0,0,0.06) !important;
  transition: all .2s ease !important;
  text-decoration: none !important;
}

/* Hover */
.st-tabs a:hover,
.st-tabs button:hover,
.st-advanced-search a:hover,
.st-advanced-search button:hover,
.nav-tabs > li > a:hover,
.nav-pills > li > a:hover,
.nav-tabs .nav-link:hover,
.nav-pills .nav-link:hover,
.elementor-widget-tabs .elementor-tab-title:hover,
.elementor-tabs-wrapper .elementor-tab-title:hover {
  border-color: rgba(208,181,149,0.55) !important;
  transform: translateY(-1px);
}

/* ACTIVE (force texte cream -> FIN du vert/vert) */
.st-tabs a.active,
.st-tabs button.active,
.st-tabs .active > a,
.st-tabs .nav-tabs li.active a,
.st-tabs .nav-pills li.active a,
.st-advanced-search a.active,
.st-advanced-search button.active,
.nav-tabs > li.active > a,
.nav-tabs > li.active > a:hover,
.nav-tabs > li.active > a:focus,
.nav-pills > li.active > a,
.nav-pills > li.active > a:hover,
.nav-pills > li.active > a:focus,
.nav-tabs .nav-link.active,
.nav-pills .nav-link.active,
.elementor-widget-tabs .elementor-tab-title.elementor-active,
.elementor-tabs-wrapper .elementor-tab-title.elementor-active {
  background: var(--mbs-tab-active-bg) !important;
  color: var(--mbs-tab-active-text) !important;
  border-color: rgba(208,181,149,0.70) !important;
  box-shadow: 0 14px 34px rgba(0,0,0,0.14) !important;
}

/* Si le texte est dans un span / i / svg à l’intérieur */
.st-tabs a.active span,
.st-tabs .active > a span,
.st-advanced-search a.active span,
.nav-tabs > li.active > a span,
.nav-pills > li.active > a span,
.nav-tabs .nav-link.active span,
.nav-pills .nav-link.active span,
.elementor-widget-tabs .elementor-tab-title.elementor-active span,
.elementor-tabs-wrapper .elementor-tab-title.elementor-active span {
  color: var(--mbs-tab-active-text) !important;
}

.st-tabs a.active i,
.st-advanced-search a.active i,
.nav-tabs > li.active > a i,
.nav-pills > li.active > a i,
.nav-tabs .nav-link.active i,
.nav-pills .nav-link.active i {
  color: var(--mbs-tab-active-text) !important;
}

/* ---------- SECTIONS SPACING ---------- */
.elementor-section {
  padding-top: 90px;
  padding-bottom: 90px;
}

/* ---------- PROMO / OFFER BLOCK ---------- */
.offer,
.special-offer,
.promo-box {
  background: rgba(208,181,149,0.18) !important;
  border: 1px solid rgba(208,181,149,0.45) !important;
  color: var(--mbs-text) !important;
  border-radius: 18px;
}

/* ---------- FOOTER ---------- */
footer {
  background: #1e1e1e;
  color: #eee;
}

footer a,
footer a:visited { color: var(--mbs-gold) !important; }
footer a:hover { color: #fff !important; }
