
/* Mobile-first enhancements (m2m-mobile.css) */
@media (max-width: 640px){
  .container{ padding-left: 1rem; padding-right: 1rem; }
  header.nav .nav-inner{ flex-wrap: wrap; gap:.6rem; }
  header.nav .brand img{ height:34px; }
  header.nav .brand h1{ font-size: .95rem; }
  .nav-actions{ width:100%; display:grid; grid-template-columns:1fr; gap:.5rem; }
  .nav-actions .btn{ width:100%; justify-content:center; min-height:44px; }
  .hero{ padding-top: 2rem; padding-bottom: 2rem; }
  .hero-grid{ grid-template-columns: 1fr !important; }
  .card-grid{ grid-template-columns: 1fr !important; }
  .steps{ grid-template-columns: 1fr !important; }
  img, video, iframe{ max-width:100%; height:auto; }
  table{ display:block; width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
  input[type="text"], input[type="email"], input[type="tel"], textarea, select{
    width:100%; padding:.9rem .9rem; border-radius:12px; font-size:1rem;
  }
  .cta{ gap:.6rem; }
  footer .container{ gap:.75rem !important; }
  footer a{ padding:.4rem .5rem; display:inline-block; }
}

@media (min-width: 641px) and (max-width: 900px){
  .nav-actions .btn{ min-height:44px; }
  img, video, iframe{ max-width:100%; height:auto; }
  table{ display:block; width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
}
