html{scroll-behavior:smooth}*,*:before,*:after{box-sizing:border-box}body{overflow-wrap:break-word}img,video{max-width:100%;height:auto}iframe{max-width:100%;border:0}.elementor-invisible{visibility:visible!important}.elementor-element{min-width:0}a:focus-visible,button:focus-visible,[role=button]:focus-visible{outline:3px solid #e3b34d;outline-offset:4px}.elementor-nav-menu--main .menu-item-has-children{position:relative}.elementor-nav-menu--main .menu-item-has-children:hover>.sub-menu,.elementor-nav-menu--main .menu-item-has-children:focus-within>.sub-menu{display:block!important}.elementor-nav-menu--dropdown.elementor-nav-menu__container{display:none!important}.elementor-nav-menu--dropdown.elementor-nav-menu__container.local-open{display:block!important;max-height:80vh!important;overflow:auto;transform:none!important;top:100%;left:0;width:100%;position:absolute;z-index:1000}.local-open a{white-space:normal!important}.local-open .sub-menu{display:block!important;position:static!important}.elementor-menu-toggle{min-width:44px;min-height:44px}.elementor-widget-nav-menu{position:relative}[data-slides]{transition:background-image .5s ease}.elementor-widget-eael-sticky-video iframe{width:100%;aspect-ratio:16/9;height:auto}.elementor-search-form__container.local-search{opacity:1!important;visibility:visible!important;display:flex!important}.local-results{position:fixed;inset:20% 5% 10%;overflow:auto;background:#172024;color:white;z-index:10000;padding:2rem}.local-results a{display:block;padding:1rem;color:#e3b34d}.local-lightbox{border:0;background:#111;padding:1rem;max-width:95vw;max-height:95vh}.local-lightbox::backdrop{background:#000d}.local-lightbox img{max-height:80vh;width:auto}.local-lightbox button{display:block;margin-left:auto;color:white;background:#222}.elementor-gallery__container{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;height:auto!important}.e-gallery-item{position:relative!important;top:auto!important;left:auto!important;width:auto!important;aspect-ratio:4/3}.e-gallery-image{background-size:cover;background-position:center;height:100%}.elementor-image-carousel-wrapper .swiper-wrapper{display:flex;overflow:auto;scroll-snap-type:x mandatory}.elementor-image-carousel-wrapper .swiper-slide{flex:0 0 33.333%;scroll-snap-align:start}.local-form-message{padding:1rem;border:1px solid currentColor}
@media(max-width:767px){.elementor-section .elementor-container{flex-wrap:wrap}.elementor-section .elementor-column{max-width:100%}.elementor-widget-heading h1{font-size:clamp(25px,7vw,38px)!important;line-height:1.2!important}.elementor-widget-heading h2{font-size:clamp(22px,6vw,32px)!important}.elementor-gallery__container{grid-template-columns:repeat(2,minmax(0,1fr))}.elementor-image-carousel-wrapper .swiper-slide{flex-basis:85%}.elementor-field-group{min-width:0}iframe{width:100%}.elementor-nav-menu--dropdown a{min-height:44px}.elementor-widget-text-editor{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.elementor-nav-menu--dropdown.elementor-nav-menu__container.local-open{position:fixed!important;left:0!important;right:0!important;width:100vw!important;top:var(--menu-top,85px)!important;max-height:calc(100dvh - var(--menu-top,85px))!important}.local-open .elementor-nav-menu{width:100%}.local-open a{justify-content:flex-start!important}.elementor-counter-number{font-variant-numeric:tabular-nums}
.local-extra[hidden]{display:none!important}.local-extra img{width:100%;aspect-ratio:3/2;object-fit:cover}.elementor-widget-video iframe{width:100%;height:auto;aspect-ratio:16/9}
.elementor-search-form__container.local-search{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:none!important;transform:none!important;z-index:10001!important;pointer-events:auto!important;background:#101719f5!important;align-items:center!important;padding:8vw!important}.local-search input{width:100%!important;transform:none!important;opacity:1!important;color:#fff!important}.local-search .dialog-close-button{position:absolute!important;right:30px!important;top:30px!important}.local-results{z-index:10002}

/* Entrada original de los textos de la portada. */
@media (prefers-reduced-motion: no-preference){
 [data-slides] .elementor-element-9aea0af{animation:fadeInLeft 1.25s ease both}
 [data-slides] .elementor-element-bb81549{animation:fadeInRight 1.25s ease both}
}

/* Controles discretos de galería. */
dialog.local-lightbox{padding:0;border:0;border-radius:12px;background:transparent;overflow:hidden;max-width:94vw;max-height:92dvh;box-shadow:0 20px 80px #0007}
dialog.local-lightbox::backdrop{background:rgba(6,9,12,.9);backdrop-filter:blur(5px)}
dialog.local-lightbox img{display:block;max-width:94vw;max-height:92dvh;width:auto;height:auto;object-fit:contain;margin:0}
dialog.local-lightbox button.gallery-control{position:absolute;z-index:2;display:grid;place-items:center;box-sizing:border-box;width:44px;height:44px;min-width:44px;padding:0;margin:0;border:1px solid rgba(255,255,255,.17);border-radius:50%;background:rgba(17,21,26,.65);color:#fff;box-shadow:0 2px 12px #0003;backdrop-filter:blur(12px);cursor:pointer;line-height:1;transition:background .18s,border-color .18s;appearance:none}
dialog.local-lightbox button.gallery-control:hover{background:rgba(35,41,48,.94);border-color:rgba(255,255,255,.45);color:#fff}
dialog.local-lightbox button.gallery-control:focus-visible{outline:2px solid #fff;outline-offset:3px}
dialog.local-lightbox .gallery-control svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}
dialog.local-lightbox .gallery-close{top:12px;right:12px}
dialog.local-lightbox .gallery-prev{top:50%;left:12px;transform:translateY(-50%)}
dialog.local-lightbox .gallery-next{top:50%;right:12px;transform:translateY(-50%)}
/* Imágenes semánticas de galería: misma composición, carga diferida nativa. */
img.e-gallery-image{display:block;width:100%;height:100%;object-fit:cover}
.project-meta-label{font-family:inherit;font-size:16px;font-weight:600;line-height:1.2;margin:0 0 20px}
/* Contraste comprobado para fechas y pie. */
.eael-posted-on time,.elementor-element-9c315dc>.elementor-widget-container>p{color:#aeb4b8!important}
.elementor-search-form__container[inert]{visibility:hidden!important;pointer-events:none!important}
dialog.local-results{border:1px solid #ffffff26;border-radius:12px;width:90%;max-width:900px;color:#fff;margin:auto;max-height:70dvh}
dialog.local-results::backdrop{background:#000b;backdrop-filter:blur(4px)}
.slider-pause{position:absolute;bottom:12px;right:12px;z-index:5;display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid #ffffff40;border-radius:50%;background:#111b;color:#fff;cursor:pointer}
.slider-pause:hover,.slider-pause:focus-visible{background:#222e;color:#fff;border-color:#fff}
.slider-pause svg{width:16px;height:16px;fill:currentColor}
.elementor .elementor-element button.slider-pause{width:44px;height:44px;padding:0;border:1px solid #ffffff40;border-radius:50%;background:#111b;color:white;font:inherit}
@media(min-width:1025px) and (max-width:1200px){
 .elementor-location-header .elementor-nav-menu--main{display:none!important}
 .elementor-location-header .elementor-menu-toggle{display:flex!important}
 .elementor-location-header .elementor-widget-social-icons,.elementor-location-header .elementor-widget-search-form{display:none!important}
 .elementor-location-header>.elementor-section>.elementor-container>.elementor-column:first-child{width:20%!important}
 .elementor-location-header>.elementor-section>.elementor-container>.elementor-column:nth-child(2){width:80%!important}
 .elementor-location-header>.elementor-section>.elementor-container>.elementor-column:nth-child(3){display:none!important}
}
/* Correcciones de contraste verificadas con axe. */
.elementor .project-meta-label,.elementor .project-meta-label span,.elementor .project-meta-label+.elementor-icon-box-description,
.elementor .elementor-form label,.elementor .elementor-icon-list-text,.elementor .no-posts-found,.elementor main li>p{color:#aeb4b8!important}
.elementor .elementor-button-text,.elementor .eael_load_more_text{color:#101010!important}
.elementor td>p>strong{color:#555!important}
main .elementor-widget-text-editor li>p{color:#aeb4b8!important}
/* Evita scroll lateral mientras entran los titulares animados. */
[data-slides]{overflow:hidden;position:relative}
dialog.local-results>button{min-height:44px;padding:8px 16px;margin-bottom:12px;border:1px solid #ffffff40;border-radius:6px;background:#253039;color:#fff;font:inherit;cursor:pointer}
dialog.local-results>button:hover{background:#354551;color:#fff}
body dialog.local-results>button{background:#253039!important;color:#fff!important;border:1px solid #ffffff40!important;border-radius:6px!important;opacity:1!important}
body dialog.local-results>button:hover,body dialog.local-results>button:focus{background:#354551!important;color:#fff!important}

/* Responsive V06: controles legibles y adjuntos dentro del formulario. */
.elementor-form input[type=file]{max-width:100%;width:100%;min-width:0;white-space:normal;}
.elementor-field-type-acceptance .elementor-field-option{display:flex;align-items:flex-start;gap:8px;}
.elementor-field-type-acceptance input[type=checkbox]{flex:0 0 20px;width:20px;height:20px;margin-top:4px;}
.elementor-field-type-acceptance label{display:inline-block;min-height:44px;line-height:1.5;cursor:pointer;}
@media(max-width:767px){
 .elementor-form .elementor-field-textual{font-size:16px!important;}
 .elementor-form .elementor-field-group{max-width:100%;}
 main .elementor-icon-box-description{overflow-wrap:anywhere;}
}
