.site-menu { display: none; }
.nav a[aria-current="page"] { text-decoration: underline; text-underline-offset: 6px; }
@media (max-width: 900px) {
  .nav:has(.site-menu) .nav__in { grid-template-columns: 1fr auto auto; }
  .site-menu { display: block; }
  .site-menu summary { display: flex; align-items: center; gap: 12px; min-height: 44px; cursor: pointer; font-size: 14px; list-style: none; }
  .site-menu summary::-webkit-details-marker { display: none; }
  .site-menu summary span { font-size: 22px; font-weight: 300; }
  .site-menu[open] summary span { transform: rotate(45deg); }
  .site-menu__links { position: absolute; top: 100%; left: 0; right: 0; padding: 16px clamp(24px, 10vw, 160px) 24px; background: var(--surface-tint); color: var(--ink); border-bottom: 1px solid var(--line-strong); }
  .site-menu__links a { display: flex; align-items: center; min-height: 48px; border-bottom: 1px solid var(--line); }
}
@media (max-width: 600px) {
  .nav:has(.site-menu) .nav__in { grid-template-columns: 1fr auto; }
  .nav:has(.site-menu) .nav__in > .btn { display: none; }
}

@media (min-width: 901px) {
  .nav:has(.site-menu) .nav__in { grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); }
  .nav:has(.site-menu) .nav__links { justify-self: center; justify-content: center; }
}

/* Preserve production's mobile cost-review action; About remains in the footer. */
@media (max-width: 900px) {
  body:not(.about-page) .nav:has(.site-menu) .nav__in { grid-template-columns: 1fr auto; }
  body:not(.about-page) .nav .site-menu { display: none; }
  body:not(.about-page) .nav:has(.site-menu) .nav__in > .btn { display: inline-flex; }
}
