/* Covid Banner */
.site-header:has(.top-banner-module) {
    padding-top: 0;
}

.top-banner-module {
    background-color: #1a2674;
    color: #fff;
    position: relative;
    transition: box-shadow 0.18s ease;
    z-index: 100;
}

.top-banner-module .inner-wrap {
    padding: 12px 72px 12px 180px;
}

.top-banner-module .hiw-left {
    align-items: center;
    display: flex;
    gap: 18px;
    justify-content: center;
    margin: 0;
    min-height: 44px;
}

.top-banner-module .hi-heading {
    color: #fff !important;
    flex: 1 1 auto;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    margin: 0;
    max-width: 820px;
    text-align: center;
    text-transform: none;
}

.top-banner-close {
    flex: 0 0 36px;
    align-items: center;
    background: transparent;
    border: 0;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-size: 22px;
    height: 36px;
    justify-content: center;
    line-height: 1;
    margin: 0;
    padding: 0;
    width: 36px;
}

.top-banner-close:hover,
.top-banner-close:focus {
    color: #fff;
    opacity: 0.8;
    outline: none;
}

.top-banner-close:focus-visible {
    outline: 2px solid #fff;
    outline-offset: 2px;
}

.top-banner-module.covid-banner-stuck {
    box-shadow: 0 3px 6.93px 0.07px rgba(40, 40, 40, 0.22);
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
}

.site-header .header-inner.sh-sticky-wrap.stuck {
    top: var(--covid-banner-height, 0px);
}

.site-header:has(.top-banner-module) .header-inner.sh-sticky-wrap {
    backface-visibility: hidden;
    transform: translateZ(0);
    will-change: transform;
}

.site-header:has(.top-banner-module) .header-inner.sh-sticky-wrap.stuck {
    animation: covid-banner-header-stick 0.16s ease-out;
}

.top-banner-module ~ .top-line {
    padding-top: 12px;
}

@keyframes covid-banner-header-stick {
    from {
        opacity: 0.98;
        transform: translate3d(0, -6px, 0);
    }

    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-header:has(.top-banner-module) .header-inner.sh-sticky-wrap.stuck {
        animation: none;
    }
}

@media (max-width: 1199px) {
    .top-banner-module .inner-wrap {
        padding-left: 150px;
    }
}

@media (max-width: 991px) {
    .top-banner-module .inner-wrap {
        padding: 10px 54px 10px 120px;
    }

    .top-banner-module .hi-heading {
        font-size: 14px;
    }
}

@media (min-width: 768px) {
    .top-banner-module ~ .sh-sticky-wrap:not(.stuck) {
        position: relative;
    }

    .site-header .sh-sticky-wrap.stuck .site-logo {
        top: 38% !important;
    }
}

@media (max-width: 767px) {
    .top-banner-module .inner-wrap {
        padding: 10px 48px 10px 18px;
    }

    .top-banner-module .hiw-left {
        min-height: 0;
    }

    .top-banner-module .hi-heading {
        font-size: 13px;
        line-height: 1.35;
        text-align: left;
    }
}
