/* ============================================================
   SIGLO — RESPONSIVE
   ============================================================
   Breakpoints: 1100px · 1024px · 768px · 480px
   ============================================================ */

@media (max-width: 1100px) {
  .nav__lista { gap: 1.1rem; }
  .nav__link { font-size: 0.92rem; }
}

@media (max-width: 1024px) {
  /* Grids a 1 columna */
  .sistema__grid, .modelo__grid, .panel-integrado,
  .contacto__grid {
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
  /* Catálogo: selector arriba en horizontal, panel abajo */
  .catalogo { grid-template-columns: 1fr; gap: 1.5rem; }
  .catalogo__selector { position: static; flex-direction: row; overflow-x: auto; gap: 0.6rem; }
  .catalogo__tab { flex: 1 0 auto; min-width: 180px; }
  /* Aperturas fusionadas: App destacada deja de ocupar 2 filas */
  .aperturas__grid { grid-template-columns: 1fr 1fr; }
  .apertura--destacada { grid-row: auto; grid-column: 1 / -1; }
  /* Panel integrado */
  .panel-integrado { gap: 2rem; }
  .panel-integrado__visual { order: -1; min-height: 320px; }
  .panel-integrado__img { max-height: 380px; }
  /* Contacto: foto arriba */
  .contacto__grid { border-radius: var(--radio-xl); }
  .contacto__info { min-height: 280px; }
  .aplicaciones__grid { grid-template-columns: repeat(2, 1fr); }
  .ficha__metricas { grid-template-columns: repeat(2, 1fr); }
  .ficha__tablas { grid-template-columns: 1fr; }
  .footer__top { grid-template-columns: 1fr; gap: 2rem; }
}

@media (max-width: 768px) {
  /* Navegación móvil */
  .nav {
    position: fixed;
    top: var(--altura-header); left: 0; right: 0;
    background: var(--blanco);
    box-shadow: var(--sombra);
    padding: 1.5rem 2rem 2rem;
    transform: translateY(-120%);
    transition: transform var(--t);
    max-height: calc(100vh - var(--altura-header));
    overflow-y: auto;
  }
  .nav--abierto { transform: translateY(0); }
  .nav__lista { flex-direction: column; align-items: flex-start; gap: 0.5rem; }
  .nav__item { width: 100%; }
  .nav__link { color: var(--texto); font-size: 1.1rem; padding: 0.7rem 0; width: 100%; }
  .header--scrolled .nav__link { color: var(--texto); }
  .nav__toggle { display: flex; }
  .nav__toggle--activo span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
  .nav__toggle--activo span:nth-child(2) { opacity: 0; }
  .nav__toggle--activo span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }

  /* Submenú de productos en móvil (acordeón) */
  .nav__submenu {
    position: static; transform: none;
    opacity: 1; visibility: visible;
    box-shadow: none; min-width: 100%;
    padding: 0 0 0 1rem; display: none;
    background: transparent;
  }
  .nav__submenu::before { display: none; }
  .nav__item--dropdown.abierto-movil .nav__submenu { display: block; }
  .nav__sublink { padding: 0.6rem 0; }

  /* Brochure en móvil */
  .nav__link--brochure { border: none; padding: 0.7rem 0; justify-content: flex-start; }
  .nav__link--brochure span { display: inline; }

  /* Cotizar oculto en móvil (se accede por WhatsApp flotante) */
  .header__cta { display: none; }
  .idioma__codigo { display: inline; }

  /* Hero */
  .hero__titulo { font-size: clamp(2.6rem, 12vw, 3.8rem); }
  .hero__desc { font-size: 1.05rem; }
  .hero__scroll { display: none; }
  .hero__acciones { width: 100%; }

  /* Catálogo: apilar aperturas y specs */
  .aperturas__grid { grid-template-columns: 1fr; }
  .modelo__specs { grid-template-columns: 1fr; }
  .modelo__acciones { flex-direction: column; }
  .modelo__acciones .btn { width: 100%; }

  /* Aplicaciones 1 columna */
  .aplicaciones__grid { grid-template-columns: 1fr; }
  .aplicacion__desc { max-height: 100px; opacity: 1; margin-top: 0.3rem; }

  /* Ficha */
  .ficha__metricas { grid-template-columns: repeat(2, 1fr); gap: 1rem; }

  /* Formulario */
  .form-fila { grid-template-columns: 1fr; }

  /* Footer */
  .footer__cols { grid-template-columns: 1fr; gap: 1.75rem; }
  .footer__bottom { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 480px) {
  .hero__acciones { flex-direction: column; align-items: stretch; }
  .hero__acciones .btn { width: 100%; }
  .btn { font-size: 0.95rem; padding: 0.85rem 1.5rem; }
  .seccion__titulo { font-size: clamp(1.7rem, 8vw, 2.2rem); }
  .ficha__metricas { grid-template-columns: 1fr; }
  .catalogo__tab { min-width: 150px; padding: 1rem 1.1rem; }
  .catalogo__tab-nombre { font-size: 1.15rem; }
  .apertura__tiendas { flex-direction: column; }
  .apertura__tienda { width: 100%; justify-content: center; }
  .wa-flotante { width: 50px; height: 50px; bottom: 1rem; right: 1rem; }
  .wa-flotante svg { width: 26px; height: 26px; }
  .modelo__titulo, .contacto__titulo,
  .panel-integrado__titulo, .sistema__titulo { max-width: 100%; }
}
