/* ============================================================
   INSTITUTO SANTA ROSA CENTRAL - Responsive Design
   ============================================================ */

/* ===========================
   TABLETS (≤1024px)
   =========================== */
@media (max-width: 1024px) {
  :root {
    --header-height: 70px;
    --preheader-height: 34px;
  }

  .container { padding-left: var(--space-5); padding-right: var(--space-5); }

  /* Header */
  .nav__link { padding: 0 var(--space-3); font-size: 0.78rem; }

  /* Hero */
  .hero { max-height: 620px; }
  .hero__title { font-size: clamp(1.6rem, 4vw, 2.8rem); }

  /* Grids */
  .cursos__grid { grid-template-columns: repeat(3, 1fr); }
  .patp__grid   { grid-template-columns: repeat(2, 1fr); }
  .stats__grid  { grid-template-columns: repeat(2, 1fr); }
  .stats__item  { border-right: none; border-bottom: 1px solid rgba(255,255,255,0.2); }
  .stats__item:nth-child(2) { border-right: none; }
  .stats__item:last-child   { border-bottom: none; }

  /* Why Section */
  .why__grid { gap: var(--space-10); }
  .why__features { grid-template-columns: 1fr; }
  .why__image img { height: 380px; }

  /* Footer */
  .footer__grid { grid-template-columns: 1fr 1fr; gap: var(--space-8); }
  .footer__brand { grid-column: 1 / -1; }

  /* Blog */
  .blog__grid { grid-template-columns: 1fr 1fr; }

  /* Convenios */
  .convenios__grid { gap: var(--space-6); }

  /* Beneficios & Testimonios Tablet */
  .beneficios__grid { gap: var(--space-8); }
  .testimonios__slider { height: 350px; }
  .testimonios__slider-container { padding: 0 var(--space-6); }
}

/* ===========================
   MOBILE LARGE (≤768px)
   =========================== */
@media (max-width: 768px) {
  :root {
    --header-height: 64px;
    --preheader-height: 0px;
  }

  /* Pre-header hidden on mobile */
  .preheader { display: none; }

  /* Header */
  .site-header { position: fixed; width: 100%; }
  .header__nav { display: none; }
  .header__actions { display: none; }
  .hamburger { display: flex; }
  .mobile-nav { display: block; top: var(--header-height); }
  .header__logo img { height: 45px; }
  .logo-name { font-size: 0.88rem; }

  /* Page offset for fixed header */
  body { padding-top: var(--header-height); }

  /* Hero */
  .hero {
    height: 75vh;
    min-height: 450px;
    max-height: 600px;
  }

  .hero__arrow { display: none; }
  .hero__title { font-size: clamp(1.6rem, 6vw, 2.4rem); }
  .hero__subtitle { font-size: 0.9rem; }
  .hero__text { max-width: 100%; }
  .hero__actions { gap: var(--space-3); }
  .hero__actions .btn { padding: 0.65rem 1.25rem; font-size: 0.78rem; }

  /* Why Section */
  .why__grid {
    grid-template-columns: 1fr;
    gap: var(--space-8);
  }
  .why__image { order: 2; }
  .why__content { order: 1; }
  .why__image img { height: 280px; }
  .why__image-badge { display: none; }
  .section-header { text-align: center; }
  .why__content .section-header { text-align: center; }
  .why__content .section-divider { margin: var(--space-4) auto 0; }

  /* Cursos */
  .cursos__grid { grid-template-columns: 1fr 1fr; gap: var(--space-4); }
  .curso-card__image { height: 160px; }

  /* PATP */
  .patp__grid { grid-template-columns: 1fr 1fr; gap: var(--space-4); }
  .patp-card { height: 320px; }

  /* Stats */
  .stats__grid { grid-template-columns: repeat(2, 1fr); gap: var(--space-4); }
  .stats__item { border: none; padding: var(--space-4); }

  /* CTA */
  .cta__inner {
    flex-direction: column;
    text-align: center;
    align-items: center;
  }
  .cta__text .horario { justify-content: center; }
  .cta__actions { flex-direction: column; width: 100%; }
  .cta__actions .btn { width: 100%; justify-content: center; }

  /* Convenios */
  .convenios__grid { grid-template-columns: 1fr; }

  /* Blog */
  .blog__grid { grid-template-columns: 1fr; }

  /* Footer */
  .footer__grid { grid-template-columns: 1fr; gap: var(--space-6); }
  .footer__brand { grid-column: 1; }
  .footer__bottom {
    flex-direction: column;
    align-items: center;
    text-align: center;
  }

  /* Section padding */
  .section-padding { padding-top: var(--space-12); padding-bottom: var(--space-12); }

  /* Popup */
  .popup-box { margin: var(--space-4); }
  .form-row { grid-template-columns: 1fr; }

  /* WhatsApp float */
  .whatsapp-float { bottom: 20px; right: 20px; width: 52px; height: 52px; }
  .back-to-top { bottom: 85px; right: 20px; }

  /* Page hero */
  .page-hero { padding: var(--space-10) 0; }
  .page-hero__title { font-size: clamp(1.5rem, 5vw, 2.2rem); }

  /* Beneficios Mobile */
  .beneficios__grid {
    grid-template-columns: 1fr;
    gap: var(--space-8);
  }
  .beneficios__image { order: 2; }
  .beneficios__content { order: 1; }
  .beneficios__image img { height: 280px; }

  /* Convenios Logos Mobile */
  .convenios__logos { gap: var(--space-4); margin-top: var(--space-6); margin-bottom: var(--space-6); }
  .convenio-logo-card { width: 140px; height: 75px; padding: var(--space-2) var(--space-4); }

  /* Testimonios Mobile */
  .testimonios__slider { height: 420px; }
  .testimonios__slider-container { padding: 0 var(--space-4); }
  .testimonio-card { padding: var(--space-6) var(--space-6); }
  .testimonios__arrow { display: none; } /* Ocultar flechas en móvil */
}

/* ===========================
   MOBILE SMALL (≤480px)
   =========================== */
@media (max-width: 480px) {
  :root { --header-height: 60px; }

  .container { padding-left: var(--space-4); padding-right: var(--space-4); }

  /* Hero */
  .hero { height: 80vh; min-height: 400px; }
  .hero__title { font-size: 1.6rem; }
  .hero__actions { flex-direction: column; }
  .hero__actions .btn { width: 100%; justify-content: center; }

  /* Cursos */
  .cursos__grid { grid-template-columns: 1fr; }

  /* PATP */
  .patp__grid { grid-template-columns: 1fr; }
  .patp-card { height: 280px; }

  /* Stats */
  .stats__grid { grid-template-columns: 1fr 1fr; }

  /* Why features */
  .why__features { grid-template-columns: 1fr; }

  /* Espec cards */
  .espec-card__image { height: 200px; }

  /* Popup */
  .popup-body { padding: var(--space-5); }
  .popup-header { padding: var(--space-6); }

  /* Testimonios Mobile Small */
  .testimonios__slider { height: 480px; }
}

/* ===========================
   PRINT STYLES
   =========================== */
@media print {
  .preheader,
  .hamburger,
  .mobile-nav,
  .whatsapp-float,
  .back-to-top,
  .popup-overlay { display: none !important; }

  .site-header { position: static; box-shadow: none; }
  body { padding-top: 0; }
  .hero { height: 300px; }
  .hero__controls,
  .hero__arrow { display: none; }

  a[href]::after {
    content: " (" attr(href) ")";
    font-size: 0.75rem;
    color: var(--color-gray-500);
  }
}
