/*
Theme Name: Divi Child
Theme URI: http://www.elegantthemes.com/gallery/divi/
Template: Divi
Author: Elegant Themes
Author URI: http://www.elegantthemes.com
Description: Smart. Flexible. Beautiful. Divi is the most powerful theme in our collection.
Version: 4.22.1.1729769260
Updated: 2024-10-24 13:27:40
*/

/* ================================================================ */
/* HEADER & NAVIGATION DIVI NATIVE                                   */
/* ================================================================ */
.nav ul li li a:hover { background-color: none !important; color: #000000; opacity: 0.7; }
#top-header .container { width: 100% !important; max-width: 100% !important; padding-right: 32px !important; }
#main-header .et_mobile_menu { background-color: #ffffff !important; }
.et_mobile_menu { border-color: #ffffff; }
.nav ul li a:hover,
.et-fixed-header #top-menu li li a:hover,
.et-fixed-header #top-menu li li.current-menu-item > a:hover { background: none; opacity: 1; color: #E5BE93 !important; }
#top-menu li li a { padding: 6px 10px; }
.et-fixed-header#top-header a:hover,
#et-secondary-menu > ul > li a:hover { color: #ffffff !important; }
.et-fixed-header #top-menu li li.current-menu-item > a,
.et-fixed-header #top-menu li li.current_page_item > a { color: #000000 !important; }

/* Navigation secondaire */
#et-secondary-nav ul li a:hover { background: none; }
#et-secondary-menu > ul > li li a:hover,
.et-fixed-header#top-header li li a:hover { color: #e5be93 !important; }

/* Align icon with text */
.wp-menu-img-before img { margin-top: 5px; position: relative; display: block; float: left; }
.menu-image-title-after.menu-image-title { padding-left: 0; }

/* Images dropdown menu */
.menu-image-title-after.menu-image-not-hovered img { max-width: 36px !important; }

/* Mobile menu scrollable */
.et_mobile_menu {
  overflow: scroll !important;
  max-height: 83vh;
}

/* Sélecteur de langue */
#et-secondary-menu > ul > li.wpml-ls-item a { text-decoration: underline; text-transform: uppercase; font-size: 13px; }
#et-secondary-nav li.lien-contact { margin-right: 45px; }

/* Mobile menu scrollable (doublon historique conservé) */
.et_mobile_menu {
  overflow: scroll !important;
  max-height: 80vh;
}

/* ================================================================ */
/* ACTUALITÉS                                                        */
/* ================================================================ */
.actualites .et_pb_image_container { margin: 0 !important; }
.et_pb_title_featured_container { margin-top: 20px; }

/* ================================================================ */
/* GÉNÉRAL                                                           */
/* ================================================================ */
body.page .entry-content ul,
.et-l--body ul { list-style: none !important; padding-top: 0.5em; }
body.page .entry-content ul li,
body.page .et_pb_blurb_description ul li { padding-bottom: 7px !important; padding-left: 40px !important; }
body.page .et_pb_text_inner ul li,
body.page .et_pb_blurb_description ul li {
  background: url('https://hc-agence-360.com/wp-content/uploads/2024/11/check-circle.png') no-repeat left 5px;
  padding-bottom: 8px !important;
  padding-left: 30px !important;
  padding-top: 2px;
}
.et_pb_contact_field_options_title { display: none !important; }
.et-pb-contact-message { color: #ffffff !important; }
a:hover { opacity: 0.7; }

/* Logo slider */
body.page .logo-slider .et_pb_text_inner ul li { background: none !important; padding-left: 0 !important; }
body.page .logo-slider .wpls-logo-showcase .slick-dots li button { border: 1px solid #000 !important; }

/* Align hamburger icon with search icon */
.et_header_style_left #et-top-navigation .mobile_menu_bar { padding-top: 10px; }

/* Hamburger → X au déploiement */
#et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before,
.et_pb_module.et_pb_menu .et_mobile_nav_menu .mobile_nav.opened .mobile_menu_bar::before {
  content: '\4d';
}

/* Toggle des sous-menus mobiles Divi */
ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
ul.et_mobile_menu li.page_item_has_children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.page_item_has_children .mobile-toggle {
  width: 44px;
  height: 100%;
  padding: 0 !important;
  max-height: 44px;
  border: none;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 999;
  background-color: transparent;
}

ul.et_mobile_menu > li.menu-item-has-children,
ul.et_mobile_menu > li.page_item_has_children,
ul.et_mobile_menu > li.menu-item-has-children .sub-menu li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu > li.menu-item-has-children,
.et-db #et-boc .et-l ul.et_mobile_menu > li.page_item_has_children,
.et-db #et-boc .et-l ul.et_mobile_menu > li.menu-item-has-children .sub-menu li.menu-item-has-children {
  position: relative;
}

.et_mobile_menu .menu-item-has-children > a,
.et-db #et-boc .et-l .et_mobile_menu .menu-item-has-children > a {
  background-color: transparent;
}

ul.et_mobile_menu .menu-item-has-children .sub-menu,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu {
  display: none !important;
  visibility: hidden !important;
}

ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
#main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #et-boc .et-l ul.et_mobile_menu .menu-item-has-children .sub-menu.visible,
.et-db #main-header ul.et_mobile_menu .menu-item-has-children .sub-menu.visible {
  display: block !important;
  visibility: visible !important;
}

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle {
  text-align: center;
  opacity: 1;
}

ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children .mobile-toggle::after {
  top: 10px;
  position: relative;
  font-family: "ETModules";
  content: '\33';
  color: #000000;
  background: #ffffff;
  border-radius: 50%;
  padding: 3px;
}

ul.et_mobile_menu li.menu-item-has-children.dt-open > .mobile-toggle::after,
.et-db #et-boc .et-l ul.et_mobile_menu li.menu-item-has-children.dt-open > .mobile-toggle::after {
  content: '\32';
}

