/* =============================================
   MENU LIBNER - STYLE KRONE FINAL
   Fond noir transparent, texte blanc, séparateur
   ============================================= */

/* =============================================
   0. OVERRIDE COMPLET DES STYLES WPML
   ============================================= */

/* Forcer la transparence sur TOUS les liens WPML dans le header */
header#masthead .wpml-ls-legacy-dropdown a,
header#masthead .wpml-ls-legacy-dropdown a:hover,
header#masthead .wpml-ls-legacy-dropdown a:focus,
header#masthead .wpml-ls-legacy-dropdown a:active {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* =============================================
   1. HEADER - FOND NOIR TRANSPARENT (FIXE)
   ============================================= */

body header#masthead,
body.home header#masthead,
body.page-template-page-libner header#masthead,
header#masthead.scroll,
body header#masthead.scroll {
    background: rgba(26, 26, 26, 0.95) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    padding: 0 !important;
    height: auto !important;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.5) !important;
    margin: 0 !important;
    transition: none !important;
}

/* =============================================
   2. CONTENEUR DU HEADER
   ============================================= */

header#masthead .conteneur_header {
    display: flex !important;
    justify-content: space-between !important;
    max-width: 1600px !important;
    margin: 0 auto !important;
    padding: 15px 30px !important;
}

/* =============================================
   3. LOGO - TOUJOURS BLANC
   ============================================= */

header#masthead #logo_libner,
header#masthead.scroll #logo_libner,
body header#masthead #logo_libner {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    z-index: 10 !important;
    top: 0 !important;
    transform: none !important;
    margin: 0 !important;
    transition: none !important;
}

/* Logo BLANC visible sur fond noir - TOUJOURS */
header#masthead #logo_libner #logo_blanc,
header#masthead.scroll #logo_libner #logo_blanc,
body header#masthead #logo_libner #logo_blanc {
    opacity: 1 !important;
    display: flex !important;
    align-items: center !important;
    position: relative !important;
    z-index: 10 !important;
    transition: none !important;
}

header#masthead #logo_libner #logo_blanc img,
header#masthead.scroll #logo_libner #logo_blanc img {
    width: 180px !important;
    height: auto !important;
    transition: none !important;

}/* =============================================
   4. NAVIGATION PRINCIPALE - DESKTOP
   ============================================= */

