/* =========================================================
   SIMBIOSIS TRAINING · Rediseño espectacular (simbionte)
   Estructura y claves i18n originales respetadas.
   ========================================================= */
@font-face{font-family:'Oswald';src:url('assets/fonts/Oswald.ttf') format('truetype');font-weight:300 700;font-display:swap;}
@font-face{font-family:'Archivo';src:url('assets/fonts/Archivo.ttf') format('truetype');font-weight:100 900;font-display:swap;}

:root{
  --bg:#050b14; --bg2:#07101d; --surface:#0c1626; --surface2:#101c30;
  --green:#4ADE80; --green-soft:#8bf0b0; --green-deep:#22a55a;
  --blue:#60A5FA; --amber:#F5C542;
  --text:#EAF1F8; --muted:#9fb0c3; --muted-strong:#c3cfdd;
  --border:rgba(120,150,180,.14); --border-strong:rgba(120,180,150,.3);
  --shell:1220px; --r:22px;
  --display:'Oswald',system-ui,sans-serif; --body:'Archivo','Inter',system-ui,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  font-family:var(--body); background:var(--bg); color:var(--text);
  line-height:1.5; -webkit-font-smoothing:antialiased; overflow-x:hidden;
  background-image:
    radial-gradient(1200px 700px at 82% -8%, rgba(74,222,128,.16), transparent 60%),
    radial-gradient(900px 600px at 8% 12%, rgba(34,120,90,.10), transparent 55%);
  background-attachment:fixed;
}
.shell{width:min(92%,var(--shell));margin-inline:auto;}
a{color:inherit;text-decoration:none;}
h1,h2,h3{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:-.5px;line-height:.96;}
img{max-width:100%;display:block;}

/* grano/textura sutil */
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:1;opacity:.5;
  background-image:linear-gradient(rgba(74,222,128,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(74,222,128,.028) 1px,transparent 1px);
  background-size:64px 64px;mask:radial-gradient(130% 100% at 50% 0%,#000 30%,transparent 80%);}

/* ============ EYEBROW / BOTONES ============ */
.eyebrow{display:inline-flex;align-items:center;gap:11px;font-family:var(--display);font-weight:600;
  text-transform:uppercase;letter-spacing:.28em;font-size:.82rem;color:var(--green);margin-bottom:20px;}
.eyebrow::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--green);box-shadow:0 0 12px var(--green);}
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:16px 30px;border-radius:100px;
  font-family:var(--display);font-weight:600;font-size:1rem;letter-spacing:.03em;text-transform:uppercase;
  border:1.5px solid var(--border-strong);color:var(--text);background:rgba(16,28,48,.5);
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease;backdrop-filter:blur(6px);}
.button:hover{transform:translateY(-2px);border-color:var(--green);background:rgba(16,28,48,.8);}
.button.primary{background:linear-gradient(100deg,var(--green),var(--green-deep));color:#04150d;border-color:transparent;
  box-shadow:0 12px 34px rgba(74,222,128,.32);}
.button.primary:hover{box-shadow:0 16px 44px rgba(74,222,128,.5);transform:translateY(-3px);}

/* ============ TOPBAR ============ */
.topbar{position:sticky;top:0;z-index:60;background:rgba(5,11,20,.72);backdrop-filter:blur(16px) saturate(1.2);
  border-bottom:1px solid var(--border);}
.nav-shell{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:76px;}
.brand{display:inline-flex;align-items:center;gap:13px;}
.brand img{width:52px;height:52px;object-fit:contain;filter:drop-shadow(0 0 14px rgba(74,222,128,.4));}
.brand span{display:flex;flex-direction:column;line-height:1;}
.brand strong{font-family:var(--display);font-size:1.15rem;letter-spacing:.12em;}
.brand small{font-family:var(--display);font-size:.62rem;letter-spacing:.4em;color:var(--green);margin-top:3px;}
nav{display:flex;gap:6px;flex-wrap:wrap;}
nav a{padding:9px 14px;border-radius:100px;font-size:.92rem;font-weight:500;color:var(--muted-strong);
  transition:color .15s ease,background .15s ease;}