/* Pointe sur le sous-menu mobile */
.et_pb_menu_0.et_pb_menu .et_mobile_menu:after {
  position: absolute;
  right: 5%;
  margin-left: -20px;
  top: -14px;
  width: 0;
  height: 0;
  content: '';
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 20px solid #ffffff;
}

.mobile_menu_bar {
  position: relative;
  display: block;
  bottom: 10px;
  line-height: 0;
}

.et_pb_menu_0.et_pb_menu .et_mobile_menu,
.et_pb_menu_0.et_pb_menu .et_mobile_menu ul {
  background-color: #ffffff !important;
  border-radius: 10px;
}

/* ================================================================ */
/* BLOG                                                              */
/* ================================================================ */
.et-db #et-boc .et-l .et-l--post .et_builder_inner_content .et_pb_row {
  width: 100%;
}
.article ul li {
  background: url('https://hc-agence-360.com/wp-content/uploads/2024/11/check-circle.png') no-repeat left 5px;
  padding-bottom: 8px !important;
  padding-left: 30px !important;
  padding-top: 2px;
}

/* ================================================================ */
/* RESPONSIVE DIVI                                                   */
/* ================================================================ */
@media only screen and (min-width: 981px) {
  .et-fixed-header #top-menu li li a { color: #000000 !important; }
  .et_fixed_nav #page-container .et-fixed-header#top-header #et-secondary-nav li ul { background-color: #ffffff !important; }
}

@media screen and (max-width: 980px) {
  .et_non_fixed_nav.et_transparent_nav #main-header,
  .et_non_fixed_nav.et_transparent_nav #top-header,
  .et_fixed_nav #main-header,
  .et_fixed_nav #top-header {
    position: fixed;
  }
  .et_mobile_menu li a { color: #000000 !important; }
}