@media (min-width: 1200px) {
    
    /* Cacher le bouton hamburger */
    header#masthead #menu_libner {
        display: none !important;
    }
    
    /* Menu horizontal */
    header#masthead #menu_lang {
        display: flex !important;
        align-items: center !important;
        gap: 40px !important;
    }
    
    /* Navigation principale */
    header#masthead #site-navigation.nav-pc {
        display: block !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu {
        display: flex !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 35px !important;
        align-items: center !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu > li {
        position: relative !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Liens du menu */
    header#masthead #site-navigation.nav-pc #primary-menu > li > a,
    header#masthead #site-navigation.nav-pc #primary-menu > li > span {
        color: #ffffff !important;
        font-size: 18px;
        font-weight: 540 !important;
        text-decoration: none !important;
        text-transform: uppercase !important;
        letter-spacing: 0.5px !important;
        padding: 10px 0 !important;
        display: block !important;
        transition: color 0.3s ease !important;
        position: relative !important;
    }
    
    /* Effet hover - soulignement */
    header#masthead #site-navigation.nav-pc #primary-menu > li > a:after {
        content: '' !important;
        position: absolute !important;
        bottom: 0 !important;
        left: 0 !important;
        width: 0 !important;
        height: 2px !important;
        background: #39b3e1!important;
        transition: width 0.3s ease !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu > li > a:hover {
        color: #ffffff !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu > li > a:hover:after {
        width: 100% !important;
    }
    
    /* Sous-menus */
    header#masthead #site-navigation.nav-pc #primary-menu > li .sub-menu {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        background: rgba(42, 42, 42, 0.98) !important;
        backdrop-filter: blur(10px) !important;
        -webkit-backdrop-filter: blur(10px) !important;
        min-width: 220px !important;
        padding: 15px 0 !important;
        box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3) !important;
        opacity: 0 !important;
        visibility: hidden !important;
        transition: all 0.3s ease !important;
        list-style: none !important;
        margin: 10px 0 0 0 !important;
        border-top: 2px solid #3ab3e5 !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu > li:hover .sub-menu {
        opacity: 1 !important;
        visibility: visible !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu > li .sub-menu li {
        margin: 0 !important;
        padding: 0 !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu > li .sub-menu li a {
        color: #ffffff !important;
        padding: 12px 25px !important;
        display: block !important;
        text-decoration: none !important;
        font-size: 15px !important;
        text-transform: none !important;
        transition: all 0.3s ease !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu > li .sub-menu li a:hover {
        background: #3ab3e5 !important;
        padding-left: 30px !important;
    }
}

/* =============================================
   5. MENU LANGUE - AVEC SÉPARATEUR
   ============================================= */

@media (min-width: 1200px) {
    
    /* Section langue */
    .menu_langue.pc {
        display: flex !important;
        align-items: center !important;
        gap: 25px !important;
        position: relative !important;
        background: transparent !important;
        padding: 0 !important;
        padding-left: 25px !important;
        margin: 0 !important;
        width: auto !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
    }
    
    /* SÉPARATEUR VERTICAL avant le sélecteur de langue */
    .menu_langue.pc:before {
        content: '' !important;
        position: absolute !important;
        left: 0 !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        width: 1px !important;
        height: 30px !important;
        background: rgba(255, 255, 255, 0.3) !important;
    }
    
    /* Cacher slogan et contact */
    .menu_langue.pc .tel_contact_l.pc {
        display: none !important;
    }
    
    /* Menu langue - style minimaliste comme Krone */
    .menu_langue.pc .wpml-ls-legacy-dropdown {
        margin: 0 !important;
        width: auto !important;
    }
    
    /* Reset complet des styles WPML par défaut - ULTRA PRIORITAIRE */
    .menu_langue.pc .wpml-ls-legacy-dropdown a,
    .menu_langue.pc .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle,
    .menu_langue.pc .wpml-ls-legacy-dropdown > ul > li > a,
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-current-language > a,
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-item a,
    .wpml-ls-sidebars-menu_langue .wpml-ls-legacy-dropdown a {
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        border-color: transparent !important;
        box-shadow: none !important;
        color: #ffffff !important;
    }
    
    /* Bouton principal langue */
    .menu_langue.pc .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle,
    .menu_langue.pc .wpml-ls-legacy-dropdown > ul > li > a {
        background: transparent !important;
        border: none !important;
        color: #ffffff !important;
        padding: 10px 0 !important;
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        transition: all 0.3s ease !important;
        font-size: 14px !important;
        text-transform: uppercase !important;
        font-weight: 700 !important;
        letter-spacing: 1px !important;
    }
    
   /* Afficher le drapeau */
.menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-flag {
    display: inline-block !important;
    margin-right: 8px !important;
    width: 18px !important;
    height: auto !important;
    vertical-align: middle !important;
}
/* Alignement des drapeaux dans le sous-menu */
.menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
    background: rgba(26, 26, 26, 0.98) !important;
    backdrop-filter: blur(10px) !important;
    border-top: 2px solid #3ab3e5 !important;
    position: absolute !important;
    top: 100% !important;
    right: 0 !important;
    left: auto !important;
    min-width: 160px !important;
}

.menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a {
    border: none !important;
    padding: 15px 25px !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}

.menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-sub-menu .wpml-ls-flag {
    display: inline-block !important;
    width: 20px !important;
    height: auto !important;
    margin: 0 !important;
    flex-shrink: 0 !important;
}

.menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a:hover {
    background: rgba(58, 179, 229, 0.2) !important;
    color: #3ab3e5 !important;
}
    
    /* Afficher seulement le code langue (FR, EN, DE) */
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-native,
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-display {
        font-size: 17px !important;
        font-weight: 540 !important;
    }
    
    /* Flèche vers le bas */
    .menu_langue.pc .wpml-ls-legacy-dropdown a.wpml-ls-item-toggle:after {
        content: "" !important;
        border: none !important;
        border-left: 5px solid transparent !important;
        border-right: 5px solid transparent !important;
        border-top: 5px solid #ffffff !important;
        margin-left: 5px !important;
        position: static !important;
        display: inline-block !important;
        vertical-align: middle !important;
    }
    
    /* Hover du bouton principal - TOUS LES ÉTATS */
    .menu_langue.pc .wpml-ls-legacy-dropdown a:hover,
    .menu_langue.pc .wpml-ls-legacy-dropdown a:focus,
    .menu_langue.pc .wpml-ls-legacy-dropdown a:active,
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-current-language:hover > a,
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-current-language:focus > a,
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-item:hover > a,
    .wpml-ls-sidebars-menu_langue .wpml-ls-legacy-dropdown a:hover,
    .wpml-ls-sidebars-menu_langue .wpml-ls-legacy-dropdown a:focus,
    .wpml-ls-legacy-dropdown .wpml-ls-current-language:hover > a,
    .wpml-ls-legacy-dropdown .wpml-ls-current-language:focus > a {
        color: rgba(255, 255, 255, 0.7) !important;
        background: transparent !important;
        background-color: transparent !important;
        border: none !important;
        border-color: transparent !important;
        box-shadow: none !important;
    }
    
    /* Flèche au hover */
    .menu_langue.pc .wpml-ls-legacy-dropdown a:hover:after,
    .menu_langue.pc .wpml-ls-legacy-dropdown a:focus:after {
        border-top-color: rgba(255, 255, 255, 0.7) !important;
    }
    
    /* Sous-menu déroulant */
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
        background: rgba(26, 26, 26, 0.98) !important;
        backdrop-filter: blur(10px) !important;
        -webkit-backdrop-filter: blur(10px) !important;
        border: none !important;
        border-top: 2px solid #3ab3e5 !important;
        box-shadow: 0 5px 15px rgba(0, 0, 0, 0.5) !important;
        min-width: 160px !important;
    	position: absolute !important;
    	top: 100% !important;
    	right: 0 !important;
    	left: auto !important;
    }
    
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a {
        border: none !important;
        border-radius: 0 !important;
        padding: 15px 25px !important;
        justify-content: flex-start !important;
        text-align: left !important;
        color: #ffffff !important;
    }
    
    .menu_langue.pc .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a:hover {
        background: rgba(58, 179, 229, 0.2) !important;
        color: #3ab3e5 !important;
        border: none !important;
    }
}

