/**
 * Repify lockup — last stylesheet wins.
 * Wordmark viewBox 951×247 (~3.85:1). Mark viewBox 335×247 (~1.36:1).
 * Never set width+height together. Height-only (or width-only for TV).
 */
:root {
    --rpf-logo-nav-h: 26px;
    --rpf-logo-nav-h-sm: 22px;
    --rpf-logo-auth-h: 52px;
    --rpf-logo-hero-h: clamp(56px, 11vw, 80px);
    --rpf-logo-mark-h: 28px;
    --rpf-rosso: #FF5D06;
}

.rpfy-logo {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    object-position: center;
    image-rendering: auto;
    flex-shrink: 0;
    pointer-events: none;
}

.rpfy-logo--nav {
    height: var(--rpf-logo-nav-h);
    max-width: min(240px, 74vw);
    object-position: left center;
}

.rpfy-logo--footer {
    height: 32px;
    max-width: min(240px, 90%);
    object-position: left center;
}

.rpfy-logo--mark {
    height: var(--rpf-logo-mark-h);
    width: auto;
    max-width: 40px;
}

.rpfy-logo--admin {
    height: var(--rpf-logo-nav-h);
    max-width: 196px;
}

.rpfy-logo--auth {
    height: var(--rpf-logo-auth-h);
    max-width: min(320px, 100%);
    margin: 0 auto 12px;
}

.rpfy-logo--hero {
    height: var(--rpf-logo-hero-h);
    max-width: min(720px, 92vw);
    margin: 0 auto;
}

.rpfy-logo--placa {
    width: 150px;
    height: auto;
    max-width: 42vw;
}

.rpfy-logo--tv {
    width: clamp(110px, 14vw, 150px);
    height: auto;
}

.rpfy-logo--bug {
    height: var(--rpf-logo-mark-h);
    width: auto;
    max-width: 140px;
}

/* Kill Nexus swapping the <img> src for a raster via CSS content */
header.transparent-header-on div.logo img,
.fixed-header-on header.transparent-header-on div.logo img {
    content: unset !important;
}

header div.logo img,
header div.logo img.rpfy-logo,
.fixed-header-on header div.logo img {
    height: var(--rpf-logo-nav-h) !important;
    width: auto !important;
    max-width: min(240px, 74vw) !important;
    max-height: 36px !important;
    object-fit: contain !important;
}

@media (max-width: 991px) {
    header div.logo img,
    header div.logo img.rpfy-logo {
        max-width: min(180px, 58vw) !important;
        height: var(--rpf-logo-nav-h-sm) !important;
    }
}

.header-logo {
    line-height: 0;
}

.header-logo img,
.header-logo img.rpfy-logo--hero {
    display: block;
    margin-left: auto;
    margin-right: auto;
    height: var(--rpf-logo-hero-h) !important;
    width: auto !important;
    max-width: min(720px, 92vw) !important;
    max-height: none !important;
    object-fit: contain !important;
}

.login-logo,
.register-logo {
    overflow: visible;
}

.login-logo img,
.register-logo img,
.login-logo img.rpfy-logo--auth {
    display: block;
    height: var(--rpf-logo-auth-h) !important;
    width: auto !important;
    max-width: min(320px, 100%) !important;
    max-height: 60px !important;
    margin: 0 auto 12px !important;
    object-fit: contain !important;
}

.main-header .logo img,
.main-header .logo .logo-lg img,
.main-header .logo .logo-mini img {
    display: inline-block;
    vertical-align: middle;
    height: var(--rpf-logo-nav-h) !important;
    width: auto !important;
    max-width: calc(100% - 10px) !important;
    max-height: 34px !important;
    object-fit: contain !important;
}

.main-header .logo .logo-mini img,
.main-header .logo .logo-mini img.rpfy-logo--mark {
    height: var(--rpf-logo-mark-h) !important;
    width: auto !important;
    max-width: 40px !important;
}

/* Lockup sits on black chrome — never paint rosso behind white+R */
.skin-pukiebook .main-header .logo:hover,
.main-header .logo:hover {
    background-color: #000000 !important;
    box-shadow: inset 0 0 0 9999px rgba(255, 255, 255, 0.06);
}

.stv-powered img,
.rtld-tv-powered img,
.powered-by-header img {
    width: clamp(110px, 14vw, 150px) !important;
    height: auto !important;
    max-width: 42vw;
    object-fit: contain !important;
}
