.elementor-16444 .elementor-element.elementor-element-5448367{--display:flex;}.elementor-16444 .elementor-element.elementor-element-5448367.e-con{--flex-grow:0;--flex-shrink:0;}.elementor-16444 .elementor-element.elementor-element-4e50abf{--display:flex;}body.elementor-page-16444:not(.elementor-motion-effects-element-type-background), body.elementor-page-16444 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}@media(min-width:768px){.elementor-16444 .elementor-element.elementor-element-5448367{--width:108.033%;}}/* Start custom CSS for html, class: .elementor-element-b25f7fb *//* ════════════════════════════════════════
   FIX HERO CHESSCUL — CSS ADICIONAL
   México landing + sistema global
════════════════════════════════════════ */

.hero,
.hero__inner,
.hero__inner > div,
.hero__inner > aside{
  box-sizing:border-box !important;
}
.hero{ overflow:hidden !important; }
html,body{ overflow-x:hidden !important; }

.tag--light::before,.tag--light::after{ content:none !important;display:none !important; }

.hero__sub{ color:rgba(242,237,224,.70) !important; }

.hero__social{
  display:inline-flex !important;align-items:center !important;
  gap:10px !important;margin:0 0 28px !important;
}
.hero__stars{
  color:#e8b84b !important;letter-spacing:1.4px !important;
  font-size:15px !important;line-height:1 !important;white-space:nowrap !important;
}
.hero__social-text{ font-size:13.5px !important;font-weight:400 !important;color:#b7ae9d !important; }
.hero__social-text strong{ color:#f2ede0 !important;font-weight:600 !important; }

.hero__note-1clase span{ display:inline; }
.hero__note-1clase strong{ color:var(--gold) !important;font-weight:600 !important;margin:0 3px !important;white-space:nowrap !important; }

.card__per{ color:rgba(242,237,224,.48) !important;font-weight:400 !important; }
.hero__card .card__per{ color:rgba(242,237,224,.48) !important; }

/* ════════════════════════════════════════
   LEGIBILIDAD GLOBAL — WCAG AA
   El cambio más importante: 300→400
════════════════════════════════════════ */

/* Secciones oscuras: todos los párrafos */
.section-dark p,
.section-dark li{
  font-weight:400 !important;
  font-size:15px !important;
  line-height:1.75 !important;
  color:var(--dt2) !important;
}

/* Seo-content: el bloque de texto largo */
.seo-content{
  font-size:15px !important;
  font-weight:400 !important;
  line-height:1.82 !important;
  color:var(--t2) !important;
}
.seo-content h2{
  font-family:'Playfair Display',serif;
  font-size:22px !important;
  font-weight:700 !important;
  color:var(--t1) !important;
  margin:32px 0 12px !important;
}
.seo-content h3{
  font-size:17px !important;
  font-weight:600 !important;
  color:var(--t2) !important;
  margin:20px 0 8px !important;
}
.seo-content p{ font-weight:400 !important;margin-bottom:14px !important; }
.seo-content li{ font-weight:400 !important;margin-bottom:7px !important; }
.seo-content strong{ font-weight:600 !important;color:var(--t1) !important; }

/* Hora box */
.hora-es{ font-size:14px !important;font-weight:400 !important;color:var(--dt2) !important; }
.hora-mx{ font-size:15px !important;font-weight:600 !important;color:var(--gold) !important; }

/* Tarjetas de horario (los divs con textos explicativos) */
.section-dark [style*="font-size:13px"][style*="color:var(--dt2)"],
.section-dark [style*="font-size:13px;font-weight:400"] {
  font-size:14px !important;
  font-weight:400 !important;
  color:var(--dt2) !important;
  line-height:1.68 !important;
}

/* Ciudad cards */
.pais-city__name{ font-size:13px !important;font-weight:500 !important; }
.pais-city__sub{ font-size:12px !important;font-weight:400 !important;color:var(--dt3) !important; }

/* Profesores mini cards */
.section-light [style*="font-size:11px"][style*="color:var(--t3)"] {
  font-size:12px !important;
  font-weight:400 !important;
  color:var(--t3) !important;
  line-height:1.55 !important;
}

/* Nota final de la imagen clase */
.section-light [style*="font-size:11px"][style*="color:var(--t4)"] {
  font-size:12px !important;
  font-weight:400 !important;
}

/* CTA final */
.cta-final__sub{
  font-size:16px !important;
  font-weight:400 !important;
  color:var(--dt2) !important;
}
.cta-trust-item{ font-size:14px !important;font-weight:400 !important; }

/* ════════════════════════════════════════
   DESKTOP (961px+)
════════════════════════════════════════ */
@media (min-width:961px){
  .hero__inner{
    max-width:1280px !important;margin-left:auto !important;margin-right:auto !important;
    padding:52px 48px 56px !important;
    display:grid !important;grid-template-columns:1fr 300px !important;
    gap:48px !important;align-items:start !important;
  }
  .hero__card{ width:300px !important; }
}

/* ════════════════════════════════════════
   TABLET (≤960px)
════════════════════════════════════════ */
@media (max-width:960px){
  .hero__inner{
    display:block !important;max-width:100% !important;
    padding:40px 28px 46px !important;
  }
  .hero__card{ margin-top:28px !important;width:100% !important;max-width:520px !important; }
  .hero__pills{ display:flex !important;flex-direction:column !important;align-items:flex-start !important;gap:8px !important; }
  .hero__pill{ width:auto !important;max-width:100% !important;white-space:nowrap !important; }

  /* Horarios: 2 col → 1 col en tablet */
  .hora-grid{ grid-template-columns:1fr !important;gap:14px !important; }

  /* SEO 2 cols → 1 col */
  .seo-2col{ grid-template-columns:1fr !important;gap:32px !important; }

  /* Ciudades: 4 cols → 2 cols */
  .pais-cities{ grid-template-columns:repeat(2,1fr) !important; }
  .latam-grid{ grid-template-columns:repeat(2,1fr) !important; }
}

/* ════════════════════════════════════════
   MÓVIL (≤767px)
════════════════════════════════════════ */
@media (max-width:767px){
  .hero__inner{ display:block !important;padding:32px 20px 38px !important; }
  .hero__piece{ display:none !important; }
  .hero__badge{ margin-bottom:22px !important; }

  .tag--light{
    max-width:100% !important;white-space:normal !important;
    line-height:1.35 !important;font-size:10px !important;
    letter-spacing:.055em !important;padding:7px 12px !important;
  }

  .hero__h1{
    font-size:clamp(28px,8vw,38px) !important;
    line-height:1.05 !important;margin-bottom:18px !important;
  }
  .hero__sub{ font-size:16px !important;line-height:1.62 !important;margin-bottom:16px !important; }

  .hero__social{ flex-wrap:wrap !important;gap:9px !important;margin:0 0 24px !important; }
  .hero__stars{ font-size:15px !important; }
  .hero__social-text{ font-size:14px !important; }

  .hero__pills{
    display:flex !important;flex-direction:column !important;
    align-items:flex-start !important;gap:10px !important;
    width:100% !important;margin-bottom:28px !important;
  }
  .hero__pill{
    width:auto !important;max-width:calc(100vw - 44px) !important;
    min-height:auto !important;padding:10px 16px !important;
    font-size:14px !important;white-space:nowrap !important;border-radius:999px !important;
  }
  .hero__pill svg{ width:15px !important;height:15px !important; }

  .hero__ctas{
    display:flex !important;flex-direction:column !important;
    align-items:stretch !important;gap:14px !important;margin-bottom:28px !important;
  }
  .btn-gold,.btn-outline{
    width:100% !important;min-height:56px !important;
    justify-content:center !important;padding:16px 18px !important;
    font-size:17px !important;border-radius:12px !important;
  }

  .hero__trust{
    display:grid !important;grid-template-columns:1fr 1fr !important;
    gap:14px 16px !important;padding-top:22px !important;
    border-top:1px solid rgba(255,255,255,.12) !important;overflow:visible !important;
  }
  .hero__trust-item,
  .hero__trust-item + .hero__trust-item{
    display:flex !important;align-items:flex-start !important;gap:7px !important;
    border-left:none !important;padding:0 !important;white-space:normal !important;
    font-size:13px !important;font-weight:500 !important;
    line-height:1.35 !important;color:#9c927f !important;
  }
  .hero__trust-item svg{ width:15px !important;height:15px !important;min-width:15px !important;margin-top:1px !important; }

  .hero__card{
    margin-top:24px !important;padding:26px 22px 24px !important;
    border-radius:20px !important;width:100% !important;max-width:100% !important;
  }
  .card__label{ font-size:13px !important;margin-bottom:16px !important; }
  .card__num{ font-size:52px !important; }
  .card__curr{ font-size:20px !important;padding-top:9px !important; }
  .card__per{ font-size:14px !important;margin-bottom:20px !important; }
  .card__list{ gap:12px !important;margin-bottom:24px !important; }
  .card__item{ font-size:15px !important;color:#d2cab9 !important; }
  .card__check{ width:20px !important;height:20px !important; }
  .card__btn{ min-height:54px !important;font-size:16px !important;border-radius:12px !important; }
  .card__note{ font-size:13px !important;margin-top:12px !important; }
  .card__per{ color:rgba(242,237,224,.52) !important; }

  /* Horarios: 2 col → 1 col */
  .hora-grid{ grid-template-columns:1fr !important;gap:12px !important; }

  /* SEO 2 cols → 1 col */
  .seo-2col{ grid-template-columns:1fr !important;gap:24px !important; }

  /* Profesores 3 cols → 1 col */
  .profes-grid{ grid-template-columns:1fr !important;gap:10px !important; }

  /* Ciudades: 4 cols → 2 cols */
  .pais-cities{ grid-template-columns:repeat(2,1fr) !important; }
  .latam-grid{ grid-template-columns:repeat(2,1fr) !important; }

  /* Inner padding reducido */
  .inner{ padding:36px 18px !important; }

  /* CTA trust en columna */
  .cta-final__trust{
    gap:12px 20px !important;
    justify-content:flex-start !important;
  }
  .cta-final__inner{ padding:44px 18px 52px !important; }
  .cta-final__h2{ font-size:clamp(24px,7vw,34px) !important; }
}

/* ════════════════════════════════════════
   MÓVIL PEQUEÑO (≤390px)
════════════════════════════════════════ */
@media (max-width:390px){
  .hero__inner{ padding-left:16px !important;padding-right:16px !important; }
  .hero__h1{ font-size:clamp(26px,8.5vw,34px) !important; }
  .hero__pill{ font-size:13px !important;padding:9px 14px !important;max-width:calc(100vw - 36px) !important; }
  .btn-gold,.btn-outline{ font-size:15px !important; }
  .pais-cities{ grid-template-columns:1fr 1fr !important; }

  /* Evitar que los nombres de ciudad largos revienten el grid */
  .pais-city__name{ font-size:12px !important; }
}/* End custom CSS */