/* ================================================================ */
/* HC — COULEURS HERO / PROMISE / FINAL-CTA                          */
/* ================================================================ */
.hero h1 { color: #F7F1E6 !important; }
.hero h1 .italic { color: #C9A66B !important; }
.promise h2 { color: #F7F1E6 !important; }
.final-cta h2 { color: #F7F1E6 !important; }
.promise h2 .italic,
.final-cta h2 .italic { color: #C9A66B !important; }

/* ================================================================ */
/* HC PHASE 2 — MENU MAX MEGA MENU — V FINALE 2026-05-05             */
/* ID réel confirmé via DevTools : mega-menu-wrap-primary-menu       */
/* UL réel : mega-menu-primary-menu                                  */
/* Charte : noir #111 / cream #F7F1E6 / or #C9A66B                   */
/* Typo   : Inter (items) / Playfair Display (sous-menus)            */
/* ================================================================ */

/* === RESET COMPLET MMM (élimine boutons, gradients, ombres) === */
html body #mega-menu-wrap-primary-menu,
html body #mega-menu-wrap-primary-menu > .mega-menu-toggle,
html body #mega-menu-primary-menu,
html body #mega-menu-primary-menu > li.mega-menu-item,
html body #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link,
html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item,
html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
  background-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  border-radius: 0 !important;
}

/* ============================================== */
/* DESKTOP (>= 981px)                              */
/* ============================================== */
@media (min-width: 981px) {

  /* Wrapper du menu : fond noir HC */
  html body #mega-menu-wrap-primary-menu {
    background: #111111 !important;
    padding: 0 !important;
    border: none !important;
  }

  /* Container des items : flex centré */
  html body #mega-menu-primary-menu {
    background: transparent !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
  }

  /* Items principaux — état normal */
  html body #mega-menu-primary-menu > li.mega-menu-item {
    background: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
  }

  html body #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link {
    background: transparent !important;
    color: #F7F1E6 !important;
    font-family: 'Inter', 'Helvetica Neue', sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.22em !important;
    text-transform: uppercase !important;
    padding: 28px 32px !important;
    line-height: 1 !important;
    border: none !important;
    border-bottom: 1px solid transparent !important;
    transition: color 0.3s ease, border-color 0.3s ease !important;
    height: auto !important;
  }

  /* Items survol + actif — texte or + soulignement or */
  html body #mega-menu-primary-menu > li.mega-menu-item:hover > a.mega-menu-link,
  html body #mega-menu-primary-menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
  html body #mega-menu-primary-menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
  html body #mega-menu-primary-menu > li.mega-menu-item.mega-current-menu-parent > a.mega-menu-link {
    color: #C9A66B !important;
    background: transparent !important;
    border-bottom: 1px solid #C9A66B !important;
  }

  /* Sous-menu / mégamenu — fond cream */
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu {
    background: #F7F1E6 !important;
    border: none !important;
    border-top: 1px solid rgba(201, 166, 107, 0.3) !important;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.15) !important;
    padding: 32px 24px !important;
  }

  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item {
    background: transparent !important;
  }

  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
    background: transparent !important;
    color: #111111 !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    padding: 14px 18px !important;
    border: none !important;
    border-bottom: 1px solid rgba(201, 166, 107, 0.4) !important;
    transition: color 0.3s ease, padding 0.3s ease !important;
  }

  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item:hover > a.mega-menu-link {
    color: #C9A66B !important;
    background: transparent !important;
    padding-left: 24px !important;
  }

  /* Icônes mégamenu en or */
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link i.dashicons,
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link i.fa,
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link i.fas {
    color: #C9A66B !important;
    margin-right: 12px !important;
  }

  /* Hamburger MMM masqué en desktop */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-0,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-1,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-2,
  html body #mega-menu-wrap-primary-menu .mega-search {
    display: none !important;
  }

  /* Hamburger Divi natif masqué en desktop */
  html body #et_mobile_nav_menu,
  html body .et_mobile_menu_bar,
  html body .mobile_menu_bar,
  html body .et_pb_menu__icon.et_pb_menu__menu-button {
    display: none !important;
  }
}

