.elementor-333 .elementor-element.elementor-element-e02cb45{--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;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-333 .elementor-element.elementor-element-e89d016{--display:flex;--min-height:50px;--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;--flex-wrap:nowrap;border-style:solid;--border-style:solid;border-width:0px 0px 1px 0px;--border-top-width:0px;--border-right-width:0px;--border-bottom-width:1px;--border-left-width:0px;border-color:var( --e-global-color-text );--border-color:var( --e-global-color-text );}.elementor-333 .elementor-element.elementor-element-e89d016:not(.elementor-motion-effects-element-type-background), .elementor-333 .elementor-element.elementor-element-e89d016 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#4A1B6E;}.elementor-333 .elementor-element.elementor-element-6f40b2b{--display:flex;--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;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-333 .elementor-element.elementor-element-a1ecf42{--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;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-333 .elementor-element.elementor-element-df08e55 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-333 .elementor-element.elementor-element-df08e55 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-333 .elementor-element.elementor-element-df08e55{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-333 .elementor-element.elementor-element-df08e55 .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-333 .elementor-element.elementor-element-9895fe9{--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;}.elementor-333 .elementor-element.elementor-element-aec98f8 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-333 .elementor-element.elementor-element-aec98f8 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-333 .elementor-element.elementor-element-aec98f8{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-333 .elementor-element.elementor-element-aec98f8 .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-333 .elementor-element.elementor-element-a6eb6bc{--display:flex;--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:flex-end;--align-items:center;--gap:0px 020px;--row-gap:0px;--column-gap:020px;}.elementor-333 .elementor-element.elementor-element-6f48ce0{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-333 .elementor-element.elementor-element-7d59a37{--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;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-333 .elementor-element.elementor-element-9e84a11 p{margin-block-end:0px;}.elementor-333 .elementor-element.elementor-element-d60536e{--display:flex;--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;}.elementor-333 .elementor-element.elementor-element-dbbff4d{--display:flex;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-333 .elementor-element.elementor-element-38d1a30 img{width:149px;}.elementor-333 .elementor-element.elementor-element-bfdffeb{--display:flex;}.elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-mega-menu{--n-menu-divider-color:var( --e-global-color-text );}.elementor-333 .elementor-element.elementor-element-3a408aa{--display:flex;}.elementor-333 .elementor-element.elementor-element-4c2cd1d{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-333 .elementor-element.elementor-element-4c2cd1d:not(.elementor-motion-effects-element-type-background), .elementor-333 .elementor-element.elementor-element-4c2cd1d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#02010100;}.elementor-333 .elementor-element.elementor-element-4c2cd1d.e-con{--e-con-transform-translateX:-117px;}.elementor-333 .elementor-element.elementor-element-884bf8b{--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;--justify-content:flex-end;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--flex-wrap:nowrap;}.elementor-333 .elementor-element.elementor-element-884bf8b:not(.elementor-motion-effects-element-type-background), .elementor-333 .elementor-element.elementor-element-884bf8b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#02010100;}.elementor-333 .elementor-element.elementor-element-f94eba1{--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;--border-radius:20px 20px 20px 20px;--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-333 .elementor-element.elementor-element-f94eba1:not(.elementor-motion-effects-element-type-background), .elementor-333 .elementor-element.elementor-element-f94eba1 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-333 .elementor-element.elementor-element-5ef9e09{width:100%;max-width:100%;}.elementor-333 .elementor-element.elementor-element-c8cacf7{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-333 .elementor-element.elementor-element-c8cacf7:not(.elementor-motion-effects-element-type-background), .elementor-333 .elementor-element.elementor-element-c8cacf7 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#00000000;}.elementor-333 .elementor-element.elementor-element-bb8ecfb{--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;--border-radius:20px 20px 20px 20px;--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-333 .elementor-element.elementor-element-bb8ecfb:not(.elementor-motion-effects-element-type-background), .elementor-333 .elementor-element.elementor-element-bb8ecfb > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-secondary );}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(25px/2);}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(25px/2);}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(25px/2);}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-25px/2);}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-25px/2);}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-333 .elementor-element.elementor-element-b34b3a8{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-item > a{font-family:"Lato", Sans-serif;font-weight:400;}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-333 .elementor-element.elementor-element-9b7f2b7{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-justify-content:initial;--n-menu-title-flex-grow:initial;--n-menu-title-justify-content:initial;--n-menu-title-justify-content-mobile:initial;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:0px;--n-menu-open-animation-duration:500ms;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-color-normal:#FFFFFF;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-333 .elementor-element.elementor-element-9b7f2b7 {--n-menu-title-color-hover:var( --e-global-color-0bab0e8 );--n-menu-title-color-active:var( --e-global-color-astglobalcolor4 );}.elementor-333 .elementor-element.elementor-element-ec29506{--display:flex;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-333 .elementor-element.elementor-element-386d09e .elementor-button{font-family:"Lato", Sans-serif;font-size:17px;font-weight:600;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:451px){.elementor-333 .elementor-element.elementor-element-6f40b2b{--width:50%;}.elementor-333 .elementor-element.elementor-element-a1ecf42{--width:31%;}.elementor-333 .elementor-element.elementor-element-9895fe9{--width:31%;}.elementor-333 .elementor-element.elementor-element-a6eb6bc{--width:50%;}.elementor-333 .elementor-element.elementor-element-6f48ce0{--width:16%;}.elementor-333 .elementor-element.elementor-element-7d59a37{--width:50%;}.elementor-333 .elementor-element.elementor-element-dbbff4d{--width:25%;}.elementor-333 .elementor-element.elementor-element-bfdffeb{--width:40%;}.elementor-333 .elementor-element.elementor-element-884bf8b{--width:26%;}.elementor-333 .elementor-element.elementor-element-f94eba1{--width:100%;}.elementor-333 .elementor-element.elementor-element-bb8ecfb{--width:28%;}.elementor-333 .elementor-element.elementor-element-ec29506{--width:25%;}}@media(max-width:1200px) and (min-width:451px){.elementor-333 .elementor-element.elementor-element-a1ecf42{--width:45%;}.elementor-333 .elementor-element.elementor-element-9895fe9{--width:45%;}.elementor-333 .elementor-element.elementor-element-bfdffeb{--width:50%;}.elementor-333 .elementor-element.elementor-element-884bf8b{--width:300px;}.elementor-333 .elementor-element.elementor-element-ec29506{--width:23%;}}@media(max-width:919px) and (min-width:451px){.elementor-333 .elementor-element.elementor-element-a1ecf42{--width:50%;}.elementor-333 .elementor-element.elementor-element-9895fe9{--width:50%;}.elementor-333 .elementor-element.elementor-element-dbbff4d{--width:20%;}.elementor-333 .elementor-element.elementor-element-bfdffeb{--width:22%;}.elementor-333 .elementor-element.elementor-element-884bf8b{--width:34%;}.elementor-333 .elementor-element.elementor-element-bb8ecfb{--width:42%;}.elementor-333 .elementor-element.elementor-element-ec29506{--width:30%;}}@media(max-width:728px) and (min-width:451px){.elementor-333 .elementor-element.elementor-element-a1ecf42{--width:100%;}.elementor-333 .elementor-element.elementor-element-9895fe9{--width:100%;}.elementor-333 .elementor-element.elementor-element-6f48ce0{--width:40%;}.elementor-333 .elementor-element.elementor-element-7d59a37{--width:100%;}.elementor-333 .elementor-element.elementor-element-884bf8b{--width:100%;}.elementor-333 .elementor-element.elementor-element-bb8ecfb{--width:60%;}.elementor-333 .elementor-element.elementor-element-ec29506{--width:40%;}}@media(max-width:550px) and (min-width:451px){.elementor-333 .elementor-element.elementor-element-dbbff4d{--width:32%;}.elementor-333 .elementor-element.elementor-element-ec29506{--width:100%;}}@media(max-width:1200px){.elementor-333 .elementor-element.elementor-element-884bf8b.e-con{--e-con-transform-translateX:-100px;}}@media(max-width:919px){.elementor-333 .elementor-element.elementor-element-bfdffeb.e-con{--order:99999 /* order end hack */;}.elementor-333 .elementor-element.elementor-element-884bf8b.e-con{--e-con-transform-translateX:-120px;}.elementor-333 .elementor-element.elementor-element-f94eba1{--min-height:274px;--justify-content:space-evenly;}.elementor-333 .elementor-element.elementor-element-c8cacf7{--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-333 .elementor-element.elementor-element-9b7f2b7{--n-menu-toggle-icon-size:34px;}}@media(max-width:728px){.elementor-333 .elementor-element.elementor-element-6f40b2b{--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;}.elementor-333 .elementor-element.elementor-element-a6eb6bc{--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;}.elementor-333 .elementor-element.elementor-element-4c2cd1d.e-con{--e-con-transform-translateX:0px;}.elementor-333 .elementor-element.elementor-element-4c2cd1d{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-333 .elementor-element.elementor-element-884bf8b.e-con{--e-con-transform-translateX:0px;}.elementor-333 .elementor-element.elementor-element-884bf8b{--min-height:350px;--padding-top:7px;--padding-bottom:7px;--padding-left:0px;--padding-right:0px;}}@media(max-width:550px){.elementor-333 .elementor-element.elementor-element-884bf8b{--min-height:300px;}.elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-333 .elementor-element.elementor-element-b34b3a8 .elementor-icon-list-item > a{font-size:17px;}.elementor-333 .elementor-element.elementor-element-ec29506{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:10px;--margin-left:0px;--margin-right:0px;}.elementor-333 .elementor-element.elementor-element-ec29506.e-con{--order:99999 /* order end hack */;}}@media(max-width:450px){.elementor-333 .elementor-element.elementor-element-e02cb45{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-333 .elementor-element.elementor-element-6f40b2b{--justify-content:center;}.elementor-333 .elementor-element.elementor-element-df08e55{padding:0px 0px 0px 5px;}.elementor-333 .elementor-element.elementor-element-aec98f8{padding:0px 0px 0px 5px;}.elementor-333 .elementor-element.elementor-element-6f48ce0{--width:50%;}.elementor-333 .elementor-element.elementor-element-dbbff4d{--width:40%;}.elementor-333 .elementor-element.elementor-element-bfdffeb{--width:18%;}.elementor-333 .elementor-element.elementor-element-884bf8b{--min-height:0px;}.elementor-333 .elementor-element.elementor-element-f94eba1{--min-height:0px;}}/* Start custom CSS for html, class: .elementor-element-5ef9e09 */.menu {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 250px;
  font-family: sans-serif;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.menu-item {
  position: relative;
  color: #fff;
  cursor: pointer;
  height: 50px;  
}

.menu-item a,
.menu-link {
  display: flex;            
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: #fff;
  width: 100%;
  height: 100%;
  padding: 0 16px;
  box-sizing: border-box;
}

.menu-item:hover {
  background: #6A10AF;
}

.svg_arrow {
  width: 18px;
  height: 18px;
  margin-left: 5px;
  vertical-align: middle;
  fill: white;
}

/* === Sous-menu de base === */
.submenu {
  list-style: none;
  padding: 15px;
  margin: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 100%;
  background: #3B0063;
  min-width: 300px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  z-index: 100;
  border-radius: 20px;

  transform: translateX(-30px);
  transform-origin: left;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.4s ease, opacity 0.4s ease;
}

.submenu.mega-menu {
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: auto;
  gap: 10px;
  display: grid;
}

.lien_general_header {
  grid-column: 1 / -1;
  justify-self: end;
}

.lien_general_header .arrow-inline {
  margin-left: 20px;
  display: inline-flex;
  align-items: center;
}

.submenu li {
  padding: 12px 16px;
  cursor: pointer;
  white-space: nowrap;
}

.submenu li:hover {
  background: #6A10AF;
}

.submenu-back {
  display: none;
}

/* === Desktop (≥729px) → hover === */
@media only screen and (min-width: 729px) {
  .menu-item:hover > .submenu {
    transform: translateX(0);
    opacity: 1;
    pointer-events: auto;
  }
}

/* === Tablette (≤919px) → ajustements === */
@media only screen and (max-width: 919px) {
  .e-n-menu-item,
  .e-n-menu-item > div {
    background: #210F42 !important;
  }

  .submenu {
    transform: translateY(-35px) !important;
  }

  .menu-link {
    justify-content: start;
  }

  .svg_arrow {
    margin-left: 20px;
  }

  .menu {
    width: 100%;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }
}

/* === Mobile (≤728px) → ouverture via JS (classe .active) === */
@media only screen and (max-width: 728px) {
  .submenu.mega-menu {
    grid-template-columns: 1fr 1fr;
    width: 100vw;
    height: 100%;
    max-width: 100%;
    padding: 20px;
    position: fixed;
    top: 0;
    left: 0;
    background: #3B0063;
    overflow-y: auto;
    border-radius: 0;
    transform: translateX(100%) !important;
    opacity: 0;
    pointer-events: none;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    z-index: 1000;
    align-items: center;
  }

  .submenu.mega-menu.active {
    transform: translateX(0%) !important;
    opacity: 1;
    pointer-events: auto;
  }

  .submenu-back {
    grid-column: 1 / -1;
    display: flex;
    margin-bottom: 10px;
  }

  .submenu-back button {
    background: #6A10AF;
    color: #fff;
    border: none;
    padding: 10px 16px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 8px;
    width: 100%;
    text-align: left;
  }

  .submenu.mega-menu li {
    padding: 6px 10px;
  }

  .submenu.mega-menu li a {
    display: block;
    padding: 6px 10px;
    line-height: 1.3;
  }
}

/* === Petit mobile (≤550px) === */
@media only screen and (max-width: 550px) {
  .submenu.mega-menu {
    padding: 10px;
    grid-template-columns: 48% 48%;
  }

  .submenu.mega-menu li,
  .submenu.mega-menu li a {
    padding: 6px 0;
  }

  .submenu.mega-menu li a {
    font-size: 15px;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }

  .d_flex_s {
    display: flex;
  }
}

/* === Très petit mobile (≤450px) === */
@media only screen and (max-width: 450px) {
  .submenu.mega-menu {
    padding: 10px;
    grid-template-columns: 1fr;
  }

  .justify_s_start_xs {
    justify-self: start;
  }

  .submenu.mega-menu li,
  .submenu.mega-menu li a {
    padding: 6px 0;
  }

  .submenu.mega-menu li a {
    font-size: 15px;
  }

  .lien_general_header {
    justify-self: start;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5ef9e09 */.menu {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 250px;
  font-family: sans-serif;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.menu-item {
  position: relative;
  color: #fff;
  cursor: pointer;
  height: 50px;  
}

.menu-item a,
.menu-link {
  display: flex;            
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: #fff;
  width: 100%;
  height: 100%;
  padding: 0 16px;
  box-sizing: border-box;
}

.menu-item:hover {
  background: #6A10AF;
}

.svg_arrow {
  width: 18px;
  height: 18px;
  margin-left: 5px;
  vertical-align: middle;
  fill: white;
}

/* === Sous-menu de base === */
.submenu {
  list-style: none;
  padding: 15px;
  margin: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 100%;
  background: #3B0063;
  min-width: 300px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  z-index: 100;
  border-radius: 20px;

  transform: translateX(-30px);
  transform-origin: left;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.4s ease, opacity 0.4s ease;
}

.submenu.mega-menu {
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: auto;
  gap: 10px;
  display: grid;
}

.lien_general_header {
  grid-column: 1 / -1;
  justify-self: end;
}

.lien_general_header .arrow-inline {
  margin-left: 20px;
  display: inline-flex;
  align-items: center;
}

.submenu li {
  padding: 12px 16px;
  cursor: pointer;
  white-space: nowrap;
}

.submenu li:hover {
  background: #6A10AF;
}

.submenu-back {
  display: none;
}

/* === Desktop (≥729px) → hover === */
@media only screen and (min-width: 729px) {
  .menu-item:hover > .submenu {
    transform: translateX(0);
    opacity: 1;
    pointer-events: auto;
  }
}

/* === Tablette (≤919px) → ajustements === */
@media only screen and (max-width: 919px) {
  .e-n-menu-item,
  .e-n-menu-item > div {
    background: #210F42 !important;
  }

  .submenu {
    transform: translateY(-35px) !important;
  }

  .menu-link {
    justify-content: start;
  }

  .svg_arrow {
    margin-left: 20px;
  }

  .menu {
    width: 100%;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }
}

/* === Mobile (≤728px) → ouverture via JS (classe .active) === */
@media only screen and (max-width: 728px) {
  .submenu.mega-menu {
    grid-template-columns: 1fr 1fr;
    width: 100vw;
    height: 100%;
    max-width: 100%;
    padding: 20px;
    position: fixed;
    top: 0;
    left: 0;
    background: #3B0063;
    overflow-y: auto;
    border-radius: 0;
    transform: translateX(100%) !important;
    opacity: 0;
    pointer-events: none;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    z-index: 1000;
    align-items: center;
  }

  .submenu.mega-menu.active {
    transform: translateX(0%) !important;
    opacity: 1;
    pointer-events: auto;
  }

  .submenu-back {
    grid-column: 1 / -1;
    display: flex;
    margin-bottom: 10px;
  }

  .submenu-back button {
    background: #6A10AF;
    color: #fff;
    border: none;
    padding: 10px 16px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 8px;
    width: 100%;
    text-align: left;
  }

  .submenu.mega-menu li {
    padding: 6px 10px;
  }

  .submenu.mega-menu li a {
    display: block;
    padding: 6px 10px;
    line-height: 1.3;
  }
}

/* === Petit mobile (≤550px) === */
@media only screen and (max-width: 550px) {
  .submenu.mega-menu {
    padding: 10px;
    grid-template-columns: 48% 48%;
  }

  .submenu.mega-menu li,
  .submenu.mega-menu li a {
    padding: 6px 0;
  }

  .submenu.mega-menu li a {
    font-size: 15px;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }

  .d_flex_s {
    display: flex;
  }
}

/* === Très petit mobile (≤450px) === */
@media only screen and (max-width: 450px) {
  .submenu.mega-menu {
    padding: 10px;
    grid-template-columns: 1fr;
  }

  .justify_s_start_xs {
    justify-self: start;
  }

  .submenu.mega-menu li,
  .submenu.mega-menu li a {
    padding: 6px 0;
  }

  .submenu.mega-menu li a {
    font-size: 15px;
  }

  .lien_general_header {
    justify-self: start;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5ef9e09 */.menu {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 250px;
  font-family: sans-serif;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.menu-item {
  position: relative;
  color: #fff;
  cursor: pointer;
  height: 50px;  
}

.menu-item a,
.menu-link {
  display: flex;            
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: #fff;
  width: 100%;
  height: 100%;
  padding: 0 16px;
  box-sizing: border-box;
}

.menu-item:hover {
  background: #6A10AF;
}

.svg_arrow {
  width: 18px;
  height: 18px;
  margin-left: 5px;
  vertical-align: middle;
  fill: white;
}

/* === Sous-menu de base === */
.submenu {
  list-style: none;
  padding: 15px;
  margin: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 100%;
  background: #3B0063;
  min-width: 300px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  z-index: 100;
  border-radius: 20px;

  transform: translateX(-30px);
  transform-origin: left;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.4s ease, opacity 0.4s ease;
}

.submenu.mega-menu {
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: auto;
  gap: 10px;
  display: grid;
}

.lien_general_header {
  grid-column: 1 / -1;
  justify-self: end;
}

.lien_general_header .arrow-inline {
  margin-left: 20px;
  display: inline-flex;
  align-items: center;
}

.submenu li {
  padding: 12px 16px;
  cursor: pointer;
  white-space: nowrap;
}

.submenu li:hover {
  background: #6A10AF;
}

.submenu-back {
  display: none;
}

/* === Desktop (≥729px) → hover === */
@media only screen and (min-width: 729px) {
  .menu-item:hover > .submenu {
    transform: translateX(0);
    opacity: 1;
    pointer-events: auto;
  }
}

/* === Tablette (≤919px) → ajustements === */
@media only screen and (max-width: 919px) {
  .e-n-menu-item,
  .e-n-menu-item > div {
    background: #210F42 !important;
  }

  .submenu {
    transform: translateY(-35px) !important;
  }

  .menu-link {
    justify-content: start;
  }

  .svg_arrow {
    margin-left: 20px;
  }

  .menu {
    width: 100%;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }
}

/* === Mobile (≤728px) → ouverture via JS (classe .active) === */
@media only screen and (max-width: 728px) {
  .submenu.mega-menu {
    grid-template-columns: 1fr 1fr;
    width: 100vw;
    height: 100%;
    max-width: 100%;
    padding: 20px;
    position: fixed;
    top: 0;
    left: 0;
    background: #3B0063;
    overflow-y: auto;
    border-radius: 0;
    transform: translateX(100%) !important;
    opacity: 0;
    pointer-events: none;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    z-index: 1000;
    align-items: center;
  }

  .submenu.mega-menu.active {
    transform: translateX(0%) !important;
    opacity: 1;
    pointer-events: auto;
  }

  .submenu-back {
    grid-column: 1 / -1;
    display: flex;
    margin-bottom: 10px;
  }

  .submenu-back button {
    background: #6A10AF;
    color: #fff;
    border: none;
    padding: 10px 16px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 8px;
    width: 100%;
    text-align: left;
  }

  .submenu.mega-menu li {
    padding: 6px 10px;
  }

  .submenu.mega-menu li a {
    display: block;
    padding: 6px 10px;
    line-height: 1.3;
  }
}

/* === Petit mobile (≤550px) === */
@media only screen and (max-width: 550px) {
  .submenu.mega-menu {
    padding: 10px;
    grid-template-columns: 48% 48%;
  }

  .submenu.mega-menu li,
  .submenu.mega-menu li a {
    padding: 6px 0;
  }

  .submenu.mega-menu li a {
    font-size: 15px;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }

  .d_flex_s {
    display: flex;
  }
}

/* === Très petit mobile (≤450px) === */
@media only screen and (max-width: 450px) {
  .submenu.mega-menu {
    padding: 10px;
    grid-template-columns: 1fr;
  }

  .justify_s_start_xs {
    justify-self: start;
  }

  .submenu.mega-menu li,
  .submenu.mega-menu li a {
    padding: 6px 0;
  }

  .submenu.mega-menu li a {
    font-size: 15px;
  }

  .lien_general_header {
    justify-self: start;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-5ef9e09 */.menu {
  list-style: none;
  padding: 0;
  margin: 0;
  width: 250px;
  font-family: sans-serif;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.menu-item {
  position: relative;
  color: #fff;
  cursor: pointer;
  height: 50px;  
}

.menu-item a,
.menu-link {
  display: flex;            
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: #fff;
  width: 100%;
  height: 100%;
  padding: 0 16px;
  box-sizing: border-box;
}

.menu-item:hover {
  background: #6A10AF;
}

.svg_arrow {
  width: 18px;
  height: 18px;
  margin-left: 5px;
  vertical-align: middle;
  fill: white;
}

/* === Sous-menu de base === */
.submenu {
  list-style: none;
  padding: 15px;
  margin: 0;
  display: block;
  position: absolute;
  top: 0;
  left: 100%;
  background: #3B0063;
  min-width: 300px;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  z-index: 100;
  border-radius: 20px;

  transform: translateX(-30px);
  transform-origin: left;
  opacity: 0;
  pointer-events: none;
  transition: transform 0.4s ease, opacity 0.4s ease;
}

.submenu.mega-menu {
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: auto;
  gap: 10px;
  display: grid;
}

.lien_general_header {
  grid-column: 1 / -1;
  justify-self: end;
}

.lien_general_header .arrow-inline {
  margin-left: 20px;
  display: inline-flex;
  align-items: center;
}

.submenu li {
  padding: 12px 16px;
  cursor: pointer;
  white-space: nowrap;
}

.submenu li:hover {
  background: #6A10AF;
}

.submenu-back {
  display: none;
}

/* === Desktop (≥729px) → hover === */
@media only screen and (min-width: 729px) {
  .menu-item:hover > .submenu {
    transform: translateX(0);
    opacity: 1;
    pointer-events: auto;
  }
}

/* === Tablette (≤919px) → ajustements === */
@media only screen and (max-width: 919px) {
  .e-n-menu-item,
  .e-n-menu-item > div {
    background: #210F42 !important;
  }

  .submenu {
    transform: translateY(-35px) !important;
  }

  .menu-link {
    justify-content: start;
  }

  .svg_arrow {
    margin-left: 20px;
  }

  .menu {
    width: 100%;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }
}

/* === Mobile (≤728px) → ouverture via JS (classe .active) === */
@media only screen and (max-width: 728px) {
  .submenu.mega-menu {
    grid-template-columns: 1fr 1fr;
    width: 100vw;
    height: 100%;
    max-width: 100%;
    padding: 20px;
    position: fixed;
    top: 0;
    left: 0;
    background: #3B0063;
    overflow-y: auto;
    border-radius: 0;
    transform: translateX(100%) !important;
    opacity: 0;
    pointer-events: none;
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    z-index: 1000;
    align-items: center;
  }

  .submenu.mega-menu.active {
    transform: translateX(0%) !important;
    opacity: 1;
    pointer-events: auto;
  }

  .submenu-back {
    grid-column: 1 / -1;
    display: flex;
    margin-bottom: 10px;
  }

  .submenu-back button {
    background: #6A10AF;
    color: #fff;
    border: none;
    padding: 10px 16px;
    cursor: pointer;
    font-size: 16px;
    border-radius: 8px;
    width: 100%;
    text-align: left;
  }

  .submenu.mega-menu li {
    padding: 6px 10px;
  }

  .submenu.mega-menu li a {
    display: block;
    padding: 6px 10px;
    line-height: 1.3;
  }
}

/* === Petit mobile (≤550px) === */
@media only screen and (max-width: 550px) {
  .submenu.mega-menu {
    padding: 10px;
    grid-template-columns: 48% 48%;
  }

  .submenu.mega-menu li,
  .submenu.mega-menu li a {
    padding: 6px 0;
  }

  .submenu.mega-menu li a {
    font-size: 15px;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }

  .d_flex_s {
    display: flex;
  }
}

/* === Très petit mobile (≤450px) === */
@media only screen and (max-width: 450px) {
  .submenu.mega-menu {
    padding: 10px;
    grid-template-columns: 1fr;
  }

  .justify_s_start_xs {
    justify-self: start;
  }

  .submenu.mega-menu li,
  .submenu.mega-menu li a {
    padding: 6px 0;
  }

  .submenu.mega-menu li a {
    font-size: 15px;
  }

  .lien_general_header {
    justify-self: start;
  }

  .lien_general_header .arrow-inline {
    margin-left: 0;
    display: inline-flex;
    align-items: center;
  }
}/* End custom CSS */