/* SGT Apps — festividades del año (inc/fiestas.php): mes morado, Fiestas Patrias, Navidad y Año Nuevo */

/* =============================================================== Octubre, mes morado (todas las páginas) */
body.mes-morado:not(.pag-oscura){--degradado:linear-gradient(120deg,#3a1663 0%,#6b2fa0 55%,#9b5fc9 100%);--fondo:#f5f0fb;background:linear-gradient(180deg,#efe6fa 0%,#f5f0fb 38%,#f6f2fb 100%) fixed}
body.mes-morado .barra::before{background:linear-gradient(90deg,#4b1d80,#8e4fc4,#e9c46a,#8e4fc4,#4b1d80)}
body.mes-morado .app-tarjeta:not(.app-bloqueada):hover{box-shadow:0 14px 34px rgba(75,29,128,.16),0 0 0 1px rgba(142,79,196,.25)}

.smil{position:absolute;z-index:3;top:22px;right:max(22px,calc(50% - 600px));display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}
body[class*="hw-e"] .hero .smil{right:calc(16% + 118px);top:18px}
.smil-est{pointer-events:auto;position:relative;border:0;background:none;padding:0;cursor:pointer;transform:rotate(-5deg);transition:transform .35s cubic-bezier(.3,1.5,.5,1);filter:drop-shadow(0 8px 16px rgba(20,4,40,.35));animation:smil-flota 6s ease-in-out infinite}
.smil-est:hover,.smil-est[aria-expanded="true"]{transform:rotate(0) scale(1.06)}
@keyframes smil-flota{50%{translate:0 -4px}}
.smil-sello{display:block}
.smil-rayos{transform-origin:50px 52px;animation:smil-rayos 18s linear infinite}
@keyframes smil-rayos{to{transform:rotate(360deg)}}
.smil-frente{display:block}
.smil-dorso{position:absolute;top:0;right:calc(100% + 14px);width:270px;padding:14px 16px;border-radius:14px;text-align:left;color:#3b1566;background:#fffaf0;
  box-shadow:0 18px 40px rgba(30,8,60,.35),inset 0 0 0 1px rgba(233,196,106,.6);font:500 12.5px/1.45 var(--f-txt);opacity:0;transform:translateX(8px) scale(.96);transform-origin:100% 20%;transition:.25s;pointer-events:none}
.smil-est[aria-expanded="true"] .smil-dorso{opacity:1;transform:none;pointer-events:auto}
.smil-dorso b{display:block;font:800 14px var(--f-tit);color:#5a2391;margin-bottom:4px}
.smil-dorso em{display:block;margin:10px 0 4px;font:700 10.5px var(--f-tit);text-transform:uppercase;letter-spacing:.08em;color:#9b6bc8;font-style:normal}
.smil-dorso ul{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.smil-dorso li{font-size:12px}.smil-dorso li b{display:inline;font-size:12px;color:#3b1566;margin:0}
.smil-dorso li.hoy{color:#5a2391;font-weight:700}.smil-dorso li.hoy::after{content:" · hoy";color:#b8862b}
.smil-chip{padding:5px 11px;border-radius:999px;font:700 11.5px var(--f-tit);color:#fff;background:rgba(40,10,70,.5);border:1px solid rgba(233,196,106,.55);backdrop-filter:blur(6px);white-space:nowrap}
.smil-petalos{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.smil-petalos i{position:absolute;top:-20px;left:var(--x);width:11px;height:8px;border-radius:70% 0 70% 0;background:linear-gradient(135deg,#d9b8ff,#8e4fc4);opacity:.75;scale:var(--s);animation:smil-cae var(--t) linear var(--d) infinite}
.smil-petalos i:nth-child(3n){background:linear-gradient(135deg,#fff,#e8dcf7)}
@keyframes smil-cae{0%{transform:translate(0,0) rotate(0)}50%{transform:translate(26px,140px) rotate(calc(var(--r) * 2))}100%{transform:translate(-8px,300px) rotate(calc(var(--r) * 4));opacity:0}}
body[class*="hw-e"] .smil-petalos{display:none}
/* en el inicio de sesión */
.smil-login{top:34px;right:38px}
.smil-login .smil-est{transform:rotate(6deg)}
.smil-login .smil-dorso{width:250px;top:auto;bottom:-6px;right:calc(100% + 12px)}
.fx-login-chip{display:none;margin:0 0 14px;padding:8px 12px;border-radius:12px;font:700 12.5px var(--f-tit);color:#4b1d80;background:#f3eafd;border:1px solid #e3d2f7}
body.fx-patrias .fx-login-chip{color:#8c1020;background:#fdecee;border-color:#f6c9cf}
body.fx-navidad .fx-login-chip{color:#14583d;background:#e9f6ef;border-color:#c9e8d6}
body.fx-anionuevo .fx-login-chip{color:#6b4b10;background:#fbf4e2;border-color:#efdcae}
@media (max-width:900px){.fx-login-chip{display:block}}
.hw-login .hw-luna{right:58%}.hw-login .hw-calabazas{right:6%}

/* =============================================================== base común de las escenas */
.fx{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.fx > *{position:absolute}
.fx-cielo{inset:0;z-index:0}
.fx-chip{z-index:4;top:16px;right:18px;padding:7px 14px;border-radius:999px;font:700 12.5px var(--f-tit);color:#fff;background:rgba(10,14,30,.42);border:1px solid rgba(255,230,170,.55);box-shadow:0 6px 20px rgba(0,0,0,.18);backdrop-filter:blur(6px);animation:fx-chip 3s ease-in-out infinite}
@keyframes fx-chip{50%{box-shadow:0 6px 20px rgba(0,0,0,.18),0 0 18px rgba(255,214,130,.45)}}
.hero-in{z-index:2}
.fx-fuegos{inset:0;z-index:1}
.fx-chispa{position:absolute;width:var(--t,4px);height:var(--t,4px);border-radius:50%;background:var(--c);box-shadow:0 0 8px var(--c),0 0 2px #fff;pointer-events:none;animation:fx-chispa var(--dur,1.3s) cubic-bezier(.15,.7,.3,1) forwards}
@keyframes fx-chispa{0%{transform:translate(0,0) scale(1);opacity:1}75%{opacity:.9}100%{transform:translate(var(--dx),calc(var(--dy) + 40px)) scale(.3);opacity:0}}
.fx-cohete{position:absolute;width:3px;height:14px;border-radius:2px;background:linear-gradient(#fff,rgba(255,220,150,0));animation:fx-sube .7s ease-out forwards}
@keyframes fx-sube{from{transform:translateY(var(--h))}to{transform:none;opacity:.2}}
.fx-confeti{position:fixed;z-index:90;top:-12px;width:8px;height:12px;border-radius:2px;pointer-events:none;animation:fx-confeti var(--t) linear forwards}
@keyframes fx-confeti{to{transform:translate(var(--dx),105vh) rotate(var(--r))}}
.fx-cuenta{position:fixed!important;z-index:85;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle,rgba(10,14,40,.82),rgba(10,14,40,.6));border:2px solid rgba(255,214,130,.7);box-shadow:0 0 0 12px rgba(255,214,130,.12),0 30px 80px rgba(0,0,0,.45);color:#fff;text-align:center;pointer-events:none}
.fx-cuenta small{font:700 13px var(--f-tit);letter-spacing:.14em;text-transform:uppercase;color:#ffd27a;align-self:end}
.fx-cuenta b{font:800 86px/1 var(--f-tit);align-self:start;animation:fx-late 1s ease-in-out infinite}
@keyframes fx-late{0%{transform:scale(1.18)}30%{transform:scale(1)}}

/* intro a pantalla completa (una vez al día) */
.fx-intro{position:fixed;inset:0;z-index:95;display:grid;place-content:center;justify-items:center;text-align:center;padding:24px;color:#fff;overflow:hidden;cursor:pointer;animation:fx-intro-in .8s ease both}
.fx-intro[hidden]{display:none}
.fx-intro.sale{animation:fx-intro-out .7s ease forwards}
@keyframes fx-intro-in{from{opacity:0}}
@keyframes fx-intro-out{to{opacity:0;visibility:hidden}}
.fx-intro-fuegos{position:absolute;inset:0;pointer-events:none}
.fx-intro > p,.fx-intro > h2,.fx-intro > button,.fx-intro > div:not(.fx-intro-fuegos){position:relative;z-index:1}
.fx-intro-pre{margin:0 0 6px;font:700 15px var(--f-tit);letter-spacing:.06em;opacity:0;animation:fx-sube-t .9s ease .5s forwards}
.fx-intro-t{margin:0;font:800 clamp(44px,9vw,104px)/1.02 var(--f-tit);letter-spacing:-.02em;opacity:0;animation:fx-sube-t 1.1s cubic-bezier(.2,1.3,.4,1) .8s forwards}
.fx-intro-de{max-width:620px;margin:16px auto 0;font:500 16px/1.5 var(--f-txt);opacity:0;animation:fx-sube-t .9s ease 1.4s forwards}
.fx-intro-de small{display:block;margin-top:6px;font:700 12.5px var(--f-tit);letter-spacing:.08em;text-transform:uppercase;opacity:.8}
.fx-intro-ok{margin-top:26px;padding:11px 26px;border-radius:999px;border:1px solid rgba(255,255,255,.6);background:rgba(255,255,255,.12);color:#fff;font:700 14px var(--f-tit);cursor:pointer;opacity:0;animation:fx-sube-t .8s ease 2s forwards}
.fx-intro-ok:hover{background:rgba(255,255,255,.22)}
@keyframes fx-sube-t{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.fx-intro-patrias{background:radial-gradient(ellipse at 50% 40%,#d7263d 0%,#9b0f22 55%,#4e0811 100%)}
.fx-intro-patrias .fx-intro-t{color:#fff;text-shadow:0 6px 30px rgba(0,0,0,.35)}
.fx-intro-bandera{display:flex;width:120px;height:80px;margin-bottom:22px;border-radius:4px;overflow:hidden;box-shadow:0 14px 40px rgba(0,0,0,.35);animation:fx-ondea 2.4s ease-in-out infinite;transform-origin:0 50%}
.fx-intro-bandera span{flex:1;background:#d91023}.fx-intro-bandera span:nth-child(2){background:#fff}
.fx-intro-navidad{background:radial-gradient(ellipse at 50% 30%,#1d4a6e 0%,#0d2340 55%,#06101f 100%)}
.fx-intro-navidad .fx-intro-t{background:linear-gradient(90deg,#fff3c4,#ffd27a,#fff,#ffd27a);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 100%;animation:fx-sube-t 1.1s cubic-bezier(.2,1.3,.4,1) .8s forwards,fx-brillo-t 3s linear 2s infinite}
@keyframes fx-brillo-t{to{background-position:-200% 0}}
.fx-intro-arbol{width:220px;margin-bottom:10px;opacity:0;animation:fx-sube-t 1s ease .2s forwards}
.fx-intro-arbol .fx-luz{opacity:1;animation:fx-titila .5s ease-in-out infinite alternate;animation-delay:var(--d)}
.fx-intro-arbol .fx-estrella,.fx-intro-arbol .fx-halo,.fx-intro-arbol .fx-guirnalda,.fx-intro-arbol .fx-regalos,.fx-intro-arbol .fx-nieve{opacity:1}
.fx-intro-arbol .fx-rayos{opacity:1;animation:fx-rayos 4s linear infinite}
.fx-intro-arbol .fx-estrella path:last-child{fill:#ffe08a;stroke:#d9a640}
.fx-intro-arbol .fx-estrella{filter:drop-shadow(0 0 8px #fff3c4) drop-shadow(0 0 20px #ffd27a)}
.fx-intro-arbol .fx-halo{opacity:.9}
.fx-intro-anionuevo{background:radial-gradient(ellipse at 50% 40%,#2b2a6a 0%,#121638 55%,#05071a 100%)}
.fx-intro-anionuevo .fx-intro-t{background:linear-gradient(90deg,#fff3c4,#e9c46a,#fff,#e9c46a);-webkit-background-clip:text;background-clip:text;color:transparent;background-size:200% 100%;animation:fx-sube-t 1.1s cubic-bezier(.2,1.3,.4,1) .8s forwards,fx-brillo-t 3s linear 2s infinite}

/* =============================================================== Fiestas Patrias */
body.fx-patrias.pag-panel .hero-in{padding-bottom:140px}
body.fx-patrias.pag-panel:is(.fx-e3,.fx-e4,.fx-e5) .hero-in{padding-bottom:280px}
.fx-patrias .fx-cielo{background:radial-gradient(ellipse at 82% 30%,rgba(255,255,255,.22),rgba(255,255,255,0) 55%),linear-gradient(120deg,#7d0c1c 0%,#b3122a 48%,#d22a40 100%)}
.fx-banderines{z-index:1;left:0;right:0;top:0;height:46px;display:flex;justify-content:space-between;padding:0 6px;opacity:0;transition:opacity 1s}
.fx-banderines::before{content:"";position:absolute;left:0;right:0;top:4px;height:16px;border-top:1.5px solid rgba(255,255,255,.75);border-radius:50%}
.fx-patrias.e1 .fx-banderines{opacity:1}
.fx-banderines i{position:relative;top:calc(8px + 6px * sin(var(--i) * 0.24rad));width:22px;height:28px;background:#fff;clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:50% 0;animation:fx-banderin 2.6s ease-in-out infinite;animation-delay:calc(var(--i) * -.17s);filter:drop-shadow(0 2px 2px rgba(0,0,0,.2))}
.fx-banderines i:nth-child(odd){background:linear-gradient(#ff4f63,#d91023)}
@keyframes fx-banderin{50%{transform:rotate(7deg)}}
.fx-bandera-p{z-index:1;right:max(28px,calc(50% - 600px));top:44px;width:150px;height:170px;opacity:0;transition:opacity 1s}
.fx-patrias.e2 .fx-bandera-p{opacity:1}
.fx-asta-p{position:absolute;left:0;top:0;width:5px;height:170px;border-radius:3px;background:linear-gradient(90deg,#e9c46a,#9a7428)}
.fx-asta-p::before{content:"";position:absolute;left:-3px;top:-8px;width:11px;height:11px;border-radius:50%;background:#e9c46a}
.fx-tela{position:absolute;left:5px;top:6px;width:130px;height:86px;display:flex;transform-origin:0 50%;animation:fx-ondea 2.6s ease-in-out infinite;box-shadow:0 10px 26px rgba(60,0,10,.35);overflow:hidden}
.fx-tela span{flex:1;background:#d91023}.fx-tela span:nth-child(2){background:#fff}
.fx-tela::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.18) 22%,rgba(255,255,255,.18) 42%,rgba(0,0,0,.16) 64%,rgba(255,255,255,.12) 84%,rgba(0,0,0,.12) 100%);background-size:200% 100%;animation:fx-pliegue 2.6s linear infinite}
@keyframes fx-ondea{0%,100%{transform:perspective(300px) rotateY(0) skewY(0)}50%{transform:perspective(300px) rotateY(-14deg) skewY(-3deg)}}
@keyframes fx-pliegue{to{background-position:-200% 0}}
.fx-hitos{z-index:3;left:max(20px,calc(50% - 530px));top:168px;display:flex;gap:10px;opacity:0;pointer-events:none}
.fx-patrias.e3 .fx-hitos{opacity:1;pointer-events:auto}
.fx-hito{position:relative;width:168px;padding:9px 12px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.35);background:rgba(60,4,14,.32);backdrop-filter:blur(6px);color:#fff;text-align:left;cursor:pointer;opacity:0;animation:fx-hito .7s cubic-bezier(.2,1.3,.4,1) forwards;animation-delay:calc(.3s + var(--i) * .25s);transition:background .2s}
.fx-hito:hover,.fx-hito.abierto{background:rgba(60,4,14,.55)}
@keyframes fx-hito{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.fx-hito b{display:block;font:800 12px var(--f-tit);color:#ffd27a;letter-spacing:.04em}
.fx-hito span{display:block;font:700 13px/1.25 var(--f-tit)}
.fx-hito small{position:absolute;left:0;top:calc(100% + 8px);width:250px;padding:10px 12px;border-radius:12px;background:#fffaf2;color:#4a0a14;font:500 12px/1.45 var(--f-txt);box-shadow:0 16px 36px rgba(40,0,8,.35);opacity:0;transform:translateY(-6px);transition:.2s;pointer-events:none;z-index:5}
.fx-hito.abierto small{opacity:1;transform:none}
.fx-hito:not(:first-child)::before{content:"";position:absolute;left:-11px;top:50%;width:11px;height:2px;background:rgba(255,214,130,.6)}
.fx-galope{z-index:2;left:0;right:0;bottom:66px;height:104px;opacity:0;pointer-events:none}
.fx-patrias.e4 .fx-galope{opacity:1}
.fx-jinete{position:absolute;bottom:0;left:0;width:132px;height:104px;pointer-events:auto;animation:fx-cruza 16s linear infinite;cursor:default}
.fx-jinete:nth-child(2){animation-delay:-5.3s;width:120px}
.fx-jinete:nth-child(3){animation-delay:-10.6s;width:120px}
@keyframes fx-cruza{from{transform:translateX(-160px)}to{transform:translateX(calc(100vw + 40px))}}
.fx-jinete svg{width:100%;height:100%;overflow:visible}
.fx-jinete path,.fx-jinete circle{fill:#1d0a10}
.fx-jinete .fx-capa{fill:var(--capa,#c8102e)}
.fx-jinete .fx-bicornio{fill:#120508}
.fx-jinete .fx-asta{fill:none;stroke:#e9c46a;stroke-width:1.6}
.fx-jinete .fx-bandera{fill:url(#fxbp);stroke:rgba(0,0,0,.25);stroke-width:.6}
.fx-jinete .fx-pierna{fill:none;stroke:#1d0a10;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}
.fx-jinete .fx-crin{fill:#0d0407}
.fx-jinete .fx-pata{fill:none;stroke:#1d0a10;stroke-width:5.6;stroke-linecap:round;stroke-linejoin:round}
.fx-cab-cuerpo{animation:fx-trote .42s ease-in-out infinite;transform-origin:70px 60px}
@keyframes fx-trote{50%{transform:translateY(-5px) rotate(-2deg)}}
.fx-pata{transform-box:fill-box;transform-origin:50% 0}
.fx-pata.p1,.fx-pata.p3{animation:fx-pata .42s ease-in-out infinite}
.fx-pata.p2,.fx-pata.p4{animation:fx-pata .42s ease-in-out -.21s infinite}
@keyframes fx-pata{0%,100%{transform:rotate(28deg)}50%{transform:rotate(-30deg)}}
.fx-jinete::after{content:attr(data-nombre);position:absolute;left:50%;bottom:calc(100% + 4px);translate:-50% 0;padding:4px 9px;border-radius:8px;background:#fffaf2;color:#4a0a14;font:700 11.5px var(--f-tit);white-space:nowrap;opacity:0;transition:.2s;pointer-events:none}
.fx-jinete:hover::after{opacity:1}
.fx-polvo{position:absolute;left:0;right:0;bottom:-4px;height:14px;background:radial-gradient(ellipse at 50% 100%,rgba(255,220,200,.35),rgba(255,220,200,0) 70%)}
.fx-viva{z-index:4;right:18px;bottom:78px;padding:9px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.65);background:rgba(255,255,255,.14);color:#fff;font:800 13px var(--f-tit);cursor:pointer;pointer-events:auto;backdrop-filter:blur(6px);transition:.2s}
.fx-viva:hover{background:#fff;color:#b3122a}
.fx-patrias.e5 .fx-cielo::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(255,214,130,.25),transparent 50%)}
body.fx-patrias .barra::before{background:linear-gradient(90deg,#d91023 0 33%,#fff 33% 66%,#d91023 66%)}
body.fx-patrias:is(.fx-e4,.fx-e5):not(.pag-oscura){background:linear-gradient(180deg,#fbeef0 0%,#f7f3f4 40%,#f3f7fa 100%) fixed}
/* login */
.fx-patrias.fx-login .fx-bandera-p{top:62px;right:48px}
.fx-patrias.fx-login .fx-galope{bottom:22px}

/* =============================================================== Navidad */
body.fx-navidad.pag-panel .hero-in{padding-bottom:262px}
.fx-navidad .fx-cielo{background:radial-gradient(ellipse at 78% 75%,rgba(255,226,150,calc(var(--etapa) * .05)),transparent 55%),linear-gradient(170deg,#0d2340 0%,#16365c 55%,#1f4a6e 100%)}
.fx-navidad.e5 .fx-cielo{background:radial-gradient(ellipse at 78% 70%,rgba(255,226,150,.38),transparent 60%),linear-gradient(170deg,#102b4e 0%,#1b4570 55%,#275a84 100%)}
.fx-copos{inset:0;z-index:1}
.fx-copos i{position:absolute;top:-10px;left:var(--x);width:var(--s);height:var(--s);border-radius:50%;background:#fff;opacity:.85;animation:fx-copo var(--t) linear var(--d) infinite}
.fx-copos i:nth-child(n+14){display:none}
.fx-navidad.e3 .fx-copos i:nth-child(n+14){display:block}
@keyframes fx-copo{0%{transform:translate(0,0)}50%{transform:translate(14px,200px)}100%{transform:translate(-6px,420px)}}
.fx-arbol{z-index:3;right:max(28px,calc(50% - 600px));bottom:68px;height:362px;aspect-ratio:300/380;pointer-events:auto}
.fx-arbol-svg{width:100%;height:100%;overflow:visible;display:block}
.fx-halo{opacity:calc(var(--etapa) * .05);transition:opacity 1s}
.fx-nieve{opacity:.85}
.fx-guirnalda{opacity:0}
.fx-navidad.e2 .fx-guirnalda{opacity:1}
.fx-guirnalda path{stroke-dasharray:240;stroke-dashoffset:240;animation:fx-dibuja 2.4s ease forwards}
.fx-navidad.e2 .fx-guirnalda path:nth-child(2){animation-delay:.5s}.fx-navidad.e2 .fx-guirnalda path:nth-child(3){animation-delay:1s}
@keyframes fx-dibuja{to{stroke-dashoffset:0}}
.fx-luz{fill:var(--c);opacity:0;transition:opacity .6s}
.fx-navidad.e3 .fx-luz.g3,.fx-navidad.e4 .fx-luz{opacity:1;animation:fx-titila 1.6s ease-in-out infinite alternate;animation-delay:var(--d)}
@keyframes fx-titila{from{opacity:.35}to{opacity:1}}
.fx-navidad.e4 .fx-luces{filter:drop-shadow(0 0 3px rgba(255,236,170,.8))}
.fx-regalos{opacity:0;transition:opacity 1s}
.fx-navidad.e4 .fx-regalos{opacity:1}
.fx-estrella{opacity:0;transition:opacity 1s}
.fx-estrella path:last-child{fill:#6e6345;stroke:#4a4128}
.fx-navidad.e4 .fx-estrella{opacity:1}
.fx-rayos{opacity:0;transform-origin:150px 30px}
/* 25 de diciembre: el árbol se enciende exageradamente */
.fx-navidad.e5 .fx-halo{opacity:.9;animation:fx-halo 2.2s ease-in-out infinite}
@keyframes fx-halo{50%{opacity:.55}}
.fx-navidad.e5 .fx-estrella path:last-child{fill:#ffe08a;stroke:#d9a640}
.fx-navidad.e5 .fx-estrella{filter:drop-shadow(0 0 8px #fff3c4) drop-shadow(0 0 22px #ffd27a)}
.fx-navidad.e5 .fx-rayos{opacity:1;animation:fx-rayos 4s linear infinite}
@keyframes fx-rayos{to{transform:rotate(360deg)}}
.fx-navidad.e5 .fx-luz{r:6.5;animation:fx-loco .45s ease-in-out infinite alternate;animation-delay:calc(var(--d) * .3)}
@keyframes fx-loco{from{opacity:.4;fill:var(--c)}to{opacity:1;fill:#fff}}
.fx-navidad.e5 .fx-luces{filter:drop-shadow(0 0 4px #fff) drop-shadow(0 0 10px rgba(255,214,130,.9))}
.fx-navidad.e5 .fx-arbol{animation:fx-latido 1.8s ease-in-out infinite}
@keyframes fx-latido{50%{transform:scale(1.015)}}
.fx-navidad.enciende .fx-arbol{animation:fx-enciende 1.6s cubic-bezier(.2,1.4,.4,1)}
@keyframes fx-enciende{0%{filter:brightness(.4)}40%{filter:brightness(2.4);transform:scale(1.06)}100%{filter:none}}
.fx-colgados{position:absolute;inset:0}
.fx-adorno{position:absolute;width:8.5%;aspect-ratio:1;translate:-50% -28%;transform-origin:50% 0;animation:fx-mece 3.4s ease-in-out infinite;filter:drop-shadow(0 2px 3px rgba(0,0,0,.35))}
.fx-adorno svg,.fx-pieza svg,.fx-arrastre svg{width:100%;height:100%;display:block;pointer-events:none}
.fx-adorno.mio{cursor:grab;touch-action:none}
.fx-adorno.mio::after{content:"";position:absolute;inset:-3px;border-radius:50%;box-shadow:0 0 0 1.5px rgba(255,255,255,.65);opacity:0;transition:.2s}
.fx-adorno.mio:hover::after{opacity:1}
.fx-adorno.nuevo{animation:fx-cuelga .6s cubic-bezier(.2,1.6,.4,1),fx-mece 3.4s ease-in-out .6s infinite}
@keyframes fx-mece{50%{transform:rotate(6deg)}}
@keyframes fx-cuelga{from{transform:scale(1.6) translateY(-12px)}}
.fx-caja{z-index:4;left:max(20px,calc(50% - 530px));bottom:84px;padding:10px 14px 12px;border-radius:16px;background:rgba(8,20,40,.45);border:1px solid rgba(255,226,150,.45);backdrop-filter:blur(8px);color:#fff;pointer-events:auto;animation:fx-hito .7s ease both}
.fx-caja-t{margin:0 0 8px;font:600 12px var(--f-tit);color:rgba(255,255,255,.8)}.fx-caja-t b{color:#ffd27a;font-size:13px;margin-right:4px}
.fx-caja-items{display:flex;gap:6px}
.fx-pieza{width:38px;height:38px;padding:3px;border-radius:10px;background:rgba(255,255,255,.08);cursor:grab;touch-action:none;transition:transform .2s,background .2s}
.fx-pieza:hover{transform:translateY(-3px) rotate(-6deg);background:rgba(255,255,255,.18)}
.fx-caja.agotada .fx-pieza{opacity:.35;cursor:not-allowed}
.fx-caja-q{margin:8px 0 0;font:600 11.5px var(--f-tit);color:rgba(255,255,255,.75);min-height:15px}
.fx-arrastre{position:fixed;z-index:120;width:40px;height:40px;pointer-events:none;translate:-50% -50%;filter:drop-shadow(0 8px 10px rgba(0,0,0,.35));transition:transform .15s}
.fx-arrastre.sobre{transform:scale(1.15)}
.fx-arbol.recibe .fx-arbol-svg{filter:drop-shadow(0 0 14px rgba(255,226,150,.6))}
body.fx-navidad .barra::before{background:linear-gradient(90deg,#1f7a4d,#c8102e,#e9c46a,#c8102e,#1f7a4d)}
body.fx-navidad.pag-panel .fx-chip{right:calc(max(28px,50% - 600px) + 310px)}
.fx-arbol::before{content:"";position:absolute;left:50%;top:42%;width:200%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:repeating-conic-gradient(from 0deg,rgba(255,236,170,.16) 0 6deg,transparent 6deg 18deg);-webkit-mask:radial-gradient(circle,#000 20%,transparent 68%);mask:radial-gradient(circle,#000 20%,transparent 68%);opacity:0;transition:opacity 1.2s;pointer-events:none}
.fx-navidad.e5 .fx-arbol::before{opacity:1;animation:fx-rayos 40s linear infinite}
body.fx-navidad.fx-e5:not(.pag-oscura){background:linear-gradient(180deg,#eef4f8 0%,#f3f7fa 100%) fixed}
/* login */
.fx-navidad.fx-login .fx-arbol{right:3%;bottom:4%;height:min(34%,270px)}

/* =============================================================== Año Nuevo */
body.fx-anionuevo.pag-panel .hero-in{padding-bottom:262px}
.fx-anionuevo .fx-cielo{background:radial-gradient(ellipse at 75% 30%,rgba(233,196,106,.18),transparent 55%),linear-gradient(120deg,#0b1026 0%,#1a1f4a 55%,#3a2a5a 100%)}
.fx-destellos{inset:0;z-index:1}
.fx-destellos i{position:absolute;left:var(--x);top:var(--y);width:var(--s);height:var(--s);border-radius:50%;background:#ffe7a8;box-shadow:0 0 6px #ffd27a;animation:fx-titila 2.4s ease-in-out var(--d) infinite alternate}
.fx-serpentinas{z-index:1;right:max(24px,calc(50% - 600px));top:0;width:420px;height:150px;opacity:0}
.fx-anionuevo.e2 .fx-serpentinas{opacity:1}
.fx-serpentinas i{position:absolute;top:0;left:calc(var(--i) * 46px);width:1.5px;height:calc(36px + mod(var(--i) * 17, 60) * 1px);background:linear-gradient(#e9c46a,rgba(233,196,106,.3));transform-origin:50% 0;animation:fx-banderin 3s ease-in-out infinite;animation-delay:calc(var(--i) * -.4s)}
.fx-serpentinas i::after{content:"✦";position:absolute;left:50%;bottom:-12px;translate:-50% 0;color:#ffd27a;font-size:14px;text-shadow:0 0 8px #ffd27a}
.fx-anio{z-index:2;right:max(30px,calc(50% - 590px));top:56px;display:flex;align-items:center;gap:12px;font:800 64px/1 var(--f-tit);letter-spacing:-.02em}
.fx-anio .viejo{color:rgba(255,255,255,.35);transition:.8s}
.fx-anio i{font-style:normal;font-size:30px;color:#e9c46a;animation:fx-flecha 1.6s ease-in-out infinite}
@keyframes fx-flecha{50%{transform:translateX(5px)}}
.fx-anio .nuevo{background:linear-gradient(90deg,#fff3c4,#e9c46a,#fff,#e9c46a);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:fx-brillo-t 4s linear infinite;filter:drop-shadow(0 0 18px rgba(233,196,106,.35))}
.fx-anionuevo.e4 .fx-anio .viejo{text-decoration:line-through;text-decoration-color:rgba(233,196,106,.6);opacity:.6}
.fx-anionuevo.e5 .fx-anio{font-size:84px}
.fx-sobre{z-index:4;left:max(20px,calc(50% - 530px));bottom:96px;width:280px;height:124px;border:0;padding:0;background:none;cursor:pointer;pointer-events:auto}
.fx-sobre::before{content:"";position:absolute;inset:0;border-radius:8px;background:linear-gradient(160deg,#efdcae,#e2c886);box-shadow:0 14px 34px rgba(0,0,0,.35)}
.fx-sobre::after{content:"";position:absolute;inset:0;z-index:3;border-radius:0 0 8px 8px;background:linear-gradient(170deg,#fbf4e2,#f1e0b4);clip-path:polygon(0 18%,50% 64%,100% 18%,100% 100%,0 100%)}
.fx-sobre-tapa{position:absolute;left:0;right:0;top:0;height:74px;z-index:4;background:linear-gradient(180deg,#f6e8c2,#e6cd8f);clip-path:polygon(0 0,100% 0,50% 100%);transform-origin:50% 0;transition:transform .6s ease,z-index 0s .3s;filter:drop-shadow(0 2px 2px rgba(0,0,0,.15))}
.fx-sobre-sello{position:absolute;z-index:5;left:50%;top:52px;translate:-50% 0;width:42px;height:42px;border-radius:50%;display:grid;place-items:center;font:800 11px var(--f-tit);color:#fbe7b5;background:radial-gradient(circle at 35% 30%,#c23a3a,#7a1414);box-shadow:0 3px 8px rgba(0,0,0,.3),inset 0 0 0 3px rgba(255,255,255,.12);transition:.4s}
.fx-sobre-carta{position:absolute;z-index:2;left:14px;right:14px;top:8px;height:104px;padding:10px 12px;border-radius:6px;background:#fffdf7;box-shadow:0 2px 8px rgba(0,0,0,.12);display:flex;flex-direction:column;justify-content:flex-start;text-align:center;color:#3a2a10;transition:transform .7s cubic-bezier(.2,1.2,.4,1) .25s,z-index 0s}
.fx-sobre-carta small{font:700 10px var(--f-tit);text-transform:uppercase;letter-spacing:.12em;color:#b8862b}
.fx-sobre-carta b{font:800 15px/1.2 var(--f-tit);margin:3px 0}
.fx-sobre-carta em{font:600 11.5px var(--f-txt);color:#8a6a2a}
.fx-sobre-pie{position:absolute;z-index:4;left:0;right:0;top:calc(100% + 8px);font:600 12px var(--f-tit);color:rgba(255,255,255,.85);text-align:center}
.fx-sobre-pie b{color:#ffd27a}
.fx-sobre:hover .fx-sobre-sello{transform:scale(1.08) rotate(-8deg)}
.fx-sobre[aria-expanded="true"] .fx-sobre-tapa{transform:rotateX(180deg);z-index:1}
.fx-sobre[aria-expanded="true"] .fx-sobre-sello{opacity:0;transform:scale(.4)}
.fx-sobre[aria-expanded="true"] .fx-sobre-carta{transform:translateY(-64px)}
.fx-sobre:not([aria-expanded="true"]) .fx-sobre-tapa{animation:fx-asoma 4s ease-in-out infinite}
@keyframes fx-asoma{0%,80%,100%{transform:none}88%{transform:rotateX(28deg)}}
.fx-brindis{z-index:4;left:calc(max(20px,50% - 530px) + 316px);bottom:80px;padding:8px 14px 10px;border-radius:16px;background:rgba(10,12,34,.4);border:1px solid rgba(233,196,106,.45);backdrop-filter:blur(8px);color:#fff;text-align:center;pointer-events:auto;animation:fx-hito .7s ease both}
.fx-brindis-t{margin:0;font:600 12px var(--f-tit);color:rgba(255,255,255,.8)}.fx-brindis-t b{color:#ffd27a;font-size:13px;margin-right:3px}
.fx-copas{position:relative;width:150px;height:96px;margin:4px auto 0}
.fx-copa{position:absolute;bottom:0;width:38px;height:86px;cursor:grab;touch-action:none;transition:transform .5s cubic-bezier(.2,1.4,.4,1)}
.fx-copa svg{width:100%;height:100%;display:block;pointer-events:none;overflow:visible}
.fx-copa.izq{left:14px;transform:rotate(-6deg)}.fx-copa.der{right:14px;transform:rotate(6deg)}
.fx-copa.arrastrando{transition:none;cursor:grabbing}
.fx-copas.chin .fx-copa.izq{transform:translateX(26px) rotate(16deg)}
.fx-copas.chin .fx-copa.der{transform:translateX(-26px) rotate(-16deg)}
.fx-champan{transform-origin:50% 100%}
.fx-burbujas circle{animation:fx-burbuja 1.8s ease-in infinite}
.fx-burbujas circle:nth-child(2){animation-delay:-.5s}.fx-burbujas circle:nth-child(3){animation-delay:-1s}.fx-burbujas circle:nth-child(4){animation-delay:-1.4s}
@keyframes fx-burbuja{from{transform:translateY(4px);opacity:0}30%{opacity:1}to{transform:translateY(-14px);opacity:0}}
.fx-chin{position:absolute;left:50%;top:-6px;translate:-50% 0;font:800 18px var(--f-tit);color:#ffd27a;text-shadow:0 0 12px rgba(255,214,130,.8);white-space:nowrap;animation:fx-chin 1.4s ease forwards;pointer-events:none}
@keyframes fx-chin{0%{transform:scale(.4);opacity:0}25%{transform:scale(1.15);opacity:1}100%{transform:translateY(-26px);opacity:0}}
.fx-brindis-n{margin:2px 0 0;font:700 11.5px var(--f-tit);color:#ffd27a}
body.fx-anionuevo .barra::before{background:linear-gradient(90deg,#1a1f4a,#e9c46a,#fff3c4,#e9c46a,#1a1f4a)}
body.fx-anionuevo:is(.fx-e4,.fx-e5):not(.pag-oscura){background:linear-gradient(180deg,#f2eee4 0%,#f3f4f8 40%,#f3f7fa 100%) fixed}
/* login */
.fx-anionuevo.fx-login .fx-anio{top:46px;right:44px;font-size:52px}
.fx-anionuevo.fx-login .fx-sobre{left:auto;right:44px;bottom:78px}

/* =============================================================== Carnavales */
body.fx-carnaval.pag-panel .hero-in{padding-bottom:170px}
.fx-carnaval .fx-cielo{background:radial-gradient(circle at 80% 20%,rgba(255,210,61,.35),transparent 45%),radial-gradient(circle at 60% 90%,rgba(56,211,159,.3),transparent 45%),linear-gradient(120deg,#5a1fd1 0%,#c2189b 50%,#ff5a3d 100%)}
.fx-serp{z-index:1;left:0;right:0;top:-6px;height:170px;display:flex;justify-content:space-around}
.fx-serp svg{width:26px;height:calc(90px + var(--i) * 9px);transform-origin:50% 0;animation:fx-banderin calc(2.4s + var(--i) * .2s) ease-in-out infinite;animation-delay:calc(var(--i) * -.3s)}
.fx-serp svg:nth-child(even){height:calc(70px + var(--i) * 6px)}
.fx-serp path{fill:none;stroke:var(--c);stroke-width:4;stroke-linecap:round}
.fx-confetis{inset:0;z-index:1}
.fx-confetis i{position:absolute;top:-12px;left:var(--x);width:7px;height:11px;border-radius:2px;background:var(--c);animation:fx-papel var(--t) linear var(--d) infinite}
@keyframes fx-papel{to{transform:translate(20px,440px) rotate(var(--r))}}
.fx-antifaz{z-index:2;right:max(26px,calc(50% - 600px));top:52px;width:150px;animation:smil-flota 4s ease-in-out infinite;filter:drop-shadow(0 10px 18px rgba(40,0,40,.35))}
.fx-antifaz svg{width:100%;display:block;transform:rotate(-8deg)}
.fx-globos{inset:0;z-index:3}
.fx-globo{position:absolute;bottom:-90px;width:44px;height:78px;padding:0;border:0;background:none;cursor:pointer;pointer-events:auto;animation:fx-globo var(--t) linear var(--d) infinite;filter:drop-shadow(0 6px 8px rgba(0,0,0,.2))}
.fx-globo svg{width:100%;height:100%;display:block;animation:fx-baila 2.4s ease-in-out infinite;pointer-events:none}
@keyframes fx-globo{from{transform:translateY(0)}to{transform:translateY(-560px)}}
@keyframes fx-baila{50%{transform:translateX(8px) rotate(6deg)}}
.fx-globo.pum svg{animation:fx-pum .35s ease-out forwards}
@keyframes fx-pum{to{transform:scale(1.7);opacity:0}}
.fx-globos-n{z-index:4;left:max(20px,calc(50% - 530px));bottom:86px;margin:0;padding:7px 14px;border-radius:999px;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.5);color:#fff;font:800 13px var(--f-tit);backdrop-filter:blur(6px)}
body.fx-carnaval .barra::before{background:linear-gradient(90deg,#a35bff,#ff3d7f,#ff8a3d,#ffd23d,#38d39f,#3db5ff)}
.fx-carnaval.fx-login .fx-antifaz{top:40px;right:40px}

/* =============================================================== Semana Santa */
body.fx-semanasanta.pag-panel .hero-in{padding-bottom:170px}
.fx-semanasanta .fx-cielo{transition:background 1s}
.fx-semanasanta.d1 .fx-cielo,.fx-semanasanta.d2 .fx-cielo{background:linear-gradient(160deg,#2f5f7d 0%,#5f8fa6 55%,#c9a978 100%)}
.fx-semanasanta.d3 .fx-cielo{background:linear-gradient(170deg,#2b2350 0%,#5a3f6e 55%,#a8745a 100%)}
.fx-semanasanta.d4 .fx-cielo{background:linear-gradient(170deg,#1f1b2e 0%,#3b3350 60%,#5e4c5e 100%)}
.fx-semanasanta.d5 .fx-cielo{background:linear-gradient(170deg,#121731 0%,#222a50 60%,#3a3560 100%)}
.fx-semanasanta.d6 .fx-cielo{background:linear-gradient(175deg,#3f78ad 0%,#7fb0d6 50%,#f4c48a 100%)}
.fx-colina{z-index:1;left:0;right:0;bottom:0;height:150px}
.fx-colina svg:first-child{position:absolute;left:0;right:0;bottom:0;width:100%;height:100%}
.fx-colina path{fill:rgba(10,20,30,.28)}
.fx-semanasanta.d6 .fx-colina path{fill:rgba(60,110,70,.35)}
.fx-cruz{position:absolute;right:max(130px,calc(50% - 480px));bottom:96px;width:30px;height:54px;fill:rgba(10,14,24,.55);opacity:0;transition:opacity 1.5s}
.fx-semanasanta:is(.d4,.d5,.d6) .fx-cruz{opacity:1}
.fx-semanasanta.d4 .fx-cruz{filter:drop-shadow(0 0 14px rgba(255,220,180,.35))}
.fx-semanasanta.d6 .fx-cruz{fill:rgba(255,250,235,.9);filter:drop-shadow(0 0 16px #fff3c4)}
.fx-sol{z-index:0;right:max(60px,calc(50% - 560px));bottom:40px;width:170px;height:170px}
.fx-sol i{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle,#fff7d6 0%,#ffd98a 45%,rgba(255,200,120,0) 70%);animation:fx-amanece 3s ease-out both,fx-halo 4s ease-in-out 3s infinite}
.fx-sol::before{content:"";position:absolute;left:50%;top:50%;width:520px;height:520px;translate:-50% -50%;border-radius:50%;background:repeating-conic-gradient(rgba(255,240,200,.22) 0 5deg,transparent 5deg 16deg);-webkit-mask:radial-gradient(circle,#000 15%,transparent 65%);mask:radial-gradient(circle,#000 15%,transparent 65%);animation:fx-rayos 60s linear infinite}
@keyframes fx-amanece{from{transform:translateY(90px);opacity:.3}}
.fx-palmas{inset:0;z-index:1}
.fx-palma{position:absolute;bottom:-10px;width:230px;height:230px;transform-origin:0 100%;animation:fx-palma 5s ease-in-out infinite}
.fx-palma-i{left:-30px}
.fx-palma-d{right:-30px;transform:scaleX(-1);animation-name:fx-palma-d}
@keyframes fx-palma{50%{rotate:3deg}}
@keyframes fx-palma-d{50%{rotate:-3deg}}
.fx-palma .tallo{fill:none;stroke:#3f7a4c;stroke-width:3}
.fx-palma .hoja{fill:none;stroke:#5da86c;stroke-width:4.5;stroke-linecap:round}
.fx-semanasanta.d2 .fx-palma{opacity:.6}
.fx-velas{z-index:3;right:max(28px,calc(50% - 600px));bottom:76px;display:flex;align-items:flex-end;gap:14px}
.fx-vela{position:relative;width:16px;height:calc(var(--h) + 30px);padding:0;border:0;background:none;cursor:pointer;pointer-events:auto}
.fx-vela .cuerpo{position:absolute;left:0;bottom:0;width:16px;height:var(--h);border-radius:3px 3px 2px 2px;background:linear-gradient(90deg,#efe4cc,#fffaf0 45%,#d9ccb0)}
.fx-vela .cuerpo::before{content:"";position:absolute;left:7px;top:-5px;width:2px;height:6px;background:#3a2a1a}
.fx-vela .llama{position:absolute;left:50%;bottom:calc(var(--h) + 2px);width:10px;height:20px;translate:-50% 0;border-radius:50% 50% 50% 50%/65% 65% 35% 35%;background:radial-gradient(ellipse at 50% 75%,#fff 0 15%,#ffd27a 40%,#ff8a24 75%,transparent 80%);opacity:0;transform-origin:50% 100%;transition:opacity .4s;filter:drop-shadow(0 0 8px #ffbf5a)}
.fx-vela.prendida .llama{opacity:1;animation:fx-llama 1.1s ease-in-out infinite alternate}
.fx-vela.prendida::after{content:"";position:absolute;left:50%;bottom:var(--h);width:70px;height:70px;translate:-50% 30%;border-radius:50%;background:radial-gradient(circle,rgba(255,200,120,.35),transparent 70%);pointer-events:none}
@keyframes fx-llama{from{transform:scale(1,1) rotate(-2deg)}to{transform:scale(.9,1.12) rotate(3deg)}}
.fx-velas-t{z-index:3;right:max(28px,calc(50% - 600px));bottom:52px;margin:0;font:600 11.5px var(--f-tit);color:rgba(255,255,255,.75)}
.fx-flores{z-index:2;left:0;right:0;bottom:62px;height:70px}
.fx-flor{position:absolute;left:var(--x);bottom:0;width:26px;height:56px;transform-origin:50% 100%;animation:fx-brota 1.6s cubic-bezier(.2,1.3,.4,1) calc(.4s + var(--i) * .15s) both,fx-mece 4s ease-in-out calc(2s + var(--i) * .2s) infinite}
.fx-flor svg{width:100%;height:100%;display:block}
@keyframes fx-brota{from{transform:scaleY(0)}}
.fx-huevos{inset:0;z-index:3}
.fx-huevo{position:absolute;left:var(--x);top:var(--y);width:22px;height:28px;padding:0;border:0;background:none;cursor:pointer;pointer-events:auto;opacity:.92;transition:transform .2s}
.fx-huevo:hover{transform:scale(1.15) rotate(-8deg)}
.fx-huevo svg{width:100%;height:100%;display:block}
.fx-huevo.hallado{animation:fx-hallado .7s ease forwards;pointer-events:none}
@keyframes fx-hallado{40%{transform:translateY(-16px) scale(1.4)}100%{transform:translateY(-40px) scale(.2);opacity:0}}
.fx-huevos-n{z-index:4;left:max(20px,calc(50% - 530px));bottom:150px;margin:0;font:700 12.5px var(--f-tit);color:#fff;text-shadow:0 1px 6px rgba(0,0,0,.25)}
.fx-intro-semanasanta{background:radial-gradient(ellipse at 50% 85%,#ffe3a8 0%,#f4b97a 25%,#7fb0d6 60%,#3f78ad 100%)}
.fx-intro-semanasanta .fx-intro-t{text-shadow:0 6px 30px rgba(120,60,0,.35)}
body.fx-semanasanta .barra::before{background:linear-gradient(90deg,#5f8fa6,#c9a978,#5f8fa6)}
.fx-semanasanta.fx-login .fx-velas{right:44px;bottom:60px}

/* =============================================================== celular */
@media (max-width:760px){
  .smil{top:12px;bottom:auto;right:12px}.smil .smil-sello{width:50px}.smil-chip{display:none}
  .hero-sub{max-width:calc(100% - 60px)}
  body[class*="hw-e"] .hero .smil{right:auto;left:14px;bottom:72px;top:auto}
  .smil-dorso{right:calc(100% + 8px);top:0;width:230px}
  .fx-chip{top:auto;bottom:74px;right:12px;font-size:11.5px}
  body.fx-patrias .fx-chip{display:none}body.fx-anionuevo .fx-chip{display:none}body.fx-carnaval .fx-chip{top:12px;bottom:auto}
  .fx-antifaz{width:90px;top:auto;bottom:120px;right:12px}.fx-velas{transform:scale(.8);transform-origin:100% 100%}
  .fx-palma{width:150px;height:150px}
  body.fx-patrias.pag-panel .hero-in,body.fx-patrias.pag-panel:is(.fx-e3,.fx-e4,.fx-e5) .hero-in{padding-bottom:180px}
  .fx-hitos{display:none}.fx-bandera-p{display:none}
  .fx-galope{bottom:62px;height:72px}.fx-jinete{width:88px!important;height:72px}
  .fx-viva{bottom:auto;top:12px;right:12px}
  body.fx-navidad.pag-panel .hero-in{padding-bottom:300px}
  .fx-arbol{height:230px;right:10px;bottom:118px}
  .fx-caja{left:12px;right:auto;bottom:74px;padding:8px 10px}.fx-pieza{width:30px;height:30px}.fx-caja-items{gap:4px}
  body.fx-navidad.pag-panel .fx-chip{right:12px;bottom:auto;top:12px}
  body.fx-anionuevo.pag-panel .hero-in{padding-bottom:290px}
  .fx-anio{font-size:36px;top:auto;bottom:250px;right:auto;left:16px}.fx-anionuevo.e5 .fx-anio{font-size:52px}
  .fx-sobre{left:12px;bottom:110px;width:190px;height:100px}.fx-sobre-tapa{height:58px}.fx-sobre-sello{top:38px}.fx-sobre-carta{height:84px}.fx-sobre-carta b{font-size:12.5px}
  .fx-brindis{left:auto;right:10px;bottom:80px}.fx-copas{width:110px;height:80px}.fx-copa{width:30px;height:70px}
  .fx-serpentinas{width:260px}
  .fx-cuenta{width:170px;height:170px}.fx-cuenta b{font-size:64px}
}
@media (prefers-reduced-motion:reduce){
  .fx *,.smil *,.fx-intro *{animation-duration:.01s!important;animation-iteration-count:1!important}
  .fx-jinete{display:none}
}