/* ============================================== */
/* MOBILE (<= 980px)                               */
/* ============================================== */
@media (max-width: 980px) {

  /* Wrapper et toggle hamburger MMM */
  html body #mega-menu-wrap-primary-menu,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle {
    background: #111111 !important;
    padding: 0 !important;
    border: none !important;
  }

  /* Hamburger MMM visible en mobile */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    height: 56px !important;
    padding: 0 16px !important;
  }

  /* Barres du hamburger en cream */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-1 span,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-1 span::before,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-1 span::after {
    background: #F7F1E6 !important;
  }

  /* Bouton X (close) en cream */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-0,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open .mega-toggle-block-0 {
    color: #F7F1E6 !important;
  }

  /* Container des items mobile */
  html body #mega-menu-primary-menu {
    background: #111111 !important;
  }

  /* Items mobile état normal */
  html body #mega-menu-primary-menu > li.mega-menu-item {
    background: transparent !important;
    border-bottom: 1px solid rgba(201, 166, 107, 0.15) !important;
  }

  html body #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link {
    background: transparent !important;
    color: #F7F1E6 !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    padding: 18px 24px !important;
    border: none !important;
    transition: color 0.3s ease !important;
  }

  /* Mobile : item actif + survol */
  html body #mega-menu-primary-menu > li.mega-menu-item:hover > a.mega-menu-link,
  html body #mega-menu-primary-menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
  html body #mega-menu-primary-menu > li.mega-menu-item.mega-current-menu-ancestor > a.mega-menu-link,
  html body #mega-menu-primary-menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link {
    background: transparent !important;
    color: #C9A66B !important;
    border-bottom: none !important;
  }

  /* Sous-menu mobile (mégamenu déplié) */
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-toggle-on ul.mega-sub-menu {
    background: #F7F1E6 !important;
    padding: 8px 0 !important;
    border: none !important;
  }

  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
    background: transparent !important;
    color: #111111 !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
    padding: 16px 32px !important;
    border: none !important;
    border-bottom: 1px solid rgba(201, 166, 107, 0.3) !important;
  }

  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item:hover > a.mega-menu-link,
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item.mega-current-menu-item > a.mega-menu-link {
    color: #C9A66B !important;
    background: transparent !important;
  }

  /* Icônes mobile en or */
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link i.dashicons,
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link i.fa,
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link i.fas,
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link svg {
    color: #C9A66B !important;
    fill: #C9A66B !important;
    margin-right: 12px !important;
  }

  /* Flèche déploiement parent en or */
  html body #mega-menu-primary-menu > li.mega-menu-item.mega-menu-megamenu > a.mega-menu-link::after,
  html body #mega-menu-primary-menu > li.mega-menu-item.mega-menu-flyout > a.mega-menu-link::after {
    color: #C9A66B !important;
  }

  /* Masquer hamburger Divi natif et loupe en mobile (MMM gère le toggle) */
  html body #et_mobile_nav_menu,
  html body .et_mobile_menu_bar,
  html body .mobile_menu_bar,
  html body .et_pb_menu__search-button {
    display: none !important;
  }
}

/* === FIN BLOC HC PHASE 2 — V FINALE === */
/* ================================================================ */
/* HC PATCH MOBILE WIDTH + MÉGAMENU ICÔNES — 2026-05-05              */
/* ================================================================ */

