/* Versión 3: correcciones de Andrés (WhatsApp sobre las flechas, movimiento lateral, negritas de las rutas)
   y la línea de sus referentes: vidrio, degradados carmesí, brillo y la tarjeta 3D sobre la palma. Se carga después de pro2.css. */

/* ── Nada se sale por los lados ── */
html,body{overflow-x:clip;max-width:100%}
main,section,.bloque,.vivo,.paises2,footer{overflow-x:clip}

/* ── Fondo con brillos carmesí, como los referentes ── */
body{background:
  radial-gradient(900px 600px at 100% 0%,rgba(150,6,31,.28),transparent 60%),
  radial-gradient(800px 600px at 0% 40%,rgba(224,16,52,.12),transparent 60%),
  var(--carbon)}
.plano-fondo{background:
  radial-gradient(700px 420px at 92% 8%,rgba(224,16,52,.20),transparent 65%),
  radial-gradient(600px 500px at 0% 100%,rgba(127,180,230,.10),transparent 65%),
  linear-gradient(rgba(127,180,230,.045) 1px,transparent 1px) 0 0/40px 40px,
  linear-gradient(90deg,rgba(127,180,230,.045) 1px,transparent 1px) 0 0/40px 40px,
  #0d1013}

/* ── Vidrio para todas las tarjetas ── */
.ruta,.prod2,.pasos3 li,.mini,.medidor,.faq details,.testi,.para3 > div,.alumno{
  background:linear-gradient(155deg,rgba(255,255,255,.085) 0%,rgba(255,255,255,.025) 45%,rgba(255,255,255,.04) 100%);
  backdrop-filter:blur(16px) saturate(1.2);-webkit-backdrop-filter:blur(16px) saturate(1.2);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 24px 60px rgba(0,0,0,.35)}
.para3 .si{background:linear-gradient(155deg,rgba(30,158,94,.16),rgba(30,158,94,.04));border-color:rgba(30,158,94,.4)}

/* ── Rutas: título en negrita, con brillo ── */
.ruta .n{font:900 14px/1.2 var(--ultra);letter-spacing:.12em;color:#b9d6f2;text-shadow:0 0 18px rgba(127,180,230,.45)}
.ruta.rx{background:linear-gradient(155deg,rgba(143,220,255,.16) 0%,rgba(16,40,56,.55) 55%,rgba(8,20,28,.6) 100%);border-color:rgba(143,220,255,.32)}
.ruta.pw{background:linear-gradient(155deg,rgba(224,16,52,.30) 0%,rgba(60,10,22,.55) 55%,rgba(20,8,12,.6) 100%);border-color:rgba(224,16,52,.42)}
.ruta.pw .n{color:#ffc2cd;text-shadow:0 0 18px rgba(224,16,52,.55)}
.ruta .si{font-size:19px}

/* ── La tarjeta destacada, como el «Best deal» del referente ── */
.destacado{position:relative;border:1px solid rgba(224,16,52,.6);
  background:linear-gradient(135deg,rgba(224,16,52,.22) 0%,rgba(40,8,16,.6) 38%,rgba(12,14,17,.8) 100%);
  box-shadow:0 0 0 1px rgba(224,16,52,.25),0 40px 100px rgba(150,6,31,.35),inset 0 1px 0 rgba(255,255,255,.15)}
.destacado .marca{background:linear-gradient(90deg,#ff2a52,#b0072a);box-shadow:0 8px 24px rgba(224,16,52,.5)}
.prod2 .arte{border-bottom:1px solid rgba(255,255,255,.08)}
.prod2.c3{border-color:rgba(224,16,52,.35)}

/* ── «Cómo funciona» como recorrido con nodos que brillan ── */
.pasos3{position:relative}
.pasos3::before{content:"";position:absolute;left:8%;right:8%;top:58px;height:2px;background:linear-gradient(90deg,var(--azul),var(--rojo));opacity:.5;z-index:0}
.pasos3 li{position:relative;z-index:1;padding-top:30px}
.pasos3 li::before{content:counter(s);width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font:900 22px/1 var(--ultra);color:#fff;
  background:radial-gradient(circle at 35% 30%,#5aa8e8,#1d4f7a);box-shadow:0 0 0 6px rgba(127,180,230,.14),0 0 30px rgba(127,180,230,.55)}
.pasos3 li:last-child::before{background:radial-gradient(circle at 35% 30%,#ff5876,#9e0726);box-shadow:0 0 0 6px rgba(224,16,52,.16),0 0 30px rgba(224,16,52,.6)}

/* ── Testimonios: flechas a la izquierda, lejos del botón de WhatsApp ── */
.carrusel .flechas{justify-content:flex-start}
.carrusel .flechas span{order:3;margin-right:0;margin-left:auto;padding-right:150px}
.testi .ed{background:rgba(127,180,230,.08)}

/* ── WhatsApp: en celular solo el ícono ── */
@media (max-width:760px){
  .wa{padding:14px;border-radius:50%;font-size:0;gap:0}
  .wa svg{width:24px;height:24px}
  .carrusel .flechas span{padding-right:70px}
}

/* ── Inicio v3: la foto con la palma y la tarjeta 3D flotando encima ── */
.hero3{position:relative;isolation:isolate;background:#090607}
.hero3 .escenario{position:relative;width:100%;aspect-ratio:1920/1085;container-type:inline-size}
.hero3 picture,.hero3 picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 40%}
.hero3 .sombra{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(9,6,7,.92) 0%,rgba(9,6,7,.7) 32%,rgba(9,6,7,0) 58%),linear-gradient(0deg,rgba(9,6,7,.85) 0%,transparent 26%)}
.hero3 .grano{z-index:2}
.hero3 .txt{position:absolute;z-index:4;left:max(20px,calc((100vw - 1180px)/2 + 20px));top:50%;transform:translateY(-50%);width:min(560px,46vw);display:grid;gap:24px}
.hero3 h1{font-size:clamp(42px,5.6vw,92px)}
.hero3 .sub{font-size:clamp(17px,1.6vw,21px);color:var(--suave);max-width:34ch}
.hero3 .acc{display:flex;flex-wrap:wrap;gap:12px}
/* La tarjeta se ancla sobre la palma: 72,5 % del ancho y 83 % del alto de la foto */
.flota{position:absolute;z-index:3;left:72.5%;top:83%;font-size:clamp(8px,1.02cqw,17px);width:18.75em;transform:translate(-50%,-112%);perspective:1200px;pointer-events:none}
.flota .halo{position:absolute;left:50%;bottom:-34%;width:70%;height:30%;transform:translateX(-50%);background:radial-gradient(ellipse,rgba(255,80,110,.55),transparent 70%);filter:blur(10px);animation:halo 4s ease-in-out infinite}
.tarjeta3d{position:relative;transform:rotateX(22deg) rotateY(-16deg) rotateZ(5deg);transform-style:preserve-3d;animation:flota 4s ease-in-out infinite}
@keyframes flota{0%,100%{translate:0 0}50%{translate:0 -12px}}
@keyframes halo{0%,100%{opacity:.85;width:70%}50%{opacity:.55;width:60%}}
.tarjeta3d .cara{position:relative;border-radius:1.1em;padding:1em 1em .9em;display:grid;gap:.75em;color:#fff;
  background:linear-gradient(150deg,rgba(40,44,50,.92) 0%,rgba(14,16,19,.94) 60%,rgba(30,10,16,.95) 100%);
  box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 -1px 0 rgba(0,0,0,.6) inset,0 0 0 1px rgba(255,255,255,.14),
    6px 10px 0 -2px #2a2e33,7px 12px 0 -2px rgba(255,255,255,.12),0 40px 70px rgba(0,0,0,.55),0 0 50px rgba(224,16,52,.25)}
.tarjeta3d .cara::after{content:"";position:absolute;inset:0;border-radius:1.1em;pointer-events:none;background:linear-gradient(120deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,0) 30%,rgba(255,255,255,0) 75%,rgba(255,255,255,.08) 100%)}
.tarjeta3d .fila{display:flex;justify-content:space-between;align-items:center;gap:.5em;font:500 .62em/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#c9d9e8}
.tarjeta3d .fila b{font:900 1.1em/1 var(--ultra);letter-spacing:.06em;color:#fff}
.tarjeta3d .fila i{font-style:normal;display:inline-flex;gap:6px;align-items:center;color:#ff8fa3}
.tarjeta3d .fila i::before{content:"";width:.7em;height:.7em;border-radius:50%;background:#ff3b5c;box-shadow:0 0 8px #ff3b5c;animation:late 1.2s infinite}
.medidor-arco{position:relative;display:grid;place-items:center}
.medidor-arco svg{width:100%;height:auto;display:block}
.medidor-arco .valor{position:absolute;bottom:4%;left:0;right:0;text-align:center;display:grid;gap:2px}
.medidor-arco .valor b{font:900 2.6em/1 var(--ultra);letter-spacing:-.03em}
.medidor-arco .valor span{font:500 .56em/1.2 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#c9d9e8}
.chips{display:grid;gap:.38em}
.chips span{display:flex;justify-content:space-between;align-items:center;gap:.5em;font:300 .75em/1 var(--light);padding:.66em .8em;border-radius:.7em;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08)}
.chips em{font-style:normal;font:900 .85em/1 var(--ultra);letter-spacing:.06em;text-transform:uppercase;padding:.35em .6em;border-radius:.4em}
.chips .r{color:#fff;background:linear-gradient(90deg,#ff2a52,#b0072a)}
.chips .a{color:#1a1206;background:linear-gradient(90deg,#ffc04d,#e08e00)}
.tarjeta3d .sim{font:500 .53em/1 var(--mono);letter-spacing:.14em;color:rgba(255,255,255,.45);text-align:right}

@media (max-width:900px){
  .hero3 .escenario{aspect-ratio:1000/1250;max-height:none;min-height:0}
  .hero3 picture img{object-position:50% 50%}
  .hero3 .sombra{background:linear-gradient(0deg,rgba(9,6,7,1) 0%,rgba(9,6,7,0) 22%)}
  .hero3 .txt{position:relative;left:auto;top:auto;transform:none;width:auto;padding:0 20px 56px;margin-top:-10px}
  .flota{left:58%;top:79%;font-size:clamp(7px,2.25cqw,12px);transform:translate(-50%,-100%)}
}
@media (prefers-reduced-motion:reduce){ .tarjeta3d,.flota .halo{animation:none!important} }

/* ── Página de la Radiografía en el estilo v3 ── */
.flota.ancha{width:25em;transform:translate(-50%,-110%)}
.tarjeta3d .film{position:relative;border-radius:.7em;overflow:hidden;background:radial-gradient(ellipse at 50% 45%,#0b2433 0%,#06141d 55%,#02080c 100%);
  box-shadow:inset 0 0 2.5em rgba(0,0,0,.7),0 0 0 1px rgba(143,220,255,.25)}
.tarjeta3d .film .rx-svg{display:block;width:100%;height:auto}
.tarjeta3d .film .rx-num{display:none}
.tarjeta3d .fila span{font:500 1em/1 var(--mono)}
.placa-wrap{width:min(1040px,100%);justify-self:center;display:grid;gap:22px}
.remate{font:900 clamp(20px,2.4vw,30px)/1.2 var(--ultra);text-transform:uppercase;text-align:center;max-width:30ch;justify-self:center;margin:0}
.remate em{font-style:normal;color:var(--rojo)}
.rx-placa{box-shadow:0 50px 110px rgba(0,0,0,.6),0 0 0 1px rgba(143,220,255,.22),0 0 80px rgba(224,16,52,.12),inset 0 0 120px rgba(0,0,0,.65)}
.rx-leyenda li{background:linear-gradient(155deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px;backdrop-filter:blur(10px)}

/* Video, precio rápido y aviso */
.vsl .vidrio{box-shadow:0 40px 90px rgba(0,0,0,.6),0 0 0 1px rgba(255,255,255,.16),0 0 70px rgba(224,16,52,.22)}
.aviso-boton{background:linear-gradient(90deg,transparent,rgba(127,180,230,.08),transparent)}
.compra-rapida{border-radius:16px;margin-block:28px;background:linear-gradient(135deg,rgba(224,16,52,.18),rgba(255,255,255,.03) 50%,rgba(127,180,230,.06));border:1px solid rgba(224,16,52,.35);box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 30px 70px rgba(150,6,31,.22)}

/* Lo que recibe: filas de vidrio y hojas con brillo */
.lista-informe li{border-bottom:none;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:14px 16px;background:linear-gradient(155deg,rgba(255,255,255,.07),rgba(255,255,255,.02));backdrop-filter:blur(10px);transition:transform .25s,border-color .25s}
.lista-informe li:hover{transform:translateX(4px);border-color:rgba(127,180,230,.45)}
.lista-informe li span{font:900 13px/1 var(--ultra);color:#b9d6f2;text-shadow:0 0 14px rgba(127,180,230,.5)}
.paginas .hoja{box-shadow:0 30px 60px rgba(0,0,0,.5),0 0 40px rgba(224,16,52,.18)}

/* Quién la hace */
.datos{background:transparent;border:none;gap:10px}
.datos div{border-radius:12px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(155deg,rgba(255,255,255,.08),rgba(255,255,255,.02));backdrop-filter:blur(10px)}

/* La oferta, como el «Best deal» */
.ticket{background:linear-gradient(150deg,rgba(224,16,52,.24) 0%,rgba(40,8,16,.7) 35%,rgba(14,16,19,.92) 100%);border:1px solid rgba(224,16,52,.55);
  box-shadow:0 0 0 1px rgba(224,16,52,.2),0 50px 120px rgba(150,6,31,.38),inset 0 1px 0 rgba(255,255,255,.16);backdrop-filter:blur(16px)}
.ticket::before{height:5px;background:linear-gradient(90deg,#ff2a52,#b0072a)}
.ticket li::before{border-color:#ff6b82;box-shadow:0 0 10px rgba(255,59,92,.45)}
.ticket .precio b{background:linear-gradient(180deg,#fff,#ffc9d3);-webkit-background-clip:text;background-clip:text;color:transparent}

@media (max-width:900px){
  .flota.ancha{left:56%;top:79%;width:22em;transform:translate(-50%,-100%)}
}

/* ── Países en movimiento: una línea, banderas que ondean y letras en ola ── */
.paises3{position:relative;border-block:1px solid rgba(255,255,255,.08);background:linear-gradient(90deg,#0b0d0f,#140a0d 50%,#0b0d0f);padding-block:22px 26px;overflow:hidden}
.paises3::before{content:"";position:absolute;inset:0;background:radial-gradient(600px 120px at 50% 100%,rgba(224,16,52,.18),transparent 70%);pointer-events:none}
.paises3 .cab-p{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px}
.paises3 .ante{color:#b9d6f2}
.paises3 .cuenta{font:900 13px/1 var(--ultra);letter-spacing:.14em;text-transform:uppercase;color:#fff;padding:7px 12px;border-radius:999px;background:linear-gradient(90deg,#ff2a52,#b0072a);box-shadow:0 6px 20px rgba(224,16,52,.4)}
.marquesina{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.pista-p{display:flex;gap:18px;width:max-content;animation:desfile 38s linear infinite;padding-block:6px}
.marquesina:hover .pista-p{animation-play-state:paused}
@keyframes desfile{to{transform:translateX(calc(-50% - 9px))}}
.pais{display:inline-flex;align-items:center;gap:14px;padding:12px 22px 12px 14px;border-radius:999px;white-space:nowrap;
  background:linear-gradient(155deg,rgba(255,255,255,.09),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 10px 30px rgba(0,0,0,.35)}
.bandera-g{position:relative;display:block;width:42px;height:28px;border-radius:4px;overflow:hidden;transform-origin:left center;animation:ondea 2.8s ease-in-out infinite;box-shadow:0 4px 14px rgba(0,0,0,.4),0 0 0 1px rgba(255,255,255,.2)}
.bandera-g svg{display:block;width:100%;height:100%}
.bandera-g::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(0,0,0,.18) 0%,rgba(255,255,255,0) 30%,rgba(255,255,255,.45) 50%,rgba(255,255,255,0) 70%,rgba(0,0,0,.18) 100%);background-size:260% 100%;animation:pliegue 2.8s ease-in-out infinite}
@keyframes ondea{0%,100%{transform:perspective(180px) rotateY(0deg) skewY(0deg)}50%{transform:perspective(180px) rotateY(-16deg) skewY(-3deg)}}
@keyframes pliegue{0%{background-position:100% 0}100%{background-position:-60% 0}}
.nombre{font:900 20px/1 var(--ultra);text-transform:uppercase;letter-spacing:.02em;display:inline-flex}
.nombre span{display:inline-block;animation:ola 3.4s ease-in-out infinite;animation-delay:calc(var(--i) * .07s)}
@keyframes ola{0%,60%,100%{transform:translateY(0);color:var(--papel);text-shadow:none}15%{transform:translateY(-7px);color:#ff8fa3;text-shadow:0 0 16px rgba(224,16,52,.7)}30%{transform:translateY(0);color:var(--papel)}}
.pais:nth-child(even) .bandera-g{animation-delay:-1.2s}
.pais:nth-child(even) .bandera-g::after{animation-delay:-1.2s}
@media (max-width:620px){
  .paises3 .cab-p{flex-direction:column;gap:10px;align-items:flex-start}
  .nombre{font-size:16px}
  .bandera-g{width:34px;height:23px}
  .pista-p{animation-duration:28s}
}
@media (prefers-reduced-motion:reduce){
  .pista-p{width:auto;flex-wrap:wrap;justify-content:center;padding-inline:20px}
  .pista-p > .pais:nth-child(n+9){display:none}
}

/* ── Testimonios más arriba y más compactos ── */
.carrusel .pista{grid-auto-columns:calc((100% - 64px)/5)}
.testi .marco{aspect-ratio:3/4}
.testi blockquote{font-size:15px;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}
@media (max-width:1100px){ .carrusel .pista{grid-auto-columns:calc((100% - 48px)/4)} }
@media (max-width:900px){ .carrusel .pista{grid-auto-columns:calc((100% - 32px)/3)} }
@media (max-width:620px){ .carrusel .pista{grid-auto-columns:64%} }

/* ── Testimonios v3: título nuevo y contador ── */
.cab-testi{display:grid;grid-template-columns:1.2fr 1fr;gap:28px;align-items:end}
.cab-testi h2{font-size:clamp(36px,5.4vw,70px)}
.contador{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.contador div{border-radius:14px;padding:16px 14px;display:grid;gap:6px;text-align:center;
  background:linear-gradient(155deg,rgba(224,16,52,.16),rgba(255,255,255,.03));border:1px solid rgba(224,16,52,.35);box-shadow:inset 0 1px 0 rgba(255,255,255,.12)}
.contador b{font:900 clamp(34px,4vw,52px)/1 var(--ultra);letter-spacing:-.03em;font-variant-numeric:tabular-nums;background:linear-gradient(180deg,#fff,#ffc0cc);-webkit-background-clip:text;background-clip:text;color:transparent}
.contador span{font:500 11px/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#c9d9e8}
@media (max-width:900px){ .cab-testi{grid-template-columns:1fr} }

/* ── Quién es v3 ── */
.quien h2{font-size:clamp(30px,3.8vw,54px);line-height:.98}

/* ── Productos: tarjetas de vidrio que explican la idea ── */
.prod2{grid-template-rows:200px 1fr}
.prod2 .arte.ui{padding:18px;display:grid;place-items:center}
.prod2 .lema{font:900 17px/1.2 var(--ultra);text-transform:uppercase;color:var(--papel);letter-spacing:-.01em}
.prod2 .info{grid-template-rows:auto auto auto 1fr auto auto}
.ui-pasos,.ui-franq,.ui-pw .pase{width:100%;max-width:300px;border-radius:14px;padding:14px;display:grid;gap:8px;
  background:linear-gradient(155deg,rgba(255,255,255,.12),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 20px 40px rgba(0,0,0,.4)}
/* Consultoría: tres pasos que se encienden en orden */
.ui-pasos .paso{display:grid;grid-template-columns:30px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center;padding:7px 10px;border-radius:10px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);animation:enciende 6s infinite;animation-delay:calc(var(--k) * 1.2s)}
.ui-pasos .paso i{grid-row:1/3;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font:900 12px/1 var(--ultra);font-style:normal;color:#fff;background:#26313a;transition:background .3s}
.ui-pasos .paso b{font:900 12px/1.1 var(--ultra);text-transform:uppercase}
.ui-pasos .paso em{font-style:normal;font:300 11px/1.2 var(--light);color:#c9d9e8}
@keyframes enciende{0%,8%{border-color:rgba(255,255,255,.08);box-shadow:none}14%,70%{border-color:rgba(127,180,230,.6);box-shadow:0 0 18px rgba(127,180,230,.35)}100%{border-color:rgba(255,255,255,.08);box-shadow:none}}
.ui-pasos .paso i{animation:nodo 6s infinite;animation-delay:calc(var(--k) * 1.2s)}
@keyframes nodo{0%,8%{background:#26313a}14%,70%{background:radial-gradient(circle at 35% 30%,#5aa8e8,#1d4f7a);box-shadow:0 0 14px rgba(127,180,230,.7)}100%{background:#26313a}}
/* Franquicia: franquiciable → franquicia; un local se vuelve varios */
.ui-franq .etapas{display:flex;justify-content:space-between;font:900 10px/1 var(--ultra);letter-spacing:.06em;text-transform:uppercase}
.ui-franq .e1{color:#ffd27a}.ui-franq .e2{color:#ff8fa3}
.barra-f{height:6px;border-radius:3px;background:rgba(255,255,255,.1);overflow:hidden}
.barra-f i{display:block;height:100%;width:0;border-radius:3px;background:linear-gradient(90deg,#ffd27a,#ff2a52);animation:llena 6s infinite}
@keyframes llena{0%{width:0}45%{width:50%}80%,100%{width:100%}}
.locales{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-top:6px}
.locales span{aspect-ratio:1;border-radius:8px;position:relative;background:linear-gradient(160deg,rgba(255,255,255,.14),rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.18)}
.locales span::before{content:"";position:absolute;inset:28% 22% 18%;border:2px solid currentColor;border-top-width:5px;border-radius:2px}
.locales .l0{color:#ffd27a;box-shadow:0 0 16px rgba(255,210,122,.4)}
.locales .l1,.locales .l2,.locales .l3{color:#ff8fa3;opacity:0;animation:aparece 6s infinite}
.locales .l1{animation-delay:.0s}.locales .l2{animation-delay:.25s}.locales .l3{animation-delay:.5s}
@keyframes aparece{0%,55%{opacity:0;transform:scale(.6)}65%,92%{opacity:1;transform:scale(1);box-shadow:0 0 16px rgba(224,16,52,.45)}100%{opacity:0;transform:scale(.6)}}
/* Planeta Wings: pase de franquiciado */
.ui-pw .pase{position:relative;gap:7px}
.ui-pw .pase b{font:900 14px/1.1 var(--ultra);text-transform:uppercase;margin-bottom:2px}
.ui-pw .sello-a{position:absolute;top:-10px;right:12px;font:900 10px/1 var(--ultra);letter-spacing:.08em;text-transform:uppercase;color:#fff;padding:6px 9px;border-radius:999px;background:linear-gradient(90deg,#ff2a52,#b0072a);box-shadow:0 6px 18px rgba(224,16,52,.5);animation:latido 2s ease-in-out infinite}
@keyframes latido{50%{transform:scale(1.06)}}
.ui-pw .ok{display:flex;gap:9px;align-items:center;font:300 12px/1.2 var(--light);color:#e8e6e2;opacity:.35;animation:chulea 6s infinite;animation-delay:calc(var(--k) * .7s)}
.ui-pw .ok::before{content:"✓";width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font:900 10px/1 var(--ultra);color:#fff;background:#1E9E5E;box-shadow:0 0 10px rgba(30,158,94,.6)}
@keyframes chulea{0%,10%{opacity:.35}20%,85%{opacity:1}100%{opacity:.35}}
@media (prefers-reduced-motion:reduce){ .locales .l1,.locales .l2,.locales .l3,.ui-pw .ok{opacity:1} .barra-f i{width:100%} }

/* Franquicia: los locales son restaurantes */
.locales span{display:grid;place-items:center}
.locales span::before{display:none}
.locales svg{width:70%;height:70%;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}

/* Testimonios: bajada bajo el título */
.cab-testi .tit{display:grid;gap:14px}
.cab-testi .tit p{font-size:18px;color:var(--suave);max-width:46ch}

/* Planeta Wings: el logo quieto en el centro y dos órbitas con sedes girando */
.prod2 .arte.ui .ui-pw2{position:relative;width:190px;height:170px;display:grid;place-items:center}
.ui-pw2 img{position:relative;z-index:2;width:104px;height:104px;object-fit:contain}
.ui-pw2 .orbita{position:absolute;left:50%;top:50%;border-radius:50%;border:1px solid rgba(255,255,255,.18);transform:translate(-50%,-50%) rotateX(68deg);animation:gira 9s linear infinite}
.ui-pw2 .o1{width:170px;height:170px}
.ui-pw2 .o2{width:230px;height:230px;border-color:rgba(224,16,52,.3);animation-duration:14s;animation-direction:reverse}
@keyframes gira{to{transform:translate(-50%,-50%) rotateX(68deg) rotateZ(360deg)}}
.ui-pw2 .orbita i{position:absolute;width:12px;height:12px;border-radius:50%;background:#ffd27a;box-shadow:0 0 12px #ffb300;top:-6px;left:calc(50% - 6px)}
.ui-pw2 .orbita i:nth-child(2){top:auto;bottom:-6px}
.ui-pw2 .o2 i{background:#ff6b82;box-shadow:0 0 12px #E01034}
.ui-pw2 .o2 i:nth-child(3){top:calc(50% - 6px);left:-6px}
.ui-pw2 .chip-pw{position:absolute;z-index:3;bottom:-8px;left:50%;transform:translateX(-50%);white-space:nowrap;font:900 10px/1 var(--ultra);letter-spacing:.08em;text-transform:uppercase;color:#fff;padding:7px 11px;border-radius:999px;background:linear-gradient(90deg,#ff2a52,#b0072a);box-shadow:0 6px 18px rgba(224,16,52,.5)}
.prod2.c3 .arte{background:radial-gradient(circle at 50% 50%,rgba(224,16,52,.35),rgba(23,11,14,.9) 65%)}
@media (prefers-reduced-motion:reduce){ .ui-pw2 .orbita{animation:none} }

/* ── Captura antes de WhatsApp: tarjeta de vidrio ── */
html.cx-abierto{overflow:hidden}
.cx-capa{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}
.cx-fondo{position:absolute;inset:0;background:radial-gradient(700px 500px at 50% 40%,rgba(150,6,31,.35),rgba(6,7,8,.82) 70%);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);opacity:0;transition:opacity .25s}
.cx-tarjeta{position:relative;width:min(480px,100%);max-height:calc(100vh - 40px);overflow:auto;border-radius:22px;padding:22px 22px 18px;display:grid;gap:16px;color:var(--papel);
  background:linear-gradient(155deg,rgba(255,255,255,.14) 0%,rgba(255,255,255,.05) 40%,rgba(224,16,52,.10) 100%);
  border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(22px) saturate(1.3);-webkit-backdrop-filter:blur(22px) saturate(1.3);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 40px 100px rgba(0,0,0,.6),0 0 80px rgba(224,16,52,.25);
  opacity:0;transform:translateY(24px) scale(.97);transition:opacity .28s,transform .35s cubic-bezier(.2,.8,.2,1)}
.cx-visible .cx-fondo{opacity:1}
.cx-visible .cx-tarjeta{opacity:1;transform:none}
.cx-cab{display:flex;justify-content:space-between;align-items:center}
.cx-marca{display:inline-flex;gap:9px;align-items:center;font:900 12px/1 var(--ultra);letter-spacing:.08em;text-transform:uppercase}
.cx-marca i{width:9px;height:9px;border-radius:50%;background:#25D366;box-shadow:0 0 10px #25D366}
.cx-x{width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:#fff;font:300 22px/1 var(--light);cursor:pointer}
.cx-barra{height:4px;border-radius:2px;background:rgba(255,255,255,.12);overflow:hidden}
.cx-barra i{display:block;height:100%;width:0;background:linear-gradient(90deg,#7FB4E6,#ff2a52);border-radius:2px;transition:width .4s cubic-bezier(.2,.8,.2,1)}
.cx-cuerpo{display:grid;gap:14px;margin:0}
.cx-entra{animation:cxentra .35s cubic-bezier(.2,.8,.2,1)}
@keyframes cxentra{from{opacity:0;transform:translateX(18px)}}
.cx-ante{font:500 11px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:#b9d6f2;margin:0}
.cx-q{font:900 clamp(24px,5.4vw,30px)/1.02 var(--ultra);text-transform:uppercase;letter-spacing:-.02em;margin:0}
.cx-ayuda{font-size:15px;color:var(--suave);margin:0}
.cx-in{width:100%;box-sizing:border-box;font:300 18px/1.3 var(--light);color:#fff;padding:15px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.22);background:rgba(10,12,14,.45);outline:none;transition:border-color .2s,box-shadow .2s}
.cx-in:focus{border-color:#7FB4E6;box-shadow:0 0 0 4px rgba(127,180,230,.18)}
.cx-in::placeholder{color:rgba(255,255,255,.4)}
.cx-ta{font-size:16px;resize:vertical;min-height:62px}
.cx-tel{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px}
.cx-tel select{font:300 15px/1.2 var(--light);color:#fff;padding:0 12px;border-radius:12px;border:1px solid rgba(255,255,255,.22);background:rgba(10,12,14,.45);min-width:0}
.cx-tel select option{color:#101315}
.cx-ops{display:grid;gap:8px}
.cx-op{text-align:left;font:300 16px/1.25 var(--light);color:#fff;padding:13px 16px;border-radius:12px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:10px;transition:border-color .2s,background .2s,transform .15s}
.cx-op::after{content:"";width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.35);flex:none}
.cx-op:hover{border-color:rgba(127,180,230,.55);transform:translateX(3px)}
.cx-op.sel{border-color:#ff4d6d;background:linear-gradient(90deg,rgba(224,16,52,.28),rgba(224,16,52,.08));box-shadow:0 0 20px rgba(224,16,52,.25)}
.cx-op.sel::after{border-color:#fff;background:radial-gradient(circle,#fff 40%,transparent 45%)}
.cx-lbl{font-size:14px;color:var(--suave);margin-top:4px}
.cx-ok{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-size:13px;color:var(--suave);cursor:pointer}
.cx-ok input{width:18px;height:18px;margin-top:2px;accent-color:#E01034}
.cx-pie{display:flex;justify-content:space-between;align-items:center;gap:12px}
.cx-atras{background:none;border:0;color:var(--suave);font:300 14px/1 var(--light);cursor:pointer;padding:10px 4px}
.cx-btn{display:inline-flex;justify-content:center;align-items:center;font:900 14px/1 var(--ultra);text-transform:uppercase;letter-spacing:.03em;color:#fff;padding:16px 24px;border-radius:12px;border:0;cursor:pointer;text-decoration:none;
  background:linear-gradient(90deg,#ff2a52,#b0072a);box-shadow:0 12px 30px rgba(224,16,52,.4);transition:transform .2s}
.cx-btn:hover{transform:translateY(-2px)}
.cx-btn.cx-wa{background:linear-gradient(90deg,#2fe07a,#13a650);box-shadow:0 12px 30px rgba(37,211,102,.35)}
.cx-error{min-height:18px;margin:0;font-size:13px;color:#ff8fa3}
.cx-tiembla{animation:cxtiembla .35s}
@keyframes cxtiembla{20%{transform:translateX(-8px)}40%{transform:translateX(8px)}60%{transform:translateX(-5px)}80%{transform:translateX(5px)}}
.cx-fin{display:grid;gap:14px;justify-items:center;text-align:center;padding:10px 0 6px}
.cx-check svg{width:72px;height:72px;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.cx-check circle{stroke:#25D366;stroke-dasharray:151;stroke-dashoffset:151;animation:cxtraza .6s forwards}
.cx-check path{stroke:#fff;stroke-dasharray:40;stroke-dashoffset:40;animation:cxtraza .4s .45s forwards}
@keyframes cxtraza{to{stroke-dashoffset:0}}
@media (prefers-reduced-motion:reduce){.cx-tarjeta,.cx-fondo{transition:none}.cx-entra,.cx-tiembla{animation:none}.cx-check circle,.cx-check path{stroke-dashoffset:0;animation:none}}

/* ── Página de la Radiografía: el video primero, con promesa y subpromesa ── */
.vsl-top{position:relative;overflow:hidden;background:
  radial-gradient(900px 500px at 50% 0%,rgba(224,16,52,.28),transparent 65%),
  radial-gradient(700px 500px at 100% 100%,rgba(127,180,230,.10),transparent 60%),#0b0d0f}
.vsl-top .in{position:relative;z-index:1;display:grid;gap:22px;justify-items:center;text-align:center;padding-block:48px 64px}
.vsl-top h1{font-size:clamp(34px,5.4vw,76px);max-width:16ch}
.vsl-top .sub{font-size:clamp(17px,1.8vw,21px);color:var(--suave);max-width:58ch}
.vsl-top .vsl{width:min(980px,100%);margin-top:10px}
.vsl-top .vsl .vidrio{aspect-ratio:16/9}
.vsl-top .vsl .vidrio3d{transform:rotateX(5deg)}
.vsl-top .marca-vsl{position:absolute;inset:auto 0 0 0;z-index:2;padding:16px 18px;display:flex;justify-content:space-between;align-items:end;gap:12px;background:linear-gradient(0deg,rgba(10,10,10,.8),transparent);text-align:left}
.vsl-top .marca-vsl b{font:900 15px/1.1 var(--ultra);text-transform:uppercase}
.vsl-top .marca-vsl span{font:500 11px/1.3 var(--mono);color:var(--suave);letter-spacing:.06em}
.vsl-top .duda{font-size:15px;color:var(--muted)} .vsl-top .duda a{color:var(--papel)}

/* ── Tarjeta de WhatsApp: más angosta en el celular y con el ícono ── */
.cx-marca .cx-ico{width:20px;height:20px;fill:#25D366;filter:drop-shadow(0 0 6px rgba(37,211,102,.6))}
@media (max-width:620px){
  .cx-tarjeta{width:min(360px,86vw);padding:18px 18px 14px;border-radius:20px}
  .cx-q{font-size:22px}
  .cx-in{font-size:16px;padding:13px 14px}
  .cx-op{font-size:15px;padding:11px 14px}
}

/* ── Nada empuja el ancho de la página (causa del espacio negro al deslizar en el celular) ── */
.in{min-width:0}
.in > *,.cab-testi > *,.nivel > *,.miramos > *,.plano-grid > *,.informe > *,.equipo > *,.quien > *,.cierre > *{min-width:0;max-width:100%}
.carrusel{min-width:0;width:100%;overflow:hidden}
.carrusel .pista{width:100%;max-width:100%}
.contador div{min-width:0}
.hero3,.vsl-top,.paises3{max-width:100vw}
.cx-capa{width:100%;max-width:100vw;box-sizing:border-box}
@media (max-width:620px){ .cx-tarjeta{width:min(340px,100%);max-width:calc(100vw - 40px)} }
.cx-tarjeta{box-sizing:border-box}
.cx-tarjeta *{box-sizing:border-box}
@media (max-width:620px){ .cx-tarjeta{width:min(330px,calc(100vw - 56px));max-width:none} }
.cx-btn .cx-ico-btn{width:18px;height:18px;fill:#fff;margin-right:9px;flex:none}
.cx-sig.cx-wa{background:linear-gradient(90deg,#2fe07a,#13a650);box-shadow:0 12px 30px rgba(37,211,102,.35)}

/* Inicio en computador: la misma foto del celular (4:5, nítida) a la derecha; el texto a la izquierda sobre fondo oscuro */
@media (min-width:901px){
  .hero3 picture{left:auto;right:0;width:auto;aspect-ratio:4/5;height:100%;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 22%);mask-image:linear-gradient(90deg,transparent 0%,#000 22%)}
  .hero3 picture img{object-fit:cover;object-position:50% 40%}
  .hero3 .sombra{background:linear-gradient(0deg,rgba(9,6,7,.9) 0%,transparent 22%)}
  .hero3 .escenario::before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(ellipse 45% 60% at 74% 48%,rgba(150,10,25,.35),transparent 70%)}
  .flota{left:81%;top:79%;transform:translate(-50%,-100%)}
  .flota.ancha{left:79%;top:80%;transform:translate(-50%,-100%)}
}

/* Lo que lleva el atributo hidden se oculta siempre (el visor de Claude lo traía de fábrica; el sitio real no) */
[hidden]{display:none!important}
