/* Mobile menu for public pages whose desktop navigation uses .nav-center. */
nav .nav-toggle[data-site-nav-toggle] {
    display: none;
}

@media (min-width: 901px) {
    nav .nav-center {
        gap: clamp(1rem, 2vw, 2.5rem);
    }
}

@media (max-width: 900px) {
    nav .nav-container {
        position: relative;
    }

    nav .nav-center {
        display: none !important;
    }

    nav .nav-center.open {
        display: flex !important;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        z-index: 20;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
        padding: 6px 0;
        margin: 0;
        background: #1b1b1b;
        border: 1px solid rgba(255, 255, 255, .15);
        box-shadow: 0 16px 30px rgba(0, 0, 0, .35);
    }

    nav .nav-center.open li {
        padding: 0;
        border-bottom: 1px solid rgba(255, 255, 255, .1);
    }

    nav .nav-center.open li:last-child {
        border-bottom: 0;
    }

    nav .nav-center.open a {
        display: block;
        padding: 13px 18px;
        font-size: .75rem;
    }

    nav .nav-toggle[data-site-nav-toggle] {
        display: grid !important;
        place-items: center;
        width: 36px;
        height: 36px;
        padding: 7px;
        border: 1px solid rgba(255, 255, 255, .25);
        border-radius: 6px;
        background: transparent;
        color: #fff;
        cursor: pointer;
    }

    nav .nav-toggle[data-site-nav-toggle] svg {
        width: 20px;
        height: 20px;
    }

    nav .nav-toggle[data-site-nav-toggle]:focus-visible {
        outline: 2px solid #fff;
        outline-offset: 3px;
    }
}

@media (max-width: 380px) {
    nav .nav-container {
        padding: .75rem .7rem;
    }

    nav .logo {
        gap: .45rem;
        font-size: .75rem;
        white-space: nowrap;
    }

    nav .logo-icon {
        flex: none;
    }

    nav .nav-right {
        gap: .4rem;
    }

    nav .nav-cta {
        padding: .55rem .65rem;
        font-size: .58rem;
        letter-spacing: .05em;
        white-space: nowrap;
    }
}
