.elementor-67 .elementor-element.elementor-element-f34fc16{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;}.elementor-67 .elementor-element.elementor-element-f34fc16:not(.elementor-motion-effects-element-type-background), .elementor-67 .elementor-element.elementor-element-f34fc16 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-primary );}.elementor-67 .elementor-element.elementor-element-34fe251{--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-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-67 .elementor-element.elementor-element-fd894c1{text-align:start;}.elementor-67 .elementor-element.elementor-element-fd894c1 img{width:180px;}.elementor-67 .elementor-element.elementor-element-90396aa{--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;--justify-content:space-around;}.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-67 .elementor-element.elementor-element-abfcc84.elementor-element{--align-self:flex-end;}.elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-menu-toggle{margin-left:auto;}.elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-nav-menu--main .elementor-item{color:#FFFFFF;fill:#FFFFFF;}.elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-nav-menu--main .elementor-item:hover,
					.elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-nav-menu--main .elementor-item.elementor-item-active{color:var( --e-global-color-secondary );}.elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-nav-menu--dropdown a, .elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-menu-toggle{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-67 .elementor-element.elementor-element-abfcc84 .elementor-nav-menu--dropdown{background-color:var( --e-global-color-primary );}.elementor-67 .elementor-element.elementor-element-abfcc84 div.elementor-menu-toggle{color:var( --e-global-color-secondary );}.elementor-67 .elementor-element.elementor-element-abfcc84 div.elementor-menu-toggle svg{fill:var( --e-global-color-secondary );}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}@media(min-width:768px){.elementor-67 .elementor-element.elementor-element-34fe251{--width:20%;}.elementor-67 .elementor-element.elementor-element-90396aa{--width:80%;}}@media(max-width:1024px){.elementor-67 .elementor-element.elementor-element-f34fc16{--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );}.elementor-67 .elementor-element.elementor-element-f34fc16.e-con{--align-self:center;}}@media(max-width:767px){.elementor-67 .elementor-element.elementor-element-f34fc16{--flex-wrap:nowrap;}}/* Start custom CSS for nav-menu, class: .elementor-element-abfcc84 *//* --- Estilo Cinematográfico para Menú Principal --- */
/* Ajuste del contenedor de los links */
.elementor-nav-menu li.menu-item a {
    position: relative;
    padding-bottom: 8px !important; /* Espacio para la línea */
    transition: color 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1.5px; /* Toque elegante */
    font-weight: 500;
}

/* Creación de la línea (invisible al inicio) */
.elementor-nav-menu li.menu-item a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 1.5px;
    bottom: 0;
    left: 0;
    background-color: #f5f5f5 !important; /* Línea blanca */
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* Animación al pasar el mouse (Hover) */
.elementor-nav-menu li.menu-item a:hover::after {
    width: 100%;
}

/* Estado Activo (en qué página estás) */
.elementor-nav-menu li.menu-item.current-menu-item a::after,
.elementor-nav-menu li.menu-item.current-page-item a::after {
    width: 100%;
}

/* Ítem activo en negrita */
.elementor-nav-menu li.menu-item.current-menu-item a,
.elementor-nav-menu li.menu-item.current-page-item a {
    font-weight: 700 !important;
}

/* Opcional: bajar un poco la opacidad de los no activos */
.elementor-nav-menu li.menu-item:not(.current-menu-item) a {
    opacity: 0.85;
}

.elementor-nav-menu li.menu-item:not(.current-menu-item) a:hover {
    opacity: 1;
}

/* --- Estilo Cinematográfico para Menú Hamburguesa (Corregido) --- */
/* 1. Resetear fondo gris de Elementor y aplicar Montserrat */
.elementor-nav-menu--dropdown li.menu-item a,
.elementor-nav-menu--dropdown li.menu-item a:hover,
.elementor-nav-menu--dropdown li.menu-item.current-menu-item a {
    background-color: transparent !important;
    font-family: 'Montserrat', sans-serif !important;
    color: #f5f5f5;
}

/* 2. Estilo base de los links */
.elementor-nav-menu--dropdown li.menu-item a {
    position: relative;
    padding-bottom: 8px !important;
    transition: color 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-weight: 500;
    display: inline-block;
}

/* 3. Línea blanca */
.elementor-nav-menu--dropdown li.menu-item a::after {
    content: '';
    position: absolute;
    width: 0;
    height: 1.5px;
    bottom: 0; 
    left: 0;
    background-color: #f5f5f5; /* Línea blanca */
    transition: width 0.4s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* 4. Activación de la línea (Hover y Activo) */
.elementor-nav-menu--dropdown li.menu-item a:hover::after,
.elementor-nav-menu--dropdown li.menu-item.current-menu-item a::after,
.elementor-nav-menu--dropdown li.menu-item.current-page-item a::after {
    width: 100%;
}

/* 5. Ítem activo en negrita */
.elementor-nav-menu--dropdown li.menu-item.current-menu-item a,
.elementor-nav-menu--dropdown li.menu-item.current-page-item a {
    font-weight: 700 !important;
}

/* 6. Opacidad de ítems no activos */
.elementor-nav-menu--dropdown li.menu-item:not(.current-menu-item) a {
    opacity: 0.85;
}

.elementor-nav-menu--dropdown li.menu-item:hover a {
    opacity: 1;
}

/* --- Efecto de separación para el Menú Desplegable --- */
.elementor-nav-menu--dropdown {
    box-shadow: 0px 15px 30px rgba(0, 0, 0, 0.5); 
    background-color: #141414 !important;
    padding-bottom: 20px !important;
    padding-top: 20px;
    transition: all 0.3s ease-in-out;
}

/* ============================================ */
/* ⭐ MEDIA QUERIES - MENÚ HAMBURGUESA RESPONSIVE ⭐ */
/* ============================================ */

/* Tablet horizontal (1024px - 768px) */
@media (max-width: 1024px) and (min-width: 768px) {
    .elementor-nav-menu--dropdown {
        min-height: calc(100vh - 100px) !important;
        height: calc(100vh - 0px) !important;
        position: fixed !important;
        top: 80px !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        overflow-y: auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-evenly !important;
        z-index: 999 !important;
        padding: 40px 20px !important;
    }
    
    .elementor-nav-menu--dropdown li.menu-item {
        width: 100% !important;
        text-align: center !important;
        margin: 15px 0 !important;
    }
    
    .elementor-nav-menu--dropdown li.menu-item a {
        font-size: 22px !important;
        padding: 18px 25px !important;
        display: block !important;
        width: 100% !important;
    }
}

/* Tablet vertical (767px - 481px) */
@media (max-width: 767px) and (min-width: 481px) {
    .elementor-nav-menu--dropdown {
        min-height: calc(100vh - 100px) !important;
        height: calc(100vh - 0px) !important;
        position: fixed !important;
        top: 70px !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        overflow-y: auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-evenly !important;
        z-index: 999 !important;
        padding: 40px 20px !important;
    }
    
    .elementor-nav-menu--dropdown li.menu-item {
        width: 100% !important;
        text-align: center !important;
        margin: 15px 0 !important;
    }
    
    .elementor-nav-menu--dropdown li.menu-item a {
        font-size: 24px !important;
        padding: 20px 30px !important;
        display: block !important;
        width: 100% !important;
    }
}

/* Móvil - Smartphones (480px o menos) */
@media (max-width: 480px) {
    .elementor-nav-menu--dropdown {
        min-height: calc(100vh - 100px) !important;
        height: calc(100vh - 0px) !important;
        position: fixed !important;
        top: 60px !important;
        left: 0 !important;
        right: 0 !important;
        width: 100% !important;
        overflow-y: auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: space-evenly !important;
        z-index: 999 !important;
        padding: 40px 20px !important;
    }
    
    .elementor-nav-menu--dropdown li.menu-item {
        width: 100% !important;
        text-align: center !important;
        margin: 15px 0 !important;
    }
    
    .elementor-nav-menu--dropdown li.menu-item a {
        font-size: 26px !important;
        padding: 22px 30px !important;
        display: block !important;
        width: 100% !important;
    }
}/* End custom CSS */