/* Bandeau public commun — identique à la page d'accueil */
.public-global-header{
    position:relative;
    z-index:900;
    width:100%;
    background:#062f5f;
    color:#fff;
    box-shadow:0 3px 14px rgba(0,0,0,.14);
}

.public-global-header .header-inner{
    width:min(calc(100vw - 16px),1880px);
    max-width:none;
    min-height:72px;
    margin:auto;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
}

.public-global-header .brand{
    display:flex;
    align-items:center;
    gap:11px;
    flex:0 0 auto;
    color:#fff;
    text-decoration:none;
}

.public-global-header .site-logo{
    width:56px;
    height:56px;
    flex:0 0 56px;
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
    border-radius:50%;
}

.public-global-header .site-logo img{
    width:100%;
    height:100%;
    max-width:none;
    display:block;
    object-fit:contain;
}

.public-global-header .brand strong{
    display:block;
    color:#fff;
    font-size:1rem;
    line-height:1.1;
    text-transform:uppercase;
}

.public-global-header .brand-text{
    display:flex;
    flex-direction:column;
    min-width:0;
}

.public-global-header .brand-text > span{
    display:block;
    margin-top:3px;
    color:#8fa3ba;
    font-size:.66rem;
}

.public-global-header .main-nav{
    flex:1 1 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:4px;
    flex-wrap:nowrap;
}

.public-global-header .main-nav a{
    min-height:44px;
    padding:0 10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:9px;
    color:#fff;
    background:transparent;
    font-size:.69rem;
    font-weight:900;
    text-transform:uppercase;
    white-space:nowrap;
    text-decoration:none;
}

.public-global-header .main-nav a:hover,
.public-global-header .main-nav a.active{
    background:#0b4f91;
    color:#fff;
}

.public-global-header .member-btn{
    min-height:44px;
    padding:0 16px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:9px;
    background:#fff;
    color:#062f5f;
    font-size:.76rem;
    font-weight:900;
    white-space:nowrap;
    text-decoration:none;
}

@media(max-width:1450px){
    .public-global-header .header-inner{
        gap:10px;
    }
    .public-global-header .main-nav a{
        padding:0 7px;
        font-size:.62rem;
    }
    .public-global-header .brand-text > span{
        display:none;
    }
}

@media(max-width:1100px){
    .public-global-header .header-inner{
        padding:10px 0;
        flex-wrap:wrap;
    }
    .public-global-header .main-nav{
        order:3;
        width:100%;
        overflow-x:auto;
        justify-content:flex-start;
        padding-bottom:3px;
    }
}

@media(max-width:650px){
    .public-global-header .header-inner{
        width:calc(100vw - 16px);
    }
    .public-global-header .brand strong{
        font-size:.82rem;
    }
    .public-global-header .site-logo{
        width:42px;
        height:42px;
        flex-basis:42px;
    }
    .public-global-header .member-btn{
        min-height:38px;
        padding:0 10px;
        font-size:.65rem;
    }
}
