/* ============================================================
   RESPONSIVE — adaptaciones para tablet (≤920px) y
   teléfono (≤600px). Debe cargarse DE ÚLTIMO.
   ============================================================ */

@media (max-width:920px){
  nav.links{display:none;}
  nav.links.open{
    display:flex; position:absolute; top:100%; left:0; right:0;
    background:var(--navy-950); flex-direction:column; padding:20px 28px; gap:18px;
    border-top:1px solid rgba(217,184,74,0.18);
  }
  .menu-toggle{display:block;}
  .hero-grid{grid-template-columns:1fr; gap:40px;}
  .hero-photo-frame img, .hero-photo-frame .img-fallback{height:360px;}
  .seal{width:132px; height:132px; left:-12px; bottom:-24px;}
  .seal .num{font-size:36px;}
  .historia-layout{grid-template-columns:1fr; gap:50px;}
  .familias-grid{grid-template-columns:1fr;}
  .photo-cluster{height:360px; margin-top:10px;}
  .niveles-grid{grid-template-columns:1fr;}
  .activity-grid{grid-template-columns:repeat(2,1fr);}
  .vida-gallery{grid-template-columns:1fr;}
  .vg-item, .vg-item:nth-child(2), .vg-item:nth-child(3){height:auto;}
  .vg-tall img{height:280px;}
  .vg-small{height:220px;}
  .valores-grid{grid-template-columns:1fr 1fr;}
  .contacto-grid{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr 1fr; row-gap:34px;}
  .field-row{grid-template-columns:1fr;}
}
@media (max-width:600px){
  .valores-grid{grid-template-columns:1fr;}
  .foot-grid{grid-template-columns:1fr;}
  .hero-strip{gap:20px;}
  .historia,.familias,.niveles,.oferta,.perfil,.testimonios,.contacto{padding:72px 0;}
  .vida{padding:72px 0 60px;}
  .wrap{padding:0 20px;}
  .hero-grid{padding:24px 20px 0;}
  .hero h1{margin:16px 0 20px;}
  .hero-photo-frame img, .hero-photo-frame .img-fallback{height:300px;}
  .seal{width:116px; height:116px; left:-8px; bottom:-20px;}
  .seal .num{font-size:30px;}
  .seal .lbl{font-size:8.5px;}
  .seal .yrs{font-size:9px;}
  .activity-card{height:190px;}
  .form-card{padding:28px 20px;}
  .field input, .field select, .field textarea{font-size:16px;}
}
@media (max-width:480px){
  .brand-text span{display:none;}
}

/* ===== Refuerzos móvil (2026-07-10) ===== */
@media (max-width:600px){
  .activity-grid{grid-template-columns:1fr;}
  .activity-card .label{
    background:linear-gradient(180deg, transparent, rgba(8,11,40,0.95));
    font-size:14px; padding:12px 12px 10px;
  }
}
/* Pantallas táctiles: sin zoom al tocar las tarjetas */
@media (hover:none){
  .activity-card:hover img{transform:none;}
  .testi-card:hover,
  .testi-card:nth-child(3n+1):hover,
  .testi-card:nth-child(3n):hover{transform:none; box-shadow:0 6px 18px rgba(8,11,40,.10);}
}

/* ===== Testimonios — muro de Instagram (2026-07-10) ===== */
@media (max-width: 960px){
  .testi-wall{ grid-template-columns:repeat(2, 1fr); }
}
@media (max-width: 640px){
  .testi-wall{
    display:flex;
    overflow-x:auto;
    scroll-snap-type:x mandatory;
    gap:14px;
    padding:6px 4px 18px;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  .testi-wall::-webkit-scrollbar{ display:none; }
  .testi-card{
    flex:0 0 82%;
    scroll-snap-align:center;
    transform:none !important;
  }
}
