/* Preserve native scrolling and navigation; no JavaScript or hidden overflow. */
main { overflow-wrap: anywhere; }
.eyebrow { flex-wrap: wrap; }
.pagination { width: auto; margin: 28px 0; }
.tablewrap { max-width: 100%; }
.table-scroll-hint { display: none; }

@media (max-width: 900px) {
  header nav { flex-wrap: wrap; }
  header nav a, footer a, .pagination a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
  }
  .pagination a, .pagination [aria-current] {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
  }
  .pagination { gap: 8px; align-items: center; }
  .table-scroll-hint { display: block; color: var(--muted); font-size: 13px; }
}

@media (max-width: 600px) {
  .searchbox input, .filters input, .filters select,
  .reportform input, .reportform textarea, .reportform select,
  .copy-destination { font-size: 16px; min-height: 44px; }
  .filters label { max-width: 100%; }
  .filters input, .filters select { max-width: 100%; }
  .directory-filters label { width: 100%; }
  .directory-filters input, .directory-filters select { width: 100%; }
  .capture-link, .subtle, .suggestions a { min-height: 44px; display: flex; align-items: center; }
  .sectionhead { flex-wrap: wrap; gap: 8px; }
  .resultmeta { flex-wrap: wrap; }
  .service-icon { flex-shrink: 0; }
  .hero { padding-top: 28px; }
  .hero h1 { font-size: clamp(32px, 9vw, 41px); letter-spacing: -1.5px; }
  .capture-grid { grid-template-columns: minmax(0, 1fr); }
  .capture-grid-compact { grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); }
  .capture-grid-compact .capture-card { max-width: 200px; }
}
