/* 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;justify-content:center;gap:0;background:#25D366;color:#fff;border-radius:999px;width:46px;height:46px;padding:0;text-decoration:none;font:600 14px system-ui,sans-serif;box-shadow:0 6px 18px -6px rgba(0,0,0,.35);transition:width .35s cubic-bezier(.22,1,.36,1),box-shadow .35s;overflow:hidden;white-space:nowrap}
.wa svg{width:23px;height:23px;flex:none}
.wa span{max-width:0;opacity:0;transition:max-width .35s,opacity .25s}
.wa:hover,.wa:focus-visible{width:auto;padding:0 16px 0 13px;gap:8px}.wa:hover span,.wa:focus-visible span{max-width:140px;opacity:1}
@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{width:42px;height:42px;right:14px}.wa:hover{width:42px;padding:0;gap:0}.wa:hover span{max-width:0;opacity:0}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.rv{opacity:1!important;transform:none!important}}
