.elementor-122 .elementor-element.elementor-element-9849b0b:not(.elementor-motion-effects-element-type-background), .elementor-122 .elementor-element.elementor-element-9849b0b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, #00000094 0%, #00000000 100%);}.elementor-122 .elementor-element.elementor-element-9849b0b > .elementor-container{max-width:1300px;}.elementor-122 .elementor-element.elementor-element-9849b0b{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-122 .elementor-element.elementor-element-9849b0b > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-122 .elementor-element.elementor-element-16aa3b5.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-122 .elementor-element.elementor-element-16aa3b5.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-122 .elementor-element.elementor-element-16aa3b5 > .elementor-element-populated{padding:0px 15px 0px 15px;}.elementor-122 .elementor-element.elementor-element-c0a22f3 .pxl-logo img{max-height:32px;}.elementor-122 .elementor-element.elementor-element-a72e1a2 .pxl-logo img{max-height:32px;}.elementor-122 .elementor-element.elementor-element-e0c3865 .pxl-logo img{max-height:32px;}.elementor-122 .elementor-element.elementor-element-e16973c .pxl-logo img{max-height:32px;}.elementor-bc-flex-widget .elementor-122 .elementor-element.elementor-element-8fa571d.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-122 .elementor-element.elementor-element-8fa571d.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-122 .elementor-element.elementor-element-8fa571d > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:20px;}.elementor-122 .elementor-element.elementor-element-8fa571d > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 15px 0px 15px;}.elementor-122 .elementor-element.elementor-element-7a04f32{z-index:999;}.elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-nav-menu .pxl-menu-primary{text-align:center;}.elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-nav-menu .pxl-menu-primary > li{float:none;}.elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-nav-menu .pxl-menu-primary > li > a{font-size:16px;}.elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-nav-menu .pxl-menu-primary li .sub-menu li:hover > a, .elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-nav-menu .pxl-menu-primary li .sub-menu li.current_page_item > a, .elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-nav-menu .pxl-menu-primary li .sub-menu li.current-menu-item > a, .elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-nav-menu .pxl-menu-primary li .sub-menu li.current_page_ancestor > a, .elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-nav-menu .pxl-menu-primary li .sub-menu li.current-menu-ancestor > a{color:#141414;}.elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-menu-primary .sub-menu, .elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-menu-primary .children{background-color:#141414;}.elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-nav-menu .pxl-menu-primary li .sub-menu a, .elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-heading .pxl-item--title{font-size:16px;}.elementor-122 .elementor-element.elementor-element-7a04f32 .pxl-menu-primary .sub-menu li + li{margin-top:5px;}.elementor-bc-flex-widget .elementor-122 .elementor-element.elementor-element-81bb045.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-122 .elementor-element.elementor-element-81bb045.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-122 .elementor-element.elementor-element-81bb045.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-122 .elementor-element.elementor-element-81bb045 > .elementor-element-populated{padding:0px 0px 0px 0px;}.elementor-122 .elementor-element.elementor-element-2efc0de{width:auto;max-width:auto;}.elementor-122 .elementor-element.elementor-element-8b66e8d{width:auto;max-width:auto;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-122 .elementor-element.elementor-element-645b0cd{width:auto;max-width:auto;}.elementor-122 .elementor-element.elementor-element-645b0cd > .elementor-widget-container{margin:0px 30px 0px 0px;padding:11px 0px 0px 0px;}.elementor-122 .elementor-element.elementor-element-645b0cd .elementor-icon-wrapper{text-align:center;}.elementor-122 .elementor-element.elementor-element-645b0cd.elementor-view-stacked .elementor-icon{background-color:#7289D9;}.elementor-122 .elementor-element.elementor-element-645b0cd.elementor-view-framed .elementor-icon, .elementor-122 .elementor-element.elementor-element-645b0cd.elementor-view-default .elementor-icon{color:#7289D9;border-color:#7289D9;}.elementor-122 .elementor-element.elementor-element-645b0cd.elementor-view-framed .elementor-icon, .elementor-122 .elementor-element.elementor-element-645b0cd.elementor-view-default .elementor-icon svg{fill:#7289D9;}.elementor-122 .elementor-element.elementor-element-645b0cd .elementor-icon{font-size:20px;}.elementor-122 .elementor-element.elementor-element-645b0cd .elementor-icon svg{height:20px;}.elementor-widget-polylang-language-switcher .cpel-switcher__lang a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-text );}.elementor-widget-polylang-language-switcher .cpel-switcher__icon{color:var( --e-global-color-text );}.elementor-widget-polylang-language-switcher .cpel-switcher__lang a:hover, .elementor-widget-polylang-language-switcher .cpel-switcher__lang a:focus{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-accent );}.elementor-widget-polylang-language-switcher .cpel-switcher__lang.cpel-switcher__lang--active a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-122 .elementor-element.elementor-element-fe93cd0.cpel-switcher--layout-dropdown .cpel-switcher__lang a{background-color:#FFFFFF00;}.elementor-122 .elementor-element.elementor-element-fe93cd0.cpel-switcher--layout-dropdown .cpel-switcher__lang a:hover, .elementor-122 .elementor-element.elementor-element-fe93cd0.cpel-switcher--layout-dropdown .cpel-switcher__lang a:focus{background-color:#D9D9D900;}.elementor-122 .elementor-element.elementor-element-fe93cd0.cpel-switcher--aspect-ratio-11 .cpel-switcher__flag{width:20px;height:20px;}.elementor-122 .elementor-element.elementor-element-fe93cd0.cpel-switcher--aspect-ratio-43 .cpel-switcher__flag{width:20px;height:calc(20px * 0.75);}.elementor-122 .elementor-element.elementor-element-fe93cd0 .cpel-switcher__flag img{border-radius:0px;}.elementor-122 .elementor-element.elementor-element-fe3c230{--display:flex;}@media(min-width:768px){.elementor-122 .elementor-element.elementor-element-8fa571d{width:63%;}.elementor-122 .elementor-element.elementor-element-81bb045{width:19.666%;}}@media(max-width:767px){.elementor-122 .elementor-element.elementor-element-c0a22f3 .pxl-logo{text-align:center;}.elementor-122 .elementor-element.elementor-element-a72e1a2 .pxl-logo{text-align:center;}.elementor-122 .elementor-element.elementor-element-e0c3865 .pxl-logo{text-align:center;}.elementor-122 .elementor-element.elementor-element-e16973c .pxl-logo{text-align:center;}.elementor-122 .elementor-element.elementor-element-8fa571d > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-122 .elementor-element.elementor-element-81bb045.elementor-column > .elementor-widget-wrap{justify-content:center;}}/* Start custom CSS for pxl_menu, class: .elementor-element-7a04f32 *//* Empêche tout fond rouge au hover */
.pxl-nav-menu1 .sub-menu li:hover,
.pxl-nav-menu1 .sub-menu li:hover > a {
    background-color: transparent !important;
}
 
    .menu-item-number {
        display: none !important;
    }
    
    /* Ajouter un border-radius au sous-menu */
    .sub-menu {
        border-radius: 10px; /* Arrondi des coins */
        overflow: hidden; /* Assure que le contenu respecte les bords arrondis */
        border: 0px ; /* Optionnel : bordure pour délimiter le sous-menu */
    }
    
    /* Supprime la bordure en bas des éléments du sous-menu */
    .sub-menu li {
        border-bottom: none !important; /* Forcer la suppression de la bordure */
        box-shadow: none !important; /* Supprime une ombre éventuelle */
    }
    
    /* Supprime la bordure en bas des liens du sous-menu */
    .sub-menu li a {
        border-bottom: none !important; /* Forcer la suppression */
        box-shadow: none !important; /* Supprime une ombre éventuelle */
    }
    
    /* Supprime la bordure ou ligne sur le span */
    .sub-menu span {
        border-bottom: none !important; /* Forcer la suppression */
        box-shadow: none !important; /* Supprime une ombre éventuelle */
    }
    
    /* Supprime la bordure uniquement pour l'élément spécifique "Nom de domaine" */
    .sub-menu li a span {
        border-bottom: none !important;
        box-shadow: none !important;
    }
    
    /* Ajout d'une correction pour des cas spécifiques */
    .sub-menu li:last-child {
        border-bottom: none !important; /* Supprime la bordure du dernier élément */
    }
    /* 1) On rend le <span> parent en flex pour aligner tout sur une ligne */
