/* ═══════════════════════════════════════════════════════════
   EDWARD BOCANEGRA — Landing Premium 2.0
   Diseño: Dark & Commercial · Bento Grid · Glassmorphism
   Tipografía: Poppins + Playfair Display
═══════════════════════════════════════════════════════════ */

/* ── TOKENS ─────────────────────────────────────────────── */
:root {
  --navy:        #07111F;
  --navy-2:      #0D1E35;
  --navy-3:      #132844;
  --teal:        #0FA3B8;
  --teal-2:      #08B5CC;
  --teal-dark:   #076A7A;
  --teal-glow:   rgba(15, 163, 184, .22);
  --gold:        #C8921A;
  --gold-light:  #E8AD30;
  --gold-pale:   rgba(200, 146, 26, .12);
  --white:       #FFFFFF;
  --off:         #F4F7FA;
  --muted:       #8FA3B8;
  --text:        #CDD9E8;
  --border:      rgba(255,255,255,.07);
  --glass:       rgba(255,255,255,.04);
  --glass-2:     rgba(255,255,255,.08);

  --font-b: 'Poppins', sans-serif;
  --font-d: 'Playfair Display', serif;

  --max: 1180px;
  --px:  clamp(1.25rem, 5vw, 2.5rem);
  --py:  clamp(5rem, 8vw, 7.5rem);

  --r-sm: .5rem;
  --r-md: 1rem;
  --r-lg: 1.5rem;
  --r-xl: 2rem;
  --r-2xl: 2.75rem;
  --r-pill: 999px;

  --sh-teal: 0 0 40px rgba(15,163,184,.25), 0 16px 40px rgba(7,17,31,.5);
  --sh-card: 0 4px 32px rgba(7,17,31,.5);
  --sh-glow: 0 0 80px rgba(15,163,184,.18);
  --tr: .22s ease;
}

/* ── RESET ───────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{
  font-family:var(--font-b);
  font-size:1rem;
  line-height:1.7;
  color:var(--text);
  background:var(--navy);
  -webkit-font-smoothing:antialiased;
}
img{display:block;max-width:100%;height:auto;}
a{color:inherit;text-decoration:none;}
a:focus-visible,button:focus-visible{outline:2px solid var(--teal);outline-offset:3px;border-radius:4px;}
ul[role="list"],ol{list-style:none;}

/* ── WRAP ────────────────────────────────────────────────── */
.wrap{
  max-width:var(--max);
  margin-inline:auto;
  padding-inline:var(--px);
}

/* ── SECTION HELPERS ─────────────────────────────────────── */
.s-header{text-align:center;margin-bottom:clamp(2.5rem,5vw,4rem);}
.s-title{
  font-family:var(--font-d);
  font-size:clamp(2rem,4.5vw,3.4rem);
  font-weight:900;
  line-height:1.08;
  letter-spacing:-.03em;
  color:var(--white);
  margin-bottom:.85rem;
}
.s-title em{font-style:italic;color:var(--teal);}
.s-title--light{color:var(--white);}
.s-sub{font-size:clamp(.95rem,1.8vw,1.1rem);color:var(--muted);max-width:640px;margin-inline:auto;line-height:1.8;}
.s-sub--light{color:rgba(255,255,255,.72);}
.s-sub strong{color:var(--white);}
.label-xs{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--teal);margin-bottom:.75rem;display:block;}

/* ── PILL TAG ────────────────────────────────────────────── */
.pill{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.38rem 1rem;border-radius:var(--r-pill);
  background:rgba(15,163,184,.12);
  border:1px solid rgba(15,163,184,.25);
  color:var(--teal);
  font-size:.72rem;font-weight:700;
  letter-spacing:.15em;text-transform:uppercase;
  margin-bottom:1.5rem;
}
.pill--light{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15);color:rgba(255,255,255,.88);}
.pill--gold{background:var(--gold-pale);border-color:rgba(200,146,26,.35);color:var(--gold-light);}
.pill--glow{box-shadow:0 0 24px rgba(15,163,184,.2);}
.pill__dot{width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0;animation:dotPulse 2.2s ease-in-out infinite;}
@keyframes dotPulse{0%,100%{opacity:.6;transform:scale(1);}50%{opacity:1;transform:scale(1.7);}}

/* ── BUTTONS ─────────────────────────────────────────────── */
.btn{
  display:inline-flex;align-items:center;gap:.55rem;
  padding:.85rem 2rem;border-radius:var(--r-md);
  font-family:var(--font-b);font-weight:700;font-size:.95rem;
  border:none;cursor:pointer;
  transition:transform var(--tr),box-shadow var(--tr),filter var(--tr);
  white-space:nowrap;
}
.btn:hover{transform:translateY(-2px);}
.btn:active{transform:translateY(0);}
.btn__icon{transition:transform var(--tr);}
.btn:hover .btn__icon{transform:translateX(4px);}

/* Hero CTA */
.btn--hero{
  background:linear-gradient(135deg,var(--teal) 0%,var(--teal-dark) 100%);
  color:var(--white);
  box-shadow:var(--sh-teal);
}
.btn--hero:hover{filter:brightness(1.12);box-shadow:0 0 50px rgba(15,163,184,.4),0 20px 40px rgba(7,17,31,.6);}

.btn--teal{
  background:var(--teal);color:var(--navy);font-weight:800;
  box-shadow:var(--sh-teal);
}
.btn--teal:hover{filter:brightness(1.1);}

.btn--ghost{
  background:var(--glass-2);
  border:1px solid var(--border);
  color:var(--white);
  backdrop-filter:blur(12px);
}
.btn--ghost:hover{background:rgba(255,255,255,.12);border-color:var(--teal);}

.btn--outline-light{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.2);
  color:var(--white);
}
.btn--outline-light:hover{background:rgba(255,255,255,.14);}

.btn--xl{padding:1.1rem 2.6rem;font-size:1.05rem;}

.btn--pulse{animation:btnPulse 2.2s ease-in-out infinite;}
.btn--pulse:hover{animation:none;}
@keyframes btnPulse{
  0%,100%{box-shadow:0 0 30px rgba(15,163,184,.25),0 12px 30px rgba(7,17,31,.5);}
  50%{box-shadow:0 0 55px rgba(15,163,184,.45),0 18px 40px rgba(7,17,31,.6);transform:translateY(-1px);}
}

