/* ═══════════════════════════════════════ */
/*  RESET + BASE                            */
/* ═══════════════════════════════════════ */
*,*::before,*::after { box-sizing:border-box; margin:0; padding:0; }
html,body { background:#000; color:#fff; font-family:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif; -webkit-font-smoothing:antialiased; scroll-behavior:smooth; }
body { min-height:100vh; min-height:100dvh; }
a { color:inherit; text-decoration:none; }
img { max-width:100%; display:block; }
button { font-family:inherit; }

/* ═══════════════════════════════════════ */
/*  ANIMACIONES                             */
/* ═══════════════════════════════════════ */
@keyframes marqueeHero { 0% { transform:translateX(0); } 100% { transform:translateX(-50%); } }
@keyframes pulseCTA {
  0%,100% { transform:scale(1); box-shadow:0 16px 32px rgba(37,211,102,.45),0 0 20px rgba(37,211,102,.6); }
  50%     { transform:scale(1.03); box-shadow:0 22px 44px rgba(37,211,102,.6),0 0 28px rgba(37,211,102,.85); }
}
@keyframes pulseSuerte { 0%,100% { opacity:1; } 50% { opacity:.7; } }
@keyframes slideIn { from { transform:translateY(-30px); opacity:0; } to { transform:translateY(0); opacity:1; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes fadeScaleIn { 0% { opacity:0; transform:scale(.9); } 100% { opacity:1; transform:scale(1); } }
@keyframes shakeError {
  0%,100% { transform:translateX(0); }
  25%     { transform:translateX(-8px); }
  75%     { transform:translateX(8px); }
}

/* ═══════════════════════════════════════ */
/*  SECCIÓN 1 · HERO                        */
/* ═══════════════════════════════════════ */
.hero-wrap { background:#000; padding:12px 22px 12px; display:flex; flex-direction:column; align-items:center; }
.hero-banner { width:100%; max-width:400px; margin-bottom:6px; }
.hero-banner img { width:100%; height:auto; display:block; }
.cinta-marquee {
  width:100%; max-width:400px;
  border-radius:18px;
  background:linear-gradient(90deg,#8B0000 0%,#ff0000 25%,#ffcc00 50%,#8B0000 75%,#ff0000 100%);
  box-shadow:0 24px 48px rgba(0,0,0,.8),0 0 32px rgba(255,204,0,.45);
  border:2px solid #000;
  overflow:hidden; position:relative;
  height:35px; display:flex; align-items:center;
  margin-bottom:8px;
}
.cinta-marquee-track {
  display:flex; white-space:nowrap;
  animation:marqueeHero 8s linear infinite;
  font-weight:700; font-size:14px;
  letter-spacing:.03em; color:#fff;
  text-transform:uppercase;
  text-shadow:0 0 6px rgba(0,0,0,.8),0 0 2px #000;
}
.cinta-marquee-track span { padding:0 16px; color:#fff; }
.hero-text { width:100%; max-width:400px; text-align:center; }
.hero-text .promesa { margin:0 0 6px; font-size:.85rem; line-height:1.35; color:#cfd1d4; }
.hero-text .promesa strong { color:#fff; font-weight:600; }
.hero-text .promesa .verde { color:#25D366; font-weight:600; }
.hero-text .cta-video { margin:0; font-size:.75rem; line-height:1.35; color:#fff; font-weight:600; }

/* ═══════════════════════════════════════ */
/*  SECCIÓN 2 · VIDEO WISTIA                */
/* ═══════════════════════════════════════ */
.wistia-wrap { width:100%; background:#000; padding:0 24px; box-sizing:border-box; }
.wistia-inner { width:100%; aspect-ratio:16/9; position:relative; overflow:hidden; border-radius:10px; }
.wistia-inner > wistia-player { display:block; position:absolute; inset:0; width:100%; height:100%; }
.wistia-inner > wistia-player[media-id='2s9v6o234w']:not(:defined) {
  background:center/cover no-repeat url('https://fast.wistia.com/embed/medias/2s9v6o234w/swatch');
  filter:blur(5px);
}

/* ═══════════════════════════════════════ */
/*  SECCIÓN 3 · TARJETA COMPRA + BOTÓN 1    */
/* ═══════════════════════════════════════ */
.compra-wrap { background:#000; padding:12px 22px 8px; display:flex; justify-content:center; }
.compra-card {
  width:100%; max-width:400px;
  background:linear-gradient(180deg,#141414 0%,#0a0a0a 100%);
  border:1px solid rgba(37,211,102,.4);
  border-radius:20px;
  padding:0;
  text-align:center;
  box-shadow:0 24px 48px rgba(0,0,0,.9),0 0 32px rgba(37,211,102,.15);
  overflow:hidden;
}

.compra-titulo-bar {
  background:linear-gradient(90deg,#25D366 0%,#1FB855 50%,#25D366 100%);
  padding:12px 16px;
  border-bottom:2px solid #FFC845;
  position:relative;
  overflow:hidden;
}
.compra-titulo-bar::before {
  content:"";
  position:absolute;
  top:0; left:-100%;
  width:60%; height:100%;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);
  animation:barrido 3s ease-in-out infinite;
}
@keyframes barrido {
  0%   { left:-100%; }
  50%  { left:100%; }
  100% { left:100%; }
}
.compra-titulo-bar h3 {
  font-size:.95rem;
  font-weight:900;
  color:#04331A;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin:0;
  text-shadow:0 1px 0 rgba(255,255,255,.3);
  position:relative;
  z-index:1;
}

.compra-body {
  padding:20px 20px 22px;
}

.compra-precio-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  margin-bottom:14px;
}
.compra-precio-item {
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.08);
  border-radius:12px;
  padding:12px 8px;
}
.compra-precio-item .label {
  font-size:.62rem;
  color:#8b929a;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-weight:600;
  margin-bottom:6px;
}
.compra-precio-item .valor {
  font-size:1.35rem;
  font-weight:900;
  line-height:1.1;
}
.compra-precio-item.premio {
  background:rgba(37,211,102,.08);
  border-color:rgba(37,211,102,.4);
}
.compra-precio-item.premio .valor { color:#25D366; text-shadow:0 0 12px rgba(37,211,102,.4); }
.compra-precio-item.numero .valor { color:#FFC845; text-shadow:0 0 12px rgba(255,200,69,.3); }

.compra-loterias {
  font-size:.78rem;
  color:#fff;
  line-height:1.3;
  margin-bottom:14px;
  padding:10px 12px;
  background:rgba(255,200,69,.1);
  border:1px solid rgba(255,200,69,.4);
  border-radius:10px;
  text-align:center;
  font-weight:600;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.compra-loterias strong { color:#FFC845; }

.compra-alerta {
  font-size:.8rem;
  color:#fff;
  line-height:1.4;
  margin-bottom:16px;
  padding:12px 14px;
  background:rgba(37,211,102,.08);
  border:1px solid rgba(37,211,102,.35);
  border-radius:10px;
  text-align:center;
}
.compra-alerta strong { color:#25D366; text-transform:uppercase; letter-spacing:.02em; }

.compra-detalle-simple {
  font-size:.82rem;
  color:#a8aeb5;
  line-height:1.5;
  margin-bottom:16px;
  text-align:center;
}
.compra-detalle-simple .igual { color:#25D366; font-weight:900; }
.compra-detalle-simple strong { color:#fff; }

/* Botón principal (Botón 1 y Botón 2) - AMARILLO FLUORESCENTE con letras NEGRAS */
.btn-cta {
  position:relative; display:flex; align-items:center; justify-content:center;
  gap:10px; width:100%;
  background:linear-gradient(180deg,#FFF700 0%,#FFEB00 50%,#FFD500 100%);
  color:#000;
  padding:20px 16px;
  border:0;
  border-radius:16px;
  font-size:16px; font-weight:900; line-height:1.15;
  letter-spacing:.02em;
  box-shadow:0 8px 24px rgba(255,235,0,.7), 0 0 32px rgba(255,247,0,.5), inset 0 -3px 12px rgba(0,0,0,.15), inset 0 3px 12px rgba(255,255,255,.5);
  animation:pulseCTAyellow 1.8s ease-in-out infinite;
  cursor:pointer;
  overflow:hidden;
  transition:transform .15s;
}
.btn-cta:active { transform:scale(.97); }
.btn-cta svg { flex-shrink:0; }
.btn-cta .wa-icon-wrap {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px; height:36px;
  background:#25D366;
  border-radius:50%;
  flex-shrink:0;
  box-shadow:0 2px 6px rgba(0,0,0,.2);
}
.btn-cta .wa-icon-wrap svg { display:block; }

@keyframes pulseCTAyellow {
  0%,100% {
    transform:scale(1);
    box-shadow:0 16px 32px rgba(255,235,0,.7), 0 0 24px rgba(255,247,0,.5), inset 0 -3px 12px rgba(0,0,0,.15), inset 0 3px 12px rgba(255,255,255,.5);
  }
  50% {
    transform:scale(1.03);
    box-shadow:0 22px 44px rgba(255,235,0,.8), 0 0 40px rgba(255,247,0,.75), inset 0 -3px 12px rgba(0,0,0,.15), inset 0 3px 12px rgba(255,255,255,.6);
  }
}

.micro-texto { margin-top:12px; font-size:.78rem; color:#8b929a; line-height:1.4; }

/* ═══════════════════════════════════════ */
/*  SECCIÓN 4 · FRASE SUERTE                */
/* ═══════════════════════════════════════ */
.suerte-wrap { background:#000; padding:10px 22px 10px; display:flex; justify-content:center; }
.suerte-card {
  width:100%; max-width:400px;
  background:rgba(37,211,102,.08);
  border:1px solid rgba(37,211,102,.4);
  border-radius:14px;
  box-shadow:0 24px 48px rgba(0,0,0,.8),0 0 24px rgba(37,211,102,.4);
  padding:16px 18px; text-align:center;
}
.suerte-card p { margin:0; font-size:.85rem; line-height:1.4; font-weight:600; color:#fff; }
.suerte-verde { color:#25D366; font-weight:700; animation:pulseSuerte 2s ease-in-out infinite; display:inline-block; }

/* ═══════════════════════════════════════ */
/*  SECCIÓN 5 · PASOS                       */
/* ═══════════════════════════════════════ */
.pasos-wrap { background:#000; padding:24px 16px 32px; display:flex; justify-content:center; }
.pasos-inner { width:100%; max-width:400px; }
.pasos-titulo {
  text-align:center; font-size:1.15rem; font-weight:800;
  color:#25D366; margin-bottom:20px;
  text-shadow:0 0 20px rgba(37,211,102,.4);
}
.paso-item {
  display:flex; gap:14px; margin-bottom:16px;
  padding:14px; background:rgba(255,255,255,.03);
  border-radius:12px; border-left:3px solid #25D366;
}
.paso-num {
  flex-shrink:0; width:36px; height:36px;
  background:linear-gradient(180deg,#25D366,#1FB855);
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-weight:900; font-size:1.05rem; color:#04331A;
  box-shadow:0 4px 12px rgba(37,211,102,.5);
}
.paso-content { flex:1; }
.paso-content h3 { font-size:.95rem; font-weight:700; color:#fff; margin-bottom:4px; }
.paso-content p { font-size:.85rem; color:#cfd1d4; line-height:1.45; }
.paso-aviso {
  margin-top:8px; font-size:.78rem; color:#FFC845;
  background:rgba(255,200,69,.08); padding:8px 10px;
  border-radius:8px; border-left:2px solid #FFC845; font-weight:600;
}

/* ═══════════════════════════════════════ */
/*  SECCIÓN 6 · CONOCE MÁS                  */
/* ═══════════════════════════════════════ */
.conoce-wrap { background:#000; padding:32px 15px 40px; text-align:center; color:#fff; }
.conoce-wrap h2 {
  font-size:1.4rem; margin-bottom:16px; color:#00ffcc; font-weight:800;
  animation:slideIn 1s ease-in-out forwards;
}
.conoce-wrap .texto-conoce {
  font-size:.95rem; line-height:1.55; color:#cfd1d4;
  margin:0 auto 24px; max-width:400px; text-align:left; padding:0 8px;
  animation:fadeIn 2s ease forwards;
}
.conoce-wrap .texto-conoce strong { color:#fff; }
.redes-sociales {
  margin-top:20px; display:flex; justify-content:center;
  gap:60px; align-items:center;
  animation:fadeIn 2s ease .5s forwards;
}
.redes-sociales a { display:inline-block; }
.redes-sociales img { width:80px; height:80px; transition:transform .4s ease; }
.redes-sociales img:hover { transform:scale(1.15) rotate(5deg); }
.leyenda-redes {
  font-size:.9rem; margin-top:18px; color:#a8aeb5;
  animation:fadeIn 2s ease .8s forwards;
}
@media(max-width:500px){
  .conoce-wrap h2 { font-size:1.2rem; }
  .redes-sociales { gap:36px; }
  .redes-sociales img { width:64px; height:64px; }
  .leyenda-redes { font-size:.82rem; }
}

/* ═══════════════════════════════════════ */
/*  SECCIÓN 7 · CTA FINAL                   */
/* ═══════════════════════════════════════ */
.cta-final-wrap { background:#000; padding:12px 22px 28px; display:flex; justify-content:center; }
.cta-final-card {
  width:100%; max-width:400px;
  background:linear-gradient(180deg,#141414 0%,#0a0a0a 100%);
  border:1px solid rgba(37,211,102,.3);
  border-radius:16px;
  padding:18px 16px 16px;
  text-align:center;
  box-shadow:0 20px 40px rgba(0,0,0,.9),0 0 20px rgba(37,211,102,.15);
  position:relative;
  overflow:hidden;
}
.cta-final-card::before {
  content:"";
  position:absolute;
  top:0; left:-50%;
  width:200%; height:2px;
  background:linear-gradient(90deg, transparent, #FFEB00 50%, transparent);
  animation:barridoTop 3s ease-in-out infinite;
}
@keyframes barridoTop {
  0%,100% { transform:translateX(-25%); }
  50%     { transform:translateX(25%); }
}
.cta-final-card h3 {
  font-size:1.05rem;
  font-weight:900;
  line-height:1.3;
  margin-bottom:10px;
  color:#FFEB00;
  text-shadow:0 0 16px rgba(255,235,0,.4);
  letter-spacing:.01em;
  position:relative;
  z-index:1;
}
.cta-final-card h3 .destello {
  display:inline-block;
  animation:sparkle 2s ease-in-out infinite;
  filter:drop-shadow(0 0 8px rgba(255,235,0,.8));
  color:#FFEB00;
}
@keyframes sparkle {
  0%,100% { transform:rotate(0) scale(1); opacity:1; }
  50%     { transform:rotate(20deg) scale(1.2); opacity:.7; }
}
.cta-final-card .texto-final {
  font-size:.82rem;
  color:#cfd1d4;
  line-height:1.5;
  margin-bottom:14px;
  font-weight:500;
  position:relative;
  z-index:1;
}
.cta-final-card .texto-final strong { color:#fff; font-weight:700; }
.cta-final-card .texto-final .verde { color:#25D366; font-weight:700; }

/* ═══════════════════════════════════════ */
/*  TESTIMONIOS · Carrusel                  */
/* ═══════════════════════════════════════ */
.testimonios-wrap { background:#000; color:#fff; padding:24px 0 24px; text-align:center; overflow:hidden; }
.testimonios-header { margin:0 22px 20px; }
.testimonios-header h2 {
  font-size:1.15rem; font-weight:800; color:#fff;
  margin:0 0 6px; line-height:1.3;
  text-shadow:0 0 16px rgba(0,0,0,.8);
}
.testimonios-header .sub {
  font-size:.85rem; color:#25D366;
  font-weight:600; line-height:1.4;
}

.carrusel-viewport {
  position:relative;
  overflow:hidden;
  width:100%;
  padding:4px 0 8px;
}
#carrusel-testimonios {
  display:flex;
  transition:transform 0.5s ease-in-out;
  will-change:transform;
}

.testimonio-card {
  flex:0 0 100%;
  width:100%;
  max-width:100%;
  padding:0 22px;
  box-sizing:border-box;
}
.testimonio-inner {
  background:#111;
  border:1px solid rgba(37,211,102,.4);
  border-radius:14px;
  padding:16px;
  box-shadow:0 24px 48px rgba(0,0,0,.9),0 0 32px rgba(0,0,0,.8);
  text-align:left;
}
.testimonio-head {
  display:flex; justify-content:space-between;
  align-items:flex-start; margin-bottom:10px;
  gap:8px;
}
.testimonio-info { flex:1; min-width:0; }
.testimonio-nombre {
  display:flex; align-items:center; gap:6px;
  font-size:.9rem; font-weight:600;
  flex-wrap:wrap;
}
.testimonio-verificado {
  background:rgba(37,211,102,.1); color:#25D366;
  border:1px solid #25D366;
  border-radius:6px; font-size:.6rem;
  font-weight:600; padding:3px 5px;
  white-space:nowrap;
}
.testimonio-estrellas { color:#ffc107; font-size:.75rem; margin-top:4px; }
.testimonio-monto {
  font-size:.68rem;
  color:#8b929a;
  text-align:right;
  white-space:nowrap;
  flex-shrink:0;
  padding-top:2px;
  line-height:1.3;
}
.testimonio-texto { font-size:.85rem; line-height:1.5; color:#d9d9d9; }
.testimonio-texto strong { color:#fff; }
.testimonio-texto .verde { color:#25D366; }

.testimonios-dots {
  display:flex;
  justify-content:center;
  gap:6px;
  margin-top:12px;
}
.testimonios-dot {
  width:6px; height:6px;
  border-radius:50%;
  background:rgba(255,255,255,.25);
  transition:all .3s ease;
  cursor:pointer;
}
.testimonios-dot.activo {
  background:#25D366;
  width:20px;
  border-radius:3px;
}

/* ═══════════════════════════════════════ */
/*  MODALES · OVERLAY                       */
/* ═══════════════════════════════════════ */
.overlay {
  display:none; position:fixed; inset:0;
  background:rgba(0,0,0,.92);
  backdrop-filter:blur(6px);
  -webkit-backdrop-filter:blur(6px);
  z-index:9999;
  align-items:flex-start; justify-content:center;
  padding:12px; overflow-y:auto;
  -webkit-overflow-scrolling:touch;
}
.overlay.abierto { display:flex; }

.modal-card {
  background:linear-gradient(180deg,#141414 0%,#0a0a0a 100%);
  border:1px solid rgba(37,211,102,.3);
  border-radius:16px;
  max-width:400px; width:100%;
  color:#fff;
  box-shadow:
    0 24px 60px rgba(0,0,0,.9),
    0 0 32px rgba(37,211,102,.15);
  animation:modalIn .35s cubic-bezier(.34,1.56,.64,1) forwards;
  margin:auto 0; overflow:hidden;
  position:relative;
}
@keyframes modalIn {
  0%   { opacity:0; transform:scale(.9) translateY(15px); }
  100% { opacity:1; transform:scale(1) translateY(0); }
}

.modal-header {
  padding:10px 14px;
  border-bottom:1px solid rgba(255,255,255,.08);
  display:flex; justify-content:space-between; align-items:center;
  background:rgba(255,255,255,.02);
}

/* Indicador de pasos con círculos conectados */
.modal-pasos-indicador {
  display:flex;
  align-items:center;
  gap:4px;
}
.paso-circle {
  width:20px; height:20px;
  border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  font-size:.65rem; font-weight:800;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.12);
  color:#8b929a;
  transition:all .3s ease;
}
.paso-circle.activo {
  background:linear-gradient(135deg,#FFEB00,#FFD500);
  border-color:#FFEB00;
  color:#000;
  box-shadow:0 0 10px rgba(255,235,0,.5);
  transform:scale(1.1);
}
.paso-circle.completado {
  background:rgba(37,211,102,.15);
  border-color:#25D366;
  color:#25D366;
}
.paso-linea {
  width:8px; height:2px;
  background:rgba(255,255,255,.12);
}

.modal-cerrar {
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.08);
  color:#8b929a;
  font-size:.9rem;
  cursor:pointer; padding:0;
  width:24px; height:24px;
  border-radius:6px;
  display:flex; align-items:center; justify-content:center;
  transition:all .2s;
}
.modal-cerrar:hover {
  background:rgba(255,68,68,.1);
  border-color:#ff4444;
  color:#ff6666;
}

.modal-body { padding:14px 16px 16px; }

.modal-titulo {
  font-size:.98rem;
  font-weight:800;
  line-height:1.25;
  margin-bottom:12px;
  text-align:center;
  color:#fff;
}

/* ═══════════════════════════════════════ */
/*  MODAL 1 · Aceptar dinámica              */
/* ═══════════════════════════════════════ */

.modal1-intro {
  background:rgba(255,200,69,.08);
  border:1px solid rgba(255,200,69,.35);
  border-radius:10px;
  padding:9px 11px;
  margin-bottom:10px;
  display:flex;
  gap:9px;
  align-items:center;
}
.modal1-intro-icon {
  font-size:1.05rem;
  flex-shrink:0;
}
.modal1-intro-texto {
  font-size:.8rem;
  color:#fff;
  line-height:1.35;
}
.modal1-intro-texto strong { color:#FFC845; }

/* Lista de puntos numerados */
.modal1-lista {
  display:flex;
  flex-direction:column;
  gap:5px;
  margin-bottom:12px;
}
.modal1-punto {
  display:flex;
  gap:9px;
  padding:7px 10px;
  background:rgba(255,255,255,.03);
  border:1px solid rgba(255,255,255,.05);
  border-radius:8px;
  align-items:center;
  animation:fadeInUp .4s ease forwards;
  opacity:0;
}
.modal1-punto:nth-child(1) { animation-delay:.05s; }
.modal1-punto:nth-child(2) { animation-delay:.12s; }
.modal1-punto:nth-child(3) { animation-delay:.19s; }
@keyframes fadeInUp {
  from { opacity:0; transform:translateY(4px); }
  to   { opacity:1; transform:translateY(0); }
}
.modal1-punto-num {
  flex-shrink:0;
  width:22px; height:22px;
  border-radius:6px;
  background:linear-gradient(135deg,#25D366,#1FB855);
  display:flex; align-items:center; justify-content:center;
  font-size:.72rem; font-weight:800;
  color:#04331A;
  box-shadow:0 2px 6px rgba(37,211,102,.35);
}
.modal1-punto-texto {
  flex:1;
  font-size:.8rem;
  color:#cfd1d4;
  line-height:1.3;
}
.modal1-punto-texto strong { color:#fff; font-weight:700; }
.modal1-punto-texto .amarillo { color:#FFEB00; font-weight:700; }
.modal1-punto-texto .verde { color:#25D366; font-weight:700; }
.modal1-punto-emoji {
  flex-shrink:0;
  font-size:.95rem;
}

/* Checkbox */
.modal1-checkbox {
  display:flex; align-items:flex-start; gap:9px;
  padding:10px 11px;
  background:rgba(37,211,102,.06);
  border:1.5px solid rgba(37,211,102,.3);
  border-radius:10px;
  margin-bottom:10px;
  cursor:pointer;
  transition:all .25s ease;
  user-select:none;
  position:relative;
  overflow:hidden;
}
.modal1-checkbox:hover {
  background:rgba(37,211,102,.1);
  border-color:rgba(37,211,102,.5);
}
.modal1-checkbox.marcado {
  background:rgba(37,211,102,.12);
  border-color:#25D366;
  box-shadow:0 0 14px rgba(37,211,102,.25);
}
.modal1-checkbox.error {
  animation:shakeError .4s ease;
  border-color:#ff4444;
  background:rgba(255,68,68,.1);
  box-shadow:0 0 18px rgba(255,68,68,.35);
}
.modal1-checkbox input[type="checkbox"] {
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.modal1-check-custom {
  flex-shrink:0;
  width:18px; height:18px;
  border-radius:5px;
  border:2px solid rgba(37,211,102,.5);
  background:rgba(0,0,0,.4);
  display:flex; align-items:center; justify-content:center;
  transition:all .3s ease;
  margin-top:1px;
}
.modal1-checkbox.marcado .modal1-check-custom {
  background:linear-gradient(135deg,#25D366,#1FB855);
  border-color:#25D366;
  box-shadow:0 0 8px rgba(37,211,102,.5);
}
.modal1-check-custom::after {
  content:"✓";
  color:#fff;
  font-weight:900;
  font-size:.8rem;
  opacity:0;
  transform:scale(.5);
  transition:all .2s ease;
}
.modal1-checkbox.marcado .modal1-check-custom::after {
  opacity:1;
  transform:scale(1);
}
.modal1-checkbox span.check-label {
  font-size:.78rem; color:#cfd1d4; line-height:1.35; flex:1;
}
.modal1-checkbox span.check-label strong { color:#fff; font-weight:700; }
.modal1-checkbox.error span.check-label { color:#ff9999; }

/* Botón continuar (amarillo consistente con la landing) */
.btn-continuar {
  width:100%;
  padding:13px 14px;
  background:linear-gradient(180deg,#FFF700 0%,#FFEB00 50%,#FFD500 100%);
  color:#000;
  border:0;
  border-radius:12px;
  font-size:.82rem; font-weight:900;
  letter-spacing:.02em;
  cursor:pointer;
  box-shadow:0 6px 18px rgba(255,235,0,.5), 0 0 20px rgba(255,247,0,.3);
  transition:all .2s;
  position:relative;
  overflow:hidden;
}
.btn-continuar:not(.desactivado):hover {
  transform:translateY(-2px);
  box-shadow:0 10px 24px rgba(255,235,0,.6), 0 0 28px rgba(255,247,0,.45);
}
.btn-continuar:active { transform:scale(.97); }
.btn-continuar.desactivado {
  background:linear-gradient(180deg,#2a2a2a,#1a1a1a);
  color:#555;
  cursor:not-allowed;
  box-shadow:none;
  animation:none;
}
.btn-continuar.desactivado:hover { transform:none; box-shadow:none; }

/* ═══════════════════════════════════════ */
/*  ALERTA INLINE (debajo de casilla)       */
/* ═══════════════════════════════════════ */
.alerta-inline {
  display:none;
  padding:10px 12px;
  background:linear-gradient(135deg, rgba(255,68,68,.12), rgba(255,68,68,.04));
  border:1.5px solid #ff4444;
  border-radius:10px;
  margin-bottom:10px;
  box-shadow:0 0 18px rgba(255,68,68,.25);
  animation:alertaInlineIn .35s cubic-bezier(.34,1.56,.64,1);
}
.alerta-inline.visible { display:block; }
@keyframes alertaInlineIn {
  0%   { opacity:0; transform:translateY(-6px) scale(.95); }
  100% { opacity:1; transform:translateY(0) scale(1); }
}
.alerta-inline-header {
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:4px;
}
.alerta-inline-icon {
  font-size:1.05rem;
  animation:blink 1s ease-in-out infinite;
}
@keyframes blink {
  0%,100% { opacity:1; }
  50%     { opacity:.5; }
}
.alerta-inline-titulo {
  font-size:.78rem;
  font-weight:900;
  color:#ff6666;
  letter-spacing:.05em;
}
.alerta-inline-texto {
  font-size:.78rem;
  color:#fff;
  line-height:1.35;
}
.alerta-inline-texto strong { color:#ff9999; }

/* ═══════════════════════════════════════ */
/*  MODAL 2                                 */
/* ═══════════════════════════════════════ */
/* ═══════════════════════════════════════ */
/*  MODAL 2 · MODOS DE VISTA                */
/* ═══════════════════════════════════════ */

/* Por defecto: solo vista SELECCIÓN visible */
.modo-seleccion { display:block; }
.modo-campo-numero { display:none; }
.modo-advertencia { display:none; }
.btn-cambiar-opcion { display:none; }

/* Modo NÚMERO (aún no ha escrito): campo visible, selección oculta */
#modal2-body.mostrar-numero .modo-seleccion { display:none; }
#modal2-body.mostrar-numero .modo-campo-numero { display:block; animation:fadeScaleIn .3s ease; }
#modal2-body.mostrar-numero .btn-cambiar-opcion { display:block; animation:fadeIn .4s ease .2s both; }

/* Modo NÚMERO CONFIRMADO: SOLO advertencia (campo desaparece, selección oculta) */
#modal2-body.mostrar-numero-confirmado .modo-seleccion { display:none; }
#modal2-body.mostrar-numero-confirmado .modo-campo-numero { display:none; }
#modal2-body.mostrar-numero-confirmado .modo-advertencia { display:block; animation:fadeScaleIn .35s ease; }
#modal2-body.mostrar-numero-confirmado .btn-cambiar-opcion { display:block; animation:fadeIn .4s ease .3s both; }

/* Modo DINÁMICA: solo advertencia visible */
#modal2-body.mostrar-dinamica .modo-seleccion { display:none; }
#modal2-body.mostrar-dinamica .modo-campo-numero { display:none; }
#modal2-body.mostrar-dinamica .modo-advertencia { display:block; animation:fadeScaleIn .35s ease; }
#modal2-body.mostrar-dinamica .btn-cambiar-opcion { display:block; animation:fadeIn .4s ease .3s both; }

.modo-seleccion, .modo-campo-numero, .modo-advertencia {
  animation:fadeIn .3s ease;
}

/* ═══════════════════════════════════════ */
/*  MODAL 2 · Instrucción y selección       */
/* ═══════════════════════════════════════ */
.modal2-instruccion {
  font-size:.8rem;
  color:#cfd1d4;
  text-align:center;
  margin-bottom:12px;
  line-height:1.35;
}
.modal2-instruccion .emoji-pulse {
  display:inline-block;
  animation:pulseEmoji 1.5s ease-in-out infinite;
}
@keyframes pulseEmoji {
  0%,100% { transform:scale(1); }
  50%     { transform:scale(1.15); }
}
.opciones-intent { display:flex; flex-direction:column; gap:10px; margin-bottom:4px; }

.opcion-intent {
  padding:0;
  background:linear-gradient(180deg, rgba(37,211,102,.08) 0%, rgba(37,211,102,.03) 100%);
  border:2px solid rgba(37,211,102,.4);
  border-radius:12px;
  cursor:pointer;
  transition:all .25s ease;
  text-align:left;
  font-family:inherit;
  color:inherit;
  width:100%;
  display:flex;
  align-items:stretch;
  overflow:hidden;
  position:relative;
  box-shadow:0 4px 12px rgba(37,211,102,.15);
}
.opcion-intent::before {
  content:"";
  position:absolute;
  top:0; left:-100%;
  width:100%; height:100%;
  background:linear-gradient(90deg, transparent, rgba(37,211,102,.15), transparent);
  transition:left .5s ease;
}
.opcion-intent:hover::before { left:100%; }
.opcion-intent:hover {
  background:linear-gradient(180deg, rgba(37,211,102,.15) 0%, rgba(37,211,102,.06) 100%);
  border-color:#25D366;
  box-shadow:0 6px 20px rgba(37,211,102,.35);
  transform:translateY(-1px);
}
.opcion-intent:active { transform:scale(.98); }
.opcion-intent-icon {
  flex-shrink:0;
  width:52px;
  background:linear-gradient(135deg,#25D366,#1FB855);
  display:flex; align-items:center; justify-content:center;
  font-size:1.5rem;
  box-shadow:inset -2px 0 6px rgba(0,0,0,.15);
}
.opcion-intent-icon .emoji-anim {
  display:inline-block;
  animation:emojiBounce 2s ease-in-out infinite;
}
@keyframes emojiBounce {
  0%,100% { transform:translateY(0) rotate(0); }
  50%     { transform:translateY(-3px) rotate(-5deg); }
}
.opcion-intent-textos {
  flex:1;
  min-width:0;
  padding:10px 12px;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.opcion-intent h4 {
  font-size:.87rem;
  font-weight:800;
  color:#fff;
  margin-bottom:3px;
  display:flex;
  align-items:center;
  gap:6px;
}
.opcion-intent h4::after {
  content:"→";
  color:#25D366;
  font-size:1.1rem;
  font-weight:900;
  margin-left:auto;
  transition:transform .25s;
}
.opcion-intent:hover h4::after { transform:translateX(4px); }
.opcion-intent p {
  font-size:.73rem;
  color:#a8aeb5;
  line-height:1.3;
}

/* Botón cambiar de opción */
.btn-cambiar-opcion {
  background:none;
  border:1px solid rgba(255,255,255,.15);
  color:#8b929a;
  padding:7px 14px;
  border-radius:8px;
  font-size:.72rem;
  font-family:inherit;
  cursor:pointer;
  margin:12px auto 0;
  transition:all .2s;
}
.btn-cambiar-opcion:hover {
  background:rgba(255,255,255,.05);
  color:#fff;
  border-color:rgba(255,255,255,.3);
}

/* ═══════════════════════════════════════ */
/*  MODAL 2 · Campo del número              */
/* ═══════════════════════════════════════ */
.modo-campo-numero {
  padding:14px 14px 12px;
  background:rgba(37,211,102,.06);
  border:1.5px solid rgba(37,211,102,.3);
  border-radius:12px;
  margin-bottom:12px;
  text-align:center;
}
.campo-numero-icono {
  font-size:1.7rem;
  margin-bottom:4px;
  animation:brillar 1.5s ease-in-out infinite;
  filter:drop-shadow(0 0 8px rgba(255,235,0,.5));
}
.campo-numero-titulo {
  font-size:.95rem;
  font-weight:800;
  color:#fff;
  margin-bottom:4px;
  text-align:center;
}
.campo-numero-desc {
  font-size:.78rem;
  color:#cfd1d4;
  line-height:1.35;
  margin-bottom:10px;
  text-align:center;
}
.input-numero {
  width:100%;
  padding:12px 14px;
  font-size:1.5rem;
  font-weight:800;
  text-align:center;
  background:#000;
  border:1.5px solid rgba(255,255,255,.15);
  border-radius:9px;
  color:#25D366;
  letter-spacing:.2em;
  font-family:'Courier New',monospace;
  transition:all .2s;
  -moz-appearance:textfield;
}
.input-numero::-webkit-outer-spin-button,
.input-numero::-webkit-inner-spin-button { -webkit-appearance:none; margin:0; }
.input-numero:focus {
  outline:none;
  border-color:#25D366;
  box-shadow:0 0 16px rgba(37,211,102,.3);
}
.input-numero.error {
  border-color:#ff4444;
  color:#ff6666;
  animation:shakeError .4s ease;
}
.input-hint {
  display:block;
  margin-top:6px;
  font-size:.7rem;
  color:#8b929a;
  text-align:center;
}
.input-hint strong { color:#cfd1d4; }
.input-error-msg {
  display:none;
  margin-top:6px;
  padding:6px 9px;
  background:rgba(255,68,68,.1);
  border:1px solid rgba(255,68,68,.3);
  border-radius:7px;
  color:#ff9999;
  font-size:.72rem;
  text-align:center;
  font-weight:600;
}
.input-error-msg.visible { display:block; }
.input-error-msg strong { color:#ffcccc; }

/* ═══════════════════════════════════════ */
/*  MODAL 2 · ADVERTENCIA FINAL             */
/* ═══════════════════════════════════════ */
.modo-advertencia {
  text-align:center;
  padding:6px 0 4px;
}
.advertencia-icono-superior {
  font-size:2rem;
  margin-bottom:6px;
  animation:brillar 1.5s ease-in-out infinite;
  filter:drop-shadow(0 0 10px rgba(255,235,0,.6));
}
@keyframes brillar {
  0%,100% { transform:scale(1); filter:drop-shadow(0 0 10px rgba(255,235,0,.6)); }
  50%     { transform:scale(1.1); filter:drop-shadow(0 0 20px rgba(255,235,0,.9)); }
}
.advertencia-titulo-principal {
  font-size:1.15rem;
  font-weight:900;
  color:#FFEB00;
  text-shadow:0 0 12px rgba(255,235,0,.5);
  margin-bottom:4px;
  letter-spacing:.01em;
}
.advertencia-subtitulo {
  font-size:.85rem;
  color:#cfd1d4;
  margin-bottom:10px;
  font-weight:600;
}
.advertencia-mensaje {
  font-size:.95rem;
  color:#fff;
  line-height:1.4;
  font-weight:600;
  padding:12px 14px;
  background:linear-gradient(180deg, rgba(37,211,102,.15) 0%, rgba(37,211,102,.05) 100%);
  border:1.5px solid rgba(37,211,102,.5);
  border-radius:10px;
  margin-bottom:12px;
  position:relative;
}
.advertencia-mensaje::before,
.advertencia-mensaje::after {
  content:'"';
  font-size:1.6rem;
  color:#25D366;
  position:absolute;
  opacity:.5;
  font-family:Georgia, serif;
}
.advertencia-mensaje::before { top:0; left:8px; }
.advertencia-mensaje::after { bottom:-4px; right:8px; }
.advertencia-mensaje strong {
  color:#FFEB00;
  text-shadow:0 0 8px rgba(255,235,0,.4);
}
.advertencia-nota {
  font-size:.82rem;
  color:#fff;
  margin-bottom:14px;
  padding:8px 10px;
  background:rgba(255,235,0,.08);
  border:1px solid rgba(255,235,0,.3);
  border-radius:8px;
}
.advertencia-nota strong { color:#FFEB00; }

.btn-final-modal {
  display:flex;
  width:100%;
  padding:18px 14px;
  background:linear-gradient(180deg,#FFF700 0%,#FFEB00 50%,#FFD500 100%);
  color:#000;
  border:0;
  border-radius:14px;
  font-size:.92rem;
  font-weight:900;
  
  letter-spacing:.02em;
  cursor:pointer;
  box-shadow:0 8px 24px rgba(255,235,0,.55), 0 0 28px rgba(255,247,0,.35);
  animation:pulseCTAyellow 1.6s ease-in-out infinite;
  text-align:center;
  line-height:1.25;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-bottom:10px;
}
.btn-final-modal:active { transform:scale(.97); }
.btn-final-modal .wa-icon-wrap {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px; height:34px;
  background:#25D366;
  border-radius:50%;
  flex-shrink:0;
  box-shadow:0 2px 6px rgba(0,0,0,.2);
}
.btn-final-modal .wa-icon-wrap svg {
  width:22px;
  height:22px;
}

.modal2-aviso {
  font-size:.72rem;
  color:#a8aeb5;
  text-align:center;
  line-height:1.35;
  margin:0;
}
.modal2-aviso strong { color:#FFC845; }

/* ═══════════════════════════════════════════════════════ */
/*  BOTÓN CTA WHATSAPP VERDE PRINCIPAL (con movimiento)   */
/* ═══════════════════════════════════════════════════════ */
.cta-wa-wrap {
  background:#000;
  padding:22px 22px 20px;
  display:flex;
  justify-content:center;
}
.btn-wa-principal {
  font-family:system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  width:100%;
  max-width:400px;
  padding:16px 18px;
  background:#25D366;
  color:#000;
  border:0;
  border-radius:14px;
  font-size:17px;
  font-weight:700;
  cursor:pointer;
  box-shadow:0 16px 32px rgba(37,211,102,.45), 0 0 20px rgba(37,211,102,.6);
  line-height:1.25;
  text-align:center;
  position:relative;
  overflow:hidden;
  animation:pulseWA 2s ease-in-out infinite;
  transition:all .15s ease;
}
.btn-wa-principal .btn-linea {
  display:block;
  white-space:nowrap;
}
@keyframes pulseWA {
  0%, 100% {
    transform:scale(1);
    box-shadow:0 16px 32px rgba(37,211,102,.45), 0 0 20px rgba(37,211,102,.6);
  }
  50% {
    transform:scale(1.04);
    box-shadow:0 22px 44px rgba(37,211,102,.6), 0 0 28px rgba(37,211,102,.8);
  }
}
.btn-wa-principal::before {
  content:"";
  position:absolute;
  top:0;
  left:-100%;
  width:100%;
  height:100%;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.25), transparent);
  animation:shineWA 2.5s ease-in-out infinite;
}
@keyframes shineWA {
  0% { left:-100%; }
  50%, 100% { left:100%; }
}
.btn-wa-principal:hover { transform:scale(1.03); }
.btn-wa-principal:active { transform:scale(.98); }
.btn-wa-principal .wa-icon-anim {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:36px;
  height:36px;
  background:rgba(0,0,0,.15);
  border-radius:50%;
  flex-shrink:0;
  animation:bounceWA 1s ease-in-out infinite;
  position:relative;
  z-index:2;
}
.btn-wa-principal .wa-icon-anim svg {
  width:20px;
  height:20px;
}
@keyframes bounceWA {
  0%, 100% { transform:translateY(0) rotate(0); }
  50%      { transform:translateY(-3px) rotate(-5deg); }
}
.btn-wa-principal .btn-wa-texto {
  position:relative;
  z-index:2;
}

/* ═══════════════════════════════════════════════════════ */
/*  SECCIÓN PASOS - Nueva versión didáctica              */
/* ═══════════════════════════════════════════════════════ */
.pasos-wrap {
  background:#000;
  padding:20px 22px 28px;
}
.pasos-inner {
  max-width:460px;
  margin:0 auto;
  position:relative;
}
.pasos-header {
  text-align:center;
  margin-bottom:24px;
}
.pasos-badge {
  display:inline-block;
  padding:5px 14px;
  background:linear-gradient(90deg, rgba(255,235,0,.15), rgba(255,235,0,.05));
  border:1px solid rgba(255,235,0,.3);
  border-radius:20px;
  color:#FFEB00;
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.05em;
  margin-bottom:10px;
  animation:badgeFadeIn 1s ease;
}
@keyframes badgeFadeIn {
  from { opacity:0; transform:translateY(-6px); }
  to { opacity:1; transform:translateY(0); }
}
.pasos-titulo {
  font-size:1.3rem;
  font-weight:900;
  color:#fff;
  margin-bottom:6px;
  letter-spacing:.005em;
  line-height:1.2;
}
.pasos-sub {
  font-size:.85rem;
  color:#cfd1d4;
  line-height:1.4;
}
.pasos-sub strong {
  color:#FFEB00;
  text-shadow:0 0 8px rgba(255,235,0,.4);
}

/* Línea vertical decorativa a la izquierda */
.pasos-linea-vertical {
  position:absolute;
  left:32px;
  top:145px;
  bottom:35px;
  width:2px;
  background:linear-gradient(180deg, transparent 0%, #25D366 15%, #FFEB00 50%, #25D366 85%, transparent 100%);
  opacity:.4;
  z-index:0;
}

.paso-item {
  display:flex;
  gap:14px;
  padding:12px 0;
  align-items:flex-start;
  position:relative;
  z-index:1;
  animation:pasoSlideIn .6s ease forwards;
  opacity:0;
}
.paso-item:nth-child(3) { animation-delay:.1s; }
.paso-item:nth-child(4) { animation-delay:.2s; }
.paso-item:nth-child(5) { animation-delay:.3s; }
.paso-item:nth-child(6) { animation-delay:.4s; }
.paso-item:nth-child(7) { animation-delay:.5s; }
@keyframes pasoSlideIn {
  from { opacity:0; transform:translateX(-14px); }
  to { opacity:1; transform:translateX(0); }
}

.paso-num-wrap {
  flex-shrink:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:4px;
  width:44px;
}
.paso-num {
  width:36px;
  height:36px;
  border-radius:50%;
  background:linear-gradient(135deg,#25D366,#1FB855);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.05rem;
  font-weight:900;
  color:#fff;
  box-shadow:
    0 4px 12px rgba(37,211,102,.45),
    0 0 16px rgba(37,211,102,.3),
    inset 0 -2px 0 rgba(0,0,0,.15);
  text-shadow:0 1px 2px rgba(0,0,0,.2);
  position:relative;
  z-index:2;
}
.paso-icono-grande {
  font-size:1.15rem;
  animation:pasoIconoWiggle 3s ease-in-out infinite;
}
.paso-item:nth-child(4) .paso-icono-grande { animation-delay:.3s; }
.paso-item:nth-child(5) .paso-icono-grande { animation-delay:.6s; }
.paso-item:nth-child(6) .paso-icono-grande { animation-delay:.9s; }
.paso-item:nth-child(7) .paso-icono-grande { animation-delay:1.2s; }
@keyframes pasoIconoWiggle {
  0%, 100% { transform:rotate(0); }
  25% { transform:rotate(-8deg); }
  75% { transform:rotate(8deg); }
}

.paso-content {
  flex:1;
  padding:10px 12px;
  background:linear-gradient(180deg, #0f1a10 0%, #0a0a0a 100%);
  border:1px solid rgba(37,211,102,.2);
  border-radius:10px;
  box-shadow:0 4px 12px rgba(0,0,0,.4);
  min-width:0;
}
.paso-tag {
  display:inline-block;
  padding:1px 7px;
  background:rgba(37,211,102,.15);
  color:#25D366;
  border-radius:5px;
  font-size:.62rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.05em;
  margin-bottom:3px;
}
.paso-content h3 {
  font-size:.88rem;
  font-weight:800;
  color:#fff;
  margin-bottom:3px;
  line-height:1.25;
}
.paso-content p {
  font-size:.78rem;
  color:#cfd1d4;
  line-height:1.4;
  margin:0;
}
.paso-content p strong {
  color:#fff;
  font-weight:700;
}
.paso-content p .verde {
  color:#25D366;
  font-weight:700;
}
.paso-aviso-pro {
  display:flex;
  align-items:flex-start;
  gap:8px;
  margin-top:10px;
  padding:9px 11px;
  background:linear-gradient(90deg, rgba(255,200,69,.12), rgba(255,200,69,.04));
  border:1px solid rgba(255,200,69,.4);
  border-radius:9px;
  font-size:.78rem;
  color:#fff;
  line-height:1.35;
}
.paso-aviso-pro .aviso-icono {
  font-size:.95rem;
  flex-shrink:0;
  animation:blinkAviso 1.5s ease-in-out infinite;
}
@keyframes blinkAviso {
  0%, 100% { opacity:1; }
  50% { opacity:.4; }
}
.paso-aviso-pro strong { color:#FFC845; }

/* ═══════════════════════════════════════════════════════ */
/*  SECCIÓN CONOCE MÁS V2 - Elegante                      */
/* ═══════════════════════════════════════════════════════ */
.conoce-wrap-v2 {
  background:linear-gradient(180deg, #000 0%, #050505 100%);
  padding:22px 22px 32px;
  position:relative;
  overflow:hidden;
}
.conoce-wrap-v2::before {
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:200%;
  height:120%;
  background:radial-gradient(ellipse at center top, rgba(37,211,102,.06) 0%, transparent 50%);
  pointer-events:none;
}
.conoce-inner-v2 {
  max-width:460px;
  margin:0 auto;
  position:relative;
  z-index:1;
}
.conoce-badge {
  display:block;
  width:fit-content;
  margin:0 auto 12px;
  padding:5px 14px;
  background:linear-gradient(90deg, rgba(37,211,102,.2), rgba(37,211,102,.05));
  border:1px solid rgba(37,211,102,.4);
  border-radius:20px;
  color:#25D366;
  font-size:.75rem;
  font-weight:700;
  letter-spacing:.05em;
  text-align:center;
}
.conoce-titulo-v2 {
  font-size:1.25rem;
  font-weight:900;
  color:#fff;
  text-align:center;
  line-height:1.25;
  margin-bottom:10px;
  letter-spacing:.005em;
}
.conoce-marca {
  background:linear-gradient(90deg, #FFEB00, #FFC845);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  text-shadow:0 0 20px rgba(255,235,0,.3);
}
.conoce-divider {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:12px;
  margin-bottom:18px;
}
.conoce-divider-line {
  height:1px;
  width:60px;
  background:linear-gradient(90deg, transparent, rgba(255,235,0,.5), transparent);
}
.conoce-divider-icon {
  font-size:1.2rem;
  animation:iconSpin 4s ease-in-out infinite;
}
@keyframes iconSpin {
  0%, 100% { transform:rotate(0); }
  50% { transform:rotate(15deg) scale(1.1); }
}

.conoce-features {
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-bottom:20px;
}
.conoce-feature {
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:10px 12px;
  background:linear-gradient(135deg, rgba(37,211,102,.06) 0%, rgba(0,0,0,.4) 100%);
  border:1px solid rgba(37,211,102,.2);
  border-radius:10px;
  box-shadow:0 4px 12px rgba(0,0,0,.4);
  transition:all .3s ease;
  animation:conoceFeatureIn .6s ease forwards;
  opacity:0;
}
.conoce-features .conoce-feature:nth-child(1) { animation-delay:.1s; }
.conoce-features .conoce-feature:nth-child(2) { animation-delay:.2s; }
.conoce-features .conoce-feature:nth-child(3) { animation-delay:.3s; }
.conoce-features .conoce-feature:nth-child(4) { animation-delay:.4s; }
@keyframes conoceFeatureIn {
  from { opacity:0; transform:translateY(10px); }
  to { opacity:1; transform:translateY(0); }
}
.conoce-feature:hover {
  border-color:rgba(37,211,102,.4);
  transform:translateX(3px);
}
.conoce-feature-icon {
  flex-shrink:0;
  width:36px;
  height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.15rem;
  background:linear-gradient(135deg, rgba(37,211,102,.15) 0%, rgba(37,211,102,.05) 100%);
  border:1px solid rgba(37,211,102,.3);
  border-radius:8px;
  box-shadow:inset 0 2px 4px rgba(255,255,255,.05);
}
.conoce-feature-texto {
  flex:1;
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.conoce-feature-texto strong {
  font-size:.82rem;
  color:#fff;
  font-weight:800;
  letter-spacing:.005em;
}
.conoce-feature-texto span {
  font-size:.72rem;
  color:#cfd1d4;
  line-height:1.4;
}

.conoce-redes-v2 {
  text-align:center;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.08);
}
.conoce-redes-titulo {
  font-size:.95rem;
  color:#fff;
  font-weight:700;
  margin-bottom:14px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.emoji-orbit {
  display:inline-block;
  animation:orbitPulse 2s ease-in-out infinite;
}
@keyframes orbitPulse {
  0%, 100% { transform:scale(1); opacity:1; }
  50% { transform:scale(1.2); opacity:.7; }
}
.redes-sociales-v2 {
  display:flex;
  justify-content:center;
  gap:12px;
  margin-bottom:14px;
  flex-wrap:wrap;
}
.red-social-btn {
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 18px;
  background:linear-gradient(180deg, #1a1a1a 0%, #0a0a0a 100%);
  border:1px solid rgba(255,255,255,.1);
  border-radius:12px;
  color:#fff;
  font-size:.85rem;
  font-weight:700;
  text-decoration:none;
  transition:all .25s ease;
  box-shadow:0 4px 12px rgba(0,0,0,.4);
}
.red-social-btn img {
  width:24px;
  height:24px;
}
.red-social-btn.facebook:hover {
  border-color:#1877F2;
  transform:translateY(-2px);
  box-shadow:0 6px 16px rgba(24,119,242,.35);
}
.red-social-btn.instagram:hover {
  border-color:#E4405F;
  transform:translateY(-2px);
  box-shadow:0 6px 16px rgba(228,64,95,.35);
}
.conoce-leyenda-v2 {
  font-size:.82rem;
  color:#8b929a;
  margin-top:8px;
}

/* ═══════════════════════════════════════════════════════ */
/*  MODALES COMPACTOS · Híbrido con estilo casino/WhatsApp */
/* ═══════════════════════════════════════════════════════ */

.modal-card-compacto {
  max-width:360px !important;
  border-radius:16px !important;
  overflow:hidden;
}

.modal-header-compacto {
  padding:8px 12px;
  min-height:auto;
}

.modal-body-compacto {
  padding:14px 16px 16px !important;
}

/* Título compacto */
.modal-titulo-compacto {
  font-size:1.02rem;
  font-weight:700;
  color:#fff;
  text-align:center;
  margin:0 0 10px;
  line-height:1.3;
}

/* Lista compacta - párrafos apilados sin cajas gigantes */
.modal-lista-compacta {
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-bottom:14px;
}
.modal-linea {
  font-size:.85rem;
  color:#e6eaf0;
  line-height:1.4;
  margin:0;
  padding:8px 12px;
  background:rgba(255,255,255,.03);
  border-radius:8px;
  border:1px solid rgba(37,211,102,.18);
  text-align:center;
}
.modal-linea strong {
  color:#fff;
  font-weight:700;
}
.modal-linea.destacado {
  background:linear-gradient(90deg, rgba(255,235,0,.12), rgba(255,235,0,.02));
  border:1.5px solid rgba(255,235,0,.5);
  padding:10px 12px;
}
.modal-linea.destacado strong {
  color:#FFEB00;
  text-shadow:0 0 6px rgba(255,235,0,.4);
}

/* Botón WhatsApp compacto verde plano */
.btn-modal-wpp {
  width:100%;
  background:#25D366;
  color:#000;
  font-weight:800;
  border:0;
  border-radius:12px;
  padding:14px 16px;
  font-size:.95rem;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  box-shadow:0 12px 24px rgba(37,211,102,.45),0 0 18px rgba(37,211,102,.55);
  cursor:pointer;
  transition:transform .15s ease;
  animation:pulseModalWpp 2s ease-in-out infinite;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  box-sizing:border-box;
}
a.btn-modal-wpp { display:flex; color:#000; }
a.btn-modal-wpp:hover { color:#000; }
@keyframes pulseModalWpp {
  0%, 100% { transform:scale(1); box-shadow:0 12px 24px rgba(37,211,102,.45),0 0 18px rgba(37,211,102,.55); }
  50%      { transform:scale(1.03); box-shadow:0 16px 32px rgba(37,211,102,.6),0 0 24px rgba(37,211,102,.75); }
}
.btn-modal-wpp:hover { transform:scale(1.03); }
.btn-modal-wpp:active { transform:scale(.97); }

.btn-modal-wpp-final {
  animation:pulseModalWppFinal 1.4s ease-in-out infinite;
}
@keyframes pulseModalWppFinal {
  0%, 100% { transform:scale(1); box-shadow:0 12px 24px rgba(37,211,102,.45),0 0 20px rgba(37,211,102,.65); }
  50%      { transform:scale(1.05); box-shadow:0 20px 40px rgba(37,211,102,.65),0 0 32px rgba(37,211,102,.95); }
}

/* Nota inferior compacta */
.modal-nota-inferior {
  margin-top:10px;
  font-size:.72rem;
  color:#8b929a;
  text-align:center;
  line-height:1.3;
}

/* ─── Modal 2 ─── */

/* Cinta casino rojo → amarillo → rojo */
.cinta-casino {
  width:100%;
  background:linear-gradient(90deg, #8B0000 0%, #ff0000 30%, #ffcc00 60%, #8B0000 100%);
  box-shadow:0 6px 14px rgba(0,0,0,.5);
  border-bottom:2px solid #000;
  overflow:hidden;
  position:relative;
  height:36px;
  display:flex;
  align-items:center;
  font-weight:800;
  font-size:.82rem;
  line-height:1.2;
  color:#fff;
  text-transform:uppercase;
  letter-spacing:.03em;
  text-shadow:0 0 5px rgba(0,0,0,.9), 0 0 2px #000;
}
.cinta-casino-track {
  display:flex;
  white-space:nowrap;
  animation:cintaCasinoSlide 12s linear infinite;
  will-change:transform;
}
.cinta-casino-track span {
  display:inline-block;
  padding:0 16px;
  color:#fff;
}
@keyframes cintaCasinoSlide {
  0%   { transform:translateX(0); }
  100% { transform:translateX(-50%); }
}

/* Texto medio del modal 2 */
.modal-texto-medio {
  font-size:.86rem;
  color:#e6eaf0;
  line-height:1.4;
  margin:0 0 8px;
  text-align:center;
}
.modal-texto-medio strong { color:#fff; }
.modal-texto-medio:last-of-type { margin-bottom:12px; }

/* Frase destacada "Hoy puede ser tu día de suerte" - una sola línea */
.modal-frase-hoy {
  margin:0 0 14px;
  font-size:.92rem;
  font-weight:700;
  line-height:1.4;
  color:#FFEB00;
  text-align:center;
  padding:10px 8px;
  background:rgba(255,235,0,.08);
  border:1px solid rgba(255,235,0,.35);
  border-radius:10px;
  text-shadow:0 0 10px rgba(255,235,0,.3);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.modal-frase-hoy strong {
  color:#FFEB00;
  font-weight:900;
}

/* ═══════════════════════════════════════════════════════ */
/*  MODAL IN-APP · Instrucciones para salir de in-app     */
/* ═══════════════════════════════════════════════════════ */

.modal-inapp .inapp-header {
  text-align:center;
  padding:20px 16px 12px;
  background:linear-gradient(180deg, #FF6B00 0%, #FF8C00 100%);
  border-radius:16px 16px 0 0;
  color:#fff;
}
.inapp-emoji-top {
  font-size:2.2rem;
  margin-bottom:6px;
  animation:emojiBounceInApp 1s ease-in-out infinite;
}
@keyframes emojiBounceInApp {
  0%, 100% { transform:translateY(0) scale(1); }
  50%      { transform:translateY(-4px) scale(1.1); }
}
.inapp-titulo {
  font-size:1.05rem;
  font-weight:900;
  color:#fff;
  margin:0;
  text-shadow:0 1px 2px rgba(0,0,0,.2);
  line-height:1.25;
}
.inapp-intro {
  font-size:.9rem;
  color:#e6eaf0;
  text-align:center;
  line-height:1.45;
  margin-bottom:14px;
}
.inapp-intro strong { color:#fff; font-weight:700; }

.inapp-instrucciones {
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-bottom:14px;
}
.inapp-paso {
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:10px 12px;
  background:linear-gradient(135deg, rgba(37,211,102,.08) 0%, rgba(0,0,0,.3) 100%);
  border:1px solid rgba(37,211,102,.25);
  border-radius:9px;
}
.inapp-num {
  flex-shrink:0;
  width:26px;
  height:26px;
  background:#25D366;
  color:#000;
  font-weight:900;
  font-size:.85rem;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 2px 6px rgba(37,211,102,.4);
}
.inapp-paso span:last-child {
  flex:1;
  font-size:.85rem;
  color:#e6eaf0;
  line-height:1.4;
  padding-top:2px;
}
.inapp-paso strong { color:#fff; font-weight:800; }

.inapp-tip {
  padding:10px 12px;
  background:rgba(255,235,0,.08);
  border:1px solid rgba(255,235,0,.3);
  border-radius:8px;
  font-size:.78rem;
  color:#cfd1d4;
  line-height:1.4;
  margin-bottom:14px;
}
.inapp-tip strong { color:#FFEB00; }

.btn-inapp-igual {
  background:#232b3a !important;
  color:#a8aeb5 !important;
  animation:none !important;
  box-shadow:none !important;
  margin-top:8px !important;
  font-size:.82rem !important;
  padding:12px 14px !important;
}
.btn-inapp-igual:hover {
  background:#2a3345 !important;
  transform:none !important;
}

@media (prefers-reduced-motion: reduce) {
  .cinta-marquee-track, .suerte-verde,
  .btn-cta, .btn-final-modal, .btn-wa-principal,
  .conoce-wrap h2, .conoce-wrap .texto-conoce,
  .redes-sociales, .leyenda-redes,
  .paso-icono-grande, .conoce-divider-icon,
  .emoji-orbit, .conoce-feature { animation:none; }
}
@supports (padding:max(0px)) {
  body { padding-bottom:env(safe-area-inset-bottom); }
}
