/*
 * Race to the Top header dropdown.
 * Desktop: standard submenu.
 * Mobile: accessible expandable navigation.
 */

.wp-block-navigation
.wp-block-navigation-item.gc-rtt-header-menu {
    position: relative;
}

.wp-block-navigation
.gc-rtt-header-menu
.wp-block-navigation__submenu-container {
    min-width: 250px;
    padding: 10px;
    border: 1px solid rgba(115, 151, 187, .35);
    border-radius: 14px;
    background: #0d1c2f;
    box-shadow: 0 18px 45px rgba(0, 0, 0, .28);
}

.wp-block-navigation
.gc-rtt-header-menu
.wp-block-navigation__submenu-container
.wp-block-navigation-item {
    width: 100%;
}

.wp-block-navigation
.gc-rtt-header-menu
.wp-block-navigation__submenu-container
.wp-block-navigation-item__content {
    display: block;
    width: 100%;
    padding: 11px 13px;
    border-radius: 9px;
    color: #d7e9fa;
    line-height: 1.3;
    box-sizing: border-box;
}

.wp-block-navigation
.gc-rtt-header-menu
.wp-block-navigation__submenu-container
.wp-block-navigation-item__content:hover,
.wp-block-navigation
.gc-rtt-header-menu
.wp-block-navigation__submenu-container
.wp-block-navigation-item__content:focus-visible {
    background: rgba(255, 196, 0, .14);
    color: #ffc400;
}

.wp-block-navigation
.gc-rtt-header-menu.current-menu-item
> .wp-block-navigation-item__content,
.wp-block-navigation
.gc-rtt-header-menu.current-menu-ancestor
> .wp-block-navigation-item__content {
    color: #ffc400;
    font-weight: 700;
}

@media (max-width: 782px) {
    .wp-block-navigation__responsive-container.is-menu-open
    .gc-rtt-header-menu
    .wp-block-navigation__submenu-container {
        min-width: 0;
        margin: 8px 0 0 14px;
        padding: 7px;
        border-radius: 11px;
        box-shadow: none;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .gc-rtt-header-menu
    .wp-block-navigation__submenu-container
    .wp-block-navigation-item__content {
        padding: 10px 12px;
    }
}

/*
 * Race to the Top mobile header color contract.
 * Prevents Twenty Twenty-Five's default white navigation overlay.
 */

@media screen and (max-width: 782px) {

    .wp-block-navigation__responsive-container.is-menu-open {
        background: #071321 !important;
        color: #d7e9fa !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation__responsive-container-content {
        background: #071321 !important;
        color: #d7e9fa !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation__container {
        width: 100%;
        align-items: stretch !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-item {
        width: 100%;
        color: #d7e9fa !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-item__content {
        display: block;
        width: 100%;
        padding: 11px 14px;
        border-radius: 9px;
        color: #d7e9fa !important;
        box-sizing: border-box;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-item__content:hover,
    .wp-block-navigation__responsive-container.is-menu-open
    .wp-block-navigation-item__content:focus-visible {
        background: rgba(255, 196, 0, .13) !important;
        color: #ffc400 !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .gc-rtt-header-menu
    > .wp-block-navigation-item__content {
        color: #ffc400 !important;
        font-weight: 800;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .gc-rtt-header-menu
    .wp-block-navigation__submenu-container {
        width: 100% !important;
        margin: 8px 0 12px !important;
        padding: 8px !important;
        border: 1px solid rgba(115, 151, 187, .35) !important;
        border-radius: 12px !important;
        background: #0d1c2f !important;
        box-shadow: none !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .gc-rtt-header-menu
    .wp-block-navigation__submenu-container
    .wp-block-navigation-item__content {
        color: #c7ddf5 !important;
    }

    .wp-block-navigation__responsive-container.is-menu-open
    .gc-rtt-header-menu
    .wp-block-navigation__submenu-container
    .current-menu-item
    > .wp-block-navigation-item__content {
        background: rgba(255, 196, 0, .14) !important;
        color: #ffc400 !important;
        font-weight: 800;
    }

    .wp-block-navigation__responsive-container-close {
        color: #ffffff !important;
    }

    .wp-block-navigation__responsive-container-close svg,
    .wp-block-navigation__responsive-container-open svg {
        fill: currentColor !important;
    }
}