/* ─────────────────────────────────────────────────────────
   HEADER
───────────────────────────────────────────────────────── */
.hdr{
  position:sticky;top:0;z-index:100;
  background:rgba(7,17,31,.85);
  backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);
  border-bottom:1px solid var(--border);
  transition:box-shadow var(--tr);
}
.hdr.scrolled{box-shadow:0 4px 30px rgba(0,0,0,.35);}
.hdr__inner{
  max-width:var(--max);margin-inline:auto;
  padding:.65rem var(--px);
  display:flex;align-items:center;gap:1.5rem;
}
.hdr__logo{display:flex;align-items:center;flex-shrink:0;}
.hdr__logo-img{
  height:68px;width:auto;
  object-fit:contain;
  filter:brightness(0) invert(1);
  transition:opacity var(--tr);
}
.hdr__logo-img:hover{opacity:.85;}
.hdr__nav{
  display:none;flex:1;justify-content:center;gap:.15rem;
}
@media(min-width:1024px){.hdr__nav{display:flex;}}
.hdr__link{
  padding:.45rem .9rem;border-radius:var(--r-pill);
  font-size:.8rem;font-weight:600;color:var(--muted);
  transition:color var(--tr),background var(--tr);
  white-space:nowrap;
}
.hdr__link:hover{color:var(--white);background:var(--glass-2);}
.hdr__cta{
  display:none;
  padding:.55rem 1.35rem;border-radius:var(--r-pill);
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));
  color:var(--white);font-size:.82rem;font-weight:700;
  box-shadow:0 0 20px rgba(15,163,184,.3);
  transition:filter var(--tr),transform var(--tr);
  white-space:nowrap;
}
.hdr__cta:hover{filter:brightness(1.12);transform:translateY(-1px);}
@media(min-width:768px){.hdr__cta{display:inline-flex;align-items:center;gap:.4rem;}}
.hdr__burger{
  display:flex;flex-direction:column;gap:5px;
  background:none;border:1px solid var(--border);
  border-radius:var(--r-sm);cursor:pointer;
  padding:.5rem .6rem;margin-left:auto;
  transition:border-color var(--tr);
}
.hdr__burger:hover{border-color:var(--teal);}
.hdr__burger span{display:block;width:20px;height:1.5px;background:var(--white);border-radius:2px;transition:transform var(--tr),opacity var(--tr);}
.hdr__burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg);}
.hdr__burger.open span:nth-child(2){opacity:0;}
.hdr__burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg);}
@media(min-width:1024px){.hdr__burger{display:none;}}

/* Mobile nav */
.mob-nav{
  display:none;flex-direction:column;
  background:rgba(7,17,31,.98);
  border-top:1px solid var(--border);
  padding:1rem var(--px) 1.5rem;
  gap:.25rem;
}
.mob-nav.open{display:flex;}
.mob-nav__link{
  padding:.75rem 1rem;border-radius:var(--r-md);
  font-weight:600;color:var(--muted);font-size:.95rem;
  transition:color var(--tr),background var(--tr);
}
.mob-nav__link:hover{color:var(--white);background:var(--glass-2);}
.mob-nav__cta{
  margin-top:.5rem;
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));
  color:var(--white)!important;
  text-align:center;
  box-shadow:var(--sh-teal);
}

/* ─────────────────────────────────────────────────────────
   HERO
───────────────────────────────────────────────────────── */
.hero{
  position:relative;overflow:hidden;
  padding-block:clamp(4.5rem,8vw,7rem) clamp(3rem,5vw,4.5rem);
  background:var(--navy);
}
.hero__bg{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
.hero__blob{position:absolute;border-radius:50%;filter:blur(100px);opacity:.55;}
.hero__blob--1{width:700px;height:700px;background:radial-gradient(circle,rgba(15,163,184,.18),transparent 70%);top:-300px;right:-200px;}
.hero__blob--2{width:500px;height:500px;background:radial-gradient(circle,rgba(200,146,26,.1),transparent 70%);bottom:-200px;left:-100px;}
.hero__blob--3{width:350px;height:350px;background:radial-gradient(circle,rgba(15,163,184,.08),transparent 70%);top:40%;left:30%;}
.hero__grid-lines{
  position:absolute;inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size:60px 60px;
  mask-image:radial-gradient(ellipse at center,black 30%,transparent 80%);
}

.hero__layout{
  display:grid;gap:clamp(3rem,5vw,5rem);
  align-items:center;
}
@media(min-width:900px){.hero__layout{grid-template-columns:1.05fr .95fr;}}

/* Copy */
.hero__copy{position:relative;max-width:660px;}
.hero__h1{
  font-family:var(--font-d);
  font-size:clamp(2.1rem,4.5vw,3.5rem);
  font-weight:900;
  line-height:1.06;
  letter-spacing:-.035em;
  color:var(--white);
  margin-bottom:1.25rem;
}
.hero__h1 em{
  display:block;
  font-style:italic;
  color:var(--teal);
  margin-top:.2rem;
}
.hero__sub{
  font-size:clamp(.97rem,1.7vw,1.1rem);
  color:rgba(255,255,255,.68);
  line-height:1.8;
  margin-bottom:2rem;
}
.hero__sub strong{color:var(--white);}
.hero__actions{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.75rem;}

.hero__pills{display:flex;flex-wrap:wrap;gap:.5rem .85rem;margin-bottom:1.25rem;}
.tag{
  display:inline-flex;align-items:center;gap:.35rem;
  padding:.3rem .85rem;border-radius:var(--r-pill);
  background:var(--glass-2);border:1px solid var(--border);
  color:rgba(255,255,255,.8);font-size:.78rem;font-weight:600;
}

.hero__note{
  font-size:.78rem;color:var(--muted);
  background:var(--glass);border:1px solid var(--border);
  border-radius:var(--r-md);padding:.7rem 1rem;
  line-height:1.6;
}
.hero__note strong{color:var(--teal);}

/* Image card */
.hero__card{
  position:relative;
  display:flex;justify-content:center;
}
.hero__img-wrap{
  position:relative;
  border-radius:var(--r-2xl);
  overflow:hidden;
  width:100%;max-width:500px;
  box-shadow:var(--sh-teal),var(--sh-card);
  border:1px solid rgba(15,163,184,.2);
  background:var(--navy-3);
}
.hero__img{width:100%;height:auto;min-height:380px;object-fit:cover;object-position:center top;display:block;}
.hero__img-overlay{
  position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(7,17,31,.05) 0%,transparent 40%,rgba(7,17,31,.65) 100%);
}
.hero__ring{
  position:absolute;inset:-16px;
  border-radius:var(--r-2xl);
  border:1px solid rgba(15,163,184,.15);
  pointer-events:none;
}

/* Floating chips */
.fchip{
  position:absolute;
  display:flex;flex-direction:column;align-items:center;
  padding:.6rem 1rem;border-radius:var(--r-lg);
  background:rgba(7,17,31,.85);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border:1px solid rgba(15,163,184,.25);
  box-shadow:0 8px 24px rgba(0,0,0,.4);
  white-space:nowrap;
}
.fchip strong{font-family:var(--font-d);font-size:1.35rem;font-weight:900;color:var(--teal);line-height:1;}
.fchip span{font-size:.65rem;color:var(--muted);margin-top:.15rem;}
.fchip--tl{top:8%;left:-5%;}
.fchip--tr{top:22%;right:-5%;}
.fchip--br{bottom:14%;right:-5%;}
@media(max-width:768px){
  .fchip--tl{left:2%;top:4%;}
  .fchip--tr{right:2%;top:15%;}
  .fchip--br{right:2%;bottom:10%;}
}