/* =============================================
   6. MOBILE - MENU HAMBURGER
   ============================================= */

@media (max-width: 1199px) {
    
    /* Header mobile - FOND NOIR */
    header#masthead,
    header#masthead.scroll,
    body header#masthead {
        padding: 15px 20px !important;
        background: rgba(26, 26, 26, 0.98) !important;
    }
    
    header#masthead .conteneur_header {
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
    }
    
    /* Logo mobile - VISIBLE */
    header#masthead #logo_libner {
        display: block !important;
        position: relative !important;
    }
    
    header#masthead #logo_libner #logo_blanc {
        display: block !important;
        opacity: 1 !important;
    }
    
    header#masthead #logo_libner #logo_blanc img {
        width: 140px !important;
        height: auto !important;
        display: block !important;
    }
    
    header#masthead #logo_libner #logo_couleur {
        display: none !important;
    }
    
    /* Cacher menu desktop */
    header#masthead #site-navigation.nav-pc,
    .menu_langue.pc {
        display: none !important;
    }
    
    /* Afficher hamburger - VISIBLE */
    header#masthead #menu_libner {
        display: block !important;
        position: relative !important;
    }
    
    header#masthead #menu_lang {
        display: flex !important;
        align-items: center !important;
    }
    
    /* Bouton hamburger BLANC sur fond noir */
    #menu_libner .vlt-menu-burger {
        display: flex !important;
        align-items: center !important;
        cursor: pointer !important;
        gap: 10px !important;
        z-index: 10 !important;
        position: relative !important;
    }
    
    #menu_libner .vlt-menu-burger .vlt-menu-burger__title {
        color: #ffffff !important;
        font-weight: 700 !important;
        font-size: 14px !important;
        text-transform: uppercase !important;
    }
    
    #menu_libner .vlt-menu-burger .vlt-menu-burger__toggle {
        display: flex !important;
        flex-direction: column !important;
        gap: 5px !important;
        width: 30px !important;
    }
    
    #menu_libner .vlt-menu-burger .vlt-menu-burger__toggle .line {
        display: block !important;
        width: 100% !important;
        height: 3px !important;
        background: #ffffff !important;
        transition: all 0.3s ease !important;
    }
    
    /* Animation hamburger ouvert */
    #menu_libner .vlt-menu-burger--opened .line-one {
        transform: rotate(45deg) translate(7px, 7px) !important;
    }
    
    #menu_libner .vlt-menu-burger--opened .line-two {
        opacity: 0 !important;
    }
    
    #menu_libner .vlt-menu-burger--opened .line-three {
        transform: rotate(-45deg) translate(7px, -7px) !important;
    }
    
    /* Menu mobile */
    #menu_libner .vlt-aside-menu-wrapper {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100vh !important;
        background: rgba(0, 0, 0, 0.9) !important;
        z-index: 10000 !important;
        visibility: hidden !important;
        opacity: 0 !important;
        transition: all 0.3s ease !important;
    }
    
    #menu_libner .vlt-aside-menu-wrapper.active,
    #menu_libner .vlt-menu-burger--opened + .vlt-aside-menu-wrapper {
        visibility: visible !important;
        opacity: 1 !important;
    }
    
    #menu_libner .vlt-aside-menu {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;
        width: 85% !important;
        max-width: 400px !important;
        height: 100vh !important;
        background: rgba(26, 26, 26, 0.98) !important;
        backdrop-filter: blur(10px) !important;
        -webkit-backdrop-filter: blur(10px) !important;
        transform: translateX(100%) !important;
        transition: transform 0.3s ease !important;
        overflow-y: auto !important;
        padding: 80px 30px 30px 30px !important;
    }
    
    #menu_libner .vlt-aside-menu-wrapper.active .vlt-aside-menu,
    #menu_libner .vlt-menu-burger--opened + .vlt-aside-menu-wrapper .vlt-aside-menu {
        transform: translateX(0) !important;
    }
    
    /* En-tête menu mobile */
    #menu_libner .vlt-aside-menu__header {
        position: absolute !important;
        top: 20px !important;
        right: 20px !important;
    }
    
    #menu_libner .vlt-aside-menu__header .vlt-menu-burger .vlt-menu-burger__title,
    #menu_libner .vlt-aside-menu__header .vlt-menu-burger .vlt-menu-burger__toggle .line {
        color: #ffffff !important;
    }
    
    /* Navigation mobile */
    #menu_libner .nav-mobile {
        display: block !important;
    }
    
    #menu_libner .nav-mobile #primary-menu {
        list-style: none !important;
        padding: 0 !important;
        margin: 0 !important;
    }
    
    #menu_libner .nav-mobile #primary-menu > li {
        margin-bottom: 20px !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
        padding-bottom: 20px !important;
    }
    
    #menu_libner .nav-mobile #primary-menu > li > a {
        color: #ffffff !important;
        font-size: 20px !important;
        font-weight: 600 !important;
        text-decoration: none !important;
        text-transform: uppercase !important;
        display: block !important;
    }
    
    /* Contact mobile */
    #menu_libner .menu_langue {
        margin-top: 40px !important;
        padding-top: 40px !important;
        border-top: 2px solid rgba(255, 255, 255, 0.2) !important;
    }
    
    #menu_libner .menu_langue .slogan {
        color: #ffffff !important;
        font-size: 14px !important;
        margin-bottom: 20px !important;
    }
    
    #menu_libner .menu_langue .tel_header a {
        color: #3ab3e5 !important;
        font-size: 18px !important;
        font-weight: 700 !important;
        text-decoration: none !important;
    }
    
    #menu_libner .menu_langue .contact_h a {
        display: inline-block !important;
        background: #3ab3e5 !important;
        color: #ffffff !important;
        padding: 12px 30px !important;
        border-radius: 25px !important;
        text-decoration: none !important;
        margin-top: 20px !important;
        font-weight: 600 !important;
        text-transform: uppercase !important;
    }
    
    /* Sélecteur de langue MOBILE */
    #menu_libner .menu_langue .wpml-ls-legacy-dropdown {
        margin-top: 30px !important;
        display: block !important;
    }
    
    #menu_libner .menu_langue .wpml-ls-legacy-dropdown a {
        background: transparent !important;
        border: 1px solid rgba(255, 255, 255, 0.3) !important;
        color: #ffffff !important;
        padding: 12px 20px !important;
        display: block !important;
        text-align: center !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        text-transform: uppercase !important;
    }
    
    #menu_libner .menu_langue .wpml-ls-legacy-dropdown .wpml-ls-flag {
        display: inline !important;
        margin-right: 10px !important;
    }
    
    #menu_libner .menu_langue .wpml-ls-legacy-dropdown .wpml-ls-sub-menu {
        background: rgba(42, 42, 42, 0.98) !important;
        border: 1px solid rgba(255, 255, 255, 0.2) !important;
        margin-top: 10px !important;
    }
    
    #menu_libner .menu_langue .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a {
        border: none !important;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
    }
    
    #menu_libner .menu_langue .wpml-ls-legacy-dropdown .wpml-ls-sub-menu a:last-child {
        border-bottom: none !important;
    }
}

