/* ══════════════════════════════════════
   RESPONSIVE — ECO-landing V3
══════════════════════════════════════ */

@media (max-width:1100px){
  .split-sec{grid-template-columns:1fr 1fr;}
  .exp-cards{grid-template-columns:1fr 1fr;}
  .exp-card.tall{grid-row:span 1;min-height:300px;}
  .exp-card.normal{min-height:220px;}
  .exp-includes{grid-template-columns:repeat(2,1fr);}
  .prog-grid{grid-template-columns:repeat(3,1fr);gap:1rem;}
  .prog-panels{grid-template-columns:repeat(3,1fr);gap:1rem;}
  .testi-photo-grid{gap:.9rem;}

  /* Faculty */
  .faculty-grid{grid-template-columns:repeat(2,1fr);}
  .faculty-head{grid-template-columns:1fr;gap:1.5rem;align-items:start;}
}

@media (max-width:900px){
  /* Por qué ECOS */
  .porque-ecos{grid-template-columns:1fr;}
  .porque-photos{grid-template-rows:1fr 1fr;min-height:420px;}
  .porque-photo-single{min-height:340px;}
  .porque-content{padding:3.5rem var(--gap);}
  .porque-cards{grid-template-columns:1fr 1fr;}

  /* Hero V3 */
  .hero-main{grid-template-columns:1fr;gap:1.5rem;}
  .hero-aside{max-width:100%;min-width:unset;}
  .hero-h1{font-size:clamp(3.5rem,8vw,6rem);}
  .hero-stats-bar{grid-template-columns:repeat(2,1fr);}
  .hsb-col:nth-child(2){border-right:none;}

  /* Slide 1 — Aprende español */
  .hslide-content{grid-template-columns:1fr;gap:2rem;padding:5rem var(--gap) 5rem;text-align:center;}
  .hslide-text{order:2;}
  .hslide-visual{order:1;height:340px;}
  .hslide-circle{width:300px;height:300px;}
  .hslide-photo{width:270px;height:270px;}
  .hslide-desc{margin-left:auto;margin-right:auto;}
  .hslide-btns{justify-content:center;}

  /* Sections */
  .split-sec,.split-sec.reverse{grid-template-columns:1fr;direction:ltr;}
  .split-sec.reverse .split-photo{order:-1;}
  .split-photo{min-height:350px;}
  .ctg-content{grid-template-columns:1fr;gap:2rem;}

  /* Experiencias header — apilar y alinear */
  .exp-header{grid-template-columns:1fr;gap:1rem;text-align:left;}
  .exp-header-note{text-align:left;}

  /* Terraza — mosaic con 4ª fila auto para el badge */
  .terraza-content{grid-template-columns:1fr;gap:2.5rem;}
  .terraza-mosaic{
    grid-template-columns:1fr;
    grid-template-rows:repeat(3,minmax(220px,1fr)) auto;
    height:auto;max-height:none;gap:.7rem;
  }
  .tm-1{grid-column:1;grid-row:1;}
  .tm-2{grid-column:1;grid-row:2;}
  .tm-3{grid-column:1;grid-row:3;}
  .tm-brand{
    position:static;transform:none;
    grid-column:1;grid-row:4;
    width:fit-content;margin:.8rem auto 0;display:block;
  }
  .terraza-stats{grid-template-columns:1fr 1fr;gap:1rem 0;}
  .ts-col:nth-child(2){border-right:none;}
  .prog-grid{grid-template-columns:1fr 1fr;}
  .prog-features{grid-template-columns:repeat(2,1fr);}
  .apoyo-cards{grid-template-columns:1fr 1fr;}
  .testi-photo-grid{grid-template-columns:1fr;}
  .testi-photo-card{min-height:340px;}

  /* Faculty */
  .faculty{padding:4.5rem var(--gap);}
  .fc-head,.fc-row{grid-template-columns:1.2fr 1fr 1fr;}
  .fc-cell{padding:.9rem 1rem;font-size:.78rem;}
  .faculty-quote{grid-template-columns:1fr;gap:1rem;text-align:left;padding:1.8rem;}
  .fq-author{text-align:left;}

  /* Contacto */
  .cv3-methods{grid-template-columns:1fr;max-width:480px;}
  .cv6-card{padding:2rem 1.8rem 2rem 2.2rem;}

  /* Programas detail */
  .prog-features{grid-template-columns:repeat(2,1fr);}
  .prog-panels{grid-template-columns:1fr;}

  /* Terraza */
  .terraza-highlights{grid-template-columns:1fr;}

  .testi-bottom{grid-template-columns:1fr 1fr;gap:1rem 0;}
  .tb-col:nth-child(2),
  .tb-col:nth-child(4){border-right:none;}
}