/* Trust scroll ticker */
.trust-scroll{
  margin-top:clamp(2.5rem,4vw,4rem);
  overflow:hidden;
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
  padding:.6rem 0;
  mask-image:linear-gradient(90deg,transparent,black 10%,black 90%,transparent);
}
.trust-scroll__track{
  display:flex;gap:2.5rem;
  width:max-content;
  animation:ticker 28s linear infinite;
}
.trust-scroll__track span{
  white-space:nowrap;
  font-size:.8rem;font-weight:600;
  color:var(--muted);
  letter-spacing:.04em;
  flex-shrink:0;
}
@keyframes ticker{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* ─────────────────────────────────────────────────────────
   HERO VIDEO
───────────────────────────────────────────────────────── */
.hero__video-wrap{
  margin-top:clamp(2rem,3.5vw,3rem);
  width:100%;
}
.hero__video-frame{
  position:relative;
  width:100%;
  padding-bottom:56.25%;
  height:0;
  overflow:hidden;
  box-shadow:0 20px 60px rgba(0,0,0,.5);
}
.hero__video-frame iframe{
  position:absolute;
  top:0;left:0;
  width:100%;height:100%;
  border:none;
}

/* ─────────────────────────────────────────────────────────
   STATS
───────────────────────────────────────────────────────── */
.s-stats{
  padding-block:clamp(3rem,5vw,5rem);
  background:#0B2337;
  border-bottom:1px solid var(--border);
}
.bento--stats{
  display:grid;gap:1rem;
  grid-template-columns:repeat(2,1fr);
}
@media(min-width:768px){.bento--stats{grid-template-columns:repeat(4,1fr);}}

.bento__cell{
  background:var(--glass);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  padding:1.75rem 1.5rem;
  transition:transform var(--tr),border-color var(--tr);
}
.bento__cell:hover{transform:translateY(-3px);border-color:rgba(15,163,184,.2);}
.bento__cell--stat{text-align:center;}
.big-num{
  display:block;
  font-family:var(--font-d);
  font-size:clamp(2rem,4vw,2.75rem);
  font-weight:900;color:var(--teal);line-height:1;
  margin-bottom:.4rem;
}
.bento__cell--stat span{font-size:.82rem;color:var(--muted);font-weight:500;line-height:1.4;}

.bento__cell--trg{
  display:flex;flex-direction:column;justify-content:center;gap:.75rem;
  background:linear-gradient(135deg,rgba(15,163,184,.1),rgba(7,17,31,.5));
  border-color:rgba(15,163,184,.2);
}
.trg-badge{
  display:inline-flex;align-items:center;justify-content:center;
  width:56px;height:56px;border-radius:var(--r-md);
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));
  font-family:var(--font-d);font-size:1.1rem;font-weight:900;color:var(--white);
  box-shadow:var(--sh-teal);
}
.bento__cell--trg p{font-size:.85rem;color:var(--muted);line-height:1.6;}