nav a:hover{color:var(--text);background:rgba(74,222,128,.1);}
.lang-menu{position:relative;flex-shrink:0;}
.lang-menu summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:7px;min-height:38px;
  padding:0 15px;border:1.5px solid var(--border);border-radius:100px;background:rgba(16,28,48,.5);
  color:var(--muted-strong);font-family:var(--display);font-weight:600;font-size:.8rem;letter-spacing:.06em;}
.lang-menu summary::-webkit-details-marker{display:none;}
.lang-menu[open] summary,.lang-menu summary:hover{border-color:var(--green);color:var(--text);}
.lang-menu-panel{position:absolute;right:0;top:calc(100% + 10px);z-index:70;display:grid;
  grid-template-columns:repeat(2,minmax(52px,1fr));gap:6px;padding:10px;border:1px solid var(--border-strong);
  border-radius:18px;background:rgba(8,16,28,.98);box-shadow:0 28px 70px rgba(0,0,0,.6);}
.language-switcher button{min-width:56px;min-height:36px;border:1px solid var(--border);border-radius:100px;
  color:var(--muted);background:rgba(255,255,255,.04);cursor:pointer;font-family:var(--display);font-weight:700;font-size:.8rem;
  transition:all .15s ease;}
.language-switcher button:hover,.language-switcher button.is-active{color:#04150d;border-color:transparent;background:var(--green);}

/* ============ HERO ============ */
.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.02fr) minmax(400px,.98fr);
  align-items:center;gap:clamp(24px,4vw,56px);padding:clamp(48px,7vw,96px) 0 clamp(56px,7vw,90px);z-index:2;}
#fx{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;opacity:.9;}
.hero-copy{position:relative;z-index:3;}
.hero h1{font-size:clamp(2.7rem,5.4vw,4.7rem);color:#fff;margin:0 0 22px;text-shadow:0 8px 40px rgba(0,0,0,.5);}
.hero h1 .g{color:var(--green);text-shadow:0 0 40px rgba(74,222,128,.5);}
.hero .lead{font-size:clamp(1.05rem,1.5vw,1.28rem);color:var(--muted-strong);max-width:560px;margin-bottom:32px;}
.actions{display:flex;gap:14px;flex-wrap:wrap;}
.hero-stats{display:flex;gap:14px;margin-top:40px;flex-wrap:wrap;}
.hero-stats div{flex:1;min-width:150px;padding:20px 22px;border-radius:18px;background:rgba(12,22,38,.6);
  border:1px solid var(--border);backdrop-filter:blur(6px);position:relative;overflow:hidden;}
.hero-stats div::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--green);box-shadow:0 0 14px var(--green);}
.hero-stats dt{font-family:var(--display);font-weight:700;font-size:2.4rem;color:#fff;line-height:1;}
.hero-stats dd{font-size:.9rem;color:var(--muted);margin-top:8px;}

/* panel foto atleta + telefono */
.hero-product-panel{position:relative;z-index:2;}
.hero-phone-wrap{position:relative;border-radius:28px;overflow:hidden;aspect-ratio:4/5;
  border:1px solid var(--border-strong);box-shadow:0 40px 100px rgba(0,0,0,.6),0 0 0 1px rgba(74,222,128,.1);
  background:#040a12;}
.hero-athlete{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:70% 30%;}
.hero-athlete-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,10,18,.15),rgba(4,10,18,.65));}
.hero-phone-glow{position:absolute;left:6%;bottom:0;width:70%;height:60%;
  background:radial-gradient(ellipse at center,rgba(74,222,128,.4),transparent 65%);filter:blur(10px);}
.hero-phone{position:absolute;left:7%;bottom:-2%;width:47%;height:auto;border-radius:26px;
  border:1px solid rgba(152,173,206,.35);box-shadow:0 30px 70px rgba(0,0,0,.6),0 0 60px rgba(74,222,128,.2);z-index:3;}