/* === MOBILE : forcer le menu MMM à occuper toute la largeur === */
@media (max-width: 980px) {

  /* Wrapper pleine largeur */
  html body #mega-menu-wrap-primary-menu {
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    z-index: 9999 !important;
  }

  /* UL container pleine largeur, position absolute pour passer au-dessus du contenu */
  html body #mega-menu-wrap-primary-menu #mega-menu-primary-menu {
    width: 100% !important;
    max-width: 100% !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    right: 0 !important;
    background: #111111 !important;
    z-index: 9999 !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.4) !important;
  }

  /* Items mobile pleine largeur */
  html body #mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item {
    width: 100% !important;
    display: block !important;
  }

  html body #mega-menu-wrap-primary-menu #mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link {
    width: 100% !important;
    display: block !important;
    box-sizing: border-box !important;
    white-space: normal !important;
    line-height: 1.4 !important;
  }

  /* Sous-menu mobile pleine largeur aussi */
  html body #mega-menu-wrap-primary-menu #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu {
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
  }

  /* Hamburger MMM positionné à droite, pleine zone clic */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle {
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* === DESKTOP : forcer affichage des icônes du mégamenu === */
@media (min-width: 981px) {

  /* Conteneurs d'icônes MMM — éviter les hauteurs vides */
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    min-height: auto !important;
  }

  /* Forcer affichage FontAwesome 7.2 */
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link i,
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link svg {
    display: inline-block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: #C9A66B !important;
    fill: #C9A66B !important;
    font-size: 18px !important;
    width: auto !important;
    height: auto !important;
    margin-right: 0 !important;
  }

  /* Si FA injecte des images <img> (cas FA Free fallback) */
  html body #mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link img {
    display: inline-block !important;
    visibility: visible !important;
    max-width: 24px !important;
    height: auto !important;
  }
}

/* === MASQUAGE LARGE DE TOUTES LES LOUPES POTENTIELLES === */
/* Provisoire en attendant l'identification précise via DevTools */
html body .et_pb_menu__search-container,
html body .et_pb_menu__search-button,
html body .et_pb_menu__search,
html body .et_pb_menu__icon.et_pb_menu__search-button,
html body #et_top_search,
html body #et-top-search,
html body span.et_search_open,
html body .et_search_form_container,
html body .mega-search,
html body div.mega-search,
html body input.mega-search-input {
  display: none !important;
  visibility: hidden !important;
}
/* === HC URGENCE OFF CANVAS — 2026-05-05 — Force panneau pleine largeur === */
@media (max-width: 980px) {

  /* Panneau Off Canvas — pleine hauteur, 90% largeur écran */
  html body #mega-menu-wrap-primary-menu ul#mega-menu-primary-menu,
  html body #mega-menu-wrap-primary-menu ul#mega-menu-primary-menu.mega-menu,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle + ul#mega-menu-primary-menu {
    width: 90vw !important;
    max-width: 90vw !important;
    min-width: 320px !important;
    height: 100vh !important;
    max-height: 100vh !important;
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: 0 !important;
    margin: 0 !important;
    padding: 70px 0 24px 0 !important;
    background: rgb(17, 17, 17) !important;
    z-index: 999999 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    box-sizing: border-box !important;
    box-shadow: -10px 0 40px rgba(0, 0, 0, 0.6) !important;
    display: block !important;
  }

  /* Items en bloc plein largeur lisibles */
  html body #mega-menu-wrap-primary-menu ul#mega-menu-primary-menu > li.mega-menu-item {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-bottom: 1px solid rgba(201, 166, 107, 0.2) !important;
    box-sizing: border-box !important;
  }

  /* Liens des items — texte lisible non cassé */
  html body #mega-menu-wrap-primary-menu ul#mega-menu-primary-menu > li.mega-menu-item > a.mega-menu-link {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 22px 32px !important;
    color: rgb(247, 241, 230) !important;
    background: transparent !important;
    font-family: 'Inter', 'Helvetica Neue', sans-serif !important;
    font-size: 16px !important;
    font-weight: 500 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    text-align: left !important;
    white-space: normal !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    line-height: 1.4 !important;
    box-sizing: border-box !important;
    border: none !important;
  }

  /* Item actif / survolé en or */
  html body #mega-menu-wrap-primary-menu ul#mega-menu-primary-menu > li.mega-menu-item:hover > a.mega-menu-link,
  html body #mega-menu-wrap-primary-menu ul#mega-menu-primary-menu > li.mega-menu-item.mega-current-menu-item > a.mega-menu-link,
  html body #mega-menu-wrap-primary-menu ul#mega-menu-primary-menu > li.mega-menu-item.mega-toggle-on > a.mega-menu-link {
    color: rgb(201, 166, 107) !important;
    background: transparent !important;
  }

  /* Sous-menu déplié en cream */
  html body #mega-menu-wrap-primary-menu ul#mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu {
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    background: rgb(247, 241, 230) !important;
    padding: 0 !important;
  }

  html body #mega-menu-wrap-primary-menu ul#mega-menu-primary-menu li.mega-menu-item ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
    display: block !important;
    width: 100% !important;
    padding: 16px 32px !important;
    color: rgb(17, 17, 17) !important;
    font-family: 'Playfair Display', Georgia, serif !important;
    font-weight: 600 !important;
    font-size: 15px !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    border-bottom: 1px solid rgba(201, 166, 107, 0.3) !important;
    box-sizing: border-box !important;
  }

  /* Bouton × Fermer en cream visible */
  html body #mega-menu-wrap-primary-menu .mega-menu-close,
  html body #mega-menu-wrap-primary-menu .mega-toggle-block-0 {
    position: absolute !important;
    top: 18px !important;
    right: 20px !important;
    color: rgb(247, 241, 230) !important;
    font-size: 28px !important;
    line-height: 1 !important;
    z-index: 9999999 !important;
    background: transparent !important;
    border: none !important;
    padding: 8px !important;
    cursor: pointer !important;
  }

  /* Hamburger toggle — barre noire pleine largeur en haut */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle {
    width: 100% !important;
    background: rgb(17, 17, 17) !important;
  }
}