/* ─────────────────────────────────────────────────────────
   PROBLEMA
───────────────────────────────────────────────────────── */
.s-problema{
  padding-block:var(--py);
  /* ALTERNADO: Fondo claro / blanco con texto oscuro */
  background:#F5F8FA;
}
.s-problema .s-title{color:var(--navy);}
.s-problema .s-title em{color:var(--teal-dark);}
.s-problema .s-sub{color:#4A5568;}

.bento--problema{
  display:grid;gap:1rem;
  grid-template-columns:repeat(2,1fr);
}
@media(min-width:768px){.bento--problema{grid-template-columns:repeat(4,1fr);}}

.pcard{
  background:var(--white);
  border:1px solid #D4E0EC;
  border-radius:var(--r-xl);
  padding:1.75rem 1.5rem;
  box-shadow:0 2px 20px rgba(12,36,72,.06);
  transition:transform var(--tr),border-color var(--tr),box-shadow var(--tr);
}
.pcard:hover{transform:translateY(-4px);border-color:var(--teal);box-shadow:0 8px 30px rgba(15,163,184,.15);}
.pcard__num{
  display:inline-flex;align-items:center;justify-content:center;
  width:40px;height:40px;border-radius:var(--r-md);
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));
  color:var(--white);font-size:.72rem;font-weight:900;letter-spacing:.1em;
  margin-bottom:1rem;
  box-shadow:0 6px 20px rgba(15,163,184,.3);
}
.pcard__title{font-size:1rem;font-weight:800;color:var(--navy);margin-bottom:.4rem;}
.pcard__text{font-size:.85rem;color:#5A6E82;line-height:1.65;}

/* Wide card */
.pcard--wide{
  grid-column:1/-1;
  display:grid;gap:2rem;
}
@media(min-width:768px){.pcard--wide{grid-template-columns:1fr 1fr;align-items:center;}}
.pcard--dark{
  background:var(--navy);
  border-color:rgba(15,163,184,.2);
  padding:2rem 2.25rem;
}

.intentos{list-style:none;display:flex;flex-direction:column;gap:.7rem;margin-top:.75rem;}
.intentos li{display:flex;align-items:flex-start;gap:.75rem;font-size:.9rem;color:rgba(255,255,255,.72);line-height:1.55;}
.x{color:var(--gold);font-weight:900;font-size:1rem;flex-shrink:0;margin-top:.05rem;}

/* Sub-bullets dentro de cada grupo de edad */
.intentos--sub{
  list-style:disc;
  padding-left:1.1rem;
  margin-top:.4rem;
  gap:.3rem;
}
.intentos--sub li{
  display:list-item;
  font-size:.82rem;
  color:rgba(255,255,255,.65);
  line-height:1.5;
  gap:0;
}

.pcard--wide__quote{
  font-family:var(--font-d);
  font-size:clamp(1.1rem,2vw,1.35rem);
  font-style:italic;
  color:var(--white);
  line-height:1.5;
  margin-bottom:1.5rem;
}
.pcard--wide__quote strong{font-style:normal;color:var(--teal);}

/* ─────────────────────────────────────────────────────────
   MÉTODO
───────────────────────────────────────────────────────── */
.s-metodo,
.s-para-quien{
  position:relative;overflow:hidden;
  padding-block:var(--py);
  /* ALTERNADO: Dark navy */
  background:linear-gradient(135deg,var(--navy) 0%,#0D2040 100%);
  border-top:1px solid var(--border);
  border-bottom:1px solid var(--border);
}
.s-metodo::before{
  content:'';position:absolute;left:0;top:0;bottom:0;
  width:3px;
  background:linear-gradient(to bottom,transparent,var(--teal),transparent);
}
.s-metodo__bg{position:absolute;inset:0;pointer-events:none;}
.s-metodo__glow{
  position:absolute;right:-200px;top:50%;transform:translateY(-50%);
  width:600px;height:600px;border-radius:50%;
  background:radial-gradient(circle,rgba(15,163,184,.1),transparent 70%);
  filter:blur(60px);
}

.metodo__layout{display:grid;gap:clamp(3rem,5vw,5rem);align-items:start;}
@media(min-width:900px){.metodo__layout{grid-template-columns:.42fr .58fr;}}
.metodo__copy{position:relative;z-index:1;}
.metodo__copy .s-title{text-align:left;}
.metodo__copy .s-sub{text-align:left;margin-inline:0;margin-bottom:2rem;}

/* Steps */
.steps{
  list-style:none;
  position:relative;
  display:flex;flex-direction:column;gap:0;
  padding-left:0;
}
.steps::before{
  content:'';position:absolute;left:29px;top:62px;bottom:62px;
  width:1px;background:linear-gradient(to bottom,var(--teal-glow),rgba(15,163,184,.1));
}
.step{
  display:grid;grid-template-columns:60px 1fr;gap:1.5rem;
  padding-bottom:1.75rem;align-items:start;
}
.step:last-child{padding-bottom:0;}
.step__num{
  display:flex;align-items:center;justify-content:center;
  width:60px;height:60px;border-radius:var(--r-lg);
  background:var(--glass);
  border:1px solid rgba(15,163,184,.25);
  color:var(--teal);
  font-size:.72rem;font-weight:900;letter-spacing:.15em;
  flex-shrink:0;position:relative;z-index:1;
  transition:background var(--tr),border-color var(--tr);
}
.step:hover .step__num{background:rgba(15,163,184,.15);border-color:rgba(15,163,184,.45);}
.step__body{padding-top:.85rem;}
.step__title{font-size:1.05rem;font-weight:800;color:var(--white);margin-bottom:.3rem;}
.step__text{font-size:.875rem;color:var(--muted);line-height:1.7;}

/* ─────────────────────────────────────────────────────────
   PROGRAMA
───────────────────────────────────────────────────────── */
.s-programa{
  padding-block:var(--py);
  /* ALTERNADO: Fondo blanco limpio */
  background:#FFFFFF;
}
.s-programa .s-title{color:var(--navy);}
.s-programa .s-title em{color:var(--teal-dark);}
.s-programa .s-sub{color:#4A5568;}
.s-programa .pill{background:rgba(15,163,184,.1);border-color:rgba(15,163,184,.25);}

/* ── NUEVO BENTO SUPERIOR: Mockup grande + features col ── */
.programa__bento-top{
  display:grid;
  gap:1.5rem;
  margin-bottom:1.5rem;
}
@media(min-width:900px){
  .programa__bento-top{
    grid-template-columns:1.15fr .85fr;
    align-items:start;
  }
}

.programa__mockup-hero{
  position:relative;
  border-radius:var(--r-2xl);
  overflow:visible;
}
.programa__mockup-inner{
  border-radius:var(--r-xl);
  overflow:hidden;
  background:#E9F4F6;
  border:1px solid #C8DDE5;
  padding:1rem;
  box-shadow:0 20px 60px rgba(12,36,72,.12);
}
.programa__img{border-radius:var(--r-lg);width:100%;}

/* Floating badges sobre el mockup */
.programa__badge-float{
  position:absolute;
  top:-14px;left:16px;
  display:flex;align-items:center;gap:.75rem;
  padding:.65rem 1.1rem;
  background:var(--white);
  border:1px solid #C8DDE5;
  border-radius:var(--r-lg);
  box-shadow:0 8px 24px rgba(12,36,72,.12);
  white-space:nowrap;
}
.programa__badge-float--br{
  top:auto;left:auto;
  bottom:-14px;right:16px;
}
.pb-icon{font-size:1.35rem;}
.programa__badge-float strong{
  display:block;
  font-size:.88rem;font-weight:800;
  color:var(--navy);line-height:1.2;
}
.programa__badge-float span{
  font-size:.72rem;color:#5A6E82;
}

/* Columna de features verticales */
.programa__features-col{
  display:flex;flex-direction:column;gap:1rem;
}
.programa__features-col .fcard{
  background:#F5F8FA;
  border-color:#D4E0EC;
  display:flex;align-items:flex-start;gap:1rem;
}
.programa__features-col .fcard:hover{
  border-color:var(--teal);
  background:var(--white);
  box-shadow:0 8px 24px rgba(15,163,184,.12);
}
.programa__features-col .fcard--accent{
  background:linear-gradient(135deg,rgba(15,163,184,.06),rgba(15,163,184,.02));
  border-color:rgba(15,163,184,.3);
}
.programa__features-col .fcard__icon{font-size:1.5rem;flex-shrink:0;margin-bottom:0;}
.programa__features-col .fcard__title{color:var(--navy);}
.programa__features-col .fcard__text{color:#5A6E82;}

/* ── BENTO INFERIOR: Bono + semanas ── */
.programa__bento-bottom{
  display:grid;
  gap:1.5rem;
  margin-top:.5rem;
}
@media(min-width:768px){
  .programa__bento-bottom{
    grid-template-columns:1fr 1.2fr;
    align-items:start;
  }
}

.fcard--horiz{
  display:flex;align-items:flex-start;gap:1.25rem;
}

/* Semanas en grid para el nuevo layout */
.semana-list--grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.65rem;
}
@media(max-width:640px){
  .semana-list--grid{grid-template-columns:1fr;}
}
.semana-list--grid .sitem{
  background:var(--white);
  border-color:#D4E0EC;
}
.semana-list--grid .sitem:hover{border-color:var(--teal);}
.semana-list--grid .sitem__h{color:var(--navy);}
.semana-list--grid .sitem__p{color:#5A6E82;}
.semanas__title{color:var(--navy);}

.fcard--gold{
  background:linear-gradient(135deg,rgba(200,146,26,.08),rgba(232,173,48,.05));
  border-color:rgba(200,146,26,.35);
}
.fcard--gold .fcard__title{color:var(--gold);}
.fcard--gold .fcard__text{color:#6B5218;}

.bento--features{
  display:grid;gap:1rem;
  grid-template-columns:repeat(2,1fr);
  margin-bottom:clamp(3rem,5vw,4.5rem);
}
@media(min-width:768px){.bento--features{grid-template-columns:repeat(3,1fr);}}

.fcard{
  background:var(--glass);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  padding:1.75rem 1.5rem;
  transition:transform var(--tr),border-color var(--tr),box-shadow var(--tr);
}
.fcard:hover{transform:translateY(-3px);border-color:rgba(15,163,184,.2);box-shadow:var(--sh-glow);}
.fcard--accent{
  background:linear-gradient(135deg,rgba(15,163,184,.12),rgba(7,17,31,.5));
  border-color:rgba(15,163,184,.25);
}
.fcard--dark{
  background:linear-gradient(135deg,var(--navy-3),var(--navy-2));
}
.fcard--gold{
  background:var(--gold-pale);border-color:rgba(200,146,26,.3);
  display:flex;align-items:flex-start;gap:1.25rem;
}
.fcard--wide{grid-column:1/-1;}

.fcard__icon{font-size:1.75rem;margin-bottom:.9rem;line-height:1;}
.fcard__icon--lg{font-size:2.5rem;margin-bottom:0;flex-shrink:0;}
.fcard__title{font-size:.95rem;font-weight:800;color:var(--white);margin-bottom:.35rem;}
.fcard--gold .fcard__title{color:var(--gold-light);}
.fcard__text{font-size:.83rem;color:var(--muted);line-height:1.65;}

/* Programa bottom */
.programa__bottom{
  display:grid;gap:2.5rem;align-items:start;
}
@media(min-width:900px){.programa__bottom{grid-template-columns:1fr 1fr;}}
.programa__mockup{
  border-radius:var(--r-xl);overflow:hidden;
  background:var(--navy-2);border:1px solid var(--border);
  padding:1rem;box-shadow:var(--sh-card);
}
.programa__img{border-radius:var(--r-lg);width:100%;}

/* Semanas */
.semanas__title{
  font-family:var(--font-d);font-size:1.3rem;font-weight:800;
  color:var(--white);margin-bottom:1.25rem;
}
.semana-list{display:flex;flex-direction:column;gap:.75rem;}
.sitem{
  display:flex;gap:1rem;align-items:flex-start;
  padding:1rem 1.25rem;
  background:var(--glass);border:1px solid var(--border);
  border-radius:var(--r-lg);
  transition:border-color var(--tr);
}
.sitem:hover{border-color:rgba(15,163,184,.2);}
.sitem__tag{
  flex-shrink:0;
  padding:.25rem .65rem;border-radius:var(--r-pill);
  background:rgba(15,163,184,.12);
  border:1px solid rgba(15,163,184,.2);
  color:var(--teal);font-size:.68rem;font-weight:800;
  letter-spacing:.08em;white-space:nowrap;
  margin-top:.15rem;
}
.sitem__h{font-size:.9rem;font-weight:700;color:var(--white);margin-bottom:.2rem;}
.sitem__p{font-size:.8rem;color:var(--muted);line-height:1.55;}

/* ─────────────────────────────────────────────────────────
   SOBRE EDWARD
───────────────────────────────────────────────────────── */
.s-edward{
  padding-block:var(--py);
  /* ALTERNADO: Gradiente teal oscuro */
  background:linear-gradient(135deg,#072435 0%,#0A3349 50%,#07111F 100%);
  border-top:1px solid rgba(15,163,184,.12);
  border-bottom:1px solid rgba(15,163,184,.12);
}
.edward__layout{display:grid;gap:clamp(3rem,5vw,5rem);align-items:center;}
@media(min-width:900px){.edward__layout{grid-template-columns:.44fr .56fr;}}

.edward__photo-wrap{
  position:relative;
  display:flex;justify-content:center;
}
.edward__photo{
  width:100%;max-width:440px;
  border-radius:var(--r-2xl);
  object-fit:cover;
  border:1px solid rgba(15,163,184,.2);
  box-shadow:var(--sh-teal),var(--sh-card);
  position:relative;z-index:1;
}
.edward__photo-glow{
  position:absolute;
  width:80%;height:80%;
  background:radial-gradient(circle,rgba(15,163,184,.2),transparent 70%);
  filter:blur(60px);
  z-index:0;inset:10%;
}

.edward__role{
  font-size:.9rem;font-weight:600;
  color:var(--teal);margin-bottom:1.5rem;
}
.edward__bio{display:flex;flex-direction:column;gap:.85rem;margin-bottom:1.75rem;}
.edward__bio p{font-size:.9rem;color:rgba(255,255,255,.72);line-height:1.8;}
.edward__bio strong{color:var(--white);}
.edward__bio em{color:var(--teal);font-style:italic;}

.edward__creds{
  display:grid;grid-template-columns:1fr 1fr;gap:.65rem;
  margin-bottom:2rem;
}
.cred{
  display:flex;align-items:center;gap:.65rem;
  padding:.75rem 1rem;
  background:var(--glass);border:1px solid var(--border);
  border-radius:var(--r-md);
  font-size:.8rem;font-weight:600;color:rgba(255,255,255,.82);
  transition:border-color var(--tr);
}
.cred:hover{border-color:rgba(15,163,184,.2);}
@media(max-width:480px){.edward__creds{grid-template-columns:1fr;}}

/* ─────────────────────────────────────────────────────────
   TESTIMONIOS
───────────────────────────────────────────────────────── */
.s-testi{
  padding-block:var(--py);
  /* ALTERNADO: Fondo blanco / muy claro */
  background:#F5F8FA;
}
.s-testi .s-title{color:var(--navy);}
.s-testi .pill--light{background:rgba(15,163,184,.1);border-color:rgba(15,163,184,.25);color:var(--teal-dark);}
.testi__grid{
  display:grid;gap:1.25rem;
  grid-template-columns:1fr;
}
@media(min-width:768px){.testi__grid{grid-template-columns:repeat(3,1fr);align-items:start;}}

.tcard{
  background:var(--white);
  border:1px solid #D4E0EC;
  border-radius:var(--r-xl);
  padding:2rem;
  display:flex;flex-direction:column;gap:1.1rem;
  box-shadow:0 4px 20px rgba(12,36,72,.06);
  transition:transform var(--tr),border-color var(--tr),box-shadow var(--tr);
}
.tcard:hover{transform:translateY(-4px);border-color:var(--teal);box-shadow:0 12px 35px rgba(15,163,184,.15);}
.tcard--featured{
  background:linear-gradient(135deg,rgba(15,163,184,.06),rgba(7,17,31,.04));
  border-color:rgba(15,163,184,.35);
  box-shadow:0 0 40px rgba(15,163,184,.08);
}
.tcard__stars{color:var(--gold);font-size:1rem;letter-spacing:.05em;}
.tcard__quote{
  font-size:.92rem;line-height:1.8;color:#3A4A5C;
  border:none;padding:0;margin:0;font-style:normal;flex:1;
}
.tcard__quote strong{color:var(--navy);}
.tcard__footer{
  display:flex;align-items:center;gap:.85rem;
  border-top:1px solid #E2EAF0;padding-top:1rem;
}
.tcard__avatar{
  width:40px;height:40px;border-radius:50%;flex-shrink:0;
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));
  display:flex;align-items:center;justify-content:center;
  font-size:.72rem;font-weight:900;color:var(--white);
  box-shadow:0 4px 12px rgba(15,163,184,.3);
}
.tcard__name{display:block;font-size:.88rem;font-weight:800;color:var(--navy);}
.tcard__role{font-size:.75rem;color:#5A6E82;}

/* ─────────────────────────────────────────────────────────
   OFERTA
───────────────────────────────────────────────────────── */
.s-oferta{
  position:relative;overflow:hidden;
  padding-block:var(--py);
  /* ALTERNADO: Dark navy profundo */
  background:linear-gradient(150deg,#030C17 0%,#071524 50%,#030C17 100%);
  border-top:1px solid var(--border);
}
.s-oferta__bg{position:absolute;inset:0;pointer-events:none;}
.s-oferta__radial{
  position:absolute;width:800px;height:800px;border-radius:50%;
  background:radial-gradient(circle,rgba(15,163,184,.12),transparent 65%);
  filter:blur(80px);
  top:-400px;right:-200px;
}
.s-oferta__radial--2{
  background:radial-gradient(circle,rgba(200,146,26,.07),transparent 65%);
  top:auto;bottom:-400px;left:-200px;
}

.oferta__card{
  display:grid;gap:2.5rem;
  background:var(--glass);
  border:1px solid rgba(15,163,184,.2);
  border-radius:var(--r-2xl);
  padding:clamp(2rem,4vw,3.5rem);
  position:relative;overflow:hidden;
  box-shadow:var(--sh-teal);
}
@media(min-width:900px){.oferta__card{grid-template-columns:1fr 1fr;align-items:start;}}
.oferta__card::before{
  content:'';position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,var(--teal),transparent);
}

/* Precio */
.precio{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem;}
.precio__antes{
  font-size:1.25rem;font-weight:700;
  color:rgba(255,255,255,.3);text-decoration:line-through;
}
.precio__now{display:flex;align-items:center;gap:.9rem;}
.precio__val{
  font-family:var(--font-d);
  font-size:clamp(2.5rem,6vw,3.5rem);
  font-weight:900;color:var(--teal);line-height:1;
}
.precio__badge{
  padding:.35rem .9rem;border-radius:var(--r-pill);
  background:var(--gold);color:var(--navy);
  font-size:.7rem;font-weight:900;
  letter-spacing:.08em;text-transform:uppercase;
  white-space:nowrap;
}

/* Includes */
.includes{list-style:none;display:flex;flex-direction:column;gap:.8rem;margin-bottom:2rem;}
.includes li{
  display:flex;align-items:center;gap:.85rem;
  font-size:.9rem;color:rgba(255,255,255,.82);
}
.inc-check{
  display:inline-flex;align-items:center;justify-content:center;
  width:22px;height:22px;border-radius:50%;
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));
  color:var(--white);font-size:.72rem;font-weight:900;flex-shrink:0;
  box-shadow:0 4px 10px rgba(15,163,184,.4);
}

/* Garantía */
.garantia{
  display:flex;align-items:flex-start;gap:.9rem;
  padding:1rem 1.25rem;
  background:var(--glass);border:1px solid var(--border);
  border-radius:var(--r-md);margin-top:1.25rem;
}
.garantia__icon{font-size:1.25rem;flex-shrink:0;margin-top:.05rem;}
.garantia p{font-size:.8rem;color:var(--muted);line-height:1.65;}

/* Right panel */
.oferta__right-label{
  font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  color:var(--teal);margin-bottom:1.25rem;
}
.oferta__semanas{display:flex;flex-direction:column;gap:.65rem;margin-bottom:1.5rem;}
.os{
  display:flex;align-items:center;gap:.9rem;
  padding:.8rem 1rem;
  background:var(--glass);border:1px solid var(--border);
  border-radius:var(--r-md);
  transition:border-color var(--tr),background var(--tr);
}
.os:hover{border-color:rgba(15,163,184,.25);background:rgba(15,163,184,.06);}
.os__n{
  width:34px;height:34px;border-radius:var(--r-sm);
  display:flex;align-items:center;justify-content:center;
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));
  color:var(--white);font-size:.7rem;font-weight:900;flex-shrink:0;
}
.os__l{flex:1;font-size:.85rem;font-weight:600;color:rgba(255,255,255,.82);}
.os__check{color:var(--teal);font-size:.85rem;font-weight:900;}

.oferta__bono{
  display:flex;align-items:center;gap:.7rem;
  padding:.85rem 1.1rem;
  background:var(--gold-pale);border:1px solid rgba(200,146,26,.3);
  border-radius:var(--r-md);
  font-size:.85rem;color:var(--gold-light);
  margin-bottom:.75rem;
}
.oferta__bono strong{font-weight:800;}

.oferta__hotmart{
  display:flex;align-items:center;justify-content:center;gap:.65rem;
  padding:.75rem;
  background:var(--glass);border:1px solid var(--border);
  border-radius:var(--r-md);
  font-size:.78rem;color:var(--muted);
}
.oferta__hotmart strong{color:var(--white);font-weight:900;letter-spacing:.08em;}

/* ─────────────────────────────────────────────────────────
   FAQ
───────────────────────────────────────────────────────── */
.s-faq{
  padding-block:var(--py);
  /* ALTERNADO: Gris muy claro */
  background:#EFF3F7;
}
.s-faq .s-title{color:var(--navy);}
.s-faq .pill{background:rgba(15,163,184,.1);border-color:rgba(15,163,184,.25);}

.faq__cols{
  display:grid;gap:0;
  max-width:1000px;margin-inline:auto;
}
@media(min-width:768px){.faq__cols{grid-template-columns:1fr 1fr;gap:0 1.5rem;}}

.faq__list{display:flex;flex-direction:column;gap:.65rem;}
.faq__item{
  border-radius:var(--r-lg);overflow:hidden;
  background:var(--white);
  border:1px solid #D4E0EC;
  box-shadow:0 2px 12px rgba(12,36,72,.05);
  transition:border-color var(--tr),box-shadow var(--tr);
}
.faq__item:hover{border-color:var(--teal);box-shadow:0 4px 20px rgba(15,163,184,.1);}
.faq__q{
  width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1.2rem 1.4rem;
  background:none;border:none;cursor:pointer;text-align:left;
  transition:background var(--tr);
}
.faq__q:hover{background:#F5F8FA;}
.faq__q h3{font-size:.9rem;font-weight:700;color:var(--navy);line-height:1.4;}
.faq__q[aria-expanded="true"] h3{color:var(--teal-dark);}
.faq__icon{
  width:26px;height:26px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  background:#EFF3F7;border:1px solid #D4E0EC;
  color:var(--teal);font-size:1.1rem;font-weight:700;flex-shrink:0;
  transition:transform var(--tr),background var(--tr);
}
.faq__q[aria-expanded="true"] .faq__icon{
  transform:rotate(45deg);
  background:var(--teal);color:var(--white);border-color:var(--teal);
}
.faq__a{padding:0 1.4rem 1.2rem;border-top:1px solid #E2EAF0;}
.faq__a:not([hidden]){display:block;}
.faq__a p{font-size:.87rem;color:#4A5568;line-height:1.75;padding-top:.9rem;}
.faq__a a{color:var(--teal-dark);text-decoration:underline;}

/* FAQ CTA */
.faq__cta{
  margin-top:clamp(3rem,5vw,4.5rem);
  text-align:center;
}
.faq__cta-q{
  font-family:var(--font-d);
  font-size:clamp(1.5rem,3vw,2.25rem);
  font-weight:800;color:var(--navy);
  margin-bottom:1.75rem;
}
.faq__cta-note{margin-top:.85rem;font-size:.78rem;color:#5A6E82;font-weight:500;}

/* ─────────────────────────────────────────────────────────
   FOOTER
───────────────────────────────────────────────────────── */
.ftr{
  padding-block:3.5rem 2rem;
  background:var(--navy-2);
  border-top:1px solid var(--border);
}
.ftr__grid{
  display:grid;gap:2.5rem;
  grid-template-columns:1fr;
  margin-bottom:2.5rem;
}
@media(min-width:640px){.ftr__grid{grid-template-columns:1.5fr 1fr 1fr;}}
.ftr__name{
  display:block;
  font-family:var(--font-d);font-size:1.2rem;color:var(--white);
  margin-bottom:.4rem;
}
.ftr__name strong{color:var(--teal);}
.ftr__tag{font-size:.8rem;color:var(--muted);line-height:1.6;margin-bottom:1.25rem;}
.ftr__social{display:flex;gap:.65rem;flex-wrap:wrap;}
.ftr__slink{
  padding:.35rem .85rem;border-radius:var(--r-pill);
  font-size:.78rem;font-weight:600;color:var(--teal);
  border:1px solid rgba(15,163,184,.25);
  transition:background var(--tr),border-color var(--tr);
}
.ftr__slink:hover{background:rgba(15,163,184,.12);border-color:var(--teal);}

.ftr__heading{
  font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:rgba(255,255,255,.3);margin-bottom:.85rem;
}
.ftr__links{list-style:none;display:flex;flex-direction:column;gap:.5rem;}
.ftr__links a{font-size:.85rem;color:var(--muted);transition:color var(--tr);}
.ftr__links a:hover{color:var(--teal);}
.ftr__contact-p{font-size:.88rem;color:var(--muted);margin-bottom:.5rem;}
.ftr__web{color:var(--teal)!important;font-weight:600;text-decoration:underline;font-size:.88rem;}

.ftr__bottom{
  border-top:1px solid var(--border);padding-top:1.5rem;
  display:flex;flex-direction:column;gap:.35rem;text-align:center;
}
.ftr__bottom p{font-size:.72rem;color:rgba(255,255,255,.25);}

/* ─────────────────────────────────────────────────────────
   STICKY CTA MÓVIL
───────────────────────────────────────────────────────── */
.sticky{
  display:none;
  position:fixed;bottom:0;left:0;right:0;z-index:99;
  padding:.65rem 1rem;
  background:rgba(7,17,31,.95);
  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);
  border-top:1px solid rgba(15,163,184,.2);
}
@media(max-width:1023px){.sticky{display:block;}}
.sticky__btn{
  display:block;width:100%;text-align:center;
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));
  color:var(--white);font-size:.95rem;font-weight:700;
  padding:.9rem;border-radius:var(--r-md);
  box-shadow:var(--sh-teal);
  transition:filter var(--tr),transform var(--tr);
}
.sticky__btn:hover{filter:brightness(1.1);transform:translateY(-1px);}
.sticky__btn strong{font-weight:900;color:var(--gold-light);}

/* ─────────────────────────────────────────────────────────
   ANIMACIONES SCROLL
───────────────────────────────────────────────────────── */
@keyframes fadeUp{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}
.reveal{opacity:0;}
.reveal.visible{animation:fadeUp .55s ease-out both;}

/* ─────────────────────────────────────────────────────────
   RESPONSIVE EXTRA
───────────────────────────────────────────────────────── */
@media(max-width:480px){
  .bento--problema{grid-template-columns:1fr;}
  .pcard--wide{grid-template-columns:1fr;}
  .bento--features{grid-template-columns:1fr;}
  .fcard--wide{grid-column:1;}
  .precio{flex-direction:column;align-items:flex-start;gap:.75rem;}
}

/* ─────────────────────────────────────────────────────────
   PREFERS REDUCED MOTION
───────────────────────────────────────────────────────── */
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}
  html{scroll-behavior:auto;}
  .trust-scroll__track{animation:none;}
}

