/* Shared responsive navigation rules. */
@media (min-width: 1280px) {
    .site-header > div > div:first-child {
        gap: 0.5rem;
    }

    .site-header > div > div:first-child > div:first-child,
    .site-header > div > div:first-child > div:last-of-type {
        flex: 0 0 auto;
    }

    .site-header .desktop-navigation {
        display: flex;
        flex: 1 1 auto;
        min-width: 0;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        white-space: nowrap;
    }

    .site-header .desktop-navigation > a {
        font-size: 0.75rem;
        line-height: 1.25rem;
        white-space: nowrap;
    }

    .site-header .desktop-navigation > a + a {
        margin-left: 0 !important;
    }

    .site-header > div > div:first-child > div:last-of-type {
        display: flex;
        align-items: center;
        gap: 0.5rem;
        white-space: nowrap;
    }

    .site-header .desktop-actions > a {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .site-header .desktop-actions > a:first-child {
        font-size: 0.75rem;
    }

    .site-header .desktop-actions > a:last-child {
        padding: 0.5rem 1rem;
    }
}

/* Do not squeeze the full desktop navigation at intermediate widths. */
@media (min-width: 1024px) and (max-width: 1279px) {
    .site-header .desktop-navigation,
    .site-header .desktop-actions {
        display: none !important;
    }

    .site-header #mobile-menu-btn {
        display: flex !important;
        margin-left: auto;
    }

    .site-header #mobile-menu:not(.hidden) {
        display: block !important;
    }
}