@media (max-width:768px){
  .porque-cards{grid-template-columns:1fr;}
  :root{--gap:1.2rem;}

  /* ─── Legibilidad de párrafos en mobile ─── */
  .body-text{font-size:1rem;line-height:1.75;}
  .porque-card-d,
  .exp-card-d,
  .exp-card-tag{font-size:.92rem;line-height:1.6;}
  .exp-card-tag{font-size:.65rem;}
  .ctg-feat-t{font-size:.88rem;}
  .ctg-feat-d{font-size:.9rem;line-height:1.6;}
  .inc-item{font-size:.9rem;}
  .feat-d,.feat-t{font-size:.92rem;line-height:1.6;}
  .terraza-desc{font-size:1rem;line-height:1.8;}
  .terraza-h-sub{font-size:1.05rem;}
  .terraza-item{font-size:.95rem;}
  .th-text{font-size:.92rem;line-height:1.6;}
  .prog-photo-desc{font-size:.95rem;line-height:1.7;}
  .prog-photo-feat{font-size:.9rem;line-height:1.6;}
  .prog-photo-name{font-size:1.1rem;}
  .prog-feat-d{font-size:.9rem;line-height:1.6;}
  .prog-detail-d{font-size:1rem;line-height:1.7;}
  .prog-panel-li{font-size:.92rem;line-height:1.6;}
  .prog-panel-sub{font-size:.85rem;}
  .apoyo-photo-li{font-size:.92rem;line-height:1.6;}
  .apoyo-photo-t{font-size:1rem;}
  .fac-d{font-size:.92rem;line-height:1.65;}
  .fac-t{font-size:1rem;}
  .fc-cell{font-size:.92rem;}
  .fq-text{font-size:1rem;line-height:1.65;}
  .testi-photo-q{font-size:.98rem;line-height:1.7;}
  .testi-photo-origin{font-size:.82rem;}
  .testi-sub{font-size:.92rem;}
  .cv3-m-d{font-size:.92rem;line-height:1.65;}
  .cv3-hero-sub{font-size:1rem;line-height:1.7;}
  .cv6-sub{font-size:1rem;line-height:1.75;}
  .cv6-inp,.cv6-sel,.cv6-ta{font-size:1rem;}
  .cv6-trust-item{font-size:.85rem;}

  /* Navbar móvil — solo logo + CTA + hamburguesa */
  .topbar{display:none;}
  .site-nav{padding:0 1rem;}
  .nav-logo{padding:.45rem 0;gap:8px;}
  .logo-img{height:52px;}
  .logo-info{display:none;}
  .nav-links{display:none;}
  .nav-cta{
    padding:0 .85rem;height:36px;margin:.4rem 0;
    font-size:.6rem;letter-spacing:.08em;gap:.4rem;
  }
  .nav-cta .cta-full{display:none;}
  .nav-cta .cta-short{display:inline;}
  .nav-ham{display:flex;}

  /* Hero V3 */
  .hero-h1{font-size:clamp(2.8rem,9vw,4.5rem);}
  .hero-main{padding:0 var(--gap) 0;}
  .hero-stats-bar{padding:1rem var(--gap);grid-template-columns:repeat(2,1fr);}
  .hsb-col:nth-child(2){border-right:none;}
  .hsb-n{font-size:1.4rem;}
  .scroll-hint{display:none;}

  /* Slide 1 — Aprende español (mobile) */
  .hslide-title{font-size:clamp(2.2rem,9vw,3.4rem);}
  .hslide-desc{font-size:.95rem;}
  .hslide-visual{height:280px;}
  .hslide-circle{width:240px;height:240px;}
  .hslide-photo{width:218px;height:218px;}
  .hslider-arrow{width:38px;height:38px;font-size:1.2rem;}
  .hsa-prev{left:.6rem;} .hsa-next{right:.6rem;}
  .btn-pill-gold,.btn-pill-ghost{padding:.85rem 1.5rem;font-size:.7rem;}

  /* Sections */
  .exp-cards{grid-template-columns:1fr;}
  .exp-card.tall,.exp-card.normal{min-height:260px;}
  .exp-includes{grid-template-columns:repeat(2,1fr);}
  .prog-grid{grid-template-columns:1fr;}
  .apoyo-cards{grid-template-columns:1fr;}
  .testi-photo-grid{grid-template-columns:1fr;}
  .eaquals-row{flex-direction:column;}
  .cf-row{grid-template-columns:1fr;}
  .pstat{padding:1.2rem 1rem;}
  footer{flex-direction:column;align-items:center;text-align:center;}
  .cert-strip{justify-content:center;}

  /* Faculty */
  .faculty-grid{grid-template-columns:1fr;}
  .fc-head,.fc-row{grid-template-columns:1fr;}
  .fc-cell{border-right:none;border-bottom:1px solid rgba(255,255,255,.05);padding:.85rem 1rem;}
  .fc-row .fc-cell:first-child{background:rgba(255,255,255,.05);}
  .fc-head{display:none;}

  /* Contacto */
  .cv3-hero-body{padding:3.5rem var(--gap) 5rem;}
  .cv3-methods{margin-top:-3rem;}
  .cv6-card{padding:1.8rem 1.4rem 1.8rem 1.6rem;}
  .cv6-row{grid-template-columns:1fr;gap:1.6rem;}
  .cv6-foot{flex-direction:column;align-items:stretch;gap:1.2rem;}
  .cv6-submit{width:100%;justify-content:center;}

  /* Programas detail */
  .prog-features{grid-template-columns:1fr;}
}

