/* ============================================================
   RESPONSIVE — DDE ATLACOMULCO
   ============================================================ */

/* ── Tablet ≤ 1024px ── */
@media (max-width: 1024px) {
  :root { --nav-h: 60px; }

  .grid-4 { grid-template-columns: repeat(2,1fr); }
  .footer__grid { grid-template-columns: 1fr 1fr; gap: var(--gap-lg) var(--gap-md); }

  /* Nav collapse: keep nav links, hide search expand */
  .navbar__nav { gap: 0; }
  .nav-link     { padding: .4rem .55rem; font-size: .8rem; }

  .servicios-grid { grid-template-columns: repeat(2,1fr); }
}

/* ── Mobile ≤ 768px ── */
@media (max-width: 768px) {
  :root { --gap-xl: 4rem; --gap-lg: 2.4rem; }

  .topbar { display: none; }

  .grid-2, .grid-3 { grid-template-columns: 1fr; }
  .footer__grid    { grid-template-columns: 1fr; gap: var(--gap-lg); }
  .footer__bottom  { flex-direction: column; text-align: center; gap: .4rem; }

  /* Navbar: only show brand + search */
  .navbar__nav     { display: none; }
  .navbar__actions { gap: .5rem; }

  .hero { min-height: 440px; }

  .acceso-grid { grid-template-columns: repeat(2,1fr); gap: .75rem; }
  .acceso-card__icon { font-size: 1.8rem; }

  .noticias-grid   { grid-template-columns: 1fr; }
  .stats-grid      { grid-template-columns: repeat(2,1fr); gap: var(--gap-md); }
  .servicios-grid  { grid-template-columns: 1fr; }

  .newsletter__form  { flex-direction: column; }
  .newsletter__input { border-radius: var(--r-sm) !important; }
  .newsletter__btn   { border-radius: var(--r-sm) !important; }

  .noticia-card.featured { flex-direction: column; }
  .noticia-card.featured .noticia-card__img-wrap { width: 100%; height: 200px; }
}

/* ── Pequeño móvil ≤ 480px ── */
@media (max-width: 480px) {
  :root { --gap-xl: 3.2rem; }
  .acceso-grid { grid-template-columns: 1fr; }
  .stats-grid  { grid-template-columns: 1fr; }
  .feria-grid  { grid-template-columns: 1fr !important; }
  .btn--lg     { padding: .8rem 1.5rem; font-size: .95rem; }
}

/* ── Módulos específicos responsive ── */
@media (max-width: 768px) {
  .feria-cats { gap: .3rem; }
  .feria-cat  { font-size: .8rem; padding: .35rem .85rem; }
  .grid-3col-responsive, .maq-grid-equipos { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 480px) {
  .grid-3col-responsive, .maq-grid-equipos { grid-template-columns: 1fr !important; }
}

/* ── Movimiento reducido ── */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: .01ms !important;
    transition-duration: .01ms !important;
  }
}

/* ── Print ── */
@media print {
  .navbar, .footer, .topbar { display: none !important; }
  body { font-size: 12pt; }
}
