/* Shared geometry for the public home and team pages. */
#online-site-header,
#public-site-header {
    box-sizing:border-box;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
    align-items:center;
    gap:12px 20px;
    width:100%;
    margin:0;
    padding:16px max(16px,calc((100% - 1120px)/2));
    position:sticky;
    top:0;
    z-index:100;
    background:#0b132b;
    color:#f1f5f9;
    border:0;
    border-bottom:1px solid #29364d;
    font:16px/1.4 system-ui,-apple-system,"Segoe UI",sans-serif;
    letter-spacing:normal;
    text-align:left;
}
#online-site-header *,
#public-site-header * {
    box-sizing:border-box;
}
#public-site-header .psh-top { display:contents; }

#online-site-header #header-logo,
#public-site-header .psh-brand {
    grid-column:1;
    grid-row:1;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    gap:12px;
    min-width:0;
    width:auto;
    margin:0;
    padding:0;
    color:inherit;
    font:800 18px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif;
    letter-spacing:.5px;
    text-transform:uppercase;
    text-decoration:none;
    overflow-wrap:anywhere;
}
#online-site-header #header-logo img,
#public-site-header #psh-logo {
    width:40px!important;
    height:40px!important;
    max-width:40px!important;
    flex:0 0 40px;
    margin:0!important;
    object-fit:contain;
    border-radius:8px;
}
#online-site-header #header-logo span,
#public-site-header #psh-fallback {
    font-size:28px;
}
#public-site-header #psh-name { min-width:0; }

#online-site-header #header-socials,
#public-site-header .psh-socials {
    grid-column:2;
    grid-row:1;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    min-width:0;
    gap:8px!important;
    margin:0;
    padding:0;
}
#online-site-header #header-socials a,
#public-site-header .psh-socials a {
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    min-height:36px;
    margin:0!important;
    padding:8px 10px!important;
    border:0!important;
    border-radius:8px!important;
    background:#ffffff12!important;
    color:#f1f5f9!important;
    font:500 12px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif!important;
    text-decoration:none;
    white-space:nowrap;
}
#online-site-header .city-selector-wrap,
#public-site-header .psh-city-wrap {
    grid-column:3;
    grid-row:1;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    min-width:0;
    margin:0;
    padding:0;
    gap:0;
    font-size:0;
}
#online-site-header #city-selector,
#public-site-header #psh-city {
    box-sizing:border-box;
    width:auto;
    min-width:0;
    max-width:100%;
    min-height:36px;
    margin:0;
    padding:8px 10px;
    border:1px solid #334155;
    border-radius:8px;
    background:#17243a;
    color:#f1f5f9;
    font:500 13px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;
    cursor:pointer;
}

#online-site-header .nav-links,
#public-site-header .psh-navigation {
    grid-column:1 / -1;
    grid-row:2;
    display:flex;
    align-items:center;
    justify-content:flex-start;
    flex-wrap:nowrap;
    gap:24px;
    width:100%;
    min-width:0;
    margin:0;
    padding:0;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
}
#online-site-header .nav-links::-webkit-scrollbar,
#public-site-header .psh-navigation::-webkit-scrollbar { display:none; }
#online-site-header .nav-btn,
#public-site-header .psh-navigation a {
    display:inline-flex;
    align-items:center;
    flex:0 0 auto;
    min-height:36px;
    margin:0;
    padding:6px 0;
    border:0;
    border-radius:0;
    background:transparent;
    color:#f1f5f9;
    font:600 13px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif;
    text-transform:none;
    letter-spacing:normal;
    text-decoration:none;
    white-space:nowrap;
    cursor:pointer;
}
#online-site-header .nav-btn.active,
#online-site-header .nav-btn:hover,
#public-site-header .psh-navigation a:hover,
#public-site-header .psh-navigation a[aria-current="page"] {
    color:#f5ad32;
}
#online-site-header :is(a,button,select):focus-visible,
#public-site-header :is(a,button,select):focus-visible {
    outline:2px solid #f5ad32;
    outline-offset:2px;
}
#public-site-header .psh-error { grid-column:1 / -1; }
#online-site-header [hidden],
#public-site-header [hidden] { display:none!important; }

@media(max-width:760px) {
    #online-site-header,
    #public-site-header {
        grid-template-columns:minmax(0,1fr) auto;
        gap:10px 12px;
        padding:12px 16px 8px;
    }
    #online-site-header #header-logo,
    #public-site-header .psh-brand {
        grid-column:1 / -1;
        grid-row:1;
        font-size:16px;
    }
    #online-site-header #header-socials,
    #public-site-header .psh-socials {
        grid-column:1;
        grid-row:2;
    }
    #online-site-header .city-selector-wrap,
    #public-site-header .psh-city-wrap {
        grid-column:2;
        grid-row:2;
    }
    #online-site-header .nav-links,
    #public-site-header .psh-navigation {
        grid-row:3;
        gap:20px;
    }
}
@media(max-width:380px) {
    #online-site-header .city-selector-wrap,
    #public-site-header .psh-city-wrap {
        grid-column:1 / -1;
        grid-row:3;
        justify-content:flex-start;
    }
    #online-site-header .nav-links,
    #public-site-header .psh-navigation { grid-row:4; }
}
