/* ===== MBPHA mobile & tablet fixes ===== */
img { max-width: 100%; height: auto; }
html, body { overflow-x: hidden; }

/* Hamburger button (hidden on desktop) */
.nav-toggle {
  display: none; background: none; border: 2px solid var(--navy, #14305C);
  border-radius: 8px; padding: 6px 12px; font-size: 1.25rem; line-height: 1;
  color: var(--navy, #14305C); cursor: pointer;
}

@media (max-width: 1000px) {
  /* Header becomes stackable */
  .header-inner { flex-wrap: wrap; }
  .nav-toggle { display: block; margin-left: auto; }

  /* Nav: hidden until toggled, then a full-width vertical panel */
  .main-nav { display: none; width: 100%; flex-direction: column; align-items: stretch; gap: 0; padding: 8px 0 14px; }
  body.nav-open .main-nav { display: flex; }
  .main-nav .nav-link { display: block; width: 100%; padding: 13px 4px; border-bottom: 1px solid var(--line, #e5e2da); }
  .nav-item { width: 100%; }

  /* Dropdowns: no hover on touch — tap to expand */
  .nav-item:hover .nav-dropdown { display: none; }
  .nav-dropdown { position: static; display: none; min-width: 0; border: none; box-shadow: none;
                  border-radius: 0; padding: 0 0 6px 18px; background: var(--paper-dim, #f6f5f1); }
  .nav-item.open .nav-dropdown { display: block; }
  .nav-item.open > .nav-link { color: var(--leaf-dark, #14591F); }

  /* Top bars: compact */
  .govbar-inner { justify-content: center; text-align: center; }
  .topbar-inner { justify-content: center; }

  /* Content */
  .section { padding: 44px 0; }
  .card-grid, .card-grid-2 { grid-template-columns: 1fr !important; }
  .footer-inner { grid-template-columns: 1fr; gap: 24px; }
  .cta-band { flex-direction: column; text-align: center; gap: 16px; }
}

@media (min-width: 641px) and (max-width: 1000px) {
  /* Tablet: two-column cards where space allows */
  .card-grid-2 { grid-template-columns: 1fr 1fr !important; }
  .footer-inner { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 640px) {
  .page-hero h1 { font-size: 1.55rem; }
  .page-hero.hero-photo { min-height: 240px; }
  .photo-band { min-height: 300px; padding: 44px 0; }
  .photo-band h2 { font-size: 1.4rem; }
  .pagetools .container { justify-content: center; }
  .footer-compliance { line-height: 2.4; }
  table { display: block; overflow-x: auto; }
  .form-grid-2, form .card > div[style*="grid"] { grid-template-columns: 1fr !important; }
}
@media (max-width: 1000px) {
  .nav-dropdown { position: static !important; width: 100% !important; min-width: 0 !important;
    border: none !important; box-shadow: none !important; border-radius: 0 !important;
    padding: 0 0 6px 18px !important; background: #f6f5f1 !important; display: none !important; }
  .nav-item.open .nav-dropdown { display: block !important; }
  .nav-item:hover .nav-dropdown { display: none !important; }
  .nav-item.open:hover .nav-dropdown { display: block !important; }
  .nav-dropdown a { white-space: normal; padding: 11px 12px; }
}
/* Kill the legacy theme mobile menu — our hamburger + main-nav is the only menu */
.mobile-menu-btn, #mobileMenuBtn, .mobile-nav { display: none !important; }
/* Restore OUR hamburger (exempt from the legacy-menu kill) */
button.nav-toggle { display: block !important; }
@media (min-width: 1001px) { button.nav-toggle { display: none !important; } }
