.elementor-23742 .elementor-element.elementor-element-dc98304{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;overflow:visible;}.elementor-23742 .elementor-element.elementor-element-de8a50a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-23742 .elementor-element.elementor-element-de8a50a.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-23742 .elementor-element.elementor-element-dd87fe8 img{width:100%;max-width:100%;height:60px;}.elementor-23742 .elementor-element.elementor-element-3bf8f67{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-23742 .elementor-element.elementor-element-3bf8f67.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-23742 .elementor-element.elementor-element-d6cdb95{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-23742 .elementor-element.elementor-element-d6cdb95 > .elementor-widget-container{margin:23px 0px 0px 0px;}.elementor-23742 .elementor-element.elementor-element-d6cdb95.elementor-element{--order:-99999 /* order start hack */;--flex-grow:0;--flex-shrink:0;}.elementor-23742 .elementor-element.elementor-element-d6cdb95 .elementor-menu-toggle{margin:0 auto;}.elementor-23742 .elementor-element.elementor-element-d6cdb95 .elementor-nav-menu .elementor-item{font-size:15px;}.elementor-23742 .elementor-element.elementor-element-6af1391{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;overflow:visible;}.elementor-23742 .elementor-element.elementor-element-1eafb56 > .elementor-widget-container{margin:20px 0px 0px 0px;}.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-23742 .elementor-element.elementor-element-de8a50a{--width:12.497%;}.elementor-23742 .elementor-element.elementor-element-3bf8f67{--width:70.532%;}.elementor-23742 .elementor-element.elementor-element-6af1391{--width:25%;}}/* Start custom CSS for theme-site-logo, class: .elementor-element-dd87fe8 *//* === HEADER MODERNE === */

/* Container du header */
.elementor-location-header {
  background: linear-gradient(135deg, #ffffff 0%, #f8fcff 100%);
  box-shadow: 0 2px 20px rgba(3, 189, 246, 0.08);
  transition: all 0.3s ease;
}

/* Header fixe avec effet au scroll */
.elementor-location-header.elementor-sticky--active {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  box-shadow: 0 4px 30px rgba(3, 189, 246, 0.12);
}

/* Logo avec effet hover */
.elementor-location-header .elementor-widget-image img {
  transition: transform 0.3s ease, filter 0.3s ease;
}

.elementor-location-header .elementor-widget-image:hover img {
  transform: scale(1.05);
  filter: drop-shadow(0 4px 12px rgba(3, 189, 246, 0.3));
}

/* === MENU NAVIGATION === */
.elementor-nav-menu--main .elementor-item {
  font-weight: 500;
  letter-spacing: 0.3px;
  color: #1a365d !important;
  position: relative;
  padding: 10px 20px !important;
  transition: color 0.3s ease;
}

.elementor-nav-menu--main .elementor-item:hover {
  color: #03bdf6 !important;
}

/* Soulignement animé au hover */
.elementor-nav-menu--main .elementor-item::after {
  content: '';
  position: absolute;
  bottom: 5px;
  left: 50%;
  width: 0;
  height: 2px;
  background: linear-gradient(90deg, #03bdf6, #00d4ff);
  transition: all 0.3s ease;
  transform: translateX(-50%);
  border-radius: 2px;
}

.elementor-nav-menu--main .elementor-item:hover::after {
  width: 60%;
}

/* Indicateur dropdown */
.elementor-nav-menu--main .elementor-item.has-submenu .elementor-menu-toggle {
  transition: transform 0.3s ease;
}

.elementor-nav-menu--main .elementor-item.has-submenu:hover .elementor-menu-toggle {
  transform: rotate(180deg);
}

/* Sous-menu */
.elementor-nav-menu--dropdown {
  background: white !important;
  border: none !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 40px rgba(3, 189, 246, 0.15) !important;
  padding: 10px 0 !important;
  margin-top: 10px !important;
}

.elementor-nav-menu--dropdown .elementor-item {
  padding: 12px 24px !important;
}

.elementor-nav-menu--dropdown .elementor-item:hover {
  background: linear-gradient(90deg, rgba(3, 189, 246, 0.08), transparent) !important;
}

/* === BOUTON PRENDRE RDV === */
.elementor-location-header .elementor-button {
  background: linear-gradient(135deg, #03bdf6 0%, #00a8e8 100%) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 14px 28px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px;
  box-shadow: 0 4px 20px rgba(3, 189, 246, 0.35);
  transition: all 0.3s ease !important;
  position: relative;
  overflow: hidden;
}

.elementor-location-header .elementor-button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  transition: left 0.5s ease;
}

.elementor-location-header .elementor-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 30px rgba(3, 189, 246, 0.45);
}

.elementor-location-header .elementor-button:hover::before {
  left: 100%;
}

/* === RESPONSIVE MOBILE === */
@media (max-width: 1024px) {
  .elementor-menu-toggle {
    color: #03bdf6 !important;
  }
  
  .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    background: white !important;
    border-radius: 16px !important;
    margin-top: 15px !important;
    box-shadow: 0 10px 40px rgba(3, 189, 246, 0.2) !important;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-dc98304 *//* === HEADER MODERNE === */

/* Container du header */
.elementor-location-header {
  background: linear-gradient(135deg, #ffffff 0%, #f8fcff 100%);
  box-shadow: 0 2px 20px rgba(3, 189, 246, 0.08);
  transition: all 0.3s ease;
}

/* Header fixe avec effet au scroll */
.elementor-location-header.elementor-sticky--active {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  box-shadow: 0 4px 30px rgba(3, 189, 246, 0.12);
}

/* =========================================================
   LOGO — AGRANDIR (override Elementor)
   ========================================================= */

/* Le widget image (évite qu’Elementor le bride) */
.elementor-location-header .elementor-widget-image {
  width: auto !important;
}

/* L’image du logo : on force la taille */
.elementor-location-header .elementor-widget-image img {
  max-width: 180px !important;  /* ← AUGMENTE ICI (160 / 180 / 200) */
  width: 180px !important;      /* force même si Elementor met une taille inline */
  height: auto !important;
}

/* Desktop large : un poil plus grand */
@media (min-width: 1200px) {
  .elementor-location-header .elementor-widget-image img {
    max-width: 200px !important;
    width: 200px !important;
  }
}

/* Tablette */
@media (max-width: 1024px) {
  .elementor-location-header .elementor-widget-image img {
    max-width: 160px !important;
    width: 160px !important;
  }
}

/* Mobile : éviter qu’il mange le header */
@media (max-width: 767px) {
  .elementor-location-header .elementor-widget-image img {
    max-width: 130px !important;
    width: 130px !important;
  }
}

/* Logo avec effet hover */
.elementor-location-header .elementor-widget-image img {
  transition: transform 0.3s ease, filter 0.3s ease;
}

.elementor-location-header .elementor-widget-image:hover img {
  transform: scale(1.05);
  filter: drop-shadow(0 4px 12px rgba(3, 189, 246, 0.3));
}

/* === MENU NAVIGATION === */
.elementor-nav-menu--main .elementor-item {
  font-weight: 500;
  letter-spacing: 0.3px;
  color: #1a365d !important;
  position: relative;
  padding: 10px 20px !important;
  transition: color 0.3s ease;
}

.elementor-nav-menu--main .elementor-item:hover {
  color: #03bdf6 !important;
}

/* Soulignement animé au hover */
.elementor-nav-menu--main .elementor-item::after {
  content: '';
  position: absolute;
  bottom: 5px;
  left: 50%;
  width: 0;
  height: 2px;
  background: linear-gradient(90deg, #03bdf6, #00d4ff);
  transition: all 0.3s ease;
  transform: translateX(-50%);
  border-radius: 2px;
}

.elementor-nav-menu--main .elementor-item:hover::after {
  width: 60%;
}

/* Indicateur dropdown */
.elementor-nav-menu--main .elementor-item.has-submenu .elementor-menu-toggle {
  transition: transform 0.3s ease;
}

.elementor-nav-menu--main .elementor-item.has-submenu:hover .elementor-menu-toggle {
  transform: rotate(180deg);
}

/* Sous-menu */
.elementor-nav-menu--dropdown {
  background: white !important;
  border: none !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 40px rgba(3, 189, 246, 0.15) !important;
  padding: 10px 0 !important;
  margin-top: 10px !important;
}

.elementor-nav-menu--dropdown .elementor-item {
  padding: 12px 24px !important;
}

.elementor-nav-menu--dropdown .elementor-item:hover {
  background: linear-gradient(90deg, rgba(3, 189, 246, 0.08), transparent) !important;
}

/* === BOUTON PRENDRE RDV === */
.elementor-location-header .elementor-button {
  background: linear-gradient(135deg, #03bdf6 0%, #00a8e8 100%) !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 14px 28px !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px;
  box-shadow: 0 4px 20px rgba(3, 189, 246, 0.35);
  transition: all 0.3s ease !important;
  position: relative;
  overflow: hidden;
}

.elementor-location-header .elementor-button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
  transition: left 0.5s ease;
}

.elementor-location-header .elementor-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 30px rgba(3, 189, 246, 0.45);
}

.elementor-location-header .elementor-button:hover::before {
  left: 100%;
}

/* === RESPONSIVE MOBILE === */
@media (max-width: 1024px) {
  .elementor-menu-toggle {
    color: #03bdf6 !important;
  }

  .elementor-nav-menu--dropdown.elementor-nav-menu__container {
    background: white !important;
    border-radius: 16px !important;
    margin-top: 15px !important;
    box-shadow: 0 10px 40px rgba(3, 189, 246, 0.2) !important;
  }
}/* End custom CSS */