@media (max-width: 1199px) {
    /* Forcer la position du menu */
    header#masthead #menu_libner {
        position: absolute !important;
        right: 15px !important;
        top: 15px !important;
        transform: none !important;
    }
    
    /* Aligner le burger */
    #menu_libner .vlt-menu-burger {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        padding: 8px 12px !important;
        margin: 0 !important;
        height: auto !important;
    }
    
    /* Texte MENU */
    #menu_libner .vlt-menu-burger .vlt-menu-burger__title {
        font-size: 14px !important;
        line-height: 1 !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Icône burger */
    #menu_libner .vlt-menu-burger .vlt-menu-burger__toggle {
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* Si besoin d'ajuster plus haut */
    header#masthead {
        position: relative !important;
    }
}

/* =============================================
   6. MOBILE - MENU HAMBURGER
   ============================================= */

@media (max-width: 1199px) {
    
    /* Header mobile - PLUS GRAND */
    header#masthead,
    header#masthead.scroll,
    body header#masthead {
        padding: 12px 20px !important;
        background: rgba(26, 26, 26, 0.98) !important;
        height: auto !important;
        min-height: 60px !important;
    }
    
    header#masthead .conteneur_header,
    header#masthead.scroll .conteneur_header {
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        height: auto !important;
        min-height: 45px !important;
    }
    
    /* Logo mobile - VISIBLE et aligné */
    header#masthead #logo_libner,
    header#masthead.scroll #logo_libner {
        display: flex !important;
        align-items: center !important;
        position: relative !important;
    }
    
    header#masthead #logo_libner #logo_blanc,
    header#masthead.scroll #logo_libner #logo_blanc {
        display: flex !important;
        align-items: center !important;
        opacity: 1 !important;
    }
    
    header#masthead #logo_libner #logo_blanc img,
    header#masthead.scroll #logo_libner #logo_blanc img {
        width: 130px !important;
        height: auto !important;
        display: block !important;
    }
    
    header#masthead #logo_libner #logo_couleur,
    header#masthead.scroll #logo_libner #logo_couleur {
        display: none !important;
    }
    
    /* Cacher menu desktop */
    header#masthead #site-navigation.nav-pc,
    .menu_langue.pc {
        display: none !important;
    }
    
    /* Afficher hamburger - VISIBLE */
    header#masthead #menu_libner,
    header#masthead.scroll #menu_libner {
        display: flex !important;
        align-items: center !important;
        position: relative !important;
        z-index: 100 !important;
    }
    
    header#masthead #menu_lang,
    header#masthead.scroll #menu_lang {
        display: flex !important;
        align-items: center !important;
    }
    
    /* Bouton hamburger BIEN VISIBLE */
    #menu_libner .vlt-menu-burger {
        display: flex !important;
        align-items: center !important;
        cursor: pointer !important;
        gap: 10px !important;
        z-index: 100 !important;
        position: relative !important;
        padding: 5px !important;
    }
    
    #menu_libner .vlt-menu-burger .vlt-menu-burger__title {
        color: #ffffff !important;
        font-weight: 700 !important;
        font-size: 13px !important;
        text-transform: uppercase !important;
    }
    
    #menu_libner .vlt-menu-burger .vlt-menu-burger__toggle {
        display: flex !important;
        flex-direction: column !important;
        gap: 4px !important;
        width: 28px !important;
    }
    
    #menu_libner .vlt-menu-burger .vlt-menu-burger__toggle .line {
        display: block !important;
        width: 100% !important;
        height: 3px !important;
        background: #ffffff !important;
        transition: all 0.3s ease !important;
    }
    
    /* Animation hamburger ouvert */
    #menu_libner .vlt-menu-burger--opened .line-one {
        transform: rotate(45deg) translate(7px, 7px) !important;
    }
    
    #menu_libner .vlt-menu-burger--opened .line-two {
        opacity: 0 !important;
    }
    
    #menu_libner .vlt-menu-burger--opened .line-three {
        transform: rotate(-45deg) translate(7px, -7px) !important;
    }
    
    /* Ajuster le padding du contenu */
    body #main {
        padding-top: 60px !important;
    }
}

