/* Shared brand logo visibility — standalone + master pages */

.brand-site-logo,
img.brand-site-logo,
.login-card-logo .brand-site-logo,
.login-card-logo img.brand-site-logo {
    display: block;
    margin: 0 auto;
    max-height: 90px;
    height: auto;
    width: auto;
    max-width: min(100%, 320px);
    object-fit: contain;
    object-position: center;
    background: #fff;
    border-radius: 10px;
    padding: 4px 10px;
    box-sizing: border-box;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.dashboard-page .site-header-brand.brand-site-logo,
.dashboard-page .site-header-logo .brand-site-logo {
    margin: 0;
    max-height: 48px !important;
    max-width: 240px !important;
    padding: 2px 8px;
    border-radius: 8px;
}

body.landing-page .landing-nav-bar .brand-site-logo,
body.landing-page .landing-nav-bar h1 a.logo .brand-site-logo {
    max-height: 83px;
    max-width: 285px;
    margin: 0;
}

body.landing-page footer .brand-site-logo {
    max-height: 72px;
    max-width: 280px;
    background: rgba(255, 255, 255, 0.95);
}

body.page-terms .terms-brand-logo.brand-site-logo {
    max-height: 52px;
    max-width: 180px;
    margin: 0;
    padding: 3px 8px;
    flex-shrink: 0;
}

body.page-forgot-password .login-card-logo .brand-site-logo,
body.login-page-body .login-card-logo .brand-site-logo {
    max-height: 88px;
}

@media (max-width: 767px) {
    body.landing-page .landing-nav-bar .brand-site-logo {
        max-height: 64px;
        max-width: 220px;
    }

    .dashboard-page .site-header-brand.brand-site-logo {
        max-height: 40px !important;
        max-width: 180px !important;
    }
}
