.navbar-brand img {
    height: 120px !important;
    width: auto !important;
    max-height: none !important;
    max-width: none !important;
}

/* JHS Host main header branding */
.jhshost-main-logo {
    width: 650px !important;
    height: auto !important;
    max-width: 55vw !important;
    object-fit: contain;
}

.navbar-brand {
    flex-shrink: 0;
}

/* JHS Host full-size branding header */
.jhshost-brand-header {
    width: 100%;
    padding: 20px 0 4px 0;
}

.jhshost-brand-header .jhshost-main-logo {
    width: 850px !important;
    max-width: 90% !important;
    height: auto !important;
    display: block !important;
}

@media (max-width: 767px) {
    .jhshost-brand-header .jhshost-main-logo {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* Center JHS Host branding */
.jhshost-brand-header {
    display: flex;
    justify-content: center;
}

.jhshost-brand-header a {
    display: block;
}

/* =========================================================
   JHS Host header alignment
   Keep branding, client navigation and body on same centerline
   ========================================================= */

/* Match the visible header area to the content below */
.jhshost-brand-header {
    width: 950px !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
}

/* Keep the large logo centered inside that column */
.jhshost-brand-header .jhshost-main-logo {
    width: 850px !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Put the FOSSBilling navigation on the same centerline */
header .navbar {
    width: 950px !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Stop Huraga from throwing the links against the right wall */
header .navbar-nav {
    justify-content: center !important;
}

/* Center the collapsed navbar contents as a group */
header .navbar-collapse {
    justify-content: center !important;
}

/* Mobile remains fluid */
@media (max-width: 991px) {
    .jhshost-brand-header,
    header .navbar {
        width: 100% !important;
    }

    .jhshost-brand-header .jhshost-main-logo {
        max-width: 95% !important;
    }
}