.pxl-nav-menu1 .sub-menu li.wp-menu-img-before > a > span {
  display: inline-flex;
  align-items: center;
}

/* 1) Flex pour aligner tout sur une même ligne */
.pxl-nav-menu1 .sub-menu li.wp-menu-img-before > a > span {
  display: inline-flex;
  align-items: center;
}

/* 2) L’image en premier, à gauche */
.pxl-nav-menu1 .sub-menu li.wp-menu-img-before > a > span > img {
  order: 1;
  margin-right: 8px; /* espace entre icône et texte */
  max-width: 25px;
  height: auto;
}

/* 3) Puis le texte */
.pxl-nav-menu1 .sub-menu li.wp-menu-img-before > a > span > span {
  order: 2;
}

/* 4) Enfin la petite flèche, si présente */
.pxl-nav-menu1 .sub-menu li.wp-menu-img-before > a > span > i {
  order: 3;
  margin-left: 4px;
}
/* Remonte le sous-menu de 10px */
@media (min-width: 768px) {
  /* Remonte le sous-menu uniquement en desktop */
  .pxl-menu-primary li .sub-menu {
    margin-top: -10px !important;
    top: auto !important;
  }

  .pxl-menu-primary li:hover > .sub-menu {
    top: 85px !important;
  }
}


