.dynamic-header-navigation .dynamic-header-mega {
    padding: 0;
}

.dynamic-header-navigation .dynamic-header-mega--wide {
    width: min(100vw, 1920px);
    left: 0;
    transform: none;
}

.dynamic-header-navigation .dynamic-header-mega--narrow {
    width: min(1120px, calc(100vw - 32px));
    left: 0;
    transform: none;
}

.dynamic-header-mega__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 26%);
    gap: 24px;
    padding: 20px;
}

.dynamic-header-mega__sections {
    display: grid;
    grid-template-columns: repeat(var(--dynamic-menu-columns, 4), minmax(0, 1fr));
    gap: 24px;
}

.dynamic-header-mega--wide .dynamic-header-mega__sections {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.dynamic-header-mega--narrow .dynamic-header-mega__sections {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.dynamic-header-mega__image {
    min-height: 250px;
    overflow: hidden;
    border-radius: 8px;
}

.dynamic-header-mega__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.dynamic-header-navigation .dynamic-header-dropdown {
    min-width: 240px;
}

@media (min-width: 1200px) {
    .dynamic-header-navigation > .mainmenu > li > a {
        font-size: var(--dynamic-header-menu-font-size, 16px) !important;
    }

    /*
     * The header is injected into every storefront page. Keeping its stacking
     * context above page modules prevents hero, contract and content blocks
     * from covering an opened menu.
     */
    .rbt-header {
        isolation: isolate;
        z-index: 1000;
    }

    .rbt-header .rbt-header-middle,
    .rbt-header .rbt-header-common-sticky-activation {
        z-index: 1001;
    }

    .dynamic-header-navigation .dynamic-header-mega,
    .dynamic-header-navigation .dynamic-header-dropdown {
        z-index: 1002;
        pointer-events: none;
    }

    .rbt-main-navigation .dynamic-header-navigation li.with-rbt-megamenu:hover > .dynamic-header-mega,
    .mainbar-row .dynamic-header-navigation li.with-rbt-megamenu:hover > .dynamic-header-mega,
    .rbt-main-navigation .dynamic-header-navigation li.with-rbt-megamenu:focus-within > .dynamic-header-mega,
    .mainbar-row .dynamic-header-navigation li.with-rbt-megamenu:focus-within > .dynamic-header-mega,
    .rbt-main-navigation .dynamic-header-navigation li.with-rbt-megamenu.is-open > .dynamic-header-mega,
    .mainbar-row .dynamic-header-navigation li.with-rbt-megamenu.is-open > .dynamic-header-mega,
    .rbt-main-navigation .dynamic-header-navigation li.has-dropdown:hover > .dynamic-header-dropdown,
    .mainbar-row .dynamic-header-navigation li.has-dropdown:hover > .dynamic-header-dropdown,
    .rbt-main-navigation .dynamic-header-navigation li.has-dropdown:focus-within > .dynamic-header-dropdown,
    .mainbar-row .dynamic-header-navigation li.has-dropdown:focus-within > .dynamic-header-dropdown,
    .rbt-main-navigation .dynamic-header-navigation li.has-dropdown.is-open > .dynamic-header-dropdown,
    .mainbar-row .dynamic-header-navigation li.has-dropdown.is-open > .dynamic-header-dropdown {
        top: 100%;
        z-index: 1002;
        visibility: visible;
        opacity: 1;
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
        pointer-events: auto;
    }
}

.rbt-main-navigation .dynamic-header-navigation li.with-rbt-megamenu:focus-within > .dynamic-header-mega,
.mainbar-row .dynamic-header-navigation li.with-rbt-megamenu:focus-within > .dynamic-header-mega,
.rbt-main-navigation .dynamic-header-navigation li.has-dropdown:focus-within > .dynamic-header-dropdown,
.mainbar-row .dynamic-header-navigation li.has-dropdown:focus-within > .dynamic-header-dropdown {
    top: 100%;
    z-index: 5;
    visibility: visible;
    opacity: 1;
    clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
}

@media (max-width: 1199.98px) {
    .popup-mobile-menu .dynamic-header-mega {
        position: static;
        width: 100%;
        max-width: none;
        transform: none;
        padding: 0;
        box-shadow: none;
    }

    .popup-mobile-menu .dynamic-header-mega__grid,
    .popup-mobile-menu .dynamic-header-mega__sections {
        display: block;
        padding: 0;
    }

    .popup-mobile-menu .dynamic-header-mega > .rbt-megamenu-wrapper > .container-fluid {
        padding-right: 4px;
        padding-left: 4px;
    }

    .popup-mobile-menu .dynamic-header-mega__sections .single-mega-item {
        padding: 4px 0;
    }

    .popup-mobile-menu .dynamic-header-mega__sections .single-mega-item + .single-mega-item {
        margin-top: 6px !important;
    }

    .popup-mobile-menu .dynamic-header-mega__sections .mega-menu-item > li {
        margin: 0;
    }

    .popup-mobile-menu .dynamic-header-mega__sections .mega-menu-item > li > a {
        padding: 6px 8px !important;
        line-height: 20px;
    }

    .popup-mobile-menu .dynamic-header-mega__image {
        min-height: 0;
        margin-top: 6px;
    }

    .popup-mobile-menu .dynamic-header-mega__image img {
        max-height: 140px;
    }

    .popup-mobile-menu .dynamic-header-navigation .rbt-short-title {
        margin-bottom: 3px;
        font-size: 14px;
    }
}