.hero-chip{position:absolute;right:6%;display:flex;flex-direction:column;padding:12px 18px;border-radius:16px;z-index:4;
  background:rgba(8,16,28,.82);border:1px solid var(--border-strong);backdrop-filter:blur(8px);box-shadow:0 12px 30px rgba(0,0,0,.4);}
.hero-chip strong{font-family:var(--display);font-size:1.6rem;color:var(--green);line-height:1;}
.hero-chip span{font-size:.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:.14em;margin-top:4px;}
.hero-chip-a{top:8%;} .hero-chip-b{top:40%;right:2%;} .hero-chip-c{bottom:24%;}

/* ============ SECCIONES ============ */
.section{position:relative;padding:clamp(40px,5vw,72px) 0;z-index:2;}
.section h2{font-size:clamp(2.2rem,3.8vw,3.4rem);color:#fff;margin-bottom:20px;}
.section-heading{max-width:760px;margin-bottom:22px;}
.section-heading.compact{max-width:640px;}
.section p{color:var(--muted-strong);font-size:1.05rem;line-height:1.6;}
.soft-marketing{color:var(--green-soft);font-weight:500;}

/* revelado al hacer scroll — a prueba de fallos:
   el contenido es VISIBLE por defecto; solo se oculta para animar cuando el
   JS confirma que puede revelarlo (clase .reveal-js en <html>). Si el JS no
   corre, nada queda oculto. */
[data-reveal]{transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);}
.reveal-js [data-reveal]{opacity:0;transform:translateY(34px);}
.reveal-js [data-reveal].in{opacity:1;transform:none;}

/* divisor simbionte */
.symbiote-divider{position:absolute;left:0;right:0;height:2px;
  background:linear-gradient(90deg,transparent,rgba(74,222,128,.6),transparent);}

/* music promo */
.music-promo-band{padding:20px 0 0;position:relative;z-index:2;}
.music-promo{display:flex;align-items:center;gap:22px;padding:24px 28px;border-radius:var(--r);
  background:linear-gradient(100deg,rgba(12,22,38,.9),rgba(8,16,28,.7));border:1px solid var(--border);
  transition:border-color .2s ease,transform .2s ease;}
.music-promo:hover{border-color:var(--green);transform:translateY(-2px);}
.music-promo img{width:74px;height:74px;border-radius:16px;flex-shrink:0;}
.music-promo h2{font-size:1.5rem;color:#fff;text-transform:none;letter-spacing:0;margin:4px 0;}
.music-promo p{font-size:.95rem;color:var(--muted);}
.music-promo .eyebrow{margin-bottom:6px;}
.music-promo-cta{margin-left:auto;color:var(--green);font-family:var(--display);font-weight:600;white-space:nowrap;}

/* brief con foto atleta */
.product-brief{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,4vw,64px);align-items:start;}
.brief-copy{position:relative;padding:34px;border-radius:var(--r);overflow:hidden;
  background:linear-gradient(160deg,rgba(74,222,128,.08),rgba(12,22,38,.6));border:1px solid var(--border);}
.brief-copy h2{font-size:clamp(1.9rem,3vw,2.6rem);}
.brief-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.brief-grid article{padding:24px;border-radius:18px;background:rgba(12,22,38,.6);border:1px solid var(--border);
  transition:border-color .2s ease,transform .2s ease,background .2s ease;position:relative;overflow:hidden;}
.brief-grid article::after{content:"";position:absolute;left:0;top:0;height:100%;width:3px;background:var(--green);
  transform:scaleY(0);transform-origin:bottom;transition:transform .3s ease;}
.brief-grid article:hover{transform:translateY(-4px);border-color:var(--border-strong);background:rgba(16,28,48,.75);}
.brief-grid article:hover::after{transform:scaleY(1);}
.brief-grid strong{display:block;font-family:var(--display);font-weight:600;font-size:1.15rem;color:#fff;margin-bottom:8px;}
.brief-grid span{font-size:.92rem;color:var(--muted);line-height:1.5;}

/* split */
.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(32px,4vw,64px);align-items:center;}
.compliance-note,.compliance-note{font-size:.9rem;color:var(--amber);margin-top:18px;padding:14px 18px;
  border-radius:14px;background:rgba(245,197,66,.08);border:1px solid rgba(245,197,66,.25);}
