/**
 * ltf-site.css v2.1.0 — La Teva Festa · hoja única (antes 6 archivos: global, navigation, components,
 * immersive-scroll, carousel, responsive — mismo orden y mismas reglas; cambios de rendimiento marcados «v2.1»).
 * El contenido se edita en Elementor; aquí sólo vive la estructura y el movimiento.
 */
/* global */
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:300 800;font-display:swap;src:url('../fonts/bricolage-grotesque-normal-300-800-latin-ext.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Bricolage Grotesque';font-style:normal;font-weight:300 800;font-display:swap;src:url('../fonts/bricolage-grotesque-normal-300-800-latin.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/instrument-serif-italic-400-latin.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Instrument Serif';font-style:italic;font-weight:400;font-display:swap;src:url('../fonts/instrument-serif-italic-400-latin-ext.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/instrument-serif-normal-400-latin.woff2') format('woff2');unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:'Instrument Serif';font-style:normal;font-weight:400;font-display:swap;src:url('../fonts/instrument-serif-normal-400-all.woff2') format('woff2');unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
:root{--ltf-ink:#1D1916;--ltf-paper:#F5EFE6;--ltf-pink:#F25C8E;--ltf-sun:#F6C445;--etr-cream:#F3E3CF;--etr-apricot:#E9A06B;--etr-cocoa:#4A2E22;--sme-night:#16130F;--sme-gold:#C9A45C;--sme-champagne:#EFE3C8;--m:1;--gp:0;--ltf-header-h:76px}
html.ltf-reduced{--m:0}
body{-webkit-font-smoothing:antialiased;overflow-x:clip}
:focus-visible{outline:2px solid var(--ltf-pink);outline-offset:3px}
.ltf-eyebrow .elementor-heading-title{margin:0}
.ltf-pending{}
body.ltf-show-pending .ltf-pending{outline:2px dashed var(--ltf-sun);outline-offset:4px}
/* navigation */
.elementor-location-header{position:fixed;top:0;left:0;right:0;z-index:60}
body.admin-bar .elementor-location-header{top:32px}
@media (max-width:782px){body.admin-bar .elementor-location-header{top:46px}}
.ltf-header{backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 1px 0 rgba(0,0,0,.08);transition:box-shadow .3s}
html.ltf-scrolled .ltf-header{box-shadow:0 8px 30px rgba(0,0,0,.08)}
.ltf-brand .elementor-heading-title{white-space:nowrap}
.ltf-brand .elementor-heading-title::before{content:"";display:inline-block;width:33px;height:11px;margin-right:10px;vertical-align:middle;background:radial-gradient(circle at 5.5px 50%,var(--ltf-pink) 5.5px,transparent 6px),radial-gradient(circle at 16.5px 50%,var(--etr-apricot) 5.5px,transparent 6px),radial-gradient(circle at 27.5px 50%,var(--sme-night) 5.5px,transparent 6px)}
.ltf-nav .elementor-nav-menu a{white-space:nowrap;border-radius:999px;transition:background .25s}
.ltf-nav .elementor-nav-menu a:hover,.ltf-nav .elementor-nav-menu a.elementor-item-active{background:rgba(127,127,127,.18)}
.ltf-brand-logo img{max-height:52px;width:auto}
.ltf-header--ltf .ltf-brand-logo img{background:#FBF7F1;border-radius:999px;padding:4px 12px}
.ltf-switcher{justify-content:flex-end;flex-wrap:nowrap}
.ltf-switcher__logo img{width:40px;height:40px;object-fit:contain;border-radius:50%;background:#FBF7F1;padding:3px;transition:transform .2s}
.ltf-switcher__logo img:hover{transform:scale(1.08)}
.ltf-progress-wrap{position:absolute!important;left:0;right:0;bottom:-1px;height:3px;margin:0!important;pointer-events:none}
.ltf-progress{height:3px;background:var(--ltf-pink);transform-origin:0 50%;transform:scaleX(0)}
.ltf-header--etr .ltf-progress{background:var(--etr-apricot)}.ltf-header--sme .ltf-progress{background:var(--sme-gold)}
.ltf-wa-float{position:fixed!important;right:20px;bottom:20px;z-index:55;width:auto!important}
.ltf-wa-float .elementor-button{border-radius:999px;min-height:56px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
@media (hover:none) and (pointer:coarse){.ltf-header{-webkit-backdrop-filter:none;backdrop-filter:none}}
/* components */
.ltf-btn .elementor-button{transition:transform .25s,background-color .25s,color .25s;min-height:48px;display:inline-flex;align-items:center}
.ltf-btn .elementor-button:hover{transform:translateY(-2px)}
.ltf-chip .elementor-button{min-height:46px}
.ltf-chip.is-on .elementor-button{background:var(--ltf-ink)!important;color:var(--ltf-paper)!important}
.ltf-chip--venue.is-on.ltf-v-1 .elementor-button{background:var(--ltf-pink)!important;color:var(--ltf-ink)!important}
.ltf-chip--venue.is-on.ltf-v-2 .elementor-button{background:var(--etr-apricot)!important;color:var(--etr-cocoa)!important}
.ltf-chip--svc.is-on .elementor-button{background:var(--sme-night)!important;color:var(--sme-champagne)!important}
.ltf-composer__msg p{font-family:'Instrument Serif',serif;font-size:clamp(22px,2.2vw,30px);line-height:1.25;margin:0}
.ltf-chips .elementor-icon-list-items{display:flex;flex-wrap:wrap;gap:8px}
.ltf-chips .elementor-icon-list-item{border:1.5px solid currentColor;border-radius:999px;padding:7px 13px!important;margin:0!important}
.ltf-chips .elementor-icon-list-item::after{display:none!important}
.ltf-numbered .elementor-icon-list-items{counter-reset:ltf}
.ltf-numbered .elementor-icon-list-item{counter-increment:ltf;border-top:1.5px solid var(--ltf-ink);padding:16px 0!important}
.ltf-numbered .elementor-icon-list-item::before{content:counter(ltf,decimal-leading-zero);font-weight:800;color:#B8215A;margin-right:16px}
.ltf-list .elementor-icon-list-item{padding:6px 0!important}
.ltf-card{border-radius:24px;overflow:hidden}
.ltf-arch-top{border-radius:999px 999px 24px 24px!important}
.ltf-card__img img{border-radius:14px;max-height:220px;object-fit:cover;object-position:top;width:100%;cursor:zoom-in}
.ltf-cover,.ltf-cover .elementor-widget-container{height:100%}
.ltf-cover img{width:100%;height:100%;object-fit:cover;aspect-ratio:5/4}
.ltf-shape-0 img{border-radius:28px}.ltf-shape-1 img{border-radius:999px 999px 28px 28px}.ltf-shape-2 img{border-radius:28px 140px 28px 28px}
.ltf-stagger>.elementor-widget-image{flex:1 1 220px}
.ltf-stagger img{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:18px}
.ltf-stagger>.elementor-widget-image:nth-child(even){transform:translateY(40px)}
.ltf-prices .elementor-price-list-item{padding:9px 0;border-top:1px solid rgba(127,127,127,.35)}
.ltf-prices .elementor-price-list-separator{border-bottom-style:none}
.ltf-faq .elementor-tab-title{font-weight:700;font-size:18px;padding:18px 0!important;border-top:1.5px solid currentColor}
.ltf-faq .elementor-accordion-item{border:0!important}
.ltf-map iframe{border-radius:22px;filter:saturate(.85)}
.etr-faq-map .ltf-map iframe{border-radius:999px 999px 24px 24px}
.ltf-video,.ltf-video .elementor-wrapper{border-radius:24px;overflow:hidden}
.ltf-gallery .elementor-gallery-title{border:1.5px solid var(--ltf-ink);border-radius:999px;padding:10px 18px;margin:0 8px 8px 0}
.ltf-gallery .elementor-gallery-title.elementor-item-active{background:var(--ltf-ink);color:var(--ltf-paper)}
.ltf-mosaic{display:grid!important;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:clamp(120px,16vw,240px);gap:clamp(6px,1vw,14px)}
.ltf-mosaic>*{margin:0!important;width:auto!important;min-width:0}
.ltf-mosaic img{width:100%;height:100%;object-fit:cover;border-radius:18px}
.ltf-mosaic .elementor-widget-container{height:100%}
.ltf-mosaic__a{grid-column:span 5;grid-row:span 2}.ltf-mosaic__b{grid-column:span 3}.ltf-mosaic__c{grid-column:span 4}.ltf-mosaic__cta{grid-column:span 7;grid-row:span 2;border-radius:18px}.ltf-mosaic__d{grid-column:span 5}
.ltf-legal-note{background:var(--ltf-sun);border-radius:14px;padding:14px 18px}
.ltf-stats .elementor-heading-title{line-height:1}
/* immersive-scroll */
html.ltf-js .ltf-scene{position:relative}
html.ltf-js .ltf-stage{position:sticky!important;top:0;height:100vh;height:100svh;overflow:hidden;padding:0!important}
html.ltf-js .ltf-stage>*{position:absolute!important;margin:0!important}
.ltf-photo,.ltf-photo .elementor-widget,.ltf-photo .elementor-widget-container{width:100%;height:100%}
.ltf-photo img{width:100%;height:100%;object-fit:cover}
html.ltf-js .ltf-photo{inset:0;width:auto!important}
html.ltf-js .ltf-scene--apertura .ltf-photo{clip-path:inset(calc(var(--a,0)*11%) calc(var(--a,0)*46%) calc(var(--a,0)*9%) calc(var(--a,0)*5%) round calc(var(--a,0)*28px))}
html.ltf-js .ltf-scene--apertura .ltf-photo img{transform:scale(calc(1.06 + var(--a,0)*.2*var(--m)));transform-origin:40% 55%}
.ltf-scene--apertura .ltf-photo::after{content:"";position:absolute;inset:auto 0 0 0;height:62%;background:linear-gradient(to top,rgba(20,14,10,.72),rgba(20,14,10,0));opacity:calc(1 - var(--a,0)*1.4);pointer-events:none}
html.ltf-js .ltf-hero-copy{left:clamp(18px,5vw,72px);right:clamp(18px,5vw,72px);bottom:clamp(120px,19vh,190px);opacity:calc(1 - var(--a,0)*2.6);transform:translateY(calc(var(--a,0)*-90px*var(--m)));width:auto!important}
.ltf-hero-copy h1{max-width:12ch;text-wrap:balance}
html.ltf-js .ltf-doors{left:clamp(18px,5vw,72px);right:clamp(18px,5vw,72px);bottom:clamp(20px,4vh,40px);opacity:calc(1 - var(--a,0)*3.2);width:auto!important;align-items:center}
.ltf-door img{height:56px;width:auto;background:#FBF7F1;border-radius:999px;padding:4px 14px;transition:transform .25s}
.ltf-door img:hover{transform:translateY(-3px)}
.ltf-scroll-cue{margin-left:auto!important}
html.ltf-js .ltf-panel{left:57%;top:14%;width:38%!important;opacity:var(--b,0);transform:translateY(calc((1 - var(--b,0))*50px*var(--m)))}
html.ltf-js .ltf-float{left:30%;bottom:3%;width:clamp(110px,15vw,230px)!important;opacity:var(--c,0);transform:translateY(calc((1 - var(--c,0))*140px*var(--m))) rotate(-3deg)}
.ltf-float img{aspect-ratio:4/5;object-fit:cover;border-radius:14px;box-shadow:0 20px 50px rgba(0,0,0,.25)}
.ltf-scene--apertura,.ltf-scene--raco>.ltf-stage{background:var(--ltf-pink)}
html.ltf-js .ltf-whisper{inset:0;display:flex;align-items:center;justify-content:center;text-align:center;opacity:calc(1 - var(--a,0)*2.4)}
html.ltf-js .ltf-reveal{inset:0;width:auto!important;clip-path:circle(calc(var(--a,0)*150%) at 70% 60%)}
html.ltf-js .ltf-reveal__copy{opacity:var(--b,0);transform:translateY(calc((1 - var(--b,0))*40px*var(--m)))}
html.ltf-js .ltf-reveal__copy .ltf-stats,html.ltf-js .ltf-reveal__copy .ltf-btn{opacity:var(--c,0)}
.ltf-arch{flex:1 1 300px;max-width:560px;height:70vh;border-radius:999px 999px 26px 26px;overflow:hidden}
.ltf-arch .elementor-widget,.ltf-arch .elementor-widget-container{height:100%}
.ltf-arch img{width:100%;height:100%;object-fit:cover;transform:scale(calc(1.18 - var(--a,0)*.18*var(--m)))}
.ltf-arch--page{height:auto;aspect-ratio:3/4}
.ltf-arch--page img{transform:none}
html.ltf-js .ltf-scene--magic>.ltf-stage{background:var(--etr-cream)}
html.ltf-js .ltf-stage>.ltf-night{inset:0;background:var(--sme-night);opacity:var(--a,0);pointer-events:none}
.ltf-collage img{width:100%;height:100%;object-fit:cover;border-radius:12px}
html.ltf-js .ltf-collage{opacity:var(--a,0)}
html.ltf-js .ltf-depth-1{left:4%;top:13%;width:clamp(120px,19vw,300px)!important;aspect-ratio:3/4;transform:translateY(calc((.5 - var(--p,0))*260px*var(--m)))}
html.ltf-js .ltf-depth-2{right:5%;top:10%;width:clamp(110px,15vw,240px)!important;aspect-ratio:1;transform:translateY(calc((.5 - var(--p,0))*420px*var(--m)))}
.ltf-depth-2 img{border-radius:50%}
html.ltf-js .ltf-depth-3{left:14%;bottom:8%;width:clamp(120px,14vw,220px)!important;aspect-ratio:1;opacity:var(--b,0);transform:translateY(calc((.6 - var(--p,0))*520px*var(--m)))}
html.ltf-js .ltf-depth-4{right:12%;bottom:10%;width:clamp(140px,20vw,320px)!important;aspect-ratio:4/3;opacity:var(--b,0);transform:translateY(calc((.6 - var(--p,0))*300px*var(--m)))}
html.ltf-js .ltf-depth-5{left:44%;top:6%;width:clamp(80px,9vw,140px)!important;aspect-ratio:3/4;opacity:var(--b,0);transform:translateY(calc((.5 - var(--p,0))*600px*var(--m)))}
.ltf-depth-5 img{border-radius:999px 999px 10px 10px}
html.ltf-js .ltf-magic-copy{inset:0;width:auto!important;justify-content:center;text-align:center;padding:0 clamp(18px,8vw,120px)!important;pointer-events:none}
.ltf-magic-copy .elementor-button{pointer-events:auto}
html.ltf-js .ltf-scene--magic .ltf-magic-copy>*{opacity:var(--a,0)}
html.ltf-js .ltf-scene--magic .ltf-magic-copy>.elementor-widget-text-editor{opacity:var(--b,0)}
html.ltf-js .ltf-scene--magic .ltf-magic-copy>.ltf-btn{opacity:var(--c,0)}
html.ltf-js .ltf-marquee{left:0;bottom:2%;white-space:nowrap;opacity:calc(var(--a,0)*.35);transform:translateX(calc(10% - var(--p,0)*55%))}
.ltf-marquee .elementor-heading-title{white-space:nowrap;font-style:italic}
html.ltf-js .ltf-photo--page{inset:clamp(80px,12vh,110px) clamp(10px,3vw,40px) clamp(10px,3vw,40px) auto!important;width:calc(56% - var(--a,0)*6%)!important;border-radius:28px;overflow:hidden}
html.ltf-js .ltf-photo--page img{transform:scale(calc(1.15 - var(--a,0)*.15))}
html.ltf-js .ltf-page-title{left:clamp(18px,5vw,72px);bottom:clamp(28px,6vh,64px);max-width:min(640px,90%);transform:translateY(calc(var(--a,0)*-40px*var(--m)))}
.ltf-scene--page-hero>.ltf-stage{background:var(--ltf-pink)}
.ltf-scene--page-magic>.ltf-stage{background:var(--sme-night)}
html.ltf-js .ltf-photo--dim{opacity:calc(.55 - var(--a,0)*.25)}
html.ltf-js .ltf-photo--dim img{transform:scale(calc(1.1 + var(--a,0)*.15*var(--m)))}
html.ltf-js .ltf-reveal-up:not(.is-in)>*{opacity:0;transform:translateY(40px)}
html.ltf-js .ltf-reveal-up>*{transition:opacity .8s ease,transform .8s ease}
.elementor-editor-active .ltf-scene{min-height:0!important}
.elementor-editor-active .ltf-stage{position:relative!important;height:auto!important;padding:40px!important}
.elementor-editor-active .ltf-stage>*{position:relative!important;inset:auto!important;opacity:1!important;transform:none!important;clip-path:none!important;width:100%!important}
html.ltf-reduced .ltf-reveal-up>*{transition:none}
/* v2.1 · Capas GPU sólo mientras la escena está cerca de la pantalla (clase is-live, la pone el motor) */
html.ltf-js .ltf-scene.is-live .ltf-photo img,html.ltf-js .ltf-scene.is-live .ltf-arch img,html.ltf-js .ltf-scene.is-live .ltf-collage,html.ltf-js .ltf-scene.is-live .ltf-panel,html.ltf-js .ltf-scene.is-live .ltf-hero-copy,html.ltf-js .ltf-scene.is-live .ltf-float,html.ltf-js .ltf-scene.is-live .ltf-marquee,html.ltf-js .ltf-scene.is-live .ltf-reveal__copy,html.ltf-js .ltf-scene.is-live .ltf-page-title,html.ltf-js .ltf-scene.is-live .ltf-night{will-change:transform,opacity}
/* v2.1 · Lo que ya es transparente no captura clics ni foco (no cambia lo que se ve) */
html.ltf-js .ltf-scene--apertura.is-a .ltf-hero-copy,html.ltf-js .ltf-scene--apertura.is-a .ltf-doors{visibility:hidden}
html.ltf-js .ltf-scene:not(.is-b) .ltf-panel{visibility:hidden}
html.ltf-js .ltf-scene--magic:not(.is-c) .ltf-magic-copy>.ltf-btn,html.ltf-js .ltf-scene--raco:not(.is-c) .ltf-reveal__copy .ltf-btn{visibility:hidden}
/* carousel */
.ltf-carousel{position:relative}
.ltf-carousel--home{--w:62vw;color:#F5EFE6}
.ltf-carousel--gal{--w:54vw;color:#1D1916}
.ltf-carousel__head em{font-family:'Instrument Serif',serif;font-style:italic;font-weight:400}
.ltf-carousel--home .ltf-carousel__head em{color:#F6C445}
.ltf-carousel__track{flex-direction:row!important;flex-wrap:wrap!important;gap:12px!important;padding:0 clamp(18px,5vw,72px)!important}
.ltf-carousel__track>.ltf-slide{width:calc(33.333% - 8px)!important;max-width:none!important}
.ltf-carousel__track .ltf-slide img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:16px}
.ltf-carousel__track>.ltf-carousel__set{width:100%!important}
.ltf-carousel__track .gallery img{border-radius:12px;aspect-ratio:1;object-fit:cover}
.ltf-carousel.is-enhanced .ltf-carousel__stage{position:sticky!important;top:0;height:100vh;height:100svh;overflow:hidden;display:flex!important;flex-direction:column!important;justify-content:center;gap:clamp(18px,3.5vh,40px)!important;padding:clamp(84px,11vh,110px) 0 clamp(18px,4vh,40px)!important;box-sizing:border-box}
.ltf-carousel--gal.is-enhanced .ltf-carousel__stage{justify-content:flex-start;gap:clamp(14px,3vh,30px)!important;padding-bottom:clamp(16px,3.5vh,36px)!important}
.ltf-carousel.is-enhanced .ltf-carousel__track,html.ltf-js .ltf-carousel:not(.ltf-cx-off) .ltf-carousel__track{display:none!important}
.ltf-carousel__head{flex-direction:row!important;flex-wrap:wrap!important;justify-content:space-between!important;align-items:flex-end!important;gap:16px 32px!important;padding:0 clamp(18px,5vw,72px)!important}
.ltf-carousel__head .elementor-heading-title{text-wrap:balance}
.ltf-cx__viewport{position:relative;flex:1 1 auto;min-height:0}
.ltf-cx__rail{position:absolute;top:0;bottom:0;left:0;display:flex;gap:2vw;padding:0 calc(50vw - var(--w) / 2);will-change:transform}
.ltf-cx__slide{margin:0;flex:none;width:var(--w);height:100%;position:relative;border-radius:clamp(16px,2vw,28px);overflow:hidden;background:#E9E1D5;transition:transform .15s linear,opacity .15s linear}
.ltf-cx__media{position:absolute;inset:-6% -10%}
.ltf-cx__media img{width:100%!important;height:100%!important;max-width:none!important;object-fit:cover;display:block;border-radius:0}
.ltf-cx__zoom{position:absolute;top:12px;right:12px;width:46px;height:46px;border-radius:50%;border:0;background:rgba(245,239,230,.94);color:#1D1916;font-size:18px;font-weight:700;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.ltf-cx__zoom:hover{background:#F5EFE6}
.ltf-cx__zoom:focus-visible,.ltf-cx__arrow:focus-visible,.ltf-cx__chip:focus-visible{outline:2px solid #F6C445;outline-offset:3px}
.ltf-cx__slide figcaption{position:absolute;left:clamp(12px,2vw,24px);bottom:clamp(12px,2vw,24px);right:70px;display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;pointer-events:none;margin:0}
.ltf-cx__tag{border-radius:999px;padding:7px 13px;font-size:13px;font-weight:800;line-height:1.2}
.ltf-cx__cap{background:rgba(245,239,230,.94);color:#1D1916;border-radius:999px;padding:7px 13px;font-size:14px;font-weight:600;line-height:1.2}
.ltf-cx__bar{display:flex;align-items:center;gap:14px;padding:0 clamp(18px,5vw,72px)}
.ltf-cx__arrow{width:48px;height:48px;flex:none;border-radius:50%;border:1.5px solid currentColor;background:transparent;color:inherit;font-size:18px;line-height:1;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center}
.ltf-cx__arrow:hover{background:currentColor}
.ltf-carousel--home .ltf-cx__arrow:hover{color:#F5EFE6;background:rgba(245,239,230,.14)}
.ltf-carousel--gal .ltf-cx__arrow:hover{background:rgba(29,25,22,.08)}
.ltf-cx__progress{flex:1;height:2px;border-radius:2px;overflow:hidden;background:rgba(127,120,112,.3)}
.ltf-cx__fill{height:100%;background:#F25C8E;transform-origin:0 50%;transform:scaleX(0)}
.ltf-cx__count{font-size:13px;font-weight:700;min-width:7ch;text-align:right;font-variant-numeric:tabular-nums}
.ltf-cx__filters{display:flex;flex-wrap:wrap;gap:8px}
.ltf-cx__chip{border:1.5px solid #1D1916;border-radius:999px;padding:11px 18px;min-height:44px;font-family:inherit;font-size:15px;font-weight:700;line-height:1;background:transparent;color:#1D1916;cursor:pointer}
.ltf-cx__chip[aria-selected="true"]{background:#1D1916;color:#F5EFE6}
.ltf-lb{position:fixed;inset:0;z-index:99999;background:rgba(20,16,14,.94);display:none;align-items:center;justify-content:center;padding:clamp(14px,4vw,60px)}
.ltf-lb.is-open{display:flex}
.ltf-lb img{max-width:min(1200px,100%);max-height:80vh;width:auto;height:auto;object-fit:contain;border-radius:16px}
.ltf-lb__close{position:absolute;top:18px;right:18px;width:48px;height:48px;border-radius:50%;border:1px solid rgba(245,239,230,.4);background:transparent;color:#F5EFE6;font-size:22px;line-height:1;cursor:pointer;padding:0}
.ltf-lb-open{overflow:hidden}
@media (max-width:767px){
  .ltf-carousel--home{--w:78vw}
  .ltf-carousel--gal{--w:80vw}
  .ltf-carousel__track>.ltf-slide{width:calc(50% - 6px)!important}
  .ltf-cx__cap{font-size:13px}
  .ltf-carousel__head{gap:12px 20px!important}
}
@media (prefers-reduced-motion:reduce){
  .ltf-cx__slide{transition:none}
}
.elementor-editor-active .ltf-carousel__stage{position:relative!important;height:auto!important}
/* responsive */
@media (max-width:1100px){.ltf-switcher__logo{display:none}}
@media (max-width:1024px){
  html.ltf-js .ltf-panel{left:6%;width:88%!important;top:auto;bottom:6%}
  html.ltf-js .ltf-scene--apertura .ltf-photo{clip-path:inset(calc(var(--a,0)*9%) calc(var(--a,0)*5%) calc(var(--a,0)*50%) calc(var(--a,0)*5%) round calc(var(--a,0)*24px))}
  html.ltf-js .ltf-float{display:none}
  html.ltf-js .ltf-photo--page{width:auto!important;left:clamp(10px,3vw,40px)!important;bottom:45%!important}
  .ltf-mosaic{grid-template-columns:repeat(6,minmax(0,1fr))}
  .ltf-mosaic__a,.ltf-mosaic__cta{grid-column:span 6}.ltf-mosaic__b,.ltf-mosaic__c,.ltf-mosaic__d{grid-column:span 3}
}
@media (max-width:767px){
  :root{--ltf-header-h:64px}
  html.ltf-js .ltf-hero-copy{bottom:clamp(140px,24vh,200px)}
  .ltf-door img{height:46px}
  .ltf-scroll-cue{display:none}
  html.ltf-js .ltf-reveal{clip-path:circle(calc(var(--a,0)*150%) at 50% 40%)}
  .ltf-arch{height:34vh;flex-basis:auto;width:80%!important;margin:0 auto}
  html.ltf-js .ltf-depth-5{display:none}
  html.ltf-js .ltf-depth-1{width:34vw!important}html.ltf-js .ltf-depth-2{width:28vw!important}html.ltf-js .ltf-depth-3{width:28vw!important}html.ltf-js .ltf-depth-4{width:36vw!important}
  .ltf-stagger>.elementor-widget-image:nth-child(even){transform:none}
  .ltf-mosaic{grid-auto-rows:150px}
  .ltf-mosaic__cta{grid-row:span 3}
  .ltf-wa-float{right:14px;bottom:14px}
}