/* === FIN HC URGENCE OFF CANVAS === */
/* === HC HAMBURGER FIX — 2026-05-05 === */
/* Reconstitue les 3 barres cream sur fond noir, sans toucher au reste */

@media (max-width: 980px) {

  /* Conteneur du bloc hamburger : transparent (supprime le carré cream plein) */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-1,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-2 {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  /* Le span animé qui contient les 3 barres : transparent */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated {
    background: transparent !important;
    background-color: transparent !important;
  }

  /* Barre du milieu (le span central) — cream */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::before,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::after {
    background: rgb(247, 241, 230) !important;
    background-color: rgb(247, 241, 230) !important;
    width: 28px !important;
    height: 2px !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  /* Forcer le contenu et l'affichage des pseudo-éléments (barres haut/bas) */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::before,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::after {
    content: '' !important;
    display: block !important;
    position: absolute !important;
    left: 0 !important;
  }

  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::before {
    top: -8px !important;
  }

  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::after {
    top: 8px !important;
    bottom: auto !important;
  }

  /* Hover : passer les 3 barres en or */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle:hover .mega-toggle-animated-inner,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle:hover .mega-toggle-animated-inner::before,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle:hover .mega-toggle-animated-inner::after {
    background: rgb(201, 166, 107) !important;
    background-color: rgb(201, 166, 107) !important;
  }

  /* État ouvert (mega-menu-open) : transformation en × — les 3 barres deviennent 2 barres croisées */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open .mega-toggle-animated-inner {
    background: transparent !important;
  }

  html body #mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open .mega-toggle-animated-inner::before {
    top: 0 !important;
    transform: rotate(45deg) !important;
  }

  html body #mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open .mega-toggle-animated-inner::after {
    top: 0 !important;
    transform: rotate(-45deg) !important;
  }
}
/* === FIN HC HAMBURGER FIX === */
/* === HC HAMBURGER FIX 2 — Force barres haut/bas — 2026-05-05 === */
@media (max-width: 980px) {

  /* La barre du milieu doit être en position: relative pour ancrer les ::before/::after */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner {
    position: relative !important;
    display: block !important;
  }

  /* Forcer l'apparition + dimensionnement + position des barres haut et bas */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::before,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::after {
    content: "" !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: absolute !important;
    width: 28px !important;
    height: 2px !important;
    background: rgb(247, 241, 230) !important;
    background-color: rgb(247, 241, 230) !important;
    left: 0 !important;
    right: auto !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    transition: transform 0.3s ease, top 0.3s ease, bottom 0.3s ease !important;
  }

  /* Barre du haut — 8px au-dessus de la barre du milieu */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::before {
    top: -8px !important;
    bottom: auto !important;
  }

  /* Barre du bas — 8px en-dessous de la barre du milieu */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner::after {
    bottom: -8px !important;
    top: auto !important;
  }

  /* Animation × quand le menu est ouvert */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open .mega-toggle-animated-inner {
    background: transparent !important;
    background-color: transparent !important;
  }

  html body #mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open .mega-toggle-animated-inner::before {
    top: 0 !important;
    transform: rotate(45deg) !important;
  }

  html body #mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open .mega-toggle-animated-inner::after {
    bottom: 0 !important;
    top: 0 !important;
    transform: rotate(-45deg) !important;
  }
}
/* === FIN HC HAMBURGER FIX 2 === */
/* === HC HAMBURGER FIX 3 — SVG inline (final) — 2026-05-05 === */
@media (max-width: 980px) {

  /* MASQUER tous les sub-éléments internes MMM qui créent le carré cream */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-blocks-left,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-blocks-center,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-blocks-right,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-1,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-2,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-block-3,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-toggle-animated-inner,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle span,
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle .mega-search {
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    box-shadow: none !important;
    overflow: hidden !important;
  }

  /* DESSINER le hamburger en SVG inline cream sur fond noir */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle {
    background-color: rgb(17, 17, 17) !important;
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F7F1E6' d='M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z'/%3E%3C/svg%3E") !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
    background-size: 28px 28px !important;
    cursor: pointer !important;
    transition: background-image 0.3s ease !important;
  }

  /* État OUVERT : remplacer les 3 barres par un × cream */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23F7F1E6' d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z'/%3E%3C/svg%3E") !important;
  }

  /* Hover : passer le hamburger en or */
  html body #mega-menu-wrap-primary-menu .mega-menu-toggle:hover {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23C9A66B' d='M3 6h18v2H3zm0 5h18v2H3zm0 5h18v2H3z'/%3E%3C/svg%3E") !important;
  }

  html body #mega-menu-wrap-primary-menu .mega-menu-toggle.mega-menu-open:hover {
    background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23C9A66B' d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z'/%3E%3C/svg%3E") !important;
  }
}
/* === FIN HC HAMBURGER FIX 3 === */
/* === HC FOOTER — Liens propres sans puces check === */
body #footer-widgets ul,
body #footer-widgets .et_pb_text_inner ul,
body #footer-widgets .et_pb_blurb_description ul,
body #main-footer ul,
body .et_pb_section.footer .et_pb_text_inner ul li,
body .et_pb_section.footer .et_pb_text_inner ul {
  list-style: none !important;
  padding-left: 0 !important;
}

