/* ===== P3 · 24/10/2026 · landing de la incubadora (bloques B0–B12) =====
   Mobile-first. Nada atado al scroll: la barra y la portada rotan por tiempo. */

/* B0 · barra superior */
.p3-bar{display:block; position:relative; overflow:hidden; height:34px; line-height:34px; padding:0 12px !important; white-space:nowrap;}
.p3-bar .p3-bar-i{position:absolute; left:0; right:0; top:0; text-align:center; opacity:0; animation:p3bar 12s infinite; font-size:12px;}
.p3-bar .p3-bar-i:nth-child(1){animation-delay:0s;}
.p3-bar .p3-bar-i:nth-child(2){animation-delay:4s;}
.p3-bar .p3-bar-i:nth-child(3){animation-delay:8s;}
.p3-bar .p3-bar-all{display:none;}
@keyframes p3bar{0%{opacity:0} 3%{opacity:1} 30%{opacity:1} 34%{opacity:0} 100%{opacity:0}}
@media (prefers-reduced-motion:reduce){
  .p3-bar .p3-bar-i{display:none;}
  .p3-bar .p3-bar-all{display:block; font-size:11.5px;}
}
@media (min-width:900px){
  .p3-bar .p3-bar-i{display:none;}
  .p3-bar .p3-bar-all{display:block; font-size:12.5px;}
}
.p3-bar .sep{opacity:.55; margin:0 10px;}