/* Très petit mobile */
@media (max-width: 480px) {
    header#masthead,
    header#masthead.scroll {
        padding: 10px 15px !important;
    }
    
    header#masthead #logo_libner #logo_blanc img,
    header#masthead.scroll #logo_libner #logo_blanc img {
        width: 110px !important;
    }
    
    #menu_libner .vlt-menu-burger .vlt-menu-burger__title {
        font-size: 12px !important;
    }
}
/* =============================================
   7. AJUSTEMENT DU CONTENU
   ============================================= */

body #main {
    padding-top: 70px !important;
}

@media (max-width: 1199px) {
    body #main {
        padding-top: 70px !important;
    }
}

/* =============================================
   8. RESPONSIVE LOGO
   ============================================= */

@media (max-width: 768px) {
    header#masthead #logo_libner #logo_blanc img {
        width: 120px !important;
    }
}

@media (max-width: 480px) {
    header#masthead #logo_libner #logo_blanc img {
        width: 100px !important;
    }
}

/* =============================================
   9. MENU TOUJOURS IDENTIQUE (PAS DE CHANGEMENT AU SCROLL)
   ============================================= */

/* Forcer le même style au scroll */
header#masthead.scroll,
body.scroll header#masthead {
    background: rgba(26, 26, 26, 0.95) !important;
}

