/* ============================================================
   SmartCard PRO — Responsive
   ============================================================ */

/* ── Small tablets ─────────────────────────────── */
@media (min-width: 640px) {
  .stats-grid { grid-template-columns: repeat(4, 1fr); }
  .services-grid { grid-template-columns: repeat(2, 1fr); }
  .gallery-grid { grid-template-columns: repeat(3, 1fr); gap: 1rem; }
  .products-grid { grid-template-columns: repeat(2, 1fr); }
  .team-grid { grid-template-columns: repeat(2, 1fr); }
  .contact-grid { grid-template-columns: repeat(2, 1fr); }
  .hours-list { grid-template-columns: repeat(2, 1fr); }
  .about-values { grid-template-columns: repeat(3, 1fr); }
  .hours-top { flex-direction: row; align-items: center; justify-content: space-between; }
}

/* ── Tablets / small desktop ───────────────────── */
@media (min-width: 768px) {
  .section { padding: 8rem 1.5rem; }
  .navbar-toggle { display: none; }
  .navbar-links { display: flex !important; }
  .fab-mobile { display: none; }
  .fab-desktop { display: flex; }
  .footer-bottom { flex-direction: row; justify-content: space-between; }
  .hero-content { padding-top: 0; }
  .review-card { padding: 3rem; }
  .review-text { font-size: 1.25rem; }
}

/* ── Desktop ───────────────────────────────────── */
@media (min-width: 1024px) {
  .smartcard-grid { grid-template-columns: 1fr 1fr; }
  .about-grid { grid-template-columns: 1fr 1fr; gap: 5rem; }
  .about-float-card { right: 2rem; }
  .services-grid { grid-template-columns: repeat(3, 1fr); }
  .products-grid { grid-template-columns: repeat(3, 1fr); }
  .team-grid { grid-template-columns: repeat(3, 1fr); }
  .contact-grid { grid-template-columns: repeat(4, 1fr); }
  .location-grid { grid-template-columns: 1fr 1fr; }
  .location-map { aspect-ratio: 1; }
  .gallery-grid { grid-template-columns: repeat(3, 1fr); }
}

/* ── Large desktop ─────────────────────────────── */
@media (min-width: 1280px) {
  .hero h1 { font-size: 3rem; }
}

/* ── Mobile-only ───────────────────────────────── */
@media (max-width: 767px) {
  .navbar-links { display: none; }
  .navbar-toggle { display: flex; }
  .section { padding: 4rem 1.25rem; }
  .smartcard-section { padding: 4rem 1.25rem; }
  .fab-mobile { display: flex; }
  .fab-desktop { display: none; }
  body { padding-bottom: 4rem; }
}

/* ── Print ─────────────────────────────────────── */
@media print {
  .navbar, .fab-mobile, .fab-desktop, .splash, .scroll-indicator { display: none !important; }
}
