/* ── Tablet: 768px ─────────────────────────────────────────────── */
@media (max-width: 1023px) {
  .footer-grid { grid-template-columns: 1fr 1fr; gap: var(--space-lg); }
  .grid-4 { grid-template-columns: 1fr 1fr; }
  .grid-3 { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 767px) {
  :root { --nav-h: 60px; }
  .container { padding-inline: var(--space-md); }

  /* Nav */
  .nav-menu { display: none; }
  .nav-hamburger { display: flex; }

  /* Typography */
  .page-hero h1 { font-size: var(--font-size-xl); }
  .section-title { font-size: var(--font-size-xl); }
  .section { padding: var(--space-2xl) 0; }

  /* Grid */
  .grid-2, .grid-3, .grid-4 { grid-template-columns: 1fr; }
  .grid-auto { grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
  .form-grid-2 { grid-template-columns: 1fr; }

  /* Footer */
  .footer-grid { grid-template-columns: 1fr; gap: var(--space-lg); }
  .footer-bottom { flex-direction: column; text-align: center; }

  /* Hero section */
  .hero-inner { text-align: center; }
  .hero-btns { justify-content: center; }
  .hero-title { font-size: clamp(26px, 7vw, 40px); }

  /* Products */
  .cat-tabs { gap: 6px; }
  .cat-tab { padding: 7px 14px; font-size: 13px; }

  /* Contact */
  .contact-grid { grid-template-columns: 1fr; }
}

/* ── Mobile S: 380px ────────────────────────────────────────────── */
@media (max-width: 380px) {
  .btn-lg { padding: 11px 20px; font-size: 14px; }
  .cat-tab { padding: 6px 10px; font-size: 12px; }
}

/* ── Wide desktop: 1440px ──────────────────────────────────────── */
@media (min-width: 1440px) {
  :root { --max-w: 1360px; }
}