/* Et on peut enlever le padding vertical si nécessaire */
.pxl-menu-primary .sub-menu {
  padding-top: 0;
  padding-bottom: 0;
}


/* Texte en rouge au hover (sans changer le fond du bloc) */
.pxl-nav-menu1 .sub-menu li:hover a span,
.pxl-nav-menu1 .sub-menu li:hover a span span,
.pxl-nav-menu1 .sub-menu li:hover a span i {
    color: red !important;
    fill: red !important;
    transition: color 0.3s ease !important;
}

/* Image grise qui devient rouge avec effet filtre */
.pxl-nav-menu1 .sub-menu li:hover a span > img {
    filter: brightness(0) saturate(100%) invert(14%) sepia(100%) saturate(7400%) hue-rotate(-10deg) brightness(90%) contrast(120%) !important;
    transition: filter 0.3s ease-in-out !important;
}

/* Empêche tout fond rouge au hover */
.pxl-nav-menu1 .sub-menu li:hover,
.pxl-nav-menu1 .sub-menu li:hover > a {
    background-color: transparent !important;
}
/* Supprimer le fond au hover */
.pxl-nav-menu1 .sub-menu li:hover,
.pxl-nav-menu1 .sub-menu li:hover > a {
    background-color: transparent !important;
}

/* Texte rouge + mouvement */
.pxl-nav-menu1 .sub-menu li:hover a span,
.pxl-nav-menu1 .sub-menu li:hover a span span,
.pxl-nav-menu1 .sub-menu li:hover a span i {
    color: red !important;
    fill: red !important;
    transform: translateX(5px);
    transition: transform 0.3s ease, color 0.3s ease !important;
}

