/* TAGHAT v4.3.2 — final header/logo + private-page cache fixes */

/* Mobile: make the real uploaded logo large and readable in the center. */
.tg-mobile-topbar {
    min-height: 94px;
    padding: 12px 16px;
    padding-top: calc(12px + env(safe-area-inset-top, 0px));
}
.tg-mobile-logo {
    width: min(68vw, 270px);
    height: 72px;
    justify-content: center;
    z-index: 2;
}
.tg-mobile-topbar .tg-mobile-logo .site-logo,
.tg-mobile-topbar .tg-mobile-logo img.site-logo {
    display: block;
    width: min(68vw, 270px) !important;
    height: auto !important;
    max-width: 270px !important;
    max-height: 72px !important;
    object-fit: contain;
}
.tg-mobile-burger,
.tg-mobile-topbar .tg-icon-btn {
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    z-index: 3;
}

/* Desktop/tablet: larger version of the site's existing custom logo. */
.tg-header-row .navbar-brand .site-logo,
.tg-header-row .navbar-brand img.site-logo {
    width: 180px !important;
    height: auto !important;
    max-width: 180px !important;
    max-height: 58px !important;
    object-fit: contain;
}
.site-logo { object-fit: contain; }

@media (max-width: 991.98px) {
    :root { --mobile-header-h: 94px; }
    body { padding-top: calc(var(--mobile-header-h) + env(safe-area-inset-top, 0px)); }
}

@media (max-width: 575.98px) {
    .tg-mobile-topbar {
        min-height: 92px;
        padding-left: 12px;
        padding-right: 12px;
    }
    .tg-mobile-logo {
        width: min(70vw, 245px);
        height: 68px;
    }
    .tg-mobile-topbar .tg-mobile-logo .site-logo,
    .tg-mobile-topbar .tg-mobile-logo img.site-logo {
        width: min(70vw, 245px) !important;
        max-width: 245px !important;
        max-height: 68px !important;
    }
}