header#masthead.scroll #logo_libner #logo_blanc,
body.scroll header#masthead #logo_libner #logo_blanc {
    opacity: 1 !important;
    display: block !important;
padding-top: 10px;
}

header#masthead.scroll #logo_libner #logo_couleur,
body.scroll header#masthead #logo_libner #logo_couleur {
    display: none !important;
    opacity: 0 !important;
}

header#masthead.scroll #site-navigation.nav-pc #primary-menu > li > a,
body.scroll header#masthead #site-navigation.nav-pc #primary-menu > li > a {
    color: #ffffff !important;
}

/* Style actif pour la page courante */
header#masthead #site-navigation.nav-pc #primary-menu > li.current-menu-item > a,
header#masthead #site-navigation.nav-pc #primary-menu > li.current_page_item > a {
    position: relative !important;
}

header#masthead #site-navigation.nav-pc #primary-menu > li.current-menu-item > a:after,
header#masthead #site-navigation.nav-pc #primary-menu > li.current_page_item > a:after {
    width: 100% !important;
    opacity: 0.7 !important;
}
/* =============================================
   10. FIX ALIGNEMENT VERTICAL - ULTRA PRIORITAIRE
   ============================================= */

/* =============================================
   10. FIX ALIGNEMENT VERTICAL - DESKTOP UNIQUEMENT
   ============================================= */