/* Image rouge + mouvement */
.pxl-nav-menu1 .sub-menu li:hover a span > img {
    filter: brightness(0) saturate(100%) invert(14%) sepia(100%) saturate(7400%) hue-rotate(-10deg) brightness(90%) contrast(120%) !important;
    transform: translateX(5px);
    transition: filter 0.3s ease-in-out, transform 0.3s ease-in-out !important;
}
.pxl-nav-menu1 .sub-menu li:hover a span,
.pxl-nav-menu1 .sub-menu li:hover a span span,
.pxl-nav-menu1 .sub-menu li:hover a span i {
    color: red !important;
    fill: red !important;
    transform: translateX(5px);
    font-weight: 600 !important;
    transition: transform 0.3s ease, color 0.3s ease !important;
}

/* Supprime les bordures visibles */
.pxl-nav-menu1 .sub-menu,
.pxl-nav-menu1 .sub-menu li {
    border: none !important;
    box-shadow: none !important;
}

/* Applique une belle ombre autour du sous-menu */
.pxl-nav-menu1 .sub-menu {
    box-shadow: 0px 20px 40px rgba(150, 150, 150, 0.25) !important;
    border-radius: 12px !important;
    background-color: #141414 !important; /* assure un fond homogène sombre */
    overflow: hidden !important;
    padding: 10px 0 !important; /* optionnel, pour aérer verticalement */
    transition: box-shadow 0.3s ease;
}
/* Cibler uniquement les images dans les sous-menus simples (pas le megamenu) */
.pxl-nav-menu1 .sub-menu li.wp-menu-img-before > a > span > img {
    width: 20px !important;      /* ← ajuste ici la taille */
    height: auto !important;     /* conserve le ratio */
    margin-right: 25px !important; /* ← espace entre l’image et le texte */
    display: inline-block;
    vertical-align: middle;
}

/* Marge interne entre les bords du sous-menu et les éléments */
.pxl-nav-menu1 .sub-menu {
    padding: 12px 16px !important; /* top-bottom 12px, left-right 16px */
}

/* Transition uniquement pour sous-menus normaux */
.pxl-nav-menu1 .sub-menu:not(.pxl-mega-menu) {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    z-index: 9999 !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    max-height: 70vh !important;
}

.pxl-nav-menu1 li.menu-item-has-children:hover > .sub-menu:not(.pxl-mega-menu) {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transition-delay: 0.05s !important;
}

/* Zone tampon uniquement pour sous-menus simples */
.pxl-nav-menu1 li.menu-item-has-children:not(.pxl-megamenu)::after {
    content: '' !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    width: 100% !important;
    height: 20px !important;
    background: transparent !important;
}

/* Centre horizontalement les sous-menus simples */
.pxl-nav-menu1 li.menu-item-has-children:not(.pxl-megamenu) > .sub-menu {
    left: 70% !important;
    transform: translateX(-50%) !important;
}

/* Transition douce + évite écrasement sur les petits sous-menus */
.pxl-nav-menu1 li.menu-item-has-children:not(.pxl-megamenu) > .sub-menu {
    transition: opacity 0.3s ease, transform 0.3s ease !important;
    transform: translateY(15px) !important;
    opacity: 0;
    visibility: hidden;
    position: absolute !important;
    left: 50% !important;
    transform: translateX(-50%) translateY(15px) !important;
    z-index: 999;
}

/* Affiche proprement au hover */
.pxl-nav-menu1 li.menu-item-has-children:not(.pxl-megamenu):hover > .sub-menu {
    opacity: 1;
    visibility: visible;
    transform: translateX(-50%) translateY(0px) !important;
}

