.elementor-28 .elementor-element.elementor-element-775874d5{--display:flex;--min-height:10vh;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--gap:5% 5%;--row-gap:5%;--column-gap:5%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-28 .elementor-element.elementor-element-775874d5:not(.elementor-motion-effects-element-type-background), .elementor-28 .elementor-element.elementor-element-775874d5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F8FFF600;}.elementor-28 .elementor-element.elementor-element-683b96d{--display:flex;}.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-size:var( --e-global-typography-text-font-size );font-weight:var( --e-global-typography-text-font-weight );}.elementor-28 .elementor-element.elementor-element-16e6834 img{width:35%;}.elementor-28 .elementor-element.elementor-element-b3857a0 img{width:35%;}.elementor-28 .elementor-element.elementor-element-be19b0e{--display:flex;}.elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-widget-mega-menu > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-mega-menu{--n-menu-divider-color:var( --e-global-color-text );}.elementor-28 .elementor-element.elementor-element-6647a37{--display:flex;}.elementor-28 .elementor-element.elementor-element-ac97e14{--display:flex;}.elementor-28 .elementor-element.elementor-element-b15d96f{--display:flex;}.elementor-28 .elementor-element.elementor-element-03e6ab5{--display:flex;}.elementor-28 .elementor-element.elementor-element-0722d10{--display:flex;}.elementor-28 .elementor-element.elementor-element-e56af35{--n-menu-dropdown-content-max-width:initial;--n-menu-heading-justify-content:center;--n-menu-title-flex-grow:initial;--n-menu-title-justify-content:initial;--n-menu-title-justify-content-mobile:center;--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-distance-from-content:0px;--n-menu-toggle-icon-wrapper-animation-duration:500ms;--n-menu-title-space-between:0px;--n-menu-title-font-size:15px;--n-menu-title-color-normal:#FFFFFF;--n-menu-title-transition:300ms;--n-menu-icon-size:16px;--n-menu-toggle-icon-size:20px;--n-menu-toggle-icon-hover-duration:500ms;--n-menu-toggle-icon-distance-from-dropdown:0px;}.elementor-28 .elementor-element.elementor-element-e56af35 > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title, .elementor-28 .elementor-element.elementor-element-e56af35 > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container, .elementor-28 .elementor-element.elementor-element-e56af35 > .e-n-menu > .e-n-menu-wrapper > .e-n-menu-heading > .e-n-menu-item > .e-n-menu-title > .e-n-menu-title-container > span{font-family:"Montserrat", Sans-serif;font-weight:600;text-transform:uppercase;}.elementor-28 .elementor-element.elementor-element-e56af35 {--n-menu-title-color-hover:#54595F;--n-menu-title-color-active:#FF5050;}.elementor-28 .elementor-element.elementor-element-64274d5{--display:flex;--min-height:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(max-width:1024px){.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-28 .elementor-element.elementor-element-e56af35{--n-menu-heading-wrap:wrap;--n-menu-heading-overflow-x:initial;--n-menu-title-font-size:15px;}}@media(min-width:768px){.elementor-28 .elementor-element.elementor-element-683b96d{--width:65%;}.elementor-28 .elementor-element.elementor-element-be19b0e{--width:100%;}}@media(max-width:1024px) and (min-width:768px){.elementor-28 .elementor-element.elementor-element-683b96d{--width:31%;}.elementor-28 .elementor-element.elementor-element-be19b0e{--width:100%;}}@media(max-width:767px){.elementor-28 .elementor-element.elementor-element-775874d5{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-28 .elementor-element.elementor-element-683b96d{--width:45%;}.elementor-widget-image .widget-image-caption{font-size:var( --e-global-typography-text-font-size );}.elementor-28 .elementor-element.elementor-element-be19b0e{--width:48%;}.elementor-28 .elementor-element.elementor-element-e56af35{--n-menu-title-space-between:0px;--n-menu-icon-size:0px;}}/* Start custom CSS for container, class: .elementor-element-683b96d *//* ===== LOGOS ===== */
.elementor-28 .elementor-element.elementor-element-683b96d .logo-blanco {
    transition: opacity .4s ease;
    opacity: 1;
}
.elementor-28 .elementor-element.elementor-element-683b96d .logo-negro {
    position: absolute !important;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    opacity: 0;
    transition: opacity .4s ease;
    pointer-events: none;
}

/* Al hacer scroll */
.elementor-28 .elementor-element.elementor-element-683b96d.elementor-sticky--effects .logo-blanco {
    opacity: 0;
    pointer-events: none;
}
.elementor-28 .elementor-element.elementor-element-683b96d.elementor-sticky--effects .logo-negro {
    opacity: 1;
    pointer-events: auto;
}

/* El contenedor de los logos hace de referencia para superponerlos */
.elementor-28 .elementor-element.elementor-element-683b96d .contenedor-logos {
    position: relative !important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-775874d5 *//* Estado inicial: transparente */
.elementor-28 .elementor-element.elementor-element-775874d5 {
    background-color: transparent !important;
    transition: background-color .4s ease, box-shadow .4s ease;
    z-index: 999;
}

/* Al hacer scroll: con color */
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects {
    background-color: #FFFFFF !important;
    box-shadow: 0 2px 15px rgba(0, 0, 0, .08);
}

/* Evita el hueco que deja el sticky, para que la cabecera quede ENCIMA del contenido */
.elementor-sticky__spacer {
    display: none !important;
}

/* ===== TEXTO: estado inicial (fondo transparente) ===== */
.elementor-28 .elementor-element.elementor-element-775874d5 .e-n-menu-title-text,
.elementor-28 .elementor-element.elementor-element-775874d5 .e-n-menu-title a,
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-nav-menu a,
.elementor-28 .elementor-element.elementor-element-775874d5 .menu a,
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-heading-title,
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-site-title a {
    color: #FFFFFF !important;
    transition: color .4s ease;
}

/* Hover y página activa en estado inicial */
.elementor-28 .elementor-element.elementor-element-775874d5 .e-n-menu-title:hover .e-n-menu-title-text,
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-nav-menu a:hover,
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-nav-menu a.elementor-item-active,
.elementor-28 .elementor-element.elementor-element-775874d5 .menu a:hover,
.elementor-28 .elementor-element.elementor-element-775874d5 .menu .current-menu-item > a {
    color: #49B8D6 !important;
}

/* ===== TEXTO: al hacer scroll (fondo con color) ===== */
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .e-n-menu-title-text,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .e-n-menu-title a,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .elementor-nav-menu a,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .menu a,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .elementor-heading-title,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .elementor-site-title a {
    color: #2B2B2B !important;
}

/* Hover y página activa al hacer scroll */
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .e-n-menu-title:hover .e-n-menu-title-text,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .elementor-nav-menu a:hover,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .elementor-nav-menu a.elementor-item-active,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .menu a:hover,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .menu .current-menu-item > a {
    color: #49B8D6 !important;
}

/* Subrayado/línea del menú clásico (si usas el puntero "subrayado") */
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-nav-menu a:after,
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-nav-menu a:before {
    background-color: #FFFFFF !important;
    transition: background-color .4s ease;
}
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .elementor-nav-menu a:after,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .elementor-nav-menu a:before {
    background-color: #2B2B2B !important;
}

/* Icono hamburguesa en móvil */
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-menu-toggle,
.elementor-28 .elementor-element.elementor-element-775874d5 .e-n-menu-toggle i,
.elementor-28 .elementor-element.elementor-element-775874d5 .e-n-menu-toggle svg {
    color: #FFFFFF !important;
    fill: #FFFFFF !important;
    transition: color .4s ease, fill .4s ease;
}
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .elementor-menu-toggle,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .e-n-menu-toggle i,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .e-n-menu-toggle svg {
    color: #2B2B2B !important;
    fill: #2B2B2B !important;
}
/* ===== LOGOS ===== */
.elementor-28 .elementor-element.elementor-element-775874d5 .logo-blanco {
    transition: opacity .4s ease;
    opacity: 1;
}
.elementor-28 .elementor-element.elementor-element-775874d5 .logo-negro {
    position: absolute !important;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    width: 100%;
    opacity: 0;
    transition: opacity .4s ease;
    pointer-events: none;
}

/* Al hacer scroll */
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .logo-blanco {
    opacity: 0;
    pointer-events: none;
}
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .logo-negro {
    opacity: 1;
    pointer-events: auto;
}

/* El contenedor de los logos hace de referencia para superponerlos */
.elementor-28 .elementor-element.elementor-element-775874d5 .contenedor-logos {
    position: relative !important;
}
/* ===== ENCOGER CABECERA AL HACER SCROLL ===== */

/* Transiciones (sustituye a la transición del primer bloque) */
.elementor-28 .elementor-element.elementor-element-775874d5 {
    transition: background-color .4s ease, box-shadow .4s ease, padding .4s ease !important;
}
.elementor-28 .elementor-element.elementor-element-775874d5 .logo-blanco img,
.elementor-28 .elementor-element.elementor-element-775874d5 .logo-negro img {
    transition: width .4s ease, opacity .4s ease !important;
}
.elementor-28 .elementor-element.elementor-element-775874d5 .e-n-menu-title-text,
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-nav-menu a,
.elementor-28 .elementor-element.elementor-element-775874d5 .menu a {
    transition: color .4s ease, font-size .4s ease, padding .4s ease !important;
}

/* --- ESTADO INICIAL --- */
.elementor-28 .elementor-element.elementor-element-775874d5 {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
}
.elementor-28 .elementor-element.elementor-element-775874d5 .logo-blanco img,
.elementor-28 .elementor-element.elementor-element-775874d5 .logo-negro img {
    width: 110px !important;
}
.elementor-28 .elementor-element.elementor-element-775874d5 .e-n-menu-title-text,
.elementor-28 .elementor-element.elementor-element-775874d5 .elementor-nav-menu a,
.elementor-28 .elementor-element.elementor-element-775874d5 .menu a {
    font-size: 15px !important;
}

/* --- AL HACER SCROLL --- */
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects {
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .logo-blanco img,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .logo-negro img {
    width: 70px !important;
}
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .e-n-menu-title-text,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .elementor-nav-menu a,
.elementor-28 .elementor-element.elementor-element-775874d5.elementor-sticky--effects .menu a {
    font-size: 13px !important;
}/* End custom CSS */