.steps{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;}
.steps article{padding:26px;border-radius:18px;background:rgba(12,22,38,.55);border:1px solid var(--border);
  transition:transform .2s ease,border-color .2s ease;}
.steps article:hover{transform:translateY(-4px);border-color:var(--green);}
.steps span{font-family:var(--display);font-weight:700;font-size:1.5rem;color:var(--green);opacity:.6;}
.steps h3{font-size:1.15rem;color:#fff;margin:10px 0 8px;text-transform:none;letter-spacing:0;}
.steps p{font-size:.9rem;color:var(--muted);}
.process-steps{grid-template-columns:repeat(4,1fr);}

/* bandas con imagen atleta de fondo */
.recovery-band,.nutrition-section,.privacy-band,.intelligence{position:relative;border-radius:var(--r);
  padding:clamp(26px,3.5vw,44px);overflow:hidden;border:1px solid var(--border);
  background:linear-gradient(150deg,rgba(12,22,38,.85),rgba(8,16,28,.6));}
.band-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.28;z-index:0;
  mask:linear-gradient(90deg,transparent,#000);}
.recovery-band::after,.nutrition-section::after,.privacy-band::after,.intelligence::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(90deg,rgba(8,14,24,.94) 0%,rgba(8,14,24,.82) 40%,rgba(8,14,24,.5) 70%,rgba(8,14,24,.35) 100%);}
.recovery-band>*,.nutrition-section>*,.privacy-band>*,.intelligence>*{position:relative;z-index:1;}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px;}
.principles>div{padding:24px;border-radius:16px;background:rgba(8,16,28,.6);border:1px solid var(--border);}
.principles strong{display:block;font-family:var(--display);font-weight:600;color:#fff;font-size:1.05rem;margin-bottom:8px;}
.principles span{font-size:.9rem;color:var(--muted);}

/* feature cards */
.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;}
.compact-grid{grid-template-columns:repeat(3,1fr);}
.feature-card{padding:30px;border-radius:20px;background:linear-gradient(165deg,rgba(16,28,48,.7),rgba(10,18,30,.5));
  border:1px solid var(--border);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;position:relative;overflow:hidden;}
.feature-card:hover{transform:translateY(-6px);border-color:var(--border-strong);box-shadow:0 24px 60px rgba(0,0,0,.4);}
.feature-card.standout{background:linear-gradient(160deg,rgba(74,222,128,.14),rgba(12,22,38,.6));border-color:rgba(74,222,128,.3);grid-row:span 2;}
.feature-card h3{font-size:1.3rem;color:#fff;margin-bottom:12px;text-transform:none;letter-spacing:0;}
.feature-card p{font-size:.95rem;color:var(--muted);line-height:1.6;}

/* premium precios */
.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:40px;}
.price-card{padding:34px;border-radius:22px;background:rgba(12,22,38,.6);border:1px solid var(--border);position:relative;}
.price-card.highlighted{background:linear-gradient(165deg,rgba(74,222,128,.16),rgba(12,22,38,.7));
  border-color:var(--green);box-shadow:0 20px 60px rgba(74,222,128,.16);transform:scale(1.02);}
