.elementor-190 .elementor-element.elementor-element-3a836f7{--display:flex;--min-height:0px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-190 .elementor-element.elementor-element-c9755fa{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-190 .elementor-element.elementor-element-c9755fa.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-190 .elementor-element.elementor-element-4714472{--display:flex;--align-items:flex-end;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-190 .elementor-element.elementor-element-4714472.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-190 .elementor-element.elementor-element-4ea2f7c .elementor-button{background-color:var( --e-global-color-primary );font-family:"Poppins", Sans-serif;font-size:12px;font-weight:600;text-transform:none;font-style:normal;line-height:1.4em;letter-spacing:0px;border-radius:52px 52px 52px 52px;}.elementor-190 .elementor-element.elementor-element-4ea2f7c{width:initial;max-width:initial;}.elementor-190 .elementor-element.elementor-element-4ea2f7c.elementor-element{--align-self:flex-end;}.elementor-190 .elementor-element.elementor-element-4ea2f7c .elementor-button-content-wrapper{flex-direction:row;}.elementor-190 .elementor-element.elementor-element-4ea2f7c .elementor-button .elementor-button-icon i, .elementor-190 .elementor-element.elementor-element-4ea2f7c .elementor-button .elementor-button-icon svg{transform:rotate(0deg);}.elementor-190 .elementor-element.elementor-element-344d305{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-190 .elementor-element.elementor-element-344d305.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-190 .elementor-element.elementor-element-f0a3642 .elementor-menu-toggle{margin:0 auto;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-190 .elementor-element.elementor-element-c9755fa{--width:14.744%;}.elementor-190 .elementor-element.elementor-element-4714472{--width:26.131%;}.elementor-190 .elementor-element.elementor-element-344d305{--width:50.647%;}}/* Start custom CSS for container, class: .elementor-element-344d305 *//* ===== MENU D2 MOUV ===== */

/* Liste du menu */
.elementor-190 .elementor-element.elementor-element-344d305 ul,
.elementor-190 .elementor-element.elementor-element-344d305 .menu {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Éléments */
.elementor-190 .elementor-element.elementor-element-344d305 li {
  position: relative;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Liens */
.elementor-190 .elementor-element.elementor-element-344d305 li > a {
  position: relative;
  display: inline-flex;
  align-items: center;
  padding: 12px 0 !important;
  color: #344054 !important;
  font-family: Poppins, sans-serif;
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  white-space: nowrap;
  transition: color 0.25s ease;
}

/* Soulignement animé */
.elementor-190 .elementor-element.elementor-element-344d305 li > a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 2px;
  width: 100%;
  height: 2px;
  background: #198754;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.25s ease;
}

/* Survol */
.elementor-190 .elementor-element.elementor-element-344d305 li:hover > a,
.elementor-190 .elementor-element.elementor-element-344d305 li > a:hover {
  color: #198754 !important;
}

.elementor-190 .elementor-element.elementor-element-344d305 li:hover > a::after,
.elementor-190 .elementor-element.elementor-element-344d305 li > a:hover::after {
  transform: scaleX(1);
}

/* Rubrique active */
.elementor-190 .elementor-element.elementor-element-344d305 li.current-menu-item > a,
.elementor-190 .elementor-element.elementor-element-344d305 li.current_page_item > a,
.elementor-190 .elementor-element.elementor-element-344d305 li.current-menu-ancestor > a {
  color: #198754 !important;
}

.elementor-190 .elementor-element.elementor-element-344d305 li.current-menu-item > a::after,
.elementor-190 .elementor-element.elementor-element-344d305 li.current_page_item > a::after,
.elementor-190 .elementor-element.elementor-element-344d305 li.current-menu-ancestor > a::after {
  transform: scaleX(1);
}

/* Enlever les puces */
.elementor-190 .elementor-element.elementor-element-344d305 ul,
.elementor-190 .elementor-element.elementor-element-344d305 li {
  list-style: none !important;
}

/* Tablette */
@media (max-width: 1024px) {
  .elementor-190 .elementor-element.elementor-element-344d305 ul,
  .elementor-190 .elementor-element.elementor-element-344d305 .menu {
    gap: 18px !important;
  }

  .elementor-190 .elementor-element.elementor-element-344d305 li > a {
    font-size: 14px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .elementor-190 .elementor-element.elementor-element-344d305 ul,
  .elementor-190 .elementor-element.elementor-element-344d305 .menu {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }

  .elementor-190 .elementor-element.elementor-element-344d305 li > a {
    font-size: 16px !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3a836f7 *//* Conteneur principal */
.d2-header {
  position: relative;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100%;
  min-height: 90px;
  padding: 16px 40px;
  box-sizing: border-box;
}

/* Logo à gauche */
.d2-header-logo {
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: 220px;
  margin-right: auto;
}

.d2-header-logo img {
  display: block;
  width: 100%;
  max-width: 220px;
  height: auto;
}

/* Menu centré sur toute la page */
.d2-header-menu {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%);
  width: max-content !important;
  max-width: 55%;
  z-index: 2;
}

.d2-header-menu ul,
.d2-header-menu .menu {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  justify-content: center !important;
  align-items: center !important;
  gap: clamp(18px, 2vw, 32px);
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.d2-header-menu li {
  flex: 0 0 auto;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.d2-header-menu a {
  white-space: nowrap;
  font-size: 16px;
  color: #344054;
  text-decoration: none;
}

/* Bouton à droite */
.d2-header-cta {
  flex: 0 0 auto !important;
  width: auto !important;
  margin-left: auto;
  z-index: 3;
}

.d2-header-cta .elementor-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 15px 22px;
  min-height: 50px;
  border-radius: 10px;
  background: #198754;
  color: #fff;
  font-size: 15px;
  white-space: nowrap;
}

/* Tablette : réduire les espacements */
@media (max-width: 1100px) and (min-width: 768px) {
  .d2-header {
    padding: 14px 22px;
  }

  .d2-header-logo,
  .d2-header-logo img {
    max-width: 155px;
  }

  .d2-header-menu {
    max-width: 52%;
  }

  .d2-header-menu ul,
  .d2-header-menu .menu {
    gap: 14px;
  }

  .d2-header-menu a {
    font-size: 13px;
  }

  .d2-header-cta .elementor-button {
    padding: 12px 14px;
    font-size: 12px;
  }
}

/* Mobile : logo + bouton, menu à configurer en hamburger */
@media (max-width: 767px) {
  .d2-header {
    min-height: 70px;
    padding: 12px 16px;
    gap: 10px;
  }

  .d2-header-menu {
    display: none !important;
  }

  .d2-header-logo,
  .d2-header-logo img {
    max-width: 135px;
  }

  .d2-header-cta .elementor-button {
    min-height: 42px;
    padding: 10px 12px;
    font-size: 12px;
  }
}

/* Réduire la hauteur du header */
.d2-header {
  min-height: 0 !important;
  padding: 8px 40px !important;
}

/* Réduire la hauteur du menu */
.d2-header-menu li > a,
.d2-header-menu a {
  padding-top: 6px !important;
  padding-bottom: 6px !important;
}

/* Ajuster le bouton */
.d2-header-cta .elementor-button {
  min-height: 30px !important;
  padding: 8px 18px !important;
}

/* Mobile */
@media (max-width: 767px) {
  .d2-header {
    padding: 8px 16px !important;
  }
}/* End custom CSS */