/* Mobile hamburger menu — loaded outside the ASP.NET CSS bundle
   so WebGrease minification cannot drop these rules, and after CMS
   custom CSS so we can override height:175px / transparent navbar. */

@media screen and (max-width: 991px) {
    body .menu-navigation .navigation-display {
        display: none !important;
    }

    body .menu-navigation .navbar-default-top {
        display: block !important;
    }

    body .menu-navigation,
    body .menu-navigation.menuScrolled {
        height: auto !important;
        min-height: 72px !important;
        overflow: visible !important;
        background-color: #ffffff !important;
    }

    body .menu-navigation .navbar.navbar-default,
    body .menu-navigation .navbar {
        max-width: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        background-color: #ffffff !important;
    }

    body .menu-navigation .navbar-header {
        float: none !important;
        display: flex !important;
        align-items: center;
        justify-content: space-between;
        padding: 8px 12px;
        min-height: 72px;
        background-color: #ffffff !important;
    }

    body .menu-navigation .navbar-brand.my-navbar {
        height: auto !important;
        padding: 0 !important;
        margin: 0 !important;
        float: none !important;
        order: 1;
    }

    body .menu-navigation .image-responsive.logo-img {
        width: 148px;
        max-width: 55vw;
        height: auto;
    }

    body .menu-navigation .navbar-toggle,
    body .menu-navigation .navbar-toggle.collapsed {
        display: block !important;
        float: none !important;
        margin: 0 !important;
        padding: 10px 12px;
        border: 1px solid #e5e5e5;
        border-radius: 2px;
        background: #ffffff;
        order: 2;
    }

    body .menu-navigation .navbar-default .navbar-toggle .icon-bar {
        background-color: #424242;
        width: 20px;
    }

    body .menu-navigation .navbar-collapse,
    body .menu-navigation .navbar-default .navbar-collapse {
        background-color: #ffffff !important;
        border-top: 1px solid #ececec;
        margin: 0 !important;
        padding: 0 0 16px !important;
        max-height: calc(100vh - 72px);
        overflow-x: hidden !important;
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        box-shadow: 0 10px 24px rgba(0, 0, 0, 0.08);
    }

    body .menu-navigation .navbar-collapse.collapse:not(.in) {
        display: none !important;
    }

    body .menu-navigation .navbar-collapse.in,
    body .menu-navigation .navbar-collapse.collapsing {
        display: block !important;
    }

    body .menu-navigation .nav.navbar-nav.navbar-right {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        float: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 16px 16px 10px !important;
        text-align: left !important;
    }

    body .menu-navigation .nav.navbar-nav.navbar-right > li {
        float: none !important;
        display: block !important;
        padding: 0 !important;
    }

    body .menu-navigation .navbar-nav .add-on {
        width: auto;
        min-width: 0;
        flex: 1 1 auto;
        display: flex;
    }

    body .menu-navigation .navbar-nav .add-on #srch-term,
    body .menu-navigation .navbar-nav #srch-term {
        width: 100% !important;
        margin-left: 0 !important;
        text-align: left !important;
        height: 40px;
    }

    body .menu-navigation .navbar-nav .add-on .input-group-btn {
        left: 0 !important;
    }

    body .menu-navigation .navbar-nav .add-on .btn {
        height: 40px;
    }

    body .menu-navigation .navbar-nav.navbar-right .dropdown > a {
        padding: 10px 12px;
        color: #424242;
        font-weight: 700;
        white-space: nowrap;
    }

    body .menu-navigation .hr-nav-display {
        display: block !important;
        margin: 4px 16px 8px;
        border-top: 1px solid #ececec;
    }

    body .menu-navigation .nav-display {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        gap: 0;
        padding: 0 0 8px;
        background-color: #ffffff !important;
    }

    body .menu-navigation .nav-display > .navigation-left,
    body .menu-navigation .nav-display > .navigation-right,
    body .menu-navigation .nav-display > span.nav.navbar-nav,
    body .menu-navigation .nav-display span.navbar-nav.navigation-left,
    body .menu-navigation .nav-display span.navbar-nav.navigation-right {
        display: block !important;
        float: none !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        clear: both !important;
        overflow: visible !important;
    }

    body .menu-navigation .nav-display .flexpage-blockWrapper,
    body .menu-navigation .nav-display .flexpage-block-container,
    body .menu-navigation .nav-display .fp_sitemapMenu .flexpage-block-container {
        display: block !important;
        width: 100% !important;
        float: none !important;
        position: static !important;
        height: auto !important;
        max-height: none !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
        align-items: stretch !important;
        background-color: #ffffff !important;
    }

    body .menu-navigation .nav-display .fpMenu,
    body .menu-navigation .nav-display .fp_sitemapMenu-menu,
    body .menu-navigation .nav-display .fp_sitemapMenu-navbar,
    body .menu-navigation .nav-display ul.nav.navbar-nav {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        width: 100% !important;
        float: none !important;
        position: static !important;
        height: auto !important;
        max-height: none !important;
        min-height: 0 !important;
        margin: 0 !important;
        overflow: visible !important;
        background-color: #ffffff !important;
    }

    body .menu-navigation .nav-display .fp_sitemapMenu-item,
    body .menu-navigation .nav-display .fp_sitemapMenu-item.level0,
    body .menu-navigation .nav-display li {
        display: block !important;
        float: none !important;
        position: relative !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 !important;
        padding: 0 !important;
        clear: both !important;
    }

    body .menu-navigation .nav-display .fp_sitemapMenu-item-text,
    body .menu-navigation .nav-display a.fp_sitemapMenu-item-text,
    body .menu-navigation .nav-display .fp_sitemapMenu-item-text.navbar-brand,
    body .menu-navigation .nav-display a.navbar-brand {
        float: none !important;
        display: block !important;
        position: relative !important;
        width: 100% !important;
        height: auto !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 14px 20px !important;
        line-height: 1.35 !important;
        white-space: normal !important;
        text-align: left !important;
        font-size: 15px !important;
        font-family: Roboto, sans-serif !important;
        border-bottom: 1px solid #f0f0f0;
        background-color: #ffffff !important;
    }

    body .menu-navigation .nav-display .navigation-left .fp_sitemapMenu-item-text {
        color: #424242 !important;
        font-weight: 500 !important;
    }

    body .menu-navigation .nav-display .navigation-right .fp_sitemapMenu-item-text {
        color: #b4002d !important;
        font-weight: 700 !important;
        font-size: 13px !important;
        letter-spacing: 0.02em;
    }

    body .menu-navigation .nav-display .navigation-right .fp_sitemapMenu-menu {
        margin-top: 8px !important;
        padding-top: 4px;
        border-top: 1px solid #f5f5f5;
    }

    body .menu-navigation .nav-display .fp_sitemapMenu-item-description {
        display: none !important;
    }

    .cover-div {
        width: auto !important;
        max-width: calc(100% - 24px);
        left: 12px !important;
        right: auto;
        transform: none !important;
    }
}
