/* =========================================================
   Himolan Peak Adventures — brand logo overrides.
   Header logo is sized to sit INSIDE the curved .logo-bg shape
   with ~3rem horizontal breathing room and scales with the bg
   across all breakpoints.
   Logo aspect after trim: ~5.11 : 1 (644 x 126).
   ========================================================= */

/* ---------- Desktop header (matches .logo-bg sizing) ---------- */
/* Default: .logo-bg is 92px tall, ~20% wide.
   Aim for ~72px tall logo with breathing room inside curve. */
.header-logo {
    display: flex;
    align-items: center;
    padding: 8px 4rem 8px 0.75rem;
}

.header-logo a {
    display: inline-block;
    line-height: 0;
}

.header-logo img {
    width: auto;
    height: auto;
    max-width: 200px;
    max-height: 65px;
    display: block;
    object-fit: contain;
    filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.18));
}

/* Ultra-wide (matches .logo-bg width:25%, height:93px) */
@media (min-width: 1930px) {
    .header-logo img {
        max-width: 230px;
        max-height: 70px;
    }
}

/* (matches .logo-bg width:30%, height:93px) */
@media (min-width: 2440px) and (max-width: 4180px) {
    .header-logo img {
        max-width: 260px;
        max-height: 75px;
    }
}

/* Medium-large devices (.logo-bg width:28%) */
@media (max-width: 1299px) {
    .header-logo {
        padding-right: 3.5rem;
    }
    .header-logo img {
        max-width: 190px;
        max-height: 62px;
    }
}

/* Large devices (.logo-bg width:40%, height:80px) */
@media (max-width: 1199px) {
    .header-logo {
        padding-right: 3rem;
    }
    .header-logo img {
        max-width: 180px;
        max-height: 58px;
    }
}

/* Tablet (.logo-bg width:50%) */
@media (max-width: 991px) {
    .header-logo {
        padding-right: 2rem;
    }
    .header-logo img {
        max-width: 170px;
        max-height: 54px;
    }
}

/* Small tablet (.logo-bg width:60%) */
@media (max-width: 767px) {
    .header-logo {
        padding-right: 1.5rem;
    }
    .header-logo img {
        max-width: 160px;
        max-height: 50px;
    }
}

/* Phone (.logo-bg width:70%) */
@media (max-width: 480px) {
    .header-logo {
        padding-right: 1.25rem;
    }
    .header-logo img {
        max-width: 150px;
        max-height: 46px;
    }
}

/* Small phone (.logo-bg width:80%) */
@media (max-width: 375px) {
    .header-logo img {
        max-width: 138px;
        max-height: 42px;
    }
}

/* ---------- Mobile slide-out menu ---------- */
.th-menu-wrapper .mobile-logo img,
.mobile-logo img {
    width: auto;
    height: auto;
    max-width: 220px;
    max-height: 66px;
    display: block;
    object-fit: contain;
    margin: 0 auto;
}

/* ---------- Footer logo (about widget) ---------- */
.footer-wrapper .th-widget-about .about-logo,
.footer-wrapper .about-logo,
.footer-widget .about-logo {
    margin-bottom: 22px;
}

.footer-wrapper .th-widget-about .about-logo img,
.footer-wrapper .about-logo img,
.footer-widget .about-logo img {
    width: auto;
    height: auto;
    max-width: 260px;
    max-height: 80px;
    display: block;
    object-fit: contain;
}

@media (max-width: 991px) {
    .footer-wrapper .about-logo img,
    .footer-widget .about-logo img {
        max-width: 240px;
        max-height: 72px;
    }
}

@media (max-width: 575px) {
    .footer-wrapper .about-logo img,
    .footer-widget .about-logo img {
        max-width: 220px;
        max-height: 66px;
    }
}

/* ---------- Side menu / generic about widget (non-footer) ---------- */
.th-widget-about .about-logo img:not(.footer-wrapper *),
.about-logo img {
    max-width: 220px;
    max-height: 66px;
}

/* ---------- Inner page banner / offer widget ---------- */
.widget_offer .banner-logo img,
.banner-logo img {
    width: auto;
    height: auto;
    max-width: 200px;
    max-height: 60px;
    display: block;
    object-fit: contain;
    margin: 0 auto;
}

/* ---------- Admin login + sidebar ---------- */
.admin-auth-hero-brand img {
    width: auto;
    height: auto;
    max-width: 260px;
    max-height: 80px;
    object-fit: contain;
    display: block;
}

.admin-sidebar-brand-logo,
.admin-sidebar-brand img {
    width: auto;
    height: auto;
    max-width: 200px;
    max-height: 60px;
    object-fit: contain;
    display: block;
}
