/* Le logo ne doit jamais être écrasé par le menu. */
.navbar .navbar-brand {
    flex-shrink: 0;
}

/* Sélecteur de langue FR | EN : barre du haut (ordinateur) */
.top-lang {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .5px;
}

.top-lang i {
    color: #4fa9d3;
}

.top-lang a {
    color: #fff;
    opacity: .75;
}

.top-lang a:hover,
.top-lang a.is-current {
    opacity: 1;
}

.top-lang a.is-current {
    text-decoration: underline;
    text-underline-offset: 5px;
}

.top-lang span {
    opacity: .5;
}

/* Sélecteur de langue FR | EN : menu déroulant (tablette et mobile) */
.navbar-nav .nav-lang {
    display: flex;
    align-items: center;
    gap: 2px;
}

/* Les libellés du menu restent sur une seule ligne (ex. « Type de piscine »). */
.navbar .nav-item .nav-link {
    white-space: nowrap;
}

.navbar-nav .nav-lang .nav-link {
    margin-right: 0;
    padding-right: 6px;
    padding-left: 6px;
    font-weight: 600;
    letter-spacing: .5px;
    opacity: .75;
}

.navbar-nav .nav-lang .nav-link.is-current,
.navbar-nav .nav-lang .nav-link:hover {
    opacity: 1;
}

.navbar-nav .nav-lang .nav-link.is-current {
    text-decoration: underline;
    text-underline-offset: 6px;
}

.navbar-nav .nav-lang-sep {
    opacity: .5;
}

/* Barre du haut : chaque information reste sur une ligne. */
.header-top-contact ul li a {
    white-space: nowrap;
}

/* Écrans moyens : barre du haut et menu un peu plus serrés pour que tout tienne sur une ligne. */
@media (min-width: 992px) and (max-width: 1199px) {
    .header-top-contact ul {
        gap: 14px;
    }

    .header-top-contact ul li {
        gap: 6px;
    }

    .header-top-contact ul li a {
        font-size: 13px;
    }

    .header-top-right {
        gap: 10px;
    }

    .header-top-social {
        display: flex;
        flex-wrap: nowrap;
        gap: 6px;
    }

    .header-top-social a {
        margin-left: 0;
    }

    .navbar .nav-item .nav-link {
        margin-right: 12px;
        font-size: 14px;
    }

    .navbar .nav-item.nav-lang .nav-link {
        margin-right: 0;
    }
}

@media (max-width: 991px) {
    .navbar-nav .nav-lang {
        padding: 10px 0;
    }
}
