.elementor-46 .elementor-element.elementor-element-426849f{--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-start;--align-items:center;--gap:0px 08px;--row-gap:0px;--column-gap:08px;}.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-46 .elementor-element.elementor-element-a79b85d img{width:56%;}.elementor-46 .elementor-element.elementor-element-b3688aa{--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 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-46 .elementor-element.elementor-element-0cc0160{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;}.elementor-46 .elementor-element.elementor-element-0cc0160.elementor-element{--align-self:center;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-menu-toggle{margin:0 auto;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu .elementor-item{font-family:"Arial", Sans-serif;font-size:12px;font-weight:600;text-transform:uppercase;text-decoration:none;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--main .elementor-item:focus{color:#FFFFFF;fill:#FFFFFF;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:#FFFFFF;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--dropdown a:hover,
					.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--dropdown a:focus,
					.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--dropdown a.elementor-item-active,
					.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--dropdown a.highlighted,
					.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-menu-toggle:hover,
					.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-menu-toggle:focus{color:#FFFFFF;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--dropdown a.elementor-item-active{color:#FFFFFF;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--dropdown{border-style:none;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--main .elementor-nav-menu--dropdown, .elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu__container.elementor-nav-menu--dropdown{box-shadow:0px 0px 0px 0px rgba(0,0,0,0.5);}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--dropdown li:not(:last-child){border-style:none;}.elementor-46 .elementor-element.elementor-element-0cc0160 div.elementor-menu-toggle{color:#FFFFFF;}.elementor-46 .elementor-element.elementor-element-0cc0160 div.elementor-menu-toggle svg{fill:#FFFFFF;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:767px){.elementor-46 .elementor-element.elementor-element-426849f{--width:506px;--justify-content:center;}.elementor-46 .elementor-element.elementor-element-a79b85d{text-align:start;}.elementor-46 .elementor-element.elementor-element-a79b85d img{width:100%;}.elementor-46 .elementor-element.elementor-element-b3688aa{--width:500px;--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;}.elementor-46 .elementor-element.elementor-element-0cc0160{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu--main > .elementor-nav-menu > li > .elementor-nav-menu--dropdown, .elementor-46 .elementor-element.elementor-element-0cc0160 .elementor-nav-menu__container.elementor-nav-menu--dropdown{margin-top:-1px !important;}}/* Start custom CSS for nav-menu, class: .elementor-element-0cc0160 *//* Menu mobile en plein écran style DLT */
@media (max-width: 1024px) {
    .elementor-location-header .elementor-nav-menu--dropdown {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        min-height: 100vh !important;
        background: #1A3A52 !important;
        padding: 90px 30px 40px !important;
        z-index: 9999 !important;
        overflow-y: auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
    }
    
    .elementor-location-header .elementor-nav-menu--dropdown ul {
        display: flex !important;
        flex-direction: column !important;
        gap: 8px !important;
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
    }
    
    .elementor-location-header .elementor-nav-menu--dropdown li {
        text-align: center !important;
        width: 100% !important;
        border-bottom: 1px solid rgba(255,255,255,0.12) !important;
    }
    
    .elementor-location-header .elementor-nav-menu--dropdown li:last-child {
        border-bottom: none !important;
    }
    
    .elementor-location-header .elementor-nav-menu--dropdown a {
        color: #FFFFFF !important;
        font-size: 22px !important;
        font-weight: 500 !important;
        padding: 24px 16px !important;
        text-align: center !important;
        letter-spacing: 1px !important;
        text-transform: uppercase !important;
        display: block !important;
        text-decoration: none !important;
    }
    
    .elementor-location-header .elementor-nav-menu--dropdown a:hover,
    .elementor-location-header .elementor-nav-menu--dropdown a:focus {
        color: #2D8659 !important;
        background: transparent !important;
    }
    
    /* Bouton de fermeture (X) bien visible */
    .elementor-location-header .elementor-menu-toggle {
        position: relative;
        z-index: 10000 !important;
    }
    
    .elementor-location-header .elementor-menu-toggle__icon--close {
        color: #FFFFFF !important;
        fill: #FFFFFF !important;
    }
}

@media (max-width: 1024px) {
    body:has(.elementor-menu-toggle[aria-expanded="true"]) {
        overflow: hidden !important;
    }
}

/* ═══════════════════════════════════════════════
   FIX 1 — Supprimer encadré noir sur item actif
   ═══════════════════════════════════════════════ */
@media (max-width: 1024px) {
    .elementor-location-header .elementor-nav-menu--dropdown .current-menu-item > a,
    .elementor-location-header .elementor-nav-menu--dropdown .current-menu-ancestor > a,
    .elementor-location-header .elementor-nav-menu--dropdown .elementor-item-active,
    .elementor-location-header .elementor-nav-menu--dropdown a.elementor-item-active,
    .elementor-location-header .elementor-nav-menu--dropdown .menu-item.current-menu-item a {
        background: transparent !important;
        background-color: transparent !important;
        color: #FFFFFF !important;
        box-shadow: none !important;
    }
    
    /* Au tap (focus mobile), juste un léger changement de couleur, pas de fond */
    .elementor-location-header .elementor-nav-menu--dropdown .current-menu-item > a:focus,
    .elementor-location-header .elementor-nav-menu--dropdown .current-menu-item > a:active {
        background: transparent !important;
        color: #2D8659 !important;
    }
}

/* ═══════════════════════════════════════════════
   FIX 2 — Bouton CONTACT dans le menu mobile
   (nécessite l'ajout d'un item "Contact" dans
   Apparence → Menus avec la classe CSS
   "menu-cta-contact")
   ═══════════════════════════════════════════════ */
@media (max-width: 1024px) {
    /* Container du Contact CTA */
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact {
        border-bottom: none !important;
        border-top: 1px solid rgba(255,255,255,0.15) !important;
        margin-top: 24px !important;
        padding-top: 24px !important;
    }
    
    /* Le lien stylé comme bouton vert */
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact > a {
        background: linear-gradient(135deg, #2D8659 0%, #1A3A52 100%) !important;
        color: #FFFFFF !important;
        border-radius: 8px !important;
        padding: 18px 32px !important;
        margin: 0 8px !important;
        font-size: 18px !important;
        font-weight: 600 !important;
        letter-spacing: 1px !important;
        transition: opacity 0.3s ease, transform 0.2s ease !important;
        text-transform: uppercase !important;
    }
    
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact > a:hover,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact > a:focus,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact > a:active {
        background: linear-gradient(135deg, #2D8659 0%, #1A3A52 100%) !important;
        color: #FFFFFF !important;
        opacity: 0.9 !important;
        transform: translateY(-1px) !important;
    }
}

/* Sur desktop, masquer cet item (le bouton CONTACT du header desktop prend le relais) */
@media (min-width: 1025px) {
    .elementor-location-header li.menu-cta-contact {
        display: none !important;
    }
}

/* Supprimer les lignes autour du bouton CONTACT mobile */
@media (max-width: 1024px) {
    /* Enlève le border-top que j'avais ajouté sur le Contact */
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact {
        border-top: none !important;
        padding-top: 16px !important;
    }
    
    /* Enlève le border-bottom du li juste avant le Contact (A PROPOS) */
    .elementor-location-header .elementor-nav-menu--dropdown li:has(+ li.menu-cta-contact) {
        border-bottom: none !important;
    }
}
}

/* OVERRIDE : garder le bouton CONTACT en vert même actif/visité */
@media (max-width: 1024px) {
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact > a,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact.current-menu-item > a,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact.current-menu-ancestor > a,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact > a:visited,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact > a:focus,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact > a:active,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact > a.elementor-item-active,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact .e-nav-menu-item-anchor,
    .elementor-location-header .elementor-nav-menu--dropdown li.menu-cta-contact .elementor-item-active {
        background: linear-gradient(135deg, #2D8659 0%, #1A3A52 100%) !important;
        background-color: #2D8659 !important;
        color: #FFFFFF !important;
        opacity: 1 !important;
    }
}/* End custom CSS */