/* The existing navigation becomes a non-modal disclosure on mobile. */
body .service-menu-toggle,
body .site-header .header-nav .mobile-menu-contact { display: none; }
body .service-menu-toggle[hidden] { display: none; }
body .service-menu-toggle:focus-visible { outline: 3px solid var(--accent); outline-offset: 2px; }
@media (max-width: 1000px) {
  body .site-header[data-mobile-menu="ready"] { grid-template-columns: minmax(0, 1fr) 52px; padding-right: var(--pad); }
  body .site-header[data-mobile-menu="ready"] > .header-cta { display: none; }
  body .site-header[data-mobile-menu="ready"] .service-menu-toggle { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 5px; align-self: center; width: 52px; min-height: 52px; margin: 0; padding: 5px 0; border: 0; border-radius: 4px; background: transparent; color: var(--ink); cursor: pointer; }
  body .service-menu-label { font: 400 14px/1 var(--display); letter-spacing: .05em; }
  body .service-menu-icon { display: grid; gap: 5px; width: 22px; }
  body .service-menu-icon i { display: block; height: 1.5px; background: currentColor; }
  body .service-menu-toggle[aria-expanded="true"] .service-menu-icon i:first-child { transform: translateY(6.5px) rotate(45deg); }
  body .service-menu-toggle[aria-expanded="true"] .service-menu-icon i:nth-child(2) { opacity: 0; }
  body .service-menu-toggle[aria-expanded="true"] .service-menu-icon i:last-child { transform: translateY(-6.5px) rotate(-45deg); }
  body .site-header[data-mobile-menu="ready"] .header-nav { position: absolute; top: 100%; right: 0; left: 0; display: none; gap: 0; max-height: calc(100vh - 84px); max-height: calc(100dvh - 84px); overflow-y: auto; padding: 8px var(--pad) 24px; border-bottom: 1px solid var(--line); background: var(--paper); }
  body .site-header[data-mobile-menu="ready"][data-menu-open] .header-nav { display: grid; }
  body .site-header[data-mobile-menu="ready"] .header-nav a { display: flex; align-items: center; justify-content: flex-start; min-width: 0; min-height: 52px; padding: 14px 4px; border-bottom: 1px solid var(--line); font-size: 16px; line-height: 1.5; }
  body .site-header[data-mobile-menu="ready"] .header-nav a::after { display: none; }
  body .site-header[data-mobile-menu="ready"] .header-nav .mobile-menu-contact { display: flex; justify-content: space-between; margin-top: 14px; padding-inline: 18px; border: 0; border-radius: 30px; background: var(--accent-panel); color: #fff; }
}

@media (max-width: 1000px) {
  body .site-header[data-mobile-menu="ready"] .brand { min-width: 0; }
  body .site-header[data-mobile-menu="ready"] .brand > span { font-size: 14px; }
  body .site-header[data-mobile-menu="ready"] .header-nav .mobile-menu-contact { justify-content: space-between; }
}