/* ─────────────────────────────────────────────────────────
   COUNTDOWN BAR — Flip Clock Style
───────────────────────────────────────────────────────── */
.countdown-bar{
  /* NO es sticky — se desplaza con el scroll */
  background:linear-gradient(135deg,var(--navy-2) 0%,#0A3349 50%,var(--navy-2) 100%);
  border-top:2px solid var(--teal);
  border-bottom:1px solid rgba(15,163,184,.2);
  padding:1.1rem var(--px) 1.35rem;
  text-align:center;
  box-shadow:0 4px 24px rgba(15,163,184,.12);
}

/* Fila horizontal: reloj + botón lado a lado */
.countdown-bar__row{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:2.5rem;
  flex-wrap:wrap;
}

/* Label superior — grande y centrado */
.countdown-bar__label{
  font-size:clamp(1rem,2.2vw,1.3rem);
  font-weight:600;
  color:rgba(255,255,255,.92);
  margin:0 0 1rem;
  letter-spacing:.01em;
  line-height:1.4;
}
.countdown-bar__label strong{
  font-weight:900;
  color:#fff;
}

/* Contenedor del reloj */
.countdown-bar__timer{
  display:inline-flex;
  align-items:flex-start;
  justify-content:center;
  gap:.6rem;
}

/* Cada tile (dígito + etiqueta) */
.flip-tile{
  display:flex;flex-direction:column;align-items:center;gap:.45rem;
}

/* La tarjeta oscura estilo flip */
.flip-tile__card{
  position:relative;
  width:72px;height:80px;
  background:linear-gradient(180deg,#071C2E 0%,#050F1A 100%);
  border-radius:10px;
  border:1px solid rgba(15,163,184,.25);
  display:flex;align-items:center;justify-content:center;
  box-shadow:
    0 6px 20px rgba(0,0,0,.45),
    inset 0 1px 0 rgba(15,163,184,.15),
    inset 0 -1px 0 rgba(0,0,0,.3);
  overflow:hidden;
}
@media(min-width:600px){
  .flip-tile__card{width:90px;height:96px;}
}

/* Número dentro del tile */
.flip-tile__num{
  font-family:var(--font-b);
  font-size:clamp(2.2rem,5vw,3.2rem);
  font-weight:900;
  color:#fff;
  line-height:1;
  letter-spacing:.04em;
  font-variant-numeric:tabular-nums;
  text-shadow:0 2px 8px rgba(0,0,0,.4);
  user-select:none;
}

/* Línea central — la costura del flip */
.flip-tile__line{
  position:absolute;
  left:0;right:0;top:50%;
  height:2px;
  background:rgba(0,0,0,.5);
  box-shadow:0 1px 0 rgba(255,255,255,.05);
  pointer-events:none;
}

/* Etiqueta bajo el tile */
.flip-tile__label{
  font-size:.62rem;
  font-weight:800;
  letter-spacing:.18em;
  color:rgba(255,255,255,.75);
  text-transform:uppercase;
}

/* Separador ":" entre tiles */
.flip-tile__sep{
  font-size:2.5rem;
  font-weight:900;
  color:rgba(255,255,255,.6);
  line-height:1;
  margin-top:.8rem;
  animation:blink 1s step-end infinite;
}
@keyframes blink{0%,100%{opacity:1;}50%{opacity:.15;}}

/* CTA button — centrado debajo del reloj */
.countdown-bar__cta{
  display:inline-flex;align-items:center;
  padding:.55rem 1.6rem;
  background:linear-gradient(135deg,var(--teal),var(--teal-dark));
  color:#fff;
  font-size:.9rem;font-weight:800;
  border-radius:var(--r-pill);
  white-space:nowrap;
  transition:transform var(--tr),box-shadow var(--tr),filter var(--tr);
  box-shadow:0 4px 20px rgba(15,163,184,.4);
  letter-spacing:.02em;
}
.countdown-bar__cta:hover{transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 8px 28px rgba(15,163,184,.5);}

/* Estado expirado */
.countdown-bar--expired .countdown-bar__timer{opacity:.4;pointer-events:none;}

/* Animación de cambio de número */
@keyframes flipIn{
  0%{transform:translateY(-6px);opacity:0;}
  100%{transform:translateY(0);opacity:1;}
}
.flip-tile__num.flip-anim{animation:flipIn .18s ease-out both;}

/* ─────────────────────────────────────────────────────────
   OFERTA — encabezado grande
───────────────────────────────────────────────────────── */
.oferta__big-title{
  font-size:clamp(2.8rem,7vw,5.5rem);
  font-weight:900;
  letter-spacing:-.04em;
  line-height:1;
  color:#fff;
  text-shadow:0 0 60px rgba(200,146,26,.35);
  margin-bottom:.5rem;
}
.oferta__subtitle{
  font-size:clamp(1rem,2vw,1.25rem);
  color:rgba(255,255,255,.75);
  margin-bottom:2.5rem;
}
.oferta__subtitle em{color:var(--gold-light);font-style:italic;}

/* ─────────────────────────────────────────────────────────
   TESTIMONIOS EN VIDEO (YouTube Shorts)
───────────────────────────────────────────────────────── */
.s-testi-video{
  position:relative;
  padding-block:var(--py);
  overflow:hidden;
  background:linear-gradient(180deg, var(--navy) 0%, var(--navy-2) 50%, var(--navy) 100%);
}

/* glows de fondo */
.s-testi-video__bg{position:absolute;inset:0;pointer-events:none;}
.s-testi-video__glow{
  position:absolute;
  width:480px;height:480px;
  border-radius:50%;
  filter:blur(90px);
  opacity:.18;
}
.s-testi-video__glow--l{
  top:-10%;left:-8%;
  background:radial-gradient(circle, var(--teal) 0%, transparent 70%);
}
.s-testi-video__glow--r{
  bottom:-10%;right:-8%;
  background:radial-gradient(circle, var(--gold) 0%, transparent 70%);
}

/* ── Grid: siempre 3 columnas en una sola fila ── */
.testi-video__grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:1.75rem;
  max-width:1100px;
  margin-inline:auto;
  margin-bottom:3rem;
}

/* ── Card ── */
.testi-video__card{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:1.25rem;
  background:var(--glass);
  border:1px solid var(--border);
  border-radius:var(--r-xl);
  padding:1.5rem 1.5rem 2rem;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:var(--sh-card);
  transition:transform var(--tr), box-shadow var(--tr), border-color var(--tr);
}
.testi-video__card:hover{
  transform:translateY(-6px);
  box-shadow:0 8px 48px rgba(15,163,184,.2), var(--sh-card);
  border-color:rgba(15,163,184,.3);
}

/* ── Thumbnail button ── */
.testi-video__thumb{
  position:relative;
  width:100%;
  aspect-ratio:9/16;
  max-width:270px;
  border:none;
  background:none;
  padding:0;
  cursor:pointer;
  border-radius:var(--r-lg);
  overflow:hidden;
  box-shadow:0 0 0 3px rgba(15,163,184,.15);
  transition:box-shadow var(--tr), transform var(--tr);
}
.testi-video__thumb:hover{
  box-shadow:0 0 0 3px rgba(15,163,184,.5), 0 12px 40px rgba(15,163,184,.25);
  transform:scale(1.02);
}
.testi-video__thumb-img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:transform .4s ease, filter .4s ease;
}
.testi-video__thumb:hover .testi-video__thumb-img{
  transform:scale(1.06);
  filter:brightness(.85);
}

