/* Match Core's mobile overlay breakpoint; leave desktop navigation untouched. */
.gsc-mobile-navigation-header img { display: none; }
@media (max-width: 599px) {
    /* Outrank Core's .wp-block-navigation:not(.has-background) overlay rule. */
    .gsc-header .wp-block-navigation .wp-block-navigation__responsive-container.is-menu-open.is-menu-open:not(.disable-default-overlay) {
        position: fixed;
        inset: 0;
        background: transparent;
        color: var(--wp--preset--color--primary);
        padding: 0;
        overflow: hidden;
        animation: none;
    }
    .gsc-header .is-menu-open .wp-block-navigation__responsive-close {
        width: 100%;
        max-width: 100%;
        height: auto;
        min-height: 0;
        flex: 0 1 auto;
        max-height: 100vh;
        max-height: 100dvh;
        overflow-y: auto;
        overflow-x: hidden;
        overscroll-behavior: contain;
        padding: 20px 24px 24px;
        background: var(--wp--preset--color--base);
        border-bottom: 1px solid color-mix(in srgb, var(--wp--preset--color--primary) 14%, transparent);
        box-shadow: 0 6px 20px color-mix(in srgb, var(--wp--preset--color--primary) 14%, transparent);
        animation: gsc-mobile-menu-in 180ms ease-out both;
    }
    .gsc-header .is-menu-open .wp-block-navigation__responsive-dialog,
    .gsc-header .is-menu-open .wp-block-navigation__responsive-container-content {
        height: auto;
        min-height: 0;
        flex: 0 0 auto;
        background: transparent;
    }
    .gsc-header .is-menu-open .gsc-mobile-navigation-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 16px;
        padding-block: 4px;
        color: var(--wp--preset--color--primary);
    }
    .gsc-header .is-menu-open .gsc-mobile-navigation-header img {
        display: block;
        width: 64px;
        height: auto;
        flex-shrink: 0;
        object-fit: contain;
    }
    .gsc-header .is-menu-open .gsc-mobile-navigation-header .wp-block-navigation__responsive-container-close {
        position: static;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 44px;
        height: 44px;
        flex-shrink: 0;
    }
    .gsc-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
        padding-top: 0;
    }
    .gsc-header .is-menu-open .wp-block-navigation-item__content {
        color: var(--wp--preset--color--primary);
        border-radius: 4px;
        transition: background-color 140ms ease-out;
    }
    .gsc-header .is-menu-open .wp-block-navigation-item:not(:last-child) {
        box-shadow: 0 1px 0 color-mix(in srgb, var(--wp--preset--color--primary) 12%, transparent);
    }
    .gsc-header .is-menu-open .wp-block-navigation-item__content:hover,
    .gsc-header .is-menu-open .wp-block-navigation-item__content:active,
    .gsc-header .is-menu-open .wp-block-navigation-item__content[aria-current],
    .gsc-header .is-menu-open .current-menu-item > .wp-block-navigation-item__content {
        background: color-mix(in srgb, var(--wp--preset--color--secondary) 9%, var(--wp--preset--color--base));
    }
    .gsc-header .is-menu-open .wp-block-navigation__responsive-container-close {
        color: var(--wp--preset--color--primary);
        border-radius: 4px;
        transition: background-color 140ms ease-out, box-shadow 140ms ease-out;
    }
    .gsc-header .is-menu-open .wp-block-navigation__responsive-container-close:hover,
    .gsc-header .is-menu-open .wp-block-navigation__responsive-container-close:focus-visible {
        background: color-mix(in srgb, var(--wp--preset--color--secondary) 12%, var(--wp--preset--color--base));
        box-shadow: 0 0 0 6px color-mix(in srgb, var(--wp--preset--color--secondary) 12%, var(--wp--preset--color--base));
    }
    .gsc-header .is-menu-open .wp-block-navigation-item__content:focus-visible,
    .gsc-header .is-menu-open .wp-block-navigation__responsive-container-close:focus-visible {
        outline: 2px solid var(--wp--preset--color--secondary);
        outline-offset: 4px;
    }
    @keyframes gsc-mobile-menu-in {
        from { opacity: 0; transform: translateY(-8px); }
        to { opacity: 1; transform: translateY(0); }
    }
}
@media (max-width: 599px) and (prefers-reduced-motion: reduce) {
    .gsc-header .is-menu-open .wp-block-navigation__responsive-close { animation: none; }
    .gsc-header .is-menu-open .wp-block-navigation-item__content,
    .gsc-header .is-menu-open .wp-block-navigation__responsive-container-close { transition: none; }
}
