/* Mobile navigation shares its layout and 980px breakpoint with style.css. */
@media (max-width: 980px) {
    .site-header { z-index: 1000; }
    .nav { height: 100dvh; overflow-y: auto; padding-top: 6rem; padding-bottom: 1.5rem; }
    .nav::before { top: 5rem; }
    .nav a::after { background: none; }
    .nav-toggle { width: 64px; border: 0; border-radius: 0; color: var(--ink); }
    .nav-toggle::before { content: "MENU"; font: .65rem "IBM Plex Mono", monospace; letter-spacing: .1em; }
    .nav-toggle span { display: none; }
    .site-header.is-nav-open .nav-toggle::before { content: "CLOSE"; }
}
@media (max-height: 600px) and (max-width: 980px) {
    .nav { align-items: start; }
    .nav::before { display: none; }
    .nav a { font-size: 1.6rem; }
}