@media (min-width: 1200px) {
    
    /* RESET COMPLET de l'alignement - DESKTOP SEULEMENT */
    header#masthead .conteneur_header,
    header#masthead.scroll .conteneur_header {
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        padding: 0 30px !important;
        height: 80px !important;
    }
    
    /* Logo - centré */
    header#masthead #logo_libner,
    header#masthead.scroll #logo_libner {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }
    
    /* Menu lang wrapper - centré */
    header#masthead #menu_lang,
    header#masthead.scroll #menu_lang {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
        gap: 40px !important;
    }
    
    /* Navigation - centré */
    header#masthead #site-navigation.nav-pc,
    header#masthead.scroll #site-navigation.nav-pc {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu,
    header#masthead.scroll #site-navigation.nav-pc #primary-menu {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
        list-style: none !important;
        margin: 0 !important;
        padding: 0 !important;
        gap: 35px !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu > li,
    header#masthead.scroll #site-navigation.nav-pc #primary-menu > li {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    header#masthead #site-navigation.nav-pc #primary-menu > li > a,
    header#masthead.scroll #site-navigation.nav-pc #primary-menu > li > a {
        padding: 0 !important;
        margin: 0 !important;
        line-height: 1.2 !important;
    }
    
    /* Menu langue - centré */
    .menu_langue.pc {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
        padding-left: 25px !important;
    }
    
    .menu_langue.pc .wpml-ls-legacy-dropdown {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }
    
    .menu_langue.pc .wpml-ls-legacy-dropdown a {
        padding: 0 !important;
        margin: 0 !important;
        line-height: 1.2 !important;
    }
}

/* =============================================
   11. UNIFORMISATION MOBILE - TOUTES LES PAGES
   ============================================= */