body #footer-widgets ul li,
body #footer-widgets .et_pb_text_inner ul li,
body #main-footer ul li,
body .et_pb_section.footer .et_pb_text_inner ul li {
  background: none !important;
  background-image: none !important;
  padding-left: 0 !important;
  padding-bottom: 8px !important;
  list-style: none !important;
}

body #footer-widgets a,
body #main-footer a,
body .et_pb_section.footer a {
  color: rgb(247, 241, 230) !important;
  text-decoration: none !important;
  font-family: 'Inter', sans-serif !important;
  transition: color 0.3s ease !important;
}

body #footer-widgets a:hover,
body #main-footer a:hover,
body .et_pb_section.footer a:hover {
  color: rgb(201, 166, 107) !important;
  opacity: 1 !important;
}
/* === FIN HC FOOTER === */
/* === HC URGENCE MÉGAMENU DESKTOP — 2026-05-05 === */
/* Élimine les rectangles cream vides au-dessus des items du mégamenu */

@media (min-width: 981px) {

  /* Masquer tous les conteneurs vides du mégamenu */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-description-group,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-description-group:empty,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .widget_text:empty,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .textwidget:empty,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-block-title:empty,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item-has-block-title.mega-no-block-title-text > a > .mega-block-title-wrap,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-block-title-wrap,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu img[src=""],
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu img:not([src]),
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu img[alt=""]:not([src*="."]) {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  /* Forcer hauteur auto sur les items du mégamenu (pas de min-height parasite) */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item {
    min-height: auto !important;
    height: auto !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }

  /* Compacter le lien — icône + libellé alignés sans hauteur réservée vide */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    min-height: auto !important;
    height: auto !important;
    padding: 16px 20px !important;
    line-height: 1.3 !important;
  }

  /* L'icône à gauche du libellé */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link i,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link svg {
    flex-shrink: 0 !important;
    color: rgb(201, 166, 107) !important;
    fill: rgb(201, 166, 107) !important;
    font-size: 18px !important;
    width: 22px !important;
    text-align: center !important;
    margin: 0 !important;
  }

  /* Le libellé prend l'espace restant */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link .mega-menu-title-wrap,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
    flex: 1 !important;
  }

  /* Compacter les rangées du mégamenu */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-menu-row {
    margin: 0 !important;
    padding: 0 !important;
    min-height: auto !important;
  }

  /* Padding général du panneau mégamenu plus serré */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu {
    padding: 24px 20px !important;
  }
}
/* === FIN HC URGENCE MÉGAMENU DESKTOP === */
/* === HC MÉGAMENU PURGE V3 — sans :has() — 2026-05-05 === */

