@font-face{font-family:Marcellus;src:url('fonts/Marcellus-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Marcellus SC';src:url('fonts/MarcellusSC-Regular.ttf') format('truetype');font-weight:400;font-style:normal;font-display:swap}
body.home{background-image:url('images/map.webp')!important}
.home .elementor-element-92f2dde,.elementor-1763 .elementor-element-24efca9,.elementor-1763 .elementor-element-8059b5c{background-image:url('images/texture.webp')!important}
.elementor-1763 .elementor-element-49ee04e>.elementor-background-overlay,.jumbo-background-color{background-image:url('images/texture.webp')!important}
#wpfront-scroll-top-container,.jumbo-menu-button{border:0!important}
#wpfront-scroll-top-container{background-image:url('images/flecha-arriba.svg?v=1.15.0')!important}
@media(max-width:767px){
 .elementor-1763 .elementor-element-24efca9>.elementor-container{display:block!important;min-height:460px!important}
 .elementor-1763 .elementor-element-24efca9 .elementor-element-3e48a80{display:none!important}
 .elementor-1763 .elementor-element-24efca9 .elementor-element-2532547{width:100%!important;min-width:0!important;max-width:100%;min-height:460px}
 .elementor-1763 .elementor-element-2532547>.elementor-widget-wrap{position:relative;display:flex;align-content:center;justify-content:center;padding:50px 42px!important;min-height:460px}
 .elementor-1763 .elementor-element-2532547 .elementor-widget-spacer{display:none!important}
 .elementor-1763 .elementor-element-a00cd37{display:block!important;width:100%!important;text-align:center}
 .elementor-1763 .elementor-element-a00cd37 img{width:260px!important;max-width:100%!important;height:auto!important}
 .elementor-1763 .elementor-element-abfd186{position:absolute!important;top:24px!important;right:4px!important;width:36px!important}
 .elementor-1763 .elementor-element-6cab96b{position:absolute!important;right:4px!important;top:155px!important;width:36px!important}
 .elementor-1763 .elementor-element-6cab96b .elementor-social-icons-wrapper{display:flex;flex-direction:column;gap:8px}
 .elementor-1763 .elementor-element-6cab96b .elementor-social-icon{width:32px!important;height:32px!important;font-size:14px!important}
 .elementor-1763 .elementor-element-8059b5c>.elementor-container{display:flex!important;flex-direction:column;align-items:center;padding:38px 20px!important}
 .elementor-1763 .elementor-element-8059b5c .elementor-element-0c6998a,.elementor-1763 .elementor-element-8059b5c .elementor-element-547abeb{width:100%!important;max-width:100%;min-width:0}
 .elementor-1763 .elementor-element-8059b5c .elementor-element-073eff8,.elementor-1763 .elementor-element-8059b5c .elementor-widget-spacer{display:none!important}
 .elementor-1763 .elementor-element-8059b5c .elementor-widget-wrap{padding:0!important}
 .elementor-1763 .elementor-element-5f48530{text-align:center;margin-bottom:24px!important}
 .elementor-1763 .elementor-element-5f48530 img{width:160px!important;max-width:100%;height:auto}
 .elementor-1763 .elementor-element-1cef966{text-align:center}
 .elementor-1763 .elementor-element-1cef966 h2{font-size:32px!important}
 .elementor-1763 .elementor-element-097424d{text-align:center}
 .elementor-1763 .elementor-element-097424d h2{font-size:17px!important;line-height:1.6!important}
}
@media(max-width:767px){.elementor-1763 .elementor-element-a00cd37>.elementor-widget-container{margin:0!important;width:100%!important}}
@media(max-width:767px){
.elementor-1763 .elementor-element-abfd186{top:62px!important;right:0!important}
.elementor-1763 .elementor-element-6cab96b{top:auto!important;bottom:18px!important;right:0!important;width:36px!important}
}
@media(max-width:767px){
.elementor-1763 .elementor-element-abfd186{top:44px!important;right:12px!important}
.elementor-1763 .elementor-element-6cab96b{bottom:10px!important}
}
/* Elementor 3 uses an extra row/column wrapper: preserve the approved layout. */
.efp-public-home .elementor-1763 .elementor-element-92f2dde{display:none!important}
.efp-public-home .elementor-element-59ea115>.elementor-container>.elementor-row{display:contents!important}
.efp-public-home .elementor-element-31d1931 .elementor-widget-wrap,.efp-public-home .elementor-element-c8bc404 .elementor-widget-wrap{display:grid!important;grid-template-rows:repeat(4,minmax(112px,1fr));gap:20px;align-content:start}
.efp-public-home .elementor-element-31d1931 .elementor-widget,.efp-public-home .elementor-element-c8bc404 .elementor-widget{margin:0!important;min-height:112px}
.efp-public-home .elementor-element-2532547 .elementor-widget-wrap{position:relative}
@media(min-width:768px){
.efp-public-home .elementor-element-24efca9>.elementor-container>.elementor-row{width:100%;min-height:clamp(540px,78vh,680px)!important;align-items:stretch!important}
.efp-public-home .elementor-element-2532547>.elementor-column-wrap,.efp-public-home .elementor-element-2532547 .elementor-widget-wrap{width:100%;min-height:clamp(540px,78vh,680px)!important}
}
@media(min-width:1000px){
.efp-public-home .elementor-element-31d1931 .elementor-widget-wrap,.efp-public-home .elementor-element-c8bc404 .elementor-widget-wrap{grid-template-rows:repeat(4,minmax(96px,1fr));gap:18px}
.efp-public-home .elementor-element-31d1931 .elementor-widget,.efp-public-home .elementor-element-c8bc404 .elementor-widget{min-height:96px}
}
@media(max-width:767px){
.efp-public-home .elementor-element-24efca9>.elementor-container>.elementor-row{width:100%;min-height:460px}
.efp-public-home .elementor-element-2532547>.elementor-column-wrap{padding:0!important;width:100%;min-height:460px}
.efp-public-home .elementor-element-2532547 .elementor-widget-wrap{position:relative;display:flex;align-content:center;justify-content:center;padding:50px 42px!important;min-height:460px}
.efp-public-home .elementor-element-8059b5c>.elementor-container>.elementor-row{width:100%;display:flex;flex-direction:column;align-items:center}
.efp-public-home .elementor-element-8059b5c .elementor-column-wrap{padding:0!important}
}
.efp-public-home #loftloader-wrapper{display:none!important}
body.efp-public-home{overflow-y:auto!important}
@media(min-width:768px){
.efp-public-home .elementor-element-3e48a80>.elementor-column-wrap{width:100%;min-height:clamp(540px,78vh,680px)!important}
.efp-public-home .elementor-element-3e48a80 .elementor-widget-wrap{display:flex!important;align-content:center!important;align-items:center!important;min-height:clamp(540px,78vh,680px)!important}
}
/* Anchor the emblem to the complete cover, matching the approved visual centre. */
@media(min-width:768px){
.efp-public-home .elementor-1763 .elementor-element-92f2dde{display:block!important;height:20px!important;min-height:20px!important;overflow:hidden;padding:0!important}
.efp-public-home .elementor-element-92f2dde>.elementor-container{visibility:hidden!important}
.efp-public-home .elementor-element-3e48a80,.efp-public-home .elementor-element-3e48a80>.elementor-column-wrap,.efp-public-home .elementor-element-3e48a80 .elementor-widget-wrap{position:static!important}
.efp-public-home .elementor-element-03de215{position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:calc(100% - 100px)!important;max-width:700px!important;margin:0!important}
.efp-public-home .elementor-element-03de215>.elementor-widget-container{margin:0!important}
}
@media(max-width:767px){
.efp-public-home .elementor-element-2532547,.efp-public-home .elementor-element-2532547>.elementor-column-wrap,.efp-public-home .elementor-element-2532547 .elementor-widget-wrap{position:static!important}
.efp-public-home .elementor-element-a00cd37{position:absolute!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;width:calc(100% - 84px)!important;margin:0!important}
.efp-public-home .elementor-element-abfd186{top:66px!important}
}

/* Legacy Elementor must never leave approved home content permanently hidden. */
.efp-public-home .elementor-1763 .elementor-invisible{visibility:visible!important}

/* The contact texture must cover wide monitors, not stop at its native image width. */
.efp-public-home .elementor-element-6830695>.elementor-background-overlay{background-size:cover!important;background-position:center!important;width:100%!important}
.efp-public-home .elementor-element-6830695>.elementor-container>.elementor-row{min-height:423px;align-items:center}
.efp-public-home .elementor-element-d8ab733{padding:48px 24px!important}
.efp-public-home .elementor-element-d8ab733 .elementor-container,.efp-public-home .elementor-element-d8ab733 .elementor-row{width:100%;min-height:0!important}
.efp-public-home .elementor-element-95ed3ef,.efp-public-home .elementor-element-cd8bf41{display:none!important}
.efp-public-home .elementor-element-d8ab733 .elementor-column:not(.elementor-element-b68eb1f){display:none!important}
.efp-public-home .elementor-element-b68eb1f{width:100%!important}
.efp-public-home .elementor-element-b68eb1f .elementor-column-wrap,.efp-public-home .elementor-element-b68eb1f .elementor-widget-wrap{width:100%;padding:0!important}
.efp-public-home .elementor-element-d8ab733 .elementor-widget-spacer{display:none!important}
.efp-public-home .elementor-element-73e7a9b{margin:0!important}
.efp-public-home .efp-home-logo-window{overflow-x:auto!important;scrollbar-width:none;cursor:grab;touch-action:pan-y}
.efp-public-home .efp-home-logo-window::-webkit-scrollbar{display:none}
.efp-public-home .efp-home-logo-track{display:flex!important;width:max-content!important;transform:none!important;transition:none!important;gap:36px;align-items:center}
.efp-public-home .efp-home-logo-track>.swiper-slide{width:160px!important;flex:0 0 160px!important;margin:0!important}
.efp-public-home .efp-home-logo-track .single-client{height:80px!important;display:flex;align-items:center;justify-content:center;padding:0!important}
.efp-public-home .efp-home-logo-track img{width:auto!important;max-width:140px!important;height:auto!important;max-height:64px!important;object-fit:contain}
@media(max-width:767px){.efp-public-home .elementor-element-d8ab733{padding:28px 18px!important}.efp-public-home .efp-home-logo-track{gap:24px}.efp-public-home .efp-home-logo-track>.swiper-slide{width:130px!important;flex-basis:130px!important}}
@media(max-width:767px){
.efp-public-home .elementor-element-6830695>.elementor-container>.elementor-row{min-height:0!important;width:100%!important;justify-content:center}
.efp-public-home .elementor-element-6830695 .elementor-column:not(.elementor-element-27117d4){display:none!important}
.efp-public-home .elementor-element-27117d4{width:100%!important}
.efp-public-home .elementor-element-27117d4>.elementor-column-wrap{width:100%!important}
.efp-public-home .elementor-element-27117d4 .elementor-widget-wrap{padding:32px 24px!important}
.efp-public-home .elementor-element-6830695>.elementor-container{min-height:0!important}
.efp-public-home .elementor-element-73cf904 h3{font-size:28px!important;line-height:1.3!important}
}
/* Match the cover texture with quieter contrast behind the contact details. */
.efp-public-home .elementor-element-6830695>.elementor-background-overlay{background-image:linear-gradient(rgba(0,0,0,.38),rgba(0,0,0,.38)),url('images/texture.webp')!important;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important;opacity:1!important}
/* Let the cover fill the first screen, leaving only a small glimpse of the map. */
.efp-public-home{--efp-cover-height:calc(100vh - 40px);--efp-cover-height:calc(100svh - 40px)}
body.admin-bar.efp-public-home{--efp-cover-height:calc(100vh - 72px);--efp-cover-height:calc(100svh - 72px)}
.efp-public-home .elementor-element-24efca9>.elementor-container,
.efp-public-home .elementor-element-24efca9>.elementor-container>.elementor-row,
.efp-public-home .elementor-element-3e48a80>.elementor-column-wrap,
.efp-public-home .elementor-element-3e48a80 .elementor-widget-wrap,
.efp-public-home .elementor-element-2532547,
.efp-public-home .elementor-element-2532547>.elementor-column-wrap,
.efp-public-home .elementor-element-2532547 .elementor-widget-wrap{min-height:var(--efp-cover-height)!important}
@media(max-width:767px){
.efp-public-home{--efp-cover-height:calc(100vh - 20px);--efp-cover-height:calc(100svh - 20px)}
body.admin-bar.efp-public-home{--efp-cover-height:calc(100vh - 66px);--efp-cover-height:calc(100svh - 66px)}
}
/* Legacy column wrapper must preserve the portrait's approved vertical centring. */
.efp-public-home .elementor-element-0c6998a>.elementor-column-wrap{width:100%}
.efp-public-home .elementor-element-0c6998a .elementor-widget-wrap{align-content:center!important;align-items:center!important;justify-content:center}
.efp-public-home .elementor-element-5f48530{width:100%;margin:0!important;text-align:center}
/* At wide resolutions keep grain at a fixed fine scale, independent of cover size. */
@media(min-width:1600px){
.efp-public-home .elementor-1763 .elementor-element-24efca9{background-color:#090909!important;background-image:url('images/grano-fino.svg'),radial-gradient(ellipse at 48% 45%,#171717 0%,#090909 75%)!important;background-size:384px 384px,100% 100%!important;background-repeat:repeat,no-repeat!important;background-position:center!important}
}
@media(min-width:1600px){.efp-public-home .elementor-1763 .elementor-element-92f2dde{background-image:none!important;background-color:#090909!important}}
