/* Subpáginas de la landing v9: keyframes por página (prefijo) y estados hover/active generados del prototipo */
.ce-sub{font-size:14.5px;line-height:1.7}

/* ---------- presenciales ---------- */
@keyframes prScanY{0%{top:8%}50%{top:84%}100%{top:8%}}
@keyframes prPulse{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes prBlink{0%,100%{opacity:1}50%{opacity:0}}
@keyframes prSwOn{0%,18%{box-shadow:0 0 0 2px #ffffff,0 0 0 4px #191e36;transform:scale(1.12)}24%,100%{box-shadow:0 0 0 0 rgba(0,0,0,0);transform:none}}
@keyframes prSeat{0%{transform:scale(0);opacity:0}12%,85%{transform:none;opacity:1}100%{transform:none;opacity:1}}
@keyframes prPop{0%,70%,100%{transform:scale(1)}80%{transform:scale(1.15)}}
@keyframes prPress{0%,54%,64%,100%{transform:scale(1);filter:none}58%{transform:scale(.92);filter:brightness(1.15)}}
@keyframes prCheck{0%,30%{background:#f1f2f6;color:#5e6064}40%,100%{background:#e3f9e7;color:#0b7a20}}
@keyframes prNote{0%{transform:translateY(-16px);opacity:0}12%,80%{transform:none;opacity:1}100%{transform:translateY(6px);opacity:0}}
@keyframes prStamp{0%,35%{transform:rotate(-14deg) scale(1.8);opacity:0}45%,85%{transform:rotate(-14deg) scale(1);opacity:1}100%{transform:rotate(-14deg) scale(1);opacity:0}}
@keyframes prSwapA{0%,40%{opacity:1;filter:none}55%,100%{opacity:.4;filter:grayscale(1)}}
@keyframes prSwapB{0%,45%{opacity:.35;transform:translateX(-6px)}60%,100%{opacity:1;transform:none}}
@keyframes prSpin{0%,40%{transform:rotate(0)}55%,100%{transform:rotate(180deg)}}
.pre-h1:hover{color:#ffffff!important;text-decoration:none!important;transform:translateY(-2px)!important}
.pre-h2:hover{color:#191e36!important;text-decoration:none!important}
.pre-h3:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.pre-h4:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.pre-h5:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.pre-h6:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.pre-h7:hover{transform:translateY(-2px) scale(1.12)!important}
.pre-h8:hover{transform:translateY(-4px)!important;box-shadow:inset 0 0 0 1px #ffffff,0 22px 46px rgba(15,23,42,.12)!important}
.pre-h9:active{transform:scale(.97)!important}
.pre-h10:hover{transform:translateY(-4px)!important;box-shadow:inset 0 0 0 1px #ffffff,0 22px 46px rgba(15,23,42,.12)!important}
.pre-h11:hover{color:#ffffff!important;text-decoration:none!important;background:#2a3150!important}
.pre-h12:hover{color:#191e36!important;text-decoration:none!important}

/* ---------- virtuales ---------- */
@keyframes viPulse{0%,100%{opacity:1}50%{opacity:.35}}
.vir-h1:hover{color:#ffffff!important;text-decoration:none!important;transform:translateY(-2px)!important}
.vir-h2:hover{color:#191e36!important;text-decoration:none!important}
.vir-h3:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.vir-h4:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.vir-h5:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.vir-h6:active{transform:scale(.9)!important}
.vir-h7:hover{color:#191e36!important;text-decoration:none!important}
.vir-h8:hover{color:#ffffff!important;text-decoration:none!important;background:rgba(255,255,255,.24)!important}

/* ---------- mixtos ---------- */
@keyframes mxPulse{0%,100%{opacity:1}50%{opacity:.35}}
@keyframes mxScanY{0%{top:8%}50%{top:84%}100%{top:8%}}
@keyframes mxCheck{0%,30%{background:#f1f2f6;color:#5e6064}40%,100%{background:#e3f9e7;color:#0b7a20}}
@keyframes mxFill{0%{transform:scaleX(0)}60%,100%{transform:scaleX(1)}}
@keyframes mxStamp{0%,35%{transform:rotate(-12deg) scale(1.8);opacity:0}45%,85%{transform:rotate(-12deg) scale(1);opacity:1}100%{transform:rotate(-12deg) scale(1);opacity:0}}
@keyframes mxPop{0%,70%,100%{transform:scale(1)}80%{transform:scale(1.15)}}
@keyframes mxMsgIn{0%{opacity:0;transform:translateY(10px) scale(.97)}100%{opacity:1;transform:none}}
.mix-h1:hover{color:#ffffff!important;text-decoration:none!important;transform:translateY(-2px)!important}
.mix-h2:hover{color:#191e36!important;text-decoration:none!important}
.mix-h3:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.mix-h4:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.mix-h5:hover{color:#0f4eff!important;text-decoration:none!important;border-color:#0f4eff!important}
.mix-h6:hover{transform:translateY(-2px)!important}
.mix-h7:hover{transform:translateY(-4px)!important;box-shadow:inset 0 0 0 1px #ffffff,0 22px 46px rgba(15,23,42,.12)!important}
.mix-h8:hover{color:#191e36!important;text-decoration:none!important}
.mix-h9:hover{color:#ffffff!important;text-decoration:none!important;background:rgba(255,255,255,.24)!important}

/* ---------- explorar ---------- */
.exp-h1:hover{text-decoration:none!important;color:#191e36!important;transform:translateY(-4px)!important;border-color:rgba(15,78,255,.3)!important;box-shadow:0 24px 50px rgba(15,78,255,.14)!important}
.exp-h2:hover{color:#ffffff!important;text-decoration:none!important;background:#2a3150!important}
.exp-h3:hover{color:#191e36!important;text-decoration:none!important}
.exp-h4:hover{transform:translateY(-2px)!important;box-shadow:0 14px 30px rgba(15,78,255,.12)!important}