@media (min-width: 981px) {

  /* 1. Forcer toutes les rangées et colonnes en hauteur auto */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-menu-row,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-menu-column {
    min-height: 0 !important;
    height: auto !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* 2. Masquer tous les widgets et conteneurs de description, vides ou non */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-content-widget,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .widget,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .widget_text,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .widget_block,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-block-title-wrap,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-block-title,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-description-group,
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .textwidget {
    display: none !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
  }

  /* 3. Compacter le panneau mégamenu */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu {
    padding: 24px 20px !important;
  }

  /* 4. Compacter chaque <li> qui contient un lien (display block, hauteur auto) */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item {
    min-height: 0 !important;
    height: auto !important;
  }

  /* 5. Lien à l'intérieur — flex, icône à gauche, libellé à droite */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 16px 20px !important;
    line-height: 1.3 !important;
  }
}
/* === FIN HC MÉGAMENU PURGE V3 === */
/* === HC MÉGAMENU HAUTEUR FINAL — 2026-05-05 === */
/* Force chaque cellule à n'occuper que la hauteur de son contenu */

@media (min-width: 981px) {

  /* Le panneau du mégamenu en hauteur auto */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu {
    height: auto !important;
    min-height: 0 !important;
  }

  /* Les rangées en flex avec alignement top */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-menu-row {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 16px !important;
  }

  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-menu-row:last-child {
    margin-bottom: 0 !important;
  }

  /* Les colonnes en hauteur auto, alignées en haut */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu .mega-menu-column {
    align-self: flex-start !important;
    height: auto !important;
    min-height: 0 !important;
    flex: 0 0 auto !important;
  }

  /* Les <li> items du 2ème niveau en hauteur auto */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item {
    height: auto !important;
    min-height: 0 !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
  }

  /* Les liens <a> de 2ème niveau compactés */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu li.mega-menu-item > a.mega-menu-link {
    line-height: 1.3 !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    height: auto !important;
    min-height: 0 !important;
  }

  /* Les sous-listes <ul> de 3ème niveau en hauteur auto */
  html body #mega-menu-primary-menu li.mega-menu-item.mega-menu-megamenu ul.mega-sub-menu ul.mega-sub-menu {
    height: auto !important;
    min-height: 0 !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
}
/* === FIN HC MÉGAMENU HAUTEUR FINAL === */