/* ── Botón play ── */
.testi-video__play{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(7,17,31,.25);
  transition:background var(--tr);
}
.testi-video__thumb:hover .testi-video__play{
  background:rgba(7,17,31,.1);
}
.testi-video__play svg{
  width:72px;height:72px;
  filter:drop-shadow(0 4px 18px rgba(15,163,184,.55));
  transition:transform .3s cubic-bezier(.34,1.56,.64,1);
}
.testi-video__thumb:hover .testi-video__play svg{
  transform:scale(1.15);
}

/* ── Caption ── */
.testi-video__caption{
  text-align:center;
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:.5rem;
}
.testi-video__stars{
  color:var(--gold-light);
  font-size:1.15rem;
  letter-spacing:.1em;
  text-shadow:0 0 12px rgba(200,146,26,.5);
}
.testi-video__text{
  font-size:.9rem;
  color:var(--muted);
  line-height:1.6;
  max-width:260px;
}

/* ── CTA ── */
.testi-video__cta{
  display:flex;
  justify-content:center;
}

/* ── Responsive ── */
@media(max-width:860px){
  .testi-video__grid{
    grid-template-columns:repeat(2, 1fr);
    max-width:600px;
  }
}
@media(max-width:520px){
  .testi-video__grid{
    grid-template-columns:1fr;
    max-width:300px;
  }
}

