.elementor-2246 .elementor-element.elementor-element-3490ba1f{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2246 .elementor-element.elementor-element-47f7cb39{width:var( --container-widget-width, 0% );max-width:0%;--container-widget-width:0%;--container-widget-flex-grow:0;}.elementor-2246 .elementor-element.elementor-element-47f7cb39 > .elementor-widget-container{margin:-120rem -120rem -120rem -120rem;}.elementor-2246 .elementor-element.elementor-element-2c563e5f > .elementor-container > .elementor-column > .elementor-widget-wrap{align-content:center;align-items:center;}.elementor-2246 .elementor-element.elementor-element-2c563e5f:not(.elementor-motion-effects-element-type-background), .elementor-2246 .elementor-element.elementor-element-2c563e5f > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF00;}.elementor-2246 .elementor-element.elementor-element-2c563e5f > .elementor-container{min-height:5vh;}.elementor-2246 .elementor-element.elementor-element-2c563e5f{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:-25px;margin-bottom:-61px;z-index:999;}.elementor-2246 .elementor-element.elementor-element-2c563e5f > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-bc-flex-widget .elementor-2246 .elementor-element.elementor-element-50921450.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-2246 .elementor-element.elementor-element-50921450.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-2246 .elementor-element.elementor-element-50921450.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-2246 .elementor-element.elementor-element-30791e59{width:var( --container-widget-width, 5rem );max-width:5rem;--container-widget-width:5rem;--container-widget-flex-grow:0;align-self:center;text-align:center;}.elementor-2246 .elementor-element.elementor-element-30791e59 > .elementor-widget-container{margin:-0.5rem 0rem 0rem 0rem;}.elementor-bc-flex-widget .elementor-2246 .elementor-element.elementor-element-35a32a4b.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-2246 .elementor-element.elementor-element-35a32a4b.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-2246 .elementor-element.elementor-element-35a32a4b.elementor-column > .elementor-widget-wrap{justify-content:center;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2246 .elementor-element.elementor-element-361ec608{width:var( --container-widget-width, 84% );max-width:84%;--container-widget-width:84%;--container-widget-flex-grow:0;z-index:50;--e-nav-menu-horizontal-menu-item-margin:calc( 25px / 2 );}.elementor-2246 .elementor-element.elementor-element-361ec608 > .elementor-widget-container{margin:0rem 0rem 0rem 0rem;}.elementor-2246 .elementor-element.elementor-element-361ec608.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-menu-toggle{margin:0 auto;}.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-nav-menu .elementor-item{font-family:"Nunito", Sans-serif;font-weight:500;}.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-nav-menu--main .elementor-item{color:#000000BF;fill:#000000BF;}.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-nav-menu--main .elementor-item:focus{color:#2E86AB;fill:#2E86AB;}.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:#2E86AB;}.elementor-2246 .elementor-element.elementor-element-361ec608 .e--pointer-framed .elementor-item:before,
					.elementor-2246 .elementor-element.elementor-element-361ec608 .e--pointer-framed .elementor-item:after{border-color:#2E86AB;}.elementor-2246 .elementor-element.elementor-element-361ec608 .elementor-nav-menu--main:not(.elementor-nav-menu--layout-horizontal) .elementor-nav-menu > li:not(:last-child){margin-bottom:25px;}.elementor-widget-button .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-2246 .elementor-element.elementor-element-2799f447 .elementor-button{background-color:transparent;font-family:"Nunito", Sans-serif;font-weight:500;background-image:linear-gradient(135deg, #4DA8DA 0%, #2E86AB 100%);border-radius:50px 50px 50px 50px;}.elementor-2246 .elementor-element.elementor-element-2799f447{width:var( --container-widget-width, 15.305% );max-width:15.305%;--container-widget-width:15.305%;--container-widget-flex-grow:0;}.elementor-2246 .elementor-element.elementor-element-2799f447 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-2246 .elementor-element.elementor-element-2799f447.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5{width:var( --container-widget-width, 58.153% );max-width:58.153%;--container-widget-width:58.153%;--container-widget-flex-grow:0;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5 .elementor-icon-wrapper{text-align:center;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5.elementor-view-stacked .elementor-icon{background-color:#000000;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5.elementor-view-framed .elementor-icon, .elementor-2246 .elementor-element.elementor-element-6ddc9ae5.elementor-view-default .elementor-icon{color:#000000;border-color:#000000;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5.elementor-view-framed .elementor-icon, .elementor-2246 .elementor-element.elementor-element-6ddc9ae5.elementor-view-default .elementor-icon svg{fill:#000000;}.elementor-2246 .elementor-element.elementor-element-2834d31{--display:flex;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:769px){.elementor-2246 .elementor-element.elementor-element-50921450{width:19.51%;}.elementor-2246 .elementor-element.elementor-element-35a32a4b{width:74.926%;}.elementor-2246 .elementor-element.elementor-element-724e195e{width:4.874%;}}@media(max-width:1200px) and (min-width:769px){.elementor-2246 .elementor-element.elementor-element-35a32a4b{width:67%;}.elementor-2246 .elementor-element.elementor-element-724e195e{width:13%;}}@media(max-width:1200px){.elementor-2246 .elementor-element.elementor-element-30791e59 > .elementor-widget-container{margin:-0.3rem 0rem 0rem 0rem;}.elementor-2246 .elementor-element.elementor-element-30791e59{--container-widget-width:5rem;--container-widget-flex-grow:0;width:var( --container-widget-width, 5rem );max-width:5rem;}.elementor-2246 .elementor-element.elementor-element-35a32a4b.elementor-column > .elementor-widget-wrap{justify-content:flex-end;}.elementor-2246 .elementor-element.elementor-element-361ec608{width:var( --container-widget-width, 34px );max-width:34px;--container-widget-width:34px;--container-widget-flex-grow:0;}.elementor-2246 .elementor-element.elementor-element-724e195e.elementor-column > .elementor-widget-wrap{justify-content:flex-end;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5{width:var( --container-widget-width, 1.5rem );max-width:1.5rem;--container-widget-width:1.5rem;--container-widget-flex-grow:0;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5 > .elementor-widget-container{margin:0rem 0rem 0rem 0rem;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5.elementor-element{--align-self:flex-end;--order:99999 /* order end hack */;--flex-grow:1;--flex-shrink:0;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5 .elementor-icon-wrapper{text-align:end;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5 .elementor-icon{font-size:1.5rem;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5 .elementor-icon svg{height:1.5rem;}}@media(max-width:768px){.elementor-2246 .elementor-element.elementor-element-50921450{width:30%;}.elementor-2246 .elementor-element.elementor-element-30791e59 > .elementor-widget-container{margin:-0.3rem 0rem 0rem 0rem;}.elementor-2246 .elementor-element.elementor-element-30791e59{--container-widget-width:5rem;--container-widget-flex-grow:0;width:var( --container-widget-width, 5rem );max-width:5rem;}.elementor-2246 .elementor-element.elementor-element-35a32a4b{width:45%;}.elementor-2246 .elementor-element.elementor-element-35a32a4b.elementor-column > .elementor-widget-wrap{justify-content:flex-end;}.elementor-2246 .elementor-element.elementor-element-35a32a4b > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;}.elementor-2246 .elementor-element.elementor-element-361ec608{width:var( --container-widget-width, 92.125px );max-width:92.125px;--container-widget-width:92.125px;--container-widget-flex-grow:0;}.elementor-2246 .elementor-element.elementor-element-2799f447{--container-widget-width:0px;--container-widget-flex-grow:0;width:var( --container-widget-width, 0px );max-width:0px;}.elementor-2246 .elementor-element.elementor-element-724e195e{width:24%;}.elementor-2246 .elementor-element.elementor-element-6ddc9ae5{width:var( --container-widget-width, 1.5rem );max-width:1.5rem;--container-widget-width:1.5rem;--container-widget-flex-grow:0;}}/* Start custom CSS for nav-menu, class: .elementor-element-361ec608 */.navbar{
    text-align: right;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-2799f447 *//* Oculta el botón original en los mismos tamaños que el menú móvil */
@media (max-width: 1172px) {
    .btn-original-desktop {
        display: none !important;
    }
    .contactBtn{
        display: none !important;
    }
}/* End custom CSS */
/* Start custom CSS for section, class: .elementor-element-2c563e5f *//* Transición suave del header */
#navbar {
    transition: all 0.3s ease;
}

header{
    transition: all 0.3s ease;
}

/* Estado cuando se hace scroll (clase que añadiremos con JS) */
#navbar.nav-scrolled {
    background: rgba(255, 255, 255, 0.95) !important;
    backdrop-filter: blur(12px);
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

#navbar.nav-scrolled .elementor-item {
    color: #4b5563 !important; /* Gris oscuro */
}

#navbar.nav-scrolled .elementor-item:hover {
    color: #2E86AB !important; /* Azul primario */
}

