/* Base compartida de las landing de ejemplo — Emanuel Marketing */
*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}
body{margin:0;overflow-x:clip;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
.demo{position:relative;z-index:80;background:#0A0A0A;color:#e9e9e9;font:13px/1.4 system-ui,sans-serif;padding:8px 16px;text-align:center}
.demo a{color:#FB8C4A;font-weight:700;text-decoration:none}
.prog{position:fixed;left:0;top:0;height:3px;width:100%;transform-origin:left;transform:scaleX(0);z-index:90;background:var(--acc,#C2410C)}
.rv{opacity:0;transform:translateY(40px);transition:opacity 1s cubic-bezier(.22,1,.36,1),transform 1s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--d,0)*90ms)}
.rv.l{transform:translateX(-50px)}.rv.r{transform:translateX(50px)}.rv.z{transform:scale(.92)}
.rv.in{opacity:1;transform:none}
.wa{position:fixed;right:18px;bottom:72px;z-index:70;display:flex;align-items:center;gap:9px;background:#25D366;color:#fff;border-radius:999px;padding:13px 20px 13px 15px;text-decoration:none;font:700 15px system-ui,sans-serif;box-shadow:0 12px 30px -8px rgba(0,0,0,.4);transition:transform .4s cubic-bezier(.22,1,.36,1)}
.wa:hover{transform:translateY(-3px) scale(1.03)}.wa svg{width:22px;height:22px}
.wa:before{content:"";position:absolute;inset:0;border-radius:inherit;border:2px solid #25D366;animation:wapulse 2.4s ease-out infinite}
@keyframes wapulse{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.35);opacity:0}}
.toast{position:fixed;left:50%;bottom:90px;transform:translate(-50%,20px);opacity:0;z-index:95;background:#0A0A0A;color:#fff;font:600 15px/1.4 system-ui,sans-serif;padding:14px 20px;border-radius:14px;box-shadow:0 20px 40px -12px rgba(0,0,0,.5);transition:all .45s cubic-bezier(.22,1,.36,1);pointer-events:none;max-width:90vw;text-align:center}
.toast.on{opacity:1;transform:translate(-50%,0)}
.toast a{color:#FB8C4A}
.foot-demo{background:#070707;color:#8f8f8f;font:14px/1.6 system-ui,sans-serif;padding:24px 16px;text-align:center}
.foot-demo a{color:#FB8C4A;text-decoration:none;font-weight:700}
@media(max-width:520px){.wa span{display:none}.wa{padding:14px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.rv{opacity:1!important;transform:none!important}}
