/* LandingFlex PRO — animaciones e identidades visuales ligeras. Sin librerías externas. */
:root{--ease:cubic-bezier(.2,.8,.2,1);--lift:0 16px 32px color-mix(in srgb,var(--secondary) 13%,transparent);--press:0 5px 12px color-mix(in srgb,var(--secondary) 24%,transparent),inset 0 2px 5px #00000015}
body{overflow-x:clip}button,.btn,a.btn,.thumb,.pack,.info-card,.faq-list details,.hero-photo,.purchase-panel{transform:translateZ(0);transition:transform .32s var(--ease),box-shadow .32s var(--ease),filter .32s var(--ease),border-color .32s ease,background-color .28s ease}
.btn,button{position:relative;isolation:isolate}button:not(:disabled),.btn:not([disabled]){cursor:pointer}
.motion-soft .btn:hover,.motion-premium .btn:hover,.motion-energetic .btn:hover{transform:translateY(-3px);box-shadow:0 12px 24px color-mix(in srgb,var(--primary) 24%,transparent)}
.motion-soft .btn:active,.motion-premium .btn:active,.motion-energetic .btn:active,.is-pressed{transform:translateY(2px) scale(.985)!important;box-shadow:var(--press)!important}
.motion-premium .btn.primary,.motion-energetic .btn.primary{overflow:hidden;box-shadow:0 8px 22px color-mix(in srgb,var(--primary) 26%,transparent)}
.motion-premium .btn.primary:after,.motion-energetic .btn.primary:after{content:"";position:absolute;inset:0;pointer-events:none;transform:translateX(-155%) skew(-23deg);width:55%;background:linear-gradient(90deg,transparent,#ffffff70,transparent);transition:transform .8s var(--ease);z-index:-1}
.motion-premium .btn.primary:hover:after,.motion-energetic .btn.primary:hover:after{transform:translateX(290%) skew(-23deg)}
.motion-energetic .buy-btn,.motion-energetic .hero-jump{animation:cta-glow 3s ease-in-out infinite}
@keyframes cta-glow{50%{box-shadow:0 0 0 8px color-mix(in srgb,var(--primary) 12%,transparent),0 15px 28px color-mix(in srgb,var(--primary) 29%,transparent)}}
.press-shadows .pack:hover,.press-shadows .info-card:hover,.press-shadows .gallery-main:hover,.press-shadows .purchase-panel:hover,.press-shadows .thumb:hover{box-shadow:var(--lift);transform:translateY(-5px)}
.press-shadows .pack.selected,.press-shadows .thumb.active{box-shadow:0 12px 32px color-mix(in srgb,var(--primary) 20%,transparent),inset 0 0 0 2px var(--primary);transform:translateY(-2px)}
.press-shadows .pack:active,.press-shadows .info-card:active,.press-shadows .thumb:active{transform:scale(.987)!important;box-shadow:var(--press)!important}
.reveal-ready{opacity:0;transform:translateY(26px)}.reveal-ready.is-visible{opacity:1;transform:translateY(0);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.content-section .info-card:nth-child(2){transition-delay:.09s}.content-section .info-card:nth-child(3){transition-delay:.18s}.content-section .info-card:nth-child(4){transition-delay:.24s}
/* Dos identidades: Impacto = foco en la oferta; Editorial = narración visual. */
.layout-impacto .hero{background:radial-gradient(ellipse at 78% 43%,color-mix(in srgb,var(--accent) 42%,transparent),transparent 65%),var(--bg)}
.layout-impacto .hero-photo{border:7px solid color-mix(in srgb,var(--surface) 90%,transparent);box-shadow:0 34px 66px color-mix(in srgb,var(--secondary) 18%,transparent)}
.layout-impacto .purchase-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:0 22px 60px color-mix(in srgb,var(--secondary) 9%,transparent)}
.layout-editorial .hero{background:linear-gradient(130deg,color-mix(in srgb,var(--secondary) 95%,#131b28),var(--secondary));color:var(--footer-text)}
.layout-editorial .hero-grid{align-items:center;gap:3vw}
.layout-editorial .hero-copy,.layout-editorial .hero h1{color:var(--footer-text)}
.layout-editorial .hero-subtitle,.layout-editorial .hero-description,.layout-editorial .hero-micro{color:color-mix(in srgb,var(--footer-text) 78%,transparent)}
.layout-editorial .hero-points{color:var(--footer-text)}.layout-editorial .hero-points span{color:var(--footer-text)}
.layout-editorial .hero-photo{border:8px solid #ffffff16;box-shadow:0 30px 85px #0005;transform:rotate(-2deg);overflow:hidden}
.layout-editorial .hero-photo:hover{transform:rotate(0deg) translateY(-6px)}
.layout-editorial .visual-badge{background:var(--accent);color:var(--secondary)}
.layout-editorial .trust-band{background:var(--accent);color:var(--secondary)}
.layout-editorial .purchase-section{background:linear-gradient(180deg,var(--bg),color-mix(in srgb,var(--accent) 15%,var(--bg)))}
.layout-editorial .purchase-head h2{font-weight:850;letter-spacing:-.04em}
.layout-editorial .gallery-main{border-radius:calc(var(--radius) + 15px);overflow:hidden;box-shadow:0 30px 50px #00000015}
.layout-editorial .purchase-panel{border:1px solid var(--border);background:var(--surface);box-shadow:0 23px 75px #00000012;border-radius:calc(var(--radius) + 7px)}
.layout-editorial .info-card{border-radius:calc(var(--radius) + 8px);background:var(--surface)}
.layout-editorial .cta-panel{background:linear-gradient(135deg,var(--secondary),color-mix(in srgb,var(--primary) 62%,var(--secondary)))}
.gallery-main>div{width:100%;height:100%}.gallery-main video,.gallery-main img{width:100%;height:100%;object-fit:contain;background:var(--surface)}
.video-thumb-icon{display:grid;place-items:center;background:color-mix(in srgb,var(--secondary) 90%,black);color:#fff;width:100%;height:100%;font-size:.76rem;font-weight:700;text-align:center;line-height:1.1;padding:3px;border-radius:10px}
.seekable-video{display:block;max-width:100%;width:100%;max-height:100%;object-fit:contain;background:#101010;border-radius:inherit}.video-error{font-size:.81rem;color:#a12727;padding:9px}
/* Checkout accesible con modal y alternativa de enlace estándar. */
body.modal-open{overflow:hidden}.checkout-modal[hidden]{display:none!important}.checkout-modal{position:fixed;inset:0;z-index:9990;display:grid;place-items:center;padding:22px 14px;overscroll-behavior:contain}.checkout-modal-backdrop{position:absolute;inset:0;background:#080e18b0;backdrop-filter:blur(5px);animation:fadeOverlay .3s ease}
@keyframes fadeOverlay{from{opacity:0}to{opacity:1}}.checkout-modal-window{position:relative;width:min(700px,100%);height:min(90dvh,1050px);max-height:100%;background:var(--surface);border-radius:24px;box-shadow:0 35px 90px #0008;overflow:hidden;animation:slideModal .3s var(--ease)}
@keyframes slideModal{from{transform:translateY(24px) scale(.97);opacity:.5}to{transform:none;opacity:1}}.checkout-modal-window iframe{border:0;display:block;width:100%;height:100%;background:var(--surface)}
.modal-close{position:absolute;right:16px;top:16px;z-index:10;width:38px;height:38px;border:0;border-radius:50%;background:#ffffffee;color:var(--text);font-size:1.25rem;box-shadow:0 3px 13px #0002}.modal-close:hover{transform:rotate(90deg)}
:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:760px){.layout-editorial .hero-grid{gap:36px}.layout-editorial .hero-photo{transform:none}.checkout-modal{padding:0}.checkout-modal-window{border-radius:0;width:100%;height:100dvh;max-height:100dvh}.modal-close{right:11px;top:11px}.layout-editorial .hero h1{color:var(--footer-text)}.gallery-main video{min-height:260px}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.motion-energetic .buy-btn,.motion-energetic .hero-jump{animation:none}.checkout-modal-window,.checkout-modal-backdrop{animation:none}*:before,*:after,*{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}