/* Animación de subrayado en el menú */
.elementor-nav-menu .elementor-item {
    position: relative;
    transition: transform .18s ease !important;
}

.elementor-nav-menu .elementor-item::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -6px;
    height: 2px;
    width: 0%;
    background: linear-gradient(90deg, #2E86AB, #7CB587);
    transition: width .22s cubic-bezier(.2, .9, .3, 1);
    border-radius: 2px;

}

.contactBtn::after{
    background: linear-gradient(90deg, #2E86AB, #7CB587);
    transition: width .22s cubic-bezier(.2, .9, .3, 1);
}

.elementor-nav-menu .elementor-item:hover {
    transform: translateY(-3px);
}

.elementor-nav-menu .elementor-item:hover::after {
    width: 100%;
}


/* Animaciones para ocultar/mostrar */
@keyframes slideHeaderUp {
    from { transform: translateY(0); }
    to { transform: translateY(-120%); }
}

@keyframes slideHeaderDown {
    from { transform: translateY(-120%); }
    to { transform: translateY(0); }
}



/* Cuando el header se vuelve "sticky" tras el scroll */
.elementor-2246 .elementor-element.elementor-element-2c563e5f.elementor-sticky--effects {
    background-color: rgba(255, 255, 255, 0.95) !important; /* Fondo casi sólido */
    backdrop-filter: blur(12px); /* Tu efecto de desenfoque */
    transition: all 0.3s ease;
}

/* 1. Color sólido para las letras en el menú blanco (sin pasar el ratón) */
.elementor-2246 .elementor-element.elementor-element-2c563e5f.elementor-sticky--effects .elementor-item {
    color: #4b5563 !important;
    background: none !important; /* Quitamos cualquier gradiente previo */
    -webkit-background-clip: initial !important;
    background-clip: initial !important;
}

/* 2. Efecto Gradiente SOLO al pasar el ratón (Hover) */
.elementor-2246 .elementor-element.elementor-element-2c563e5f.elementor-sticky--effects .elementor-item:hover {
    background: linear-gradient(90deg, #2E86AB, #7CB587) !important;
    -webkit-background-clip: text !important;
    background-clip: text !important;
    color: transparent !important;
    transition: all 0.3s ease;
}

/* Forzamos que la transición sea fluida */
.elementor-2246 .elementor-element.elementor-element-2c563e5f {
    transform: translateY(0);
    transition: transform 0.4s ease-in-out !important;
}

/* Cuando el JS añade esta clase, el header sube y desaparece */
.elementor-2246 .elementor-element.elementor-element-2c563e5f.header-hide {
    transform: translateY(-100%) !important;
}

/* Cuando el JS añade esta clase, el header vuelve a su sitio */
.elementor-2246 .elementor-element.elementor-element-2c563e5f.header-show {
    transform: translateY(0) !important;
}

/* 1. Color por defecto (Header transparente) */
.icono-burger-adaptativo i {
    color: #FFFFFF !important;
    transition: color 0.3s ease;
}

/* 2. Color cuando el header se vuelve blanco (Sticky) */
.elementor-2246 .elementor-element.elementor-element-2c563e5f.elementor-sticky--effects .icono-burger-adaptativo i {
    color: #4b5563 !important; /* El mismo gris oscuro que usamos en el menú */
}

/* 3. Ajuste para el estado Hover en ambos casos */
.icono-burger-adaptativo:hover i {
    color: #2E86AB !important; /* Azul primario al pasar el ratón */
}/* End custom CSS */
/* Start custom CSS *//* Estilo para el botón dentro del menú desplegable de Elementor (Móvil/Tablet) */
@media (max-width: 1172px) {
    .boton-menu-movil a {
        background: linear-gradient(135deg, #4DA8DA 0%, #2E86AB 100%) !important; /* Gradiente original de Hécate */
        color: #ffffff !important;
        text-align: center !important;
        border-radius: 9999px !important; /* Estilo rounded-full */
        margin-top: 1rem !important;
        padding: 12px 24px !important;
        font-weight: 600 !important;
        display: block !important;
        transition: all 0.3s ease !important;
        box-shadow: 0 4px 15px rgba(46, 134, 171, 0.2);
    }

    .boton-menu-movil a:hover {
        background: linear-gradient(135deg, #2E86AB 0%, #1a5f7a 100%) !important;
        transform: translateY(-2px) !important;
    }
}

/* Forzar menú móvil a partir de 1172px */
@media (max-width: 1172px) {
    /* 1. Esconder el menú de escritorio */
    .elementor-nav-menu--main {
        display: none !important;
    }

    /* 2. Mostrar el botón de hamburguesa */
    .elementor-menu-toggle {
        display: flex !important;
    }

    /* 3. Asegurar que el botón "Contacto" de escritorio se oculte también */
    .btn-original-desktop {
        display: none !important;
    }
    
    .contactBtn{
        display: none;
    }
    
    .boton-menu-movil {
        display: none !important;
    }
    /* 4. Ajustar el contenedor para que el logo y la hamburguesa se separen */
    #navbar .elementor-container {
        justify-content: space-between !important;
    }
}

/* Evita que este ítem se vea en Escritorio para que no choque con tu botón azul principal */
@media (min-width: 1024px) {
    .boton-menu-movil {
        display: none !important;
    }
}

@media (max-width: 1172px){
    .elementor-menu-toggle{
        display: flex !important;
    }
    
    .contactBtn{
        display: none !important;
    }
}


/* 1. Color por defecto (Header transparente) */
.icono-burger-adaptativo i {
    color: #4b5563 !important;
    transition: color 0.3s ease;
}

/* 2. Color cuando el header se vuelve blanco (Sticky) */
.elementor-2246.elementor-sticky--effects .icono-burger-adaptativo i {
    color: #4b5563 !important; /* El mismo gris oscuro que usamos en el menú */
}

/* 3. Ajuste para el estado Hover en ambos casos */
.icono-burger-adaptativo:hover i {
    color: #2E86AB !important; /* Azul primario al pasar el ratón */
}

/* Transición suave para que la cabecera no desaparezca de golpe */
.elementor-2246 {
    transition: transform 0.4s ease-in-out !important;
}

/* Esta es la clase que el JavaScript añadirá para esconderla (la sube un 100% de su tamaño) */
.ocultar-cabecera {
    transform: translateY(-100%) !important;
}/* End custom CSS */