
/* Fix: empeche le debordement horizontal cause par le slider en boucle Elementor (section service) */
html{overflow-x:hidden!important;}
@media (min-width:1025px){
.elementor-nav-menu--main{position:relative;z-index:100;}
.elementor-location-header{position:relative;z-index:1000!important;}

/* Freeze top-level link size so hover never changes it, only color */
.elementor-nav-menu--main .elementor-item,
.elementor-nav-menu--main .elementor-item:hover,
.elementor-nav-menu--main .elementor-item:focus,
.elementor-nav-menu--main .elementor-item.highlighted,
.elementor-nav-menu--main .elementor-item.elementor-item-active{
  transform:none!important;
  padding:13px 0!important;
  margin-inline:12px!important;
  border-left:0!important;
  border-inline-start:0!important;
  transition:color .3s!important;
}
.elementor-nav-menu--main .elementor-item:hover{
  color:#00A6FB!important;
}

.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-1413{position:static}
.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-1413 > ul.sub-menu{
  position:fixed!important;
  left:60px!important;
  right:60px!important;
  width:auto!important;
  max-width:none!important;
  margin-left:0!important;
  transform:none!important;
  top:74px!important;
  padding:28px 32px;
  background:#EDF7FC;
  border-radius:12px;
  border:0!important;
  box-shadow:0 12px 32px rgba(5,25,35,.14);
  z-index:9999!important;
  font-size:0;
}
.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-1413 > ul.sub-menu > li{box-sizing:border-box;float:none!important;font-size:14px;}
.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-1413 > ul.sub-menu > li.cn-fam{display:inline-block!important;width:23.5%;margin-right:1.99%;vertical-align:top;}
.elementor-nav-menu--main .elementor-nav-menu > li.menu-item-1413 > ul.sub-menu > li.cn-fam:last-of-type{margin-right:0}
.elementor-nav-menu--main li.cn-fam{position:static; margin-top:28px;}
.elementor-nav-menu--main li.cn-fam:first-child{margin-top:0;}
.elementor-nav-menu--main li.cn-fam > a,
.elementor-nav-menu--main li.cn-fam > a:hover,
.elementor-nav-menu--main li.cn-fam > a:focus{
  pointer-events:none;
  font-family:Parkinsans,sans-serif;
  font-weight:500;
  font-size:12px;
  letter-spacing:1.2px;
  text-transform:uppercase;
  color:#244454!important;
  padding:0 0 8px!important;
  margin-bottom:6px;
  border-bottom:1px solid rgba(0,166,251,.35);
  background:transparent!important;
  box-shadow:none!important;
  border-left:0!important;
  border-inline-start:0!important;
  text-shadow:none!important;
  white-space:nowrap;
  display:block!important;
  transform:none!important;
}
.elementor-nav-menu--main li.cn-fam > a .sub-arrow{display:none!important}
.elementor-nav-menu--main li.cn-fam > ul.sub-menu{display:block!important;position:static!important;width:auto!important;max-width:none!important;transform:none!important;box-shadow:none!important;background:transparent!important;padding:0!important;margin:0!important;border:0!important;left:auto!important;z-index:auto!important;}
.elementor-nav-menu--main li.cn-metier{display:block!important;width:100%!important;float:none!important;}
.elementor-nav-menu--main li.cn-metier > a,
.elementor-nav-menu--main li.cn-metier > a:hover,
.elementor-nav-menu--main li.cn-metier > a:focus{
  font-family:Parkinsans,sans-serif;
  font-size:13px;
  line-height:19px;
  color:#051923!important;
  padding:6px 0!important;
  margin:0!important;
  background:transparent!important;
  border-left:0!important;
  border-inline-start:0!important;
  text-shadow:none!important;
  white-space:nowrap;
  display:block!important;
  transform:none!important;
}
.elementor-nav-menu--main li.cn-metier > a:hover{color:#00A6FB!important}
}
/* ===== Menu mobile/tablette : uniquement le menu de la popup (widget 107d997) ===== */
/* Le declenchement et l'overlay plein ecran sont geres nativement par le widget Popup Elementor (ID 809). */
/* On ne fait ici que styliser le contenu du menu vertical a l'interieur de cette popup, style inspire Mereau Finance. */
@media (max-width:1024px){

.elementor-element-107d997 .elementor-nav-menu--main{
  width:100%;
}
.elementor-element-107d997 ul.elementor-nav-menu{
  width:100%;
}

/* Niveau 1 */
.elementor-element-107d997 > .elementor-widget-container > nav.elementor-nav-menu--main > ul.elementor-nav-menu > li.menu-item{
  width:100%!important;
  border-bottom:1px solid rgba(5,25,35,.12);
}
.elementor-element-107d997 > .elementor-widget-container > nav.elementor-nav-menu--main > ul.elementor-nav-menu > li.menu-item > a.elementor-item{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  width:100%!important;
  min-height:56px;
  padding:0!important;
  margin:0!important;
  font-family:Parkinsans,sans-serif;
  font-size:19px;
  font-weight:500;
  color:#051923!important;
  background:transparent!important;
  border:0!important;
  transform:none!important;
  transition:color .2s;
}
.elementor-element-107d997 > .elementor-widget-container > nav.elementor-nav-menu--main > ul.elementor-nav-menu > li.menu-item > a.elementor-item:hover,
.elementor-element-107d997 > .elementor-widget-container > nav.elementor-nav-menu--main > ul.elementor-nav-menu > li.menu-item > a.elementor-item:focus{
  color:#00A6FB!important;
}
/* Niveau 1 ouvert : accent couleur primaire, comme Mereau Finance */
.elementor-element-107d997 > .elementor-widget-container > nav.elementor-nav-menu--main > ul.elementor-nav-menu > li.menu-item > a.elementor-item[aria-expanded="true"]{
  color:#00A6FB!important;
}

/* Chevrons : visibles a tous les niveaux, rotation douce a l'ouverture */
.elementor-element-107d997 .sub-arrow{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  margin-left:8px;
  flex-shrink:0;
  color:inherit;
}
.elementor-nav-menu--main .elementor-element-107d997 .sub-arrow .e-font-icon-svg,
.elementor-nav-menu--main .elementor-nav-menu--dropdown.elementor-element-107d997 .sub-arrow .e-font-icon-svg,
.elementor-element-107d997 .sub-arrow .e-font-icon-svg,
.elementor-element-107d997 .sub-arrow svg,
.elementor-element-107d997 .sub-arrow i{
  transform:rotate(0deg)!important;
  transition:transform .25s ease;
}
.elementor-nav-menu--main .elementor-element-107d997 a[aria-expanded="true"] > .sub-arrow .e-font-icon-svg,
.elementor-element-107d997 a[aria-expanded="true"] > .sub-arrow .e-font-icon-svg,
.elementor-element-107d997 a[aria-expanded="true"] > .sub-arrow svg,
.elementor-element-107d997 a[aria-expanded="true"] > .sub-arrow i{
  transform:rotate(180deg)!important;
}

/* Sous-menus : pleine largeur, pas de fond, liseres pour delimiter */
.elementor-element-107d997 ul.sub-menu{
  position:static!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  margin-left:0!important;
  margin-top:0!important;
  top:auto!important;
  left:auto!important;
  transform:none!important;
  box-shadow:none!important;
  background:transparent!important;
  border:0!important;
  z-index:auto!important;
  display:none;
}

/* Sous-menu de niveau 1 (familles) : liseres haut/bas pour delimiter le groupe, sans fond */
.elementor-element-107d997 > .elementor-widget-container > nav.elementor-nav-menu--main > ul.elementor-nav-menu > li.menu-item > ul.sub-menu{
  background:transparent!important;
  padding:12px 0!important;
  border-top:1px solid rgba(5,25,35,.08)!important;
}

/* Familles (niveau 2, ex: Physiques, Service, Bureau...) */
.elementor-element-107d997 li.cn-fam{position:static;}
.elementor-element-107d997 li.cn-fam > a,
.elementor-element-107d997 li.cn-fam > a:hover,
.elementor-element-107d997 li.cn-fam > a:focus{
  font-family:Parkinsans,sans-serif;
  font-weight:500;
  font-size:15px;
  color:#5B7382!important;
  min-height:44px;
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  width:100%!important;
  padding:0!important;
  margin:0!important;
  border-left:0!important;
  border-inline-start:0!important;
  background:transparent!important;
  border-bottom:0;
  pointer-events:auto;
  transform:none!important;
  transition:color .2s;
}
/* Chevron visible sur les familles */
.elementor-element-107d997 li.cn-fam > a .sub-arrow{display:inline-flex!important}
.elementor-element-107d997 li.cn-fam > a:hover,
.elementor-element-107d997 li.cn-fam > a:focus,
.elementor-element-107d997 li.cn-fam > a[aria-expanded="true"]{
  color:#00A6FB!important;
}
.elementor-element-107d997 li.cn-fam > ul.sub-menu{
  position:static!important;
  width:100%!important;
  max-width:none!important;
  transform:none!important;
  box-shadow:none!important;
  background:transparent!important;
  padding:0!important;
  margin:0!important;
  margin-left:0!important;
  margin-top:0!important;
  top:auto!important;
  left:auto!important;
  border:0!important;
}
.elementor-element-107d997 ul.sub-menu.elementor-nav-menu--dropdown{
  position:static!important;
  margin:0!important;
  margin-left:0!important;
  margin-top:0!important;
  top:auto!important;
  left:auto!important;
  transform:none!important;
}

/* Liseres pour delimiter chaque groupe famille dans l'accordeon : meme espacement que les liseres de niveau 1 */
.elementor-element-107d997 li.cn-fam{
  border-top:1px solid rgba(5,25,35,.06);
  padding-top:12px;
}
.elementor-element-107d997 li.cn-fam:first-child{
  border-top:0;
  padding-top:0;
}
.elementor-element-107d997 li.cn-fam > ul.sub-menu{
  padding-top:12px!important;
}

/* Metiers (niveau 3) */
.elementor-element-107d997 li.cn-metier,
.elementor-element-107d997 li.cn-metier > a,
.elementor-element-107d997 li.cn-metier > a:hover,
.elementor-element-107d997 li.cn-metier > a:focus{
  background:transparent!important;
}
.elementor-element-107d997 li.cn-metier > a,
.elementor-element-107d997 li.cn-metier > a:hover,
.elementor-element-107d997 li.cn-metier > a:focus{
  font-family:Parkinsans,sans-serif;
  font-size:14px;
  min-height:38px;
  display:flex;
  align-items:center;
  width:100%!important;
  color:#8A9BA6!important;
  padding:0 0 0 20px!important;
  margin:0!important;
  border-left:0!important;
  border-inline-start:0!important;
  transform:none!important;
  transition:color .2s;
}
.elementor-element-107d997 li.cn-metier > a:hover{
  color:#00A6FB!important;
}

/* CTA "Demander un devis" en bas de la popup */
.elementor-element-60e1611{
  margin-top:24px;
  width:100%;
}
.elementor-element-60e1611 .elementor-button{
  display:block;
  width:100%;
  text-align:center;
}
}


/* Croix de fermeture de la popup menu : position fixe et toujours visible sur mobile/tablette */
@media (max-width:1024px){
#elementor-popup-modal-809 .dialog-close-button{
  position:fixed!important;
  top:16px!important;
  inset-inline-end:16px!important;
  right:16px!important;
  margin:0!important;
  width:40px!important;
  height:40px!important;
  display:flex!important;
  align-items:center;
  justify-content:center;
  background:#FFFFFF;
  border-radius:50%;
  z-index:100000!important;
}
#elementor-popup-modal-809 .dialog-close-button svg{
  width:18px!important;
  height:18px!important;
}
}