/* ─────────────────────────────────────────────────────────
   MODAL DE VIDEO
───────────────────────────────────────────────────────── */
.video-modal{
  position:fixed;
  inset:0;
  z-index:9000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:1rem;
}
.video-modal[hidden]{display:none;}

/* Backdrop */
.video-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(5,12,24,.88);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  cursor:pointer;
  animation:modalFadeIn .28s ease both;
}

/* Caja del modal */
.video-modal__box{
  position:relative;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:.75rem;
  animation:modalSlideIn .32s cubic-bezier(.34,1.4,.64,1) both;
}

/* Botón cerrar */
.video-modal__close{
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;height:42px;
  border-radius:50%;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.2);
  color:#fff;
  cursor:pointer;
  transition:background var(--tr), transform var(--tr);
  backdrop-filter:blur(8px);
}
.video-modal__close:hover{
  background:rgba(255,255,255,.2);
  transform:rotate(90deg) scale(1.1);
}
.video-modal__close svg{width:20px;height:20px;}

/* Frame wrap — proporción 9:16 para Shorts */
.video-modal__frame-wrap{
  position:relative;
  /* En desktop: alto fijo, ancho derivado de 9/16 */
  height:min(82vh, 640px);
  width:calc(min(82vh, 640px) * 9 / 16);
  border-radius:var(--r-xl);
  overflow:hidden;
  background:#000;
  box-shadow:0 0 0 2px rgba(15,163,184,.25), 0 32px 80px rgba(7,17,31,.8);
}
.video-modal__iframe{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  border:none;
}

/* Animaciones */
@keyframes modalFadeIn{
  from{opacity:0;}
  to{opacity:1;}
}
@keyframes modalSlideIn{
  from{opacity:0;transform:scale(.88) translateY(24px);}
  to{opacity:1;transform:scale(1) translateY(0);}
}

/* Responsive mobile */
@media(max-width:480px){
  .video-modal__frame-wrap{
    height:auto;
    width:min(92vw, 340px);
    aspect-ratio:9/16;
  }
}


