@font-face{font-family:FMRaleway;src:url(raleway.ttf) format('truetype');font-weight:100 900;font-display:swap}
.fm-banner{position:relative;isolation:isolate;width:100%;height:var(--fm-height,420px);min-height:300px;background:var(--fm-bg,#600044);color:var(--fm-text,#fff);overflow:hidden;font-family:var(--fm-font,FMRaleway),Arial,sans-serif;box-sizing:border-box}.fm-banner *{box-sizing:border-box}.fm-inner{position:relative;max-width:1440px;height:100%;margin:auto}.fm-pattern{position:absolute;right:-4%;top:-10%;width:57%;height:120%;object-fit:cover;opacity:.13;pointer-events:none}.fm-copy{position:absolute;left:5.8%;top:25%;width:49%;z-index:3}.fm-dates{font-size:clamp(14px,1.65vw,22px);font-weight:500;margin-bottom:3px}.fm-heading{display:flex;align-items:center;position:relative}.fm-title{color:var(--fm-accent);font-family:inherit!important;font-weight:900!important;font-size:clamp(60px,12.3vw,176px)!important;line-height:.82!important;letter-spacing:-.065em!important;margin:0!important;white-space:nowrap}.fm-title span{display:inline-block;transform-origin:50% 100%}.fm-subtitle{font-weight:900;font-size:clamp(22px,3.7vw,49px);text-align:right;margin-top:12px;margin-right:17%;line-height:1}.fm-badge{width:22%;flex:none;margin-left:-2%;position:relative;z-index:4;transform:rotate(0deg)}.fm-badge img{display:block;width:100%;height:auto}.fm-badge-edit{aspect-ratio:.78;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#ff0909;border-radius:65% 30% 55% 55%;color:white;line-height:1;font-weight:900;padding:15% 4% 8%;font-size:clamp(10px,1.8vw,24px)}.fm-badge-edit strong{font-size:clamp(25px,4.8vw,65px);letter-spacing:-.05em}.fm-badge-edit small{font-size:.52em}.fm-scene{position:absolute;right:2%;top:7%;width:43%;height:80%;perspective:900px}.fm-object{position:absolute;will-change:auto}.fm-object img{width:100%;height:auto;display:block}.fm-placas{left:8%;top:18%;width:90%;z-index:1}.fm-bidet{left:0%;top:47%;width:22%;z-index:3}.fm-lavatorio{left:47%;top:0%;width:31%;z-index:4}.fm-inodoro{left:28%;top:53%;width:29%;z-index:5}.fm-legal{position:absolute;bottom:12px;left:5%;right:5%;margin:0!important;text-align:center;font-size:clamp(10px,.95vw,13px);line-height:1.45;z-index:6}.fm-link{position:absolute;inset:0;z-index:8}.fm-link:focus-visible{outline:3px solid var(--fm-accent);outline-offset:-6px}
@media(min-width:1440px){.fm-title{font-size:176px!important}}
@media(max-width:767px){.fm-banner{height:var(--fm-mobile,650px);min-height:540px}.fm-copy{left:7%;top:8%;width:86%}.fm-title{font-size:clamp(64px,19vw,142px)!important}.fm-dates{font-size:16px;margin-bottom:12px}.fm-subtitle{font-size:clamp(23px,7vw,44px);margin-right:20%;margin-top:14px}.fm-badge{width:21%;margin-left:1%}.fm-scene{width:88%;height:43%;top:43%;right:6%;max-width:500px}.fm-pattern{width:110%;top:18%;height:95%;opacity:.1}.fm-legal{font-size:11px;bottom:18px;left:7%;right:7%}.fm-badge-edit{font-size:13px}.fm-badge-edit strong{font-size:34px}}
@media(prefers-reduced-motion:reduce){.fm-banner *{animation:none!important;transition:none!important}}
/* 1.0.1: la composición escala con el escenario, no con el viewport. */
.fm-inner{width:100%;max-width:min(1440px,calc(var(--fm-height,420px) * 2.75));container-type:inline-size}
.fm-copy{top:26%;width:49%}
.fm-heading{display:block}
.fm-title{font-size:12.3cqw!important;line-height:1!important}
.fm-dates{font-size:1.65cqw;margin-bottom:0}
.fm-badge{position:absolute;left:82%;top:2%;width:20%;margin:0}
.fm-subtitle{font-size:3.7cqw;margin-top:0;margin-right:14%;line-height:1.12}
.fm-scene{top:10%;height:76%}
.fm-placas{top:18%;width:85%}
.fm-bidet{top:44%;width:21%}
.fm-lavatorio{top:0%;width:28%}
.fm-inodoro{top:51%;width:26%}
.fm-legal{bottom:14px;left:6%;right:6%;font-size:12px;line-height:1.4}
.fm-badge-edit{font-size:1.7cqw}
.fm-badge-edit strong{font-size:4.6cqw}
@media(max-width:767px){
.fm-inner{max-width:500px}
.fm-copy{top:7%;left:7%;width:86%}
.fm-title{font-size:19cqw!important;line-height:1!important}
.fm-dates{font-size:4cqw;margin-bottom:8px}
.fm-badge{left:80%;top:2%;width:20%}
.fm-subtitle{font-size:7cqw;margin-right:17%;margin-top:3px}
.fm-scene{top:40%;height:42%;width:88%;right:6%}
.fm-legal{font-size:11px;bottom:18px;left:7%;right:7%}
.fm-badge-edit{font-size:3cqw}.fm-badge-edit strong{font-size:8cqw}
}
/* 1.0.2: fondo y patrón configurables, aislados de estilos del tema. */
.fm-banner[data-background="gradient"]{background:linear-gradient(var(--fm-gradient-angle,105deg),var(--fm-bg,#600044) 0%,var(--fm-gradient-end,#20001f) 100%)}
.fm-banner>.fm-pattern{display:block!important;visibility:visible!important;position:absolute;z-index:0;right:0;top:0;width:55%;height:100%;max-width:none!important;object-fit:cover;opacity:var(--fm-pattern-opacity,.28)!important;mix-blend-mode:normal;pointer-events:none}
.fm-inner{z-index:1}
@media(max-width:767px){.fm-banner>.fm-pattern{width:100%;height:100%;top:0;right:0}}
/* 1.0.3: un poco más de aire entre oferta y productos. */
@media(min-width:768px){
.fm-copy{left:3.8%}
.fm-badge{left:76%;width:18%}
.fm-subtitle{margin-right:24%;margin-top:5px}
.fm-scene{right:0%;width:40%}
}
/* Protección adicional si una caché antigua aún inyecta placeholders. */
.fm-banner img[data-lazyloaded]:not(.litespeed-loaded){opacity:0!important}
/* Colección 2.0: formatos y slider sin librerías de carrusel. */
.fm-slider{position:relative;isolation:isolate;height:var(--fm-height,420px);width:100%;background:#20001f;overflow:hidden;touch-action:pan-y;font-family:FMRaleway,Arial,sans-serif}
.fm-slides,.fm-slide{height:100%;width:100%}.fm-slide[hidden]{display:none!important}.fm-slide>.fm-banner,.fm-slide>.fm-campaign{height:100%;min-height:0}
.fm-slider-controls{position:absolute;z-index:20;bottom:7px;left:50%;transform:translateX(-50%);display:flex;gap:8px;align-items:center;background:rgba(0,0,0,.65);padding:4px 10px;border-radius:30px;color:#fff}
.fm-slider-controls button{appearance:none;border:0;background:transparent;color:#fff;cursor:pointer;padding:0;width:30px;height:30px;font-size:24px;line-height:1;display:grid;place-items:center;border-radius:50%}.fm-slider-controls button:focus-visible{outline:2px solid #fff;outline-offset:2px}.fm-slider-controls button[data-fm-pause]{font-size:14px}
.fm-dots{display:flex;gap:7px}.fm-dots button{width:18px;height:28px;position:relative}.fm-dots button:after{content:'';width:7px;height:7px;position:absolute;background:#fff;opacity:.4;border-radius:50%}.fm-dots button[aria-current="true"]:after{opacity:1;width:10px;height:10px}
.fm-slider-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.fm-slider .fm-legal,.fm-slider .fm-campaign-legal{bottom:54px}
.fm-campaign{position:relative;isolation:isolate;width:100%;height:var(--fm-height,420px);overflow:hidden;background:linear-gradient(110deg,var(--fc-start,#243b64),var(--fc-end,#725443));color:#fff;font-family:FMRaleway,Arial,sans-serif;container-type:inline-size}
.fm-campaign *{box-sizing:border-box}.fm-finance-layout{width:min(1400px,94%);height:100%;margin:auto;display:grid;grid-template-columns:20% 1fr;gap:3%;align-items:center;padding-bottom:40px}
.fm-finance-house{font-weight:900;font-size:clamp(20px,3cqw,48px);line-height:.98;text-align:center;letter-spacing:-.035em}.fm-finance-house small{display:block;font-size:clamp(8px,.82cqw,13px);line-height:1.4;font-weight:500;letter-spacing:.08em;margin-top:10px}
.fm-finance-card{border-radius:30px;overflow:hidden;box-shadow:0 18px 35px #0002;background:#0005;border:1px solid #ffffff2b}
.fm-finance-brand{position:relative;padding:24px;text-align:center;background:linear-gradient(130deg,#ffffff65,#ffffff10);box-shadow:inset 0 2px 8px #ffffff60}
.fm-finance-brand:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 25%,#ffffff40 50%,transparent 75%);background-size:250% 100%;background-position:100% 0}
.fm-finance-brand h2{font-family:inherit!important;font-weight:900!important;line-height:1.12!important;color:inherit!important;margin:0!important;font-size:clamp(30px,4cqw,65px)!important}.fm-finance-brand img{display:block;max-width:70%;height:75px;object-fit:contain;margin:auto}
.fm-finance-plans{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:30px 20px;gap:0}
.fm-plan{display:flex;gap:8px;align-items:center;justify-content:center;min-width:0;padding:8px 10px;border-right:1px solid #ffffff80}.fm-plan:last-child{border-right:0}.fm-plan strong{font-weight:900;font-size:clamp(30px,4.9cqw,76px);line-height:1;letter-spacing:-.04em;flex-shrink:0}.fm-plan span{font-size:clamp(10px,1.45cqw,22px);font-weight:900;line-height:1.05;max-width:120px;overflow-wrap:anywhere}
.fm-campaign-legal{position:absolute;left:7%;right:7%;bottom:16px;text-align:center;font-size:12px;line-height:1.45;margin:0;z-index:4}
.fm-neon-wrap{display:flex;align-items:center;justify-content:center;height:80%;padding:4%}
.fm-neon-title{font-family:inherit!important;font-size:clamp(35px,8cqw,130px)!important;font-weight:900!important;line-height:1.1!important;color:transparent!important;-webkit-text-stroke:2px #ff5a36;text-shadow:0 0 10px #ff200c99,0 0 35px #ff200c55;margin:0!important;overflow-wrap:anywhere;text-align:center;letter-spacing:.02em}
.fm-art{display:block;width:100%;height:100%}.fm-art img{display:block;width:100%;height:100%;object-fit:contain}
@media(max-width:767px){.fm-slider{height:var(--fm-mobile,650px)}.fm-campaign{height:var(--fm-mobile,650px)}.fm-finance-layout{width:90%;grid-template-columns:1fr;gap:12px;align-content:center;padding-top:12px;padding-bottom:85px}.fm-finance-house{font-size:25px;line-height:1;display:flex;justify-content:center;gap:6px;flex-wrap:wrap}.fm-finance-house br{display:none}.fm-finance-house small{flex-basis:100%;font-size:9px;margin-top:2px}.fm-finance-card{border-radius:23px}.fm-finance-brand{padding:22px 12px}.fm-finance-brand h2{font-size:8cqw!important}.fm-finance-brand img{height:55px;max-width:85%}.fm-finance-plans{grid-template-columns:repeat(2,minmax(0,1fr));padding:15px 10px;gap:6px}.fm-plan{border:0;padding:14px 5px;border-bottom:1px solid #ffffff30;gap:7px}.fm-plan strong{font-size:12cqw}.fm-plan span{font-size:3.4cqw;max-width:80px}.fm-campaign-legal{font-size:11px}.fm-neon-wrap{height:78%;padding:7%}.fm-neon-title{font-size:9.9cqw!important;-webkit-text-stroke:1px #ff5a36}.fm-slider .fm-legal{bottom:54px;font-size:10px}.fm-slider-controls{bottom:8px}}
.fm-finance-brand.fm-brand-logo{padding:0}
.fm-finance-brand.fm-brand-logo img{width:100%;max-width:none;height:115px;object-fit:cover;margin:0}
@media(max-width:767px){.fm-finance-brand.fm-brand-logo img{height:100px}}
/* 2.0.1: navegación discreta con líneas, sin pastilla ni círculos. */
.fm-slider-controls{background:none;padding:0;gap:12px;border-radius:0;bottom:10px;filter:drop-shadow(0 1px 3px #0009)}
.fm-slider-controls button{border-radius:0;width:28px;height:28px;font-size:22px;font-weight:400}
.fm-dots{gap:6px}
.fm-dots button{width:22px;height:28px}
.fm-dots button:after{width:22px;height:2px;border-radius:0;opacity:.35;transition:opacity .2s,transform .2s}
.fm-dots button[aria-current="true"]:after{width:22px;height:2px;opacity:1;transform:scaleY(1.5)}
.fm-slider-controls button[data-fm-pause]{font-size:12px;width:24px}
/* Trazo de tubo luminoso: núcleo claro y halo rojo. */
.fm-format-neon{background:radial-gradient(ellipse at 85% 12%,#4b4b4b55,transparent 40%),radial-gradient(ellipse at 18% 95%,#54545455,transparent 45%),linear-gradient(115deg,#020303,#080808 65%,#161717)}
.fm-neon-title{color:transparent!important;-webkit-text-stroke:1.8px #ffb18c;paint-order:stroke fill;text-shadow:none;filter:drop-shadow(0 0 2px #fff0dd) drop-shadow(0 0 4px #ff3b13) drop-shadow(0 0 11px #ff200c) drop-shadow(0 0 24px #c8140999);font-weight:700!important;letter-spacing:.025em}
.fm-neon-wrap{height:78%;padding:5%}
.fm-format-neon .fm-campaign-legal{font-weight:400;font-size:14px}
@media(max-width:767px){.fm-neon-title{-webkit-text-stroke:1.15px #ffb18c;filter:drop-shadow(0 0 1px #fff0dd) drop-shadow(0 0 3px #ff3b13) drop-shadow(0 0 8px #ff200c) drop-shadow(0 0 16px #c8140999)}.fm-format-neon .fm-campaign-legal{font-size:11px}}
@media(max-width:767px){.fm-title{font-size:var(--fm-title-mobile,22cqw)!important;line-height:.94!important}.fm-subtitle{margin-top:0}.fm-badge{left:80%;top:1%}}
/* 2.0.3: flechas laterales y hover limitado a la línea. */
.fm-slider>.fm-slider-controls{gap:10px}
.fm-slider>[data-fm-prev],.fm-slider>[data-fm-next]{position:absolute;z-index:25;top:50%;transform:translateY(-50%);width:54px;height:90px;border:0!important;background:transparent!important;box-shadow:none!important;color:white;padding:0;font-size:0;cursor:pointer;opacity:0;transition:opacity .22s;filter:drop-shadow(0 1px 4px #0008)}
.fm-slider>[data-fm-prev]{left:15px}.fm-slider>[data-fm-next]{right:15px}
.fm-slider>[data-fm-prev]:after,.fm-slider>[data-fm-next]:after{content:'';position:absolute;top:30px;width:26px;height:26px;border-top:1.5px solid currentColor;border-right:1.5px solid currentColor}
.fm-slider>[data-fm-prev]:after{left:18px;transform:rotate(-135deg)}.fm-slider>[data-fm-next]:after{right:18px;transform:rotate(45deg)}
.fm-slider:hover>[data-fm-prev],.fm-slider:hover>[data-fm-next],.fm-slider:focus-within>[data-fm-prev],.fm-slider:focus-within>[data-fm-next]{opacity:1}
.fm-slider>[data-fm-prev]:focus-visible,.fm-slider>[data-fm-next]:focus-visible{outline:1px solid white;outline-offset:-5px}
.fm-slider .fm-dots button,.fm-slider .fm-dots button:hover,.fm-slider .fm-dots button:focus,.fm-slider .fm-dots button:active{background:transparent!important;box-shadow:none!important;border:0!important}
.fm-slider .fm-dots button:hover:after{background:#ed1c24;opacity:1}
.fm-slider .fm-dots button:focus-visible:after{background:#ed1c24;opacity:1}
@media(hover:none){.fm-slider>[data-fm-prev],.fm-slider>[data-fm-next]{display:none}}
/* 2.0.4: bajada de liquidación y sello de fuego. */
.fm-neon-wrap{flex-direction:column;gap:20px}
.fm-neon-subtitle{display:flex;justify-content:center;align-items:center;gap:9px;text-align:center;color:#fff;font-weight:900;font-size:clamp(20px,3.2cqw,51px);line-height:1.1;max-width:95%}
.fm-neon-subtitle span{overflow-wrap:anywhere}
.fm-neon-flame{width:1em;height:1.25em;flex-shrink:0;display:block}
@media(max-width:767px){.fm-neon-wrap{gap:16px}.fm-neon-subtitle{font-size:5.3cqw;gap:6px;max-width:100%}}
/* 2.0.5: logo institucional como imagen, sin recorte ni deformación. */
.fm-finance-house.fm-house-image{display:flex;align-items:center;justify-content:center}
.fm-finance-house.fm-house-image img{display:block;width:100%;max-width:280px;max-height:160px;height:auto;object-fit:contain}
@media(max-width:767px){.fm-finance-house.fm-house-image img{width:auto;max-width:190px;max-height:80px}}