/* Fix éventuelle zone morte entre le parent et le sous-menu */
.pxl-nav-menu1 li.menu-item-has-children:not(.pxl-megamenu)::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: 25px;
    background: transparent;
}
/* Applique le même style que :hover aux sous-menus actifs */
.pxl-nav-menu1 .sub-menu li.current-menu-item > a span,
.pxl-nav-menu1 .sub-menu li.current-menu-item > a span span,
.pxl-nav-menu1 .sub-menu li.current-menu-item > a span i,
.pxl-nav-menu1 .sub-menu li.current-menu-ancestor > a span,
.pxl-nav-menu1 .sub-menu li.current-menu-ancestor > a span span,
.pxl-nav-menu1 .sub-menu li.current-menu-ancestor > a span i {
    color: red !important;
    fill: red !important;
    transform: translateX(5px);
    font-weight: 600 !important;
}

/* Image rouge pour sous-menu actif */
.pxl-nav-menu1 .sub-menu li.current-menu-item > a span > img,
.pxl-nav-menu1 .sub-menu li.current-menu-ancestor > a span > img {
    filter: brightness(0) saturate(100%) invert(14%) sepia(100%) saturate(7400%) hue-rotate(-10deg) brightness(90%) contrast(120%) !important;
    transform: translateX(5px);
}
/* Corrige le fond rouge sur l'élément actif du sous-menu */
.pxl-nav-menu1 .sub-menu li.current-menu-item,
.pxl-nav-menu1 .sub-menu li.current-menu-item > a,
.pxl-nav-menu1 .sub-menu li.current-menu-ancestor,
.pxl-nav-menu1 .sub-menu li.current-menu-ancestor > a {
    background-color: transparent !important;
}


/* 1. Le <li> parent doit être le référentiel d’alignement  */
.pxl-menu-primary li {position:relative}

/* 2. Sous-menus « classiques » : on garde la règle existante (souvent top:100%) */

/* 3. Méga-menu : on annule tout décalage supplémentaire */
.pxl-menu-primary li.pxl-megamenu > .pxl-mega-menu{
    position:absolute;        /* comme les autres */
    left:0;                   /* bord à bord */
    top:100%;                 /* plaqué juste sous le parent */
    margin-top:0!important;   /* supprime le vide supplémentaire */
    padding-top:0!important;  /* idem si du padding a été ajouté */
    transform:none!important; /* annule tout translateY() éventuel */
    width:100%;               /* (optionnel) plein écran sous la barre */
    z-index:99;               /* reste au-dessus du reste du header */
    /* animation d’apparition : même logique que vos autres sous-menus */
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .25s ease;
}

/* 4. Affichage au survol – même comportement que vos autres <ul class="sub-menu">  */
.pxl-menu-primary li.pxl-megamenu:hover > .pxl-mega-menu{
    opacity:1;
    visibility:visible;
    pointer-events:auto;
}

/* 5. Si le contenu Elementor du méga-menu ajoute du padding interne */
.pxl-mega-menu-elementor .elementor-section{
    padding-top:0!important;
    margin-top:0!important;
}
/* Pour tous les éléments menu */
.pxl-menu-primary li {
    position: relative;
}

/* Sous-menus classiques (non méga-menu) – rien ne change */
.pxl-menu-primary li ul.sub-menu {
    position: absolute;
    top: 100%;
    left: 0;
    /* Pas de width forcée ici */
}

/* ✅ Spécifique au MEGA MENU uniquement */
.pxl-menu-primary li.pxl-megamenu > .pxl-mega-menu {
    position: absolute;
    top: 100%;
    left: 0%;
    transform: translateX(-50%);
    width: 560px; /* largeur personnalisée uniquement ici */
    
    margin-top: 0 !important;
    padding-top: 0 !important;
    z-index: 99;

    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.25s ease, visibility 0.25s ease;
}

/* Garde le menu visible au survol du <li> ou du .pxl-mega-menu */
.pxl-menu-primary li.pxl-megamenu:hover > .pxl-mega-menu,
.pxl-menu-primary li.pxl-megamenu > .pxl-mega-menu:hover {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* Optionnel : évite les marges internes Elementor */
.pxl-mega-menu-elementor .elementor-section {
    padding-top: 0 !important;
    margin-top: 0 !important;
}/* End custom CSS */