/* B1 · hero */
.p3-hero{position:relative; overflow:hidden; background:var(--bg); padding:110px 0 34px; text-align:center;}
.p3-media{position:absolute; inset:0; z-index:0;}
.p3-media img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 28%; opacity:0; transition:opacity 1.2s ease;}
.p3-media img.is-on{opacity:1;}
.p3-shade{position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(180deg, rgba(5,6,14,.55) 0%, rgba(5,6,14,.25) 18%, rgba(5,6,14,.55) 36%, rgba(5,6,14,.9) 52%, rgba(5,6,14,.98) 70%, #05060E 100%);}
.p3-hero .wrap{position:relative; z-index:2;}
.p3-copy{max-width:640px; margin:0 auto; padding-top:11vh;}
.p3-label{display:inline-block; background:rgba(5,6,14,.72); border:1px solid rgba(255,255,255,.18); border-radius:999px; padding:6px 12px; font-size:12px; font-weight:600; line-height:1.35; margin-bottom:12px; color:#fff;}
.p3-hero h1{font-size:clamp(27px,7.4vw,52px); line-height:1.06; margin:0 0 10px; text-shadow:0 2px 24px rgba(5,6,14,.8);}
.p3-hero h1 .c-red{color:var(--red);}
.p3-sub{color:#c9cfe8; font-size:14.5px; line-height:1.45; margin:0 auto 14px; max-width:560px;}
.p3-precios{list-style:none; margin:0 auto 8px; padding:0; max-width:420px; background:rgba(16,19,42,.85); border:1px solid var(--line); border-radius:16px; text-align:left; scroll-margin-top:120px;}
.p3-precios li{display:flex; align-items:center; justify-content:space-between; gap:10px; padding:8px 14px; border-top:1px solid var(--line);}
.p3-precios li:first-child{border-top:none;}
.p3-precios .n{font-weight:700; font-size:15px;}
.p3-precios .n small{display:block; font-weight:500; font-size:11.5px; color:var(--muted); white-space:nowrap;}
.p3-precios .p{white-space:nowrap; font-size:15px;}
.p3-precios s{color:var(--muted); font-size:13px; margin-right:6px;}
.p3-precios b{font-family:'Space Grotesk','Inter',sans-serif; font-size:19px;}
.p3-fine{font-size:12.5px; color:var(--muted); margin:0 0 12px;}
.p3-benef{list-style:none; padding:0; margin:0 auto 16px; display:flex; flex-wrap:wrap; justify-content:center; gap:6px; max-width:560px;}
.p3-benef li{font-size:12.5px; font-weight:600; background:rgba(255,255,255,.06); border:1px solid var(--line); border-radius:999px; padding:6px 10px;}
.p3-cta{display:flex; flex-direction:column; align-items:center; gap:10px;}
.p3-cta .btn{min-height:54px; font-size:16.5px; padding:15px 30px; width:100%; max-width:380px;}
.p3-micro{font-size:13px; color:#c9cfe8;}
@media (min-width:900px){
  .p3-hero{padding:150px 0 70px; text-align:left;}
  .p3-hero .wrap{display:grid; grid-template-columns:1.1fr .9fr; gap:56px; align-items:center;}
  .p3-copy{padding-top:0; margin:0;}
  .p3-precios, .p3-sub, .p3-benef{margin-left:0;}
  .p3-benef{justify-content:flex-start;}
  .p3-cta{align-items:flex-start;}
  .p3-media{position:relative; inset:auto; aspect-ratio:9/14; border-radius:22px; overflow:hidden; border:1px solid var(--line); box-shadow:0 30px 80px -30px rgba(0,80,240,.5);}
  .p3-media-wrap{position:relative;}
  .p3-shade{display:none;}
}
@media (max-width:899px){
  .p3-hero .wrap{position:static;}
  .p3-media-wrap{position:absolute; inset:0; z-index:0;}
  .p3-copy{position:relative; z-index:2;}
}

/* tira de programas */
.p3-prog{padding:26px 0 30px; border-bottom:1px solid var(--line); text-align:center;}
.p3-prog h2{font-size:15px; font-family:'Inter',sans-serif; font-weight:600; letter-spacing:0; color:#c9cfe8; margin-bottom:14px;}
.p3-prog-list{display:grid; grid-template-columns:1fr 1fr; gap:8px; max-width:720px; margin:0 auto;}
.p3-prog-list a,.p3-prog-chip{display:flex; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:10px 12px; border-radius:12px; background:var(--panel); border:1px solid rgba(240,16,16,.35); font-weight:700; font-size:13.5px; line-height:1.2;}
.p3-prog-list a .pl{color:var(--red); font-size:12px;}
@media (min-width:720px){ .p3-prog-list{grid-template-columns:repeat(4,1fr);} }

/* bloques genéricos */
.p3-sec{padding:60px 0;}
.p3-sec.alt{background:var(--bg-2);}
.p3-sec + .p3-sec{border-top:1px solid var(--line);}
.p3-h{max-width:680px; margin:0 auto 28px; text-align:center;}
.p3-h .eyebrow{justify-content:center;}
.p3-h h2{font-size:clamp(26px,6.6vw,40px); line-height:1.1; margin-bottom:12px;}
.p3-h p{color:var(--muted); font-size:16px;}
@media (min-width:900px){ .p3-sec{padding:96px 0;} }

/* B2 · mini-FAQ */
.p3-dudas{display:grid; gap:12px; max-width:900px; margin:0 auto;}
.p3-duda{background:var(--panel); border:1px solid var(--line); border-radius:16px; padding:18px 18px 16px;}
.p3-duda h3{font-size:16.5px; margin-bottom:6px;}
.p3-duda p{color:#c2c8e2; font-size:14.5px;}
@media (min-width:720px){ .p3-dudas{grid-template-columns:1fr 1fr;} }

/* B3 · pasa en NEXO */
.p3-pasa{display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; -webkit-overflow-scrolling:touch; padding:0 0 10px; margin:0 -24px; padding-left:24px; padding-right:24px; scrollbar-width:thin;}
.p3-pasa figure{margin:0; flex:0 0 72%; scroll-snap-align:center; background:var(--panel); border:1px solid var(--line); border-radius:16px; overflow:hidden;}
.p3-pasa img, .p3-pasa video{width:100%; aspect-ratio:9/16; object-fit:cover; display:block; background:#0b0d14;}
.p3-swipe{text-align:center; font-size:12.5px; color:var(--muted); margin-top:6px;}
.p3-pasa figcaption{padding:12px 14px; font-size:14px; color:#c2c8e2;}
.p3-pasa figcaption b{color:#fff; display:block; font-size:15px;}
.p3-quote{text-align:center; font-family:'Space Grotesk','Inter',sans-serif; font-weight:700; font-size:18px; margin:26px auto 0; max-width:560px;}
@media (min-width:900px){ .p3-pasa{display:grid; grid-template-columns:repeat(3,1fr); overflow:visible; margin:0 auto; padding:0; max-width:900px;} .p3-swipe{display:none;} }

/* B4 · pasos */
.p3-pasos{list-style:none; padding:0; margin:0 auto; display:grid; gap:12px; max-width:1000px; counter-reset:p;}
.p3-pasos li{background:var(--panel); border:1px solid var(--line); border-radius:16px; padding:18px 18px 18px 64px; position:relative;}
.p3-pasos li::before{counter-increment:p; content:counter(p); position:absolute; left:16px; top:18px; width:34px; height:34px; border-radius:50%; background:var(--red); color:#fff; font-weight:700; display:flex; align-items:center; justify-content:center; font-family:'Space Grotesk','Inter',sans-serif;}
.p3-pasos b{display:block; font-size:16.5px; margin-bottom:4px;}
.p3-pasos span{color:#c2c8e2; font-size:14.5px;}
@media (min-width:900px){ .p3-pasos{grid-template-columns:repeat(3,1fr);} }

/* B5 · problema */
.p3-prob{max-width:680px; margin:0 auto;}
.p3-prob > p{color:#c2c8e2; font-size:16px; margin-bottom:18px;}
.p3-x{list-style:none; padding:0; margin:0; display:grid; gap:10px;}
.p3-x li{display:flex; gap:12px; align-items:flex-start; background:rgba(240,16,16,.07); border:1px solid rgba(240,16,16,.22); border-radius:12px; padding:12px 14px; font-size:15px;}
.p3-x li::before{content:"✕"; color:var(--red); font-weight:700; flex-shrink:0;}

/* B6 · solución */
.p3-sol{display:grid; gap:24px; max-width:1100px; margin:0 auto; align-items:start;}
.p3-sol-txt > p{color:#c2c8e2; font-size:16px; margin-bottom:16px;}
.p3-ok{list-style:none; padding:0; margin:0; display:grid; gap:9px;}
.p3-ok li{display:flex; gap:10px; font-size:15.5px;}
.p3-ok li::before{content:"✓"; color:#25D366; font-weight:800; flex-shrink:0;}
.p3-fotos{display:grid; grid-template-columns:1fr 1fr; gap:8px;}
.p3-fotos a{display:block; border-radius:12px; overflow:hidden; aspect-ratio:3/4; background:#0b0d14; position:relative;}
.p3-fotos img{width:100%; height:100%; object-fit:cover;}
.p3-fotos span{position:absolute; left:8px; bottom:8px; font-size:12px; font-weight:700; background:rgba(5,6,14,.75); padding:4px 9px; border-radius:999px;}
.p3-more{text-align:center; margin-top:16px;}
@media (min-width:900px){ .p3-sol{grid-template-columns:1fr 1.1fr; gap:48px;} .p3-fotos{grid-template-columns:repeat(3,1fr);} }

/* CTA intermedio y cierre */
.p3-band{background:linear-gradient(135deg, #0a1440 0%, #05060E 70%); border:1px solid rgba(0,80,240,.35); border-radius:22px; padding:30px 20px; text-align:center; max-width:760px; margin:0 auto;}
.p3-band h2{font-size:clamp(24px,6.4vw,36px); margin-bottom:10px;}
.p3-band p{color:#c2c8e2; font-size:15.5px; margin-bottom:18px;}
.p3-band .btn{min-height:54px; width:100%; max-width:380px; font-size:16px;}
.p3-band small{display:block; margin-top:12px; color:var(--muted); font-size:13px;}

/* B7 · comparación */
.p3-tabla-wrap{max-width:820px; margin:0 auto;}
.p3-tabla{width:100%; border-collapse:separate; border-spacing:0; font-size:13px; table-layout:fixed;}
.p3-tabla th, .p3-tabla td{padding:10px 6px; border-bottom:1px solid var(--line); text-align:center; vertical-align:middle; line-height:1.3;}
.p3-tabla th:first-child, .p3-tabla td:first-child{text-align:left; width:36%; font-weight:600; padding-left:4px;}
.p3-tabla thead th{font-size:12.5px; color:var(--muted); font-weight:700;}
.p3-tabla thead th.nx{color:#fff; background:rgba(240,16,16,.18); border-radius:10px 10px 0 0;}
.p3-tabla td.nx{background:rgba(240,16,16,.08); font-size:16px;}
.p3-tabla .no{color:#ff6b6b;}
.p3-tabla .si{color:#25D366;}
.p3-tabla .md{color:#c2c8e2; font-size:12px;}
.p3-cierre{text-align:center; font-family:'Space Grotesk','Inter',sans-serif; font-weight:700; font-size:18px; margin-top:22px;}
@media (min-width:720px){ .p3-tabla{font-size:15px;} .p3-tabla .md{font-size:13.5px;} }

/* B9 · sin sorpresas */
.p3-tranq{max-width:720px; margin:0 auto; text-align:center;}
.p3-tranq > p{color:#c2c8e2; font-size:16px; margin-bottom:20px;}
.p3-iconos{list-style:none; padding:0; margin:0; display:grid; grid-template-columns:1fr; gap:10px;}
.p3-iconos li{background:var(--panel); border:1px solid var(--line); border-radius:14px; padding:14px; font-weight:600; font-size:14.5px;}
@media (min-width:720px){ .p3-iconos{grid-template-columns:repeat(3,1fr);} }

/* B10 · FAQ centrado */
.p3-faq .faq-list{margin:0 auto;}

/* B12 · contacto */
.p3-contacto{display:grid; gap:14px; max-width:900px; margin:0 auto;}
.p3-contacto .contact-card{padding:22px;}
.p3-contacto .btn{min-height:50px;}
@media (min-width:900px){ .p3-contacto{grid-template-columns:1fr 1fr;} }

@media (prefers-reduced-motion:reduce){ .p3-media img{transition:none;} }
.sr-only{position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0;}
.p3-foot-dir{font-size:14px; color:var(--muted); margin-top:10px; max-width:320px;}
@media (max-width:899px){
  .p3-copy{padding-top:7vh;}
  .p3-benef{gap:4px 12px; margin-bottom:14px;}
  .p3-benef li{background:none; border:0; padding:0; font-size:12.5px; color:#dfe3f5;}
}
main section[id]{scroll-margin-top:104px;}
/* privacidad: aire entre títulos y párrafos */
main > .section > .wrap > h1{font-size:clamp(30px,8vw,44px); margin-bottom:14px;}
main > .section > .wrap > h2{font-size:20px; margin:28px 0 8px;}
main > .section > .wrap > p{color:#c2c8e2; font-size:15.5px; margin-bottom:12px;}

/* ===== 24/10 tercera pasada: portada con gente usando el estudio (video visible) ===== */
.p3-media video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 30%; display:block; background:#0b0d14;}
@media (max-width:899px){
  .p3-hero{padding:104px 0 30px;}
  .p3-hero .wrap{position:relative; display:flex; flex-direction:column; padding:0;}
  .p3-media-wrap{position:relative; inset:auto; order:-1; height:42vh; min-height:280px; max-height:420px; z-index:0;}
  .p3-media{position:absolute; inset:0;}
  .p3-media-wrap::after{content:""; position:absolute; left:0; right:0; bottom:0; height:38%; background:linear-gradient(180deg, rgba(5,6,14,0) 0%, #05060E 100%); pointer-events:none;}
  .p3-copy{position:relative; z-index:2; padding:0 24px; margin-top:-56px;}
}
/* Pasa en NEXO: grilla sin scroll lateral (1 ancho arriba + 2 abajo) */
.p3-pasa{display:grid !important; grid-template-columns:1fr 1fr; gap:10px; overflow:visible !important; margin:0 auto !important; padding:0 !important; max-width:820px;}
.p3-pasa figure{flex:none; min-width:0;}
.p3-pasa figure.ancho{grid-column:1 / -1;}
.p3-pasa video{aspect-ratio:4/5;}
.p3-pasa figure.ancho video{aspect-ratio:720/412;}
.p3-pasa figcaption{font-size:13px; padding:10px 12px;}
.p3-swipe{display:none !important;}
/* sin desborde lateral en el celular */
html, body{overflow-x:clip; max-width:100%;}
@media (max-width:899px){ .p3-copy{width:100%; max-width:100%; box-sizing:border-box;} }

/* B8 · testimonios */
.p3-testis{display:grid; gap:12px; max-width:1000px; margin:0 auto;}
.p3-testi{margin:0; background:var(--panel); border:1px solid var(--line); border-radius:16px; padding:18px 18px 16px; display:flex; flex-direction:column; justify-content:space-between; gap:14px;}
.p3-testi blockquote{margin:0; color:#dfe3f3; font-size:15px; line-height:1.5;}
.p3-testi figcaption{display:flex; align-items:center; gap:10px; font-weight:700; font-size:14.5px;}
.p3-testi .av{width:34px; height:34px; border-radius:50%; background:var(--red); color:#fff; font-size:13px; display:flex; align-items:center; justify-content:center; flex-shrink:0;}
.p3-testis-mas{max-width:1000px; margin:14px auto 0;}
.p3-testis-mas summary{list-style:none; cursor:pointer; text-align:center; font-weight:700; color:#fff; padding:12px; border:1px solid var(--line); border-radius:999px; max-width:260px; margin:0 auto 14px;}
.p3-testis-mas summary::-webkit-details-marker{display:none;}
.p3-testis-mas[open] summary{display:none;}
@media (min-width:720px){ .p3-testis{grid-template-columns:1fr 1fr;} }
@media (min-width:1000px){ .p3-testis{grid-template-columns:repeat(3,1fr);} }

/* 24/10 · portada de ayer (hero-v53) con los textos del P3 */
.p3-hb .p3-copy{max-width:640px; margin:0 auto; padding-top:0;}
.p3-hb h1{font-size:clamp(27px,7.4vw,52px); line-height:1.06; margin:0 0 10px; text-shadow:0 2px 24px rgba(5,6,14,.85);}
.p3-hb h1 .c-red{color:var(--red);}
.p3-hb .p3-sub{text-shadow:0 1px 14px rgba(5,6,14,.9);}
.p3-hb .hb-content{padding-top:110px; padding-bottom:40px;}
@media (max-width:700px){ .p3-hb .hb-content{padding-top:58vh; padding-bottom:28px;} .p3-hb .p3-copy{padding:0 4px;} }

/* portada: el video ocupa solo el alto de la pantalla (no se estira con el texto) */
.p3-hb{background:#05060e;}
.p3-hb .hb-stage{height:100svh; bottom:auto;}
.p3-hb .hb-stage::after{content:""; position:absolute; left:0; right:0; bottom:0; height:38%; background:linear-gradient(to bottom, rgba(5,6,14,0), #05060e); pointer-events:none; z-index:2;}
/* 24/10 · ajuste: en el celular el botón entra en la primera pantalla (video visible arriba, beneficios debajo del botón) */
@media (max-width:700px){
  .p3-hb .hb-content{padding-top:58vh; padding-top:58svh;}
  .p3-hb .p3-copy{display:flex; flex-direction:column; align-items:center;}
  .p3-hb .p3-copy > *{max-width:100%;}
  .p3-hb .p3-precios{width:100%;}
  .p3-hb .p3-cta{order:4; width:100%;}
  .p3-hb .p3-benef{order:5; margin:14px auto 0;}
}

/* precios: tachado arriba, precio nuevo abajo, todo alineado a la derecha (no se corta en el celular) */
.p3-precios li{padding:10px 16px;}
.p3-precios .n{flex:1; min-width:0;}
.p3-precios .p{display:flex; flex-direction:column; align-items:flex-end; line-height:1.15; text-align:right;}
.p3-precios s{margin:0; font-size:12.5px;}
.p3-precios .nw{white-space:nowrap; font-size:14px; color:#c9cfe8;}
.p3-precios .nw b{color:#fff;}

/* portada en compu: más limpia. Video de fondo en toda la portada, oscurecido parejo y texto centrado sin ruido */
@media (min-width:901px){
  .p3-hb .hb-stage{height:auto; bottom:0;}
  .p3-hb .hb-stage::after{display:none;}
  .p3-hb .hb-shade{background:radial-gradient(ellipse 60% 70% at 50% 50%, rgba(5,6,14,.86) 0%, rgba(5,6,14,.72) 60%, rgba(5,6,14,.55) 100%) !important;}

  .p3-hb .hb-content{padding-top:64px; padding-bottom:64px;}
  .p3-hb h1{font-size:clamp(40px,4vw,58px); text-shadow:none;}
  .p3-hb .p3-sub{max-width:560px; margin-left:auto; margin-right:auto; text-shadow:none;}
  .p3-hb .p3-benef{display:none;}
}
/* 26/10 · compu: el texto arranca debajo del menú fijo, título más chico y fondo más calmo */
@media (min-width:901px){
  .p3-hb .hb-content{padding-top:150px; padding-bottom:48px;}
  .p3-hb h1{font-size:clamp(34px,3vw,46px); margin-bottom:12px;}
  .p3-hb .p3-label{margin-bottom:14px;}
  .p3-hb .hb-v{filter:none;}
}
/* 26/10 · compu: en la portada todo centrado (precios, botón, aclaraciones) */
@media (min-width:901px){
  .p3-hb .p3-copy{margin:0 auto; text-align:center;}
  .p3-hb .p3-precios, .p3-hb .p3-sub, .p3-hb .p3-fine{margin-left:auto; margin-right:auto;}
  .p3-hb .p3-cta{align-items:center;}
}

/* Opiniones: una sola fila, se pasan con las flechitas (o deslizando en el celular) */
.p3-ops-box{position:relative;}
.p3-ops{display:flex; gap:12px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none;}
.p3-ops::-webkit-scrollbar{display:none;}
.p3-op{flex:0 0 100%; scroll-snap-align:start; background:var(--panel); border:1px solid var(--line); border-radius:16px; padding:20px 18px 16px; display:flex; flex-direction:column; justify-content:space-between; gap:16px;}
.p3-op blockquote{color:#dfe3f5; font-size:15.5px; line-height:1.5;}
.p3-op figcaption{display:flex; align-items:center; gap:10px; font-family:'Space Grotesk','Inter',sans-serif; font-weight:700; font-size:15px;}
.p3-op-av{width:34px; height:34px; border-radius:50%; background:var(--blue); color:#fff; display:grid; place-items:center; font-size:15px;}
.p3-ops-fl{position:absolute; top:50%; transform:translateY(-50%); z-index:2; width:44px; height:44px; border-radius:50%; border:1px solid var(--line); background:rgba(5,6,14,.85); color:#fff; font-size:28px; line-height:1; cursor:pointer; display:grid; place-items:center; padding-bottom:3px;}
.p3-ops-fl:hover{border-color:var(--blue);}
.p3-ops-fl.prev{left:-6px;} .p3-ops-fl.next{right:-6px;}
.p3-ops-box{padding:0 30px;}
@media (min-width:720px){ .p3-op{flex-basis:calc((100% - 24px)/3);} .p3-ops-box{padding:0 40px;} .p3-ops-fl.prev{left:-4px;} .p3-ops-fl.next{right:-4px;} }

/* Precios fuera de la portada (26/10) */
.p3-precios-box{max-width:560px; margin:0 auto;}
.p3-precios-box .p3-fine{text-align:center;}