@media (max-width: 1199px) {
    
    /* FORCER la même hauteur sur TOUTES les pages */
    body header#masthead,
    body.home header#masthead,
    body.page header#masthead,
    body.single header#masthead,
    body.archive header#masthead,
    header#masthead,
    header#masthead.scroll,
    #masthead {
        padding: 15px 20px !important;
        background: rgba(26, 26, 26, 0.98) !important;
        height: auto !important;
        min-height: 65px !important;
        max-height: none !important;
    }
    
    body header#masthead .conteneur_header,
    body.home header#masthead .conteneur_header,
    body.page header#masthead .conteneur_header,
    header#masthead .conteneur_header,
    header#masthead.scroll .conteneur_header {
        padding: 0 !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        height: auto !important;
        min-height: 50px !important;
    }
    
    /* Logo - même taille partout */
    body header#masthead #logo_libner #logo_blanc img,
    header#masthead #logo_libner #logo_blanc img,
    header#masthead.scroll #logo_libner #logo_blanc img {
        width: 130px !important;
        height: auto !important;
        max-height: 40px !important;
    }
    
    /* Bouton hamburger - même style partout */
    body #menu_libner .vlt-menu-burger,
    #menu_libner .vlt-menu-burger {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 5px !important;
    }
    
    body #menu_libner .vlt-menu-burger .vlt-menu-burger__title,
    #menu_libner .vlt-menu-burger .vlt-menu-burger__title {
        font-size: 13px !important;
        font-weight: 700 !important;
        color: #ffffff !important;
    }
    
    /* Ajustement du contenu - même padding partout */
    body #main,
    body.home #main,
    body.page #main,
    #main {
        padding-top: 65px !important;
    }
}

/* Très petit mobile - uniformisé */
@media (max-width: 480px) {
    
    body header#masthead,
    header#masthead,
    header#masthead.scroll {
        padding: 12px 15px !important;
        min-height: 60px !important;
    }
    
    body header#masthead #logo_libner #logo_blanc img,
    header#masthead #logo_libner #logo_blanc img {
        width: 110px !important;
        max-height: 35px !important;
    }
}

/* =============================================
   12. FIX PAGE ACCUEIL V2 SPÉCIFIQUE
   ============================================= */

@media (max-width: 1199px) {
    
    /* Cibler TOUTES les classes body possibles */
    body.page-template-page-libner header#masthead,
    body.page-template-default header#masthead,
    body.page-id-1386 header#masthead,
    body header#masthead,
    header#masthead {
        padding: 15px 20px !important;
        background: rgba(26, 26, 26, 0.98) !important;
        height: auto !important;
        min-height: 65px !important;
        box-sizing: border-box !important;
    }
    
    body.page-template-page-libner header#masthead .conteneur_header,
    body.page-template-default header#masthead .conteneur_header,
    body header#masthead .conteneur_header {
        padding: 0 !important;
        height: auto !important;
        min-height: 50px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: space-between !important;
        box-sizing: border-box !important;
    }
    
    /* Annuler tout padding/margin supplémentaire */
    body header#masthead * {
        box-sizing: border-box !important;
    }
}

/* =============================================
   14. FIX LOGO ET CENTRAGE MENU MOBILE
   ============================================= */

@media (max-width: 1199px) {
    
    /* Logo - taille fixe */
    body header#masthead #logo_libner,
    header#masthead #logo_libner,
    header#masthead.scroll #logo_libner {
        display: flex !important;
        align-items: center !important;
        flex-shrink: 0 !important;
    }
    
    body header#masthead #logo_libner #logo_blanc img,
    header#masthead #logo_libner #logo_blanc img,
    header#masthead.scroll #logo_libner #logo_blanc img {
        width: 130px !important;
        max-width: 130px !important;
        min-width: 130px !important;
        height: auto !important;
        max-height: 35px !important;
    }
    
    /* Menu lang - centré verticalement */
    body header#masthead #menu_lang,
    header#masthead #menu_lang,
    header#masthead.scroll #menu_lang {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }
    
    /* Bouton hamburger - centré verticalement */
    body #menu_libner,
    #menu_libner,
    header#masthead #menu_libner {
        display: flex !important;
        align-items: center !important;
        height: 100% !important;
    }
    
    body #menu_libner .vlt-menu-burger,
    #menu_libner .vlt-menu-burger {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 0 !important;
        margin: 0 !important;
    }
}

/* Très petit mobile */
@media (max-width: 480px) {
    
    body header#masthead #logo_libner #logo_blanc img,
    header#masthead #logo_libner #logo_blanc img {
        width: 130px !important;
        max-width: 130px !important;
        min-width: 130px !important;
        height: auto !important;
        max-height: 35px !important;
    }
}
