.elementor-kit-6{--e-global-color-primary:#EA6720;--e-global-color-secondary:#184E93;--e-global-color-text:#242423;--e-global-color-accent:#EA6720;--e-global-color-0aeb4cd:#4C4C4C;--e-global-typography-primary-font-family:"Poppins";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;color:#4C4C4CB3;font-family:"Poppins", Sans-serif;font-size:20px;font-weight:300;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */body {
    margin: 0;
}

body, html {
  overflow-x: hidden;
}

*, *::before, *::after {
  box-sizing: border-box;
}


/* Menu global */
/* Les deux headers : invisibles par défaut */
.site-header-main,
.site-header-sticky {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.3s ease, visibility 0.3s ease;
}

body.elementor-editor-active .site-header-main,
body.elementor-editor-active .site-header-sticky {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}


/* Header principal visible au chargement */
.site-header-main.initial {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* Header sticky en fixed */
.site-header-sticky {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
}

.site-header-sticky.elementor-element {
  margin-left: auto !important;
  margin-right: auto !important;
  left: 0 !important;
  right: 0 !important;
}


body.elementor-editor-active .site-header-sticky {
  position: relative !important;

}

/* Classe d'activation */
.site-header-main.visible,
.site-header-sticky.visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}


/* Texte à coté de la case à cocher du formulaire de la home */
label[for="form-field-field_2cef788-0"] {
    font-size: 15px;
    color: rgba(36, 36, 35, 0.7) !important;
}

/* Centre le bouton envoyer du formulaire de la home */
.elementor-field-group.elementor-column.elementor-field-type-submit.elementor-col-33.e-form__buttons {
    margin: auto;
}

/* Box agence Grenoble */
.white-box {
    align-self: center;
    position: relative;
    z-index: 2;
}

/* Menu 'Nos centres' */
a.has-submenu[href="#"] {
  cursor: pointer;
}


/* Menu dans le footer */
.menu-footer a {
    padding: 5px 0 !important;
}

/* Message succès formulaire */
.elementor-message-success {
    background-color: #f5fff4;
    border-left: 4px solid #28a745;
    color: #333;
    padding: 12px 16px;
    margin-top: 50px;
    font-size: 16px;
    border-radius: 6px;
    display: flex
;
    align-items: center;
    gap: 10px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

/* Message erreur formulaire */
.elementor-message-danger {
    background-color: #fff5f5;
    border-left: 4px solid #dc3545;
    color: #333;
    padding: 12px 16px;
    margin-top: 50px;
    font-size: 16px;
    border-radius: 6px;
    display: flex
;
    align-items: center;
    gap: 10px;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
}

/* Menu déroulant mobile */
.elementor-nav-menu--dropdown {
  width: 345px !important;
  left: 0 !important;
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu {
  background-color: rgba(24, 78, 147, 0.1) !important;
  border: none !important;
  border-radius: 0 !important;
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container .sub-menu a {
  color: #184E93;
}

/* Menu déroulant desktop agence */
ul.sub-menu.elementor-nav-menu--dropdown.sm-nowrap {
  width: auto !important;
  margin-top: 10px !important;
}

ul.elementor-nav-menu--dropdown a {
    border : none !important;
}

.elementor-popup .sub-menu {
  display: none;
}

.elementor-popup .sub-menu.open {
  display: block;
}

/* === Sous-menu dans la popup Elementor === */

.dialog-widget .sub-menu.elementor-nav-menu--dropdown {
  background-color: #ffffff;
  list-style: none;
  border: 1px solid #ddd;
  border-radius: 6px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  overflow: hidden;
  width: max-content;
  margin: 10px auto;
  padding: 0;
  text-align: center;

  /* Centrage horizontal + animation */
  position: relative;
  left: 40%;
  transform: translate(0%, 0) !important;
  opacity: 0;
  transition: opacity 0.3s ease, transform 0.3s ease;
  pointer-events: none;
}

/* Affichage actif (Elementor applique display: block en inline) */
.dialog-widget .sub-menu.elementor-nav-menu--dropdown[style*="display: block"] {
  opacity: 1;
  transform: translate(-50%, 0);
  pointer-events: auto;
}

/* === Liens du sous-menu === */

.dialog-widget .sub-menu {
  opacity: 0;
  transform: translateY(-10px);
  transition: opacity 0.3s ease, transform 0.3s ease;
  pointer-events: none;
  display: block !important; /* on ne masque plus avec JS */
  max-height: 0;
  overflow: hidden;
}

.dialog-widget .sub-menu.is-open {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
  max-height: 500px; /* assez grand pour contenir tous les liens */
}

.dialog-widget .sub-menu li a {
  display: block;
  padding: 12px 24px;
  font-size: 16px;
  font-weight: 500;
  color: #111;
  text-decoration: none;
  transition: background-color 0.2s ease;
  text-align: center;
}

/* Hover */
.dialog-widget .sub-menu li a:hover {
  background-color: #f4f4f4;
}

/* Élément actif (page courante) */
.dialog-widget .sub-menu li a.elementor-item-active {
  background-color: rgba(24, 78, 147, .1);
  font-weight: 700;
}

:is(.elementor-section-wrap,[data-elementor-id])>.e-con {
    --margin-left: auto;
    --margin-right: auto;
    max-width: min(100%, var(--width));
}

.elementor-popup-modal.dialog-type-lightbox {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100% !important;
    height: 100% !important;
    z-index: 99999 !important;
    pointer-events: all !important;
}/* End custom CSS */