@media (max-width:480px){
  .hero-h1{font-size:clamp(2.2rem,10vw,3.2rem);}
  .hero-stats-bar{grid-template-columns:repeat(2,1fr);}
  .hsb-col:nth-child(2){border-right:none;}
  .display-title{font-size:2rem;}
  .testi-bottom{grid-template-columns:1fr 1fr;}
  .prog-features{grid-template-columns:1fr;}
  .terraza-stats{grid-template-columns:1fr 1fr;}

  /* WhatsApp float más discreto en mobile */
  .wa-float{bottom:1rem;right:1rem;}
  .wa-float-btn{width:48px;height:48px;font-size:1.3rem;}
  .wa-float-badge{width:16px;height:16px;font-size:.45rem;}

  /* Video — botón play más pequeño en mobile */
  .ev-play{width:68px;height:68px;border-width:2px;}
  .ev-play svg{width:28px;height:28px;}
  .ev-stats{grid-template-columns:1fr;gap:1.2rem;border-top:none;padding-top:1.2rem;}
  .ev-stat{border-right:none;border-bottom:1px solid rgba(255,255,255,.06);padding-bottom:1rem;}
  .ev-stat:last-child{border-bottom:none;padding-bottom:0;}
  .ev-thumb-meta{bottom:.9rem;left:1rem;right:1rem;font-size:.6rem;}
  .ev-meta-time{font-size:.62rem;padding:.22rem .5rem;}
}