/*
 * Public logo sizing controls — loaded last intentionally.
 * Keeps the header logo in the header row and makes CMS logo size settings authoritative.
 */

/* The legacy chrome stylesheet used top:50% on the brand. Neutralize every positional offset. */
.site-header .nav > .brand,
.home-page .site-header.site-header--overlay .nav > .brand,
.inner-page .site-header .nav > .brand,
.site-header .brand,
.site-header .brand:hover,
.site-header .brand:focus-visible{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;
    inset:auto !important;
    margin:0 !important;
    align-self:center !important;
    transform:none !important;
    translate:none !important;
}

/* Desktop: the CMS width is the actual displayed width; no old max-height cap. */
.site-header .brand img,
.site-header .brand:hover img,
.site-header .brand:focus-visible img,
.site-header.is-scrolled .brand img,
.home-page .site-header.site-header--overlay.is-scrolled .brand img{
    display:block !important;
    width:var(--header-logo-width,120px) !important;
    height:auto !important;
    max-width:none !important;
    max-height:none !important;
    margin:0 !important;
    transform:none !important;
    translate:none !important;
}

/* Keep the left brand above the hero copy without moving the hero content itself. */
@media(min-width:1101px){
    .site-header .nav > .brand{
        z-index:6 !important;
        flex:0 0 auto !important;
    }
}

/* Mobile remains compact even if the desktop logo is set large in CMS. */
@media(max-width:1100px){
    .site-header .brand img,
    .site-header.is-scrolled .brand img,
    .home-page .site-header.site-header--overlay.is-scrolled .brand img{
        width:min(var(--header-logo-width,120px),45vw) !important;
        height:auto !important;
        max-height:none !important;
    }
}

/* Footer: independent CMS width, with all older fixed-width/max-height rules neutralized. */
.site-footer .footer-brand{
    width:var(--footer-logo-width,160px) !important;
    max-width:none !important;
    height:auto !important;
}
.site-footer .footer-brand img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    max-width:none !important;
    max-height:none !important;
    object-fit:contain !important;
}
@media(max-width:650px){
    .site-footer .footer-brand{
        width:min(var(--footer-logo-width,160px),100%) !important;
        max-width:100% !important;
    }
}