.price-card h3{font-size:1.4rem;color:#fff;margin:6px 0 18px;text-transform:none;letter-spacing:0;}
.price-card ul{list-style:none;display:flex;flex-direction:column;gap:12px;}
.price-card li{position:relative;padding-left:28px;font-size:.95rem;color:var(--muted-strong);}
.price-card li::before{content:"";position:absolute;left:0;top:7px;width:14px;height:14px;border-radius:50%;
  background:radial-gradient(circle at 40% 40%,var(--green),var(--green-deep));box-shadow:0 0 10px rgba(74,222,128,.5);}
.premium-cta{text-align:center;}
.premium-cta-note{font-size:.85rem;color:var(--muted);margin-top:14px;}

/* capturas */
.shots-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.shots-gallery figure{margin:0;}
.shot-frame{display:block;border-radius:20px;overflow:hidden;border:1px solid var(--border);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;background:#040a12;}
.shot-frame:hover{transform:translateY(-6px) scale(1.02);border-color:var(--green);box-shadow:0 24px 60px rgba(74,222,128,.2);}
.shots-gallery img{width:100%;height:auto;}
.shots-gallery figcaption{text-align:center;margin-top:14px;}
.shots-gallery figcaption strong{font-family:var(--display);font-weight:600;color:var(--muted-strong);letter-spacing:.02em;}

/* privacy band actions */
.privacy-band{display:grid;grid-template-columns:1.4fr 1fr;gap:32px;align-items:center;}
.privacy-band .actions{justify-content:flex-end;}

/* footer */
footer{border-top:1px solid var(--border);padding:40px 0;margin-top:40px;position:relative;z-index:2;}
.footer-shell{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:var(--muted);font-size:.9rem;}

/* mobile sticky CTA */
.mobile-sticky-cta{display:none;position:fixed;left:16px;right:16px;bottom:16px;z-index:80;text-align:center;
  padding:16px;border-radius:100px;font-family:var(--display);font-weight:600;text-transform:uppercase;letter-spacing:.04em;
  background:linear-gradient(100deg,var(--green),var(--green-deep));color:#04150d;box-shadow:0 14px 40px rgba(74,222,128,.4);}

/* ============ RESPONSIVE ============ */
@media(max-width:1080px){
  .hero{grid-template-columns:1fr;}
  .hero-product-panel{max-width:560px;margin-inline:auto;width:100%;}
  .product-brief,.split,.privacy-band{grid-template-columns:1fr;}
  .feature-grid,.compact-grid{grid-template-columns:repeat(2,1fr);}
  .feature-card.standout{grid-row:auto;}
  .process-steps{grid-template-columns:repeat(2,1fr);}
  .shots-gallery{grid-template-columns:repeat(2,1fr);}
  .privacy-band .actions{justify-content:flex-start;}
}
@media(max-width:720px){
  nav{display:none;}
  .nav-shell{min-height:64px;}
  .price-grid,.feature-grid,.compact-grid,.brief-grid,.steps,.process-steps,.principles{grid-template-columns:1fr;}
  .price-card.highlighted{transform:none;}
  .hero-stats div{min-width:120px;}
  .lang-menu-panel{right:auto;left:0;width:max-content;max-width:calc(100vw - 32px);}
  .mobile-sticky-cta{display:block;}
  body{padding-bottom:88px;}
  .music-promo{flex-wrap:wrap;}
  .music-promo-cta{margin-left:0;}
}
@media(prefers-reduced-motion:reduce){
  *{scroll-behavior:auto;} [data-reveal]{opacity:1;transform:none;transition:none;} #fx{display:none;}
}

/* badge regalo World Music Radios */
.music-gift-badge{align-self:flex-start;font-family:var(--display);font-weight:700;font-size:.72rem;letter-spacing:.18em;
  color:#04150d;background:linear-gradient(100deg,var(--green),var(--green-soft));padding:6px 14px;border-radius:100px;
  box-shadow:0 0 20px rgba(74,222,128,.4);text-transform:uppercase;}
.music-promo{position:relative;overflow:hidden;}
.music-promo::before{content:"";position:absolute;right:-40px;top:-40px;width:220px;height:220px;
  background:radial-gradient(circle,rgba(74,222,128,.18),transparent 65%);pointer-events:none;}

/* ================= EFECTOS SIMBIONTE (VENOM) ================= */
/* goteo bajo la cabecera */

/* tendriles reptando al panel del hero */

/* latido vivo del glow del panel */
@keyframes symbiotePulse{0%,100%{box-shadow:0 40px 100px rgba(0,0,0,.6),0 0 0 1px rgba(74,222,128,.1),0 0 46px rgba(74,222,128,.14);}
  50%{box-shadow:0 40px 100px rgba(0,0,0,.6),0 0 0 1px rgba(74,222,128,.22),0 0 90px rgba(74,222,128,.3);}}
.hero-phone-wrap{animation:symbiotePulse 5.5s ease-in-out infinite;}
/* goteo sobre el marco de la foto (simbionte derramandose dentro del panel) */

/* textura de venas real (Codex) en tarjetas destacadas */
.feature-card.standout::before{content:"";position:absolute;inset:0;opacity:.35;pointer-events:none;
  background-image:url("assets/symbiote/vein_texture.webp");background-size:cover;background-position:center;mix-blend-mode:screen;}
/* divisor organico entre bloques grandes */
.goo-divider{display:block;width:100%;height:56px;margin:-8px 0 -18px;pointer-events:none;}
/* tendriles esquina en bandas */
.band-tendril{position:absolute;left:-30px;bottom:-30px;width:280px;height:280px;opacity:.55;pointer-events:none;z-index:0;}
@keyframes tendrilSway{0%,100%{transform:rotate(0deg);}50%{transform:rotate(2.4deg);}}
.venom-tendrils g{transform-origin:100% 50%;animation:tendrilSway 7s ease-in-out infinite;}
@media(prefers-reduced-motion:reduce){.hero-phone-wrap{animation:none;}.venom-tendrils g{animation:none;}}

/* ===== SIMBIONTE REAL (arte del logo) ===== */
.goo-crown{position:absolute;left:47%;top:-46px;width:min(720px,55%);transform:translateX(-50%) scaleY(-1) scaleX(-1);
  z-index:1;pointer-events:none;opacity:.92;filter:drop-shadow(0 10px 40px rgba(74,222,128,.15));}
.goo-foot{position:relative;display:block;width:min(900px,80%);margin:40px auto -60px;z-index:1;pointer-events:none;opacity:.85;}
@keyframes gooBreath{0%,100%{opacity:.86;}50%{opacity:1;}}
.goo-crown{animation:gooBreath 6s ease-in-out infinite;}
@media(max-width:720px){.goo-crown{left:50%;width:120%;top:-20px;}}
@media(prefers-reduced-motion:reduce){.goo-crown{animation:none;}}

/* ===== pack simbionte Codex ===== */
.symbiote-sep{display:block;width:100%;height:auto;pointer-events:none;user-select:none;position:relative;z-index:3;
  margin:-6px 0 -70px;mask:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent);}
.sep-2{margin-bottom:-56px;}
.premium-cta{position:relative;padding:8px 0 4px;}

.premium-cta .button,.premium-cta .premium-cta-note{position:relative;z-index:1;}
@keyframes burstPulse{0%,100%{transform:translate(-50%,-50%) scale(1);opacity:.85;}50%{transform:translate(-50%,-50%) scale(1.06);opacity:1;}}
@media(prefers-reduced-motion:reduce){}

/* tendriles de esquina agarrando el premium */
.has-tendrils{position:relative;}
.tendril{position:absolute;width:min(440px,34%);height:auto;pointer-events:none;z-index:0;opacity:.7;}
.tendril-l{left:-30px;bottom:-40px;}
.tendril-r{right:-30px;top:10px;transform:scaleY(-1);}
.has-tendrils>*:not(.tendril){position:relative;z-index:1;}
@media(max-width:720px){.tendril{width:56%;opacity:.5;}}

/* goteo compacto coronando el CTA */
.cta-drip{position:absolute;left:50%;top:-40px;transform:translateX(-50%) scaleY(-1);
  width:min(760px,92%);height:auto;pointer-events:none;z-index:0;opacity:.9;mix-blend-mode:screen;
  mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);}
.premium-cta .button,.premium-cta .premium-cta-note{position:relative;z-index:1;}

/* --- Simbionte retirado por decisión de diseño --- */
.goo-crown,.goo-foot,.symbiote-sep,.sep-2,.cta-drip,.tendril,.band-tendril{display:none!important;}
.feature-card.standout::before{display:none!important;}
.hero-phone-wrap{animation:none!important;}
.has-tendrils{position:relative;}
/* --- Fotos de atleta más equilibradas (acento, no protagonista) --- */
/* DESKTOP: acento lateral estrecho a la derecha, no fondo completo */
.band-bg{
  position:absolute!important;z-index:0!important;
  left:auto!important;right:0!important;top:0!important;bottom:0!important;
  width:min(40%,400px)!important;height:100%!important;
  object-fit:cover;object-position:center!important;opacity:.34!important;
  -webkit-mask:linear-gradient(90deg,transparent 0,#000 62%)!important;
          mask:linear-gradient(90deg,transparent 0,#000 62%)!important;}
/* scrim reequilibrado: texto legible a la izquierda, acento respira a la derecha */
.recovery-band::after,.nutrition-section::after,.privacy-band::after,.intelligence::after{
  background:linear-gradient(90deg,rgba(8,14,24,.93) 0%,rgba(8,14,24,.72) 46%,rgba(8,14,24,.3) 78%,rgba(8,14,24,.12) 100%)!important;}

/* ============================================================
   COMPACTA: ritmo vertical más apretado (misma info, menos scroll)
   ============================================================ */
.section{padding:clamp(26px,3.4vw,50px) 0;}
.hero{padding:clamp(34px,5vw,70px) 0 clamp(38px,4.5vw,60px);}
.hero-stats{margin-top:28px;}
.section-heading{margin-bottom:16px;}
.recovery-band,.nutrition-section,.privacy-band,.intelligence{padding:clamp(22px,2.8vw,34px);}
.principles{margin-top:22px;gap:14px;}
.feature-card{padding:24px;}
.brief-grid article,.steps article,.principles>div,.price-card{padding:20px;}
.price-grid{margin-bottom:28px;}
footer{margin-top:28px;padding:32px 0;}
/* hero un pelín menos alto en desktop grande */
@media(min-width:1081px){ .hero-phone-wrap{aspect-ratio:1/1;} }

/* ============================================================
   MÓVIL: foto de fondo SUTIL (no se come la pantalla) + más compacto
   ============================================================ */
@media(max-width:720px){
  .band-bg{position:absolute!important;z-index:0!important;inset:0!important;
    left:0!important;right:0!important;top:0!important;bottom:0!important;width:100%!important;height:100%!important;
    opacity:.16!important;object-position:center!important;-webkit-mask:none!important;mask:none!important;}
  .recovery-band::after,.nutrition-section::after,.privacy-band::after,.intelligence::after{
    background:linear-gradient(180deg,rgba(8,14,24,.86),rgba(8,14,24,.9))!important;}
  .section{padding:24px 0;}
  .recovery-band,.nutrition-section,.privacy-band,.intelligence{padding:22px;}
  .principles{margin-top:18px;}
}

.caps-band{padding-top:clamp(28px,4vw,48px);padding-bottom:clamp(28px,4vw,48px);}
.caps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:20px;}
.cap{padding:20px;border-radius:16px;background:rgba(10,18,32,.55);border:1px solid var(--border);}
.cap strong{display:block;color:var(--green);font-family:var(--display);font-weight:600;font-size:1.06rem;margin-bottom:6px;}
.cap span{color:var(--muted);font-size:.92rem;line-height:1.42;}
@media(max-width:860px){.caps-grid{grid-template-columns:1fr;}}

/* ============================================================
   FOTOS EQUILIBRADAS — acento sutil, sin estirar la página
   ============================================================ */
/* acento lateral aún más contenido y suave (no protagonista) */
.band-bg{width:min(34%,320px)!important;opacity:.26!important;
  -webkit-mask:linear-gradient(90deg,transparent 0,#000 72%)!important;
          mask:linear-gradient(90deg,transparent 0,#000 72%)!important;}
/* secciones con foto: alto natural del contenido, tope para que no estiren */
.recovery-band,.nutrition-section,.privacy-band,.intelligence{overflow:hidden;}
