.elementor-54 .elementor-element.elementor-element-3ae1649{--display:flex;--min-height:20vh;--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-around;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;--z-index:99999;}.elementor-54 .elementor-element.elementor-element-3ae1649:not(.elementor-motion-effects-element-type-background), .elementor-54 .elementor-element.elementor-element-3ae1649 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F7F7F700;}.elementor-54 .elementor-element.elementor-element-36e631e{--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:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:4%;--padding-right:0%;}.elementor-54 .elementor-element.elementor-element-36e631e.e-con{--align-self:center;}.elementor-54 .elementor-element.elementor-element-3dd0538{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:4% 0% 0% 0%;z-index:9999999;}.elementor-54 .elementor-element.elementor-element-3dd0538.elementor-element{--align-self:flex-start;}.elementor-54 .elementor-element.elementor-element-4da94d4{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;z-index:99999;}.elementor-54 .elementor-element.elementor-element-4da94d4.elementor-element{--align-self:center;}.elementor-54 .elementor-element.elementor-element-d3e72bb{--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-54 .elementor-element.elementor-element-e9c1192{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;text-align:center;}.elementor-54 .elementor-element.elementor-element-e9c1192 img{width:45%;}.elementor-54 .elementor-element.elementor-element-08a749d{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-54 .elementor-element.elementor-element-a86bdff .elementor-button{background-color:#02010100;font-family:"Sweet Sans Pro", Sans-serif;font-size:0.6em;font-weight:600;text-transform:uppercase;fill:#00232E;color:#00232E;transition-duration:0.5s;border-style:solid;border-width:1px 1px 1px 1px;border-color:var( --e-global-color-accent );border-radius:5px 5px 5px 5px;padding:12px 20px 12px 20px;}.elementor-54 .elementor-element.elementor-element-a86bdff .elementor-button:hover, .elementor-54 .elementor-element.elementor-element-a86bdff .elementor-button:focus{background-color:var( --e-global-color-accent );color:var( --e-global-color-primary );}.elementor-54 .elementor-element.elementor-element-a86bdff{width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0% 15% 0% 0%;}.elementor-54 .elementor-element.elementor-element-a86bdff .elementor-button:hover svg, .elementor-54 .elementor-element.elementor-element-a86bdff .elementor-button:focus svg{fill:var( --e-global-color-primary );}.elementor-54{margin:0px 0px 0px 0px;padding:0px 0px 0px 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-54 .elementor-element.elementor-element-3ae1649{--padding-top:0%;--padding-bottom:0%;--padding-left:5%;--padding-right:5%;}.elementor-54 .elementor-element.elementor-element-d3e72bb{--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-54 .elementor-element.elementor-element-e9c1192 img{width:70%;}.elementor-54 .elementor-element.elementor-element-08a749d{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}}@media(max-width:767px){.elementor-54 .elementor-element.elementor-element-3ae1649{--min-height:15vh;--justify-content:space-between;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:2%;--padding-bottom:2%;--padding-left:2%;--padding-right:3%;--z-index:10000;}.elementor-54 .elementor-element.elementor-element-36e631e{--width:5%;--justify-content:flex-start;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:0px 0px;--row-gap:0px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:8%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-54 .elementor-element.elementor-element-3dd0538{padding:12% 0% 0% 0%;}.elementor-54 .elementor-element.elementor-element-d3e72bb{--width:90%;--justify-content:center;--align-items:flex-start;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--margin-top:0%;--margin-bottom:0%;--margin-left:0%;--margin-right:0%;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-54 .elementor-element.elementor-element-e9c1192{text-align:center;}.elementor-54 .elementor-element.elementor-element-e9c1192 img{width:75%;max-width:75%;height:10vh;object-fit:contain;}.elementor-54 .elementor-element.elementor-element-08a749d{--width:0%;}}@media(min-width:768px){.elementor-54 .elementor-element.elementor-element-36e631e{--width:25%;}.elementor-54 .elementor-element.elementor-element-d3e72bb{--width:50%;}.elementor-54 .elementor-element.elementor-element-08a749d{--width:25%;}}@media(max-width:1024px) and (min-width:768px){.elementor-54 .elementor-element.elementor-element-36e631e{--width:20%;}.elementor-54 .elementor-element.elementor-element-d3e72bb{--width:60%;}.elementor-54 .elementor-element.elementor-element-08a749d{--width:20%;}}/* Start custom CSS for html, class: .elementor-element-3dd0538 *//* BOTÓN MENÚ HAMBURGUESA - RESPONSIVE */
.menu-toggle {
    display: flex !important;
    flex-direction: column !important;
    width: 46px !important;
    height: 40px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    background: transparent !important;
    border: none !important;
    padding: 8px !important;
    border-radius: 6px !important;
    outline: none !important; 
    box-shadow: none !important;
    color: #00232E !important;
    position: relative !important;
    z-index: 1001 !important;
}

.menu-toggle:focus,
.menu-toggle:active,
.menu-toggle:focus-visible {
    outline: none !important;
    box-shadow: none !important;
    background: transparent !important;
    border: none !important;
    color: #00232E !important;
}

.menu-toggle span {
    height: 3px !important;
    background: #00232E !important;
    border-radius: 2px !important;
    transition: all 0.3s ease !important;
    margin: 2px 0 !important;
    display: block !important;
    width: 100% !important;
}

.menu-toggle.active span:nth-child(1) {
    transform: translateY(7px) rotate(45deg) !important;
    background: #00232E !important;
}

.menu-toggle.active span:nth-child(2) {
    opacity: 0 !important;
}

.menu-toggle.active span:nth-child(3) {
    transform: translateY(-7px) rotate(-45deg) !important;
    background: #00232E !important;
}

/* MENÚ OVERLAY - RESPONSIVE */
.universal-menu {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100vh !important;
    background: #F7F7F7 !important;
    backdrop-filter: blur(20px) !important;
    z-index: 999 !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    opacity: 0 !important;
    visibility: hidden !important;
    transform: translateY(-100%) !important;
    transition: all 0.4s ease !important;
}

.universal-menu.active {
    opacity: 1 !important;
    visibility: visible !important;
    transform: translateY(0) !important;
}

.universal-menu-list {
    list-style: none !important;
    text-align: center !important;
    padding: 0 !important;
    margin: 0 !important;
}

.universal-menu-list li {
    margin: 1rem 0 !important;
}

/* ENLACES DEL MENÚ - MÁXIMA ESPECIFICIDAD */
.universal-menu .universal-menu-list li a,
.universal-menu .universal-menu-list li a.menu-link,
.universal-menu .universal-menu-list .menu-link,
.universal-menu a.menu-link,
body .universal-menu a,
html body .universal-menu a {
    color: #00232E !important;
    text-decoration: none !important;
    font-size: 1.5rem !important;
    font-weight: 500 !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    display: block !important;
    padding: 0.8rem 2.5rem !important;
    font-family: "Fahkwang", Sans-serif !important;
    background: transparent !important;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

/* HOVER DE ENLACES */
.universal-menu .universal-menu-list li a:hover,
.universal-menu .universal-menu-list li a.menu-link:hover,
.universal-menu .universal-menu-list .menu-link:hover,
.universal-menu a.menu-link:hover,
body .universal-menu a:hover,
html body .universal-menu a:hover {
    color: #00232E !important;
    text-decoration: none !important;
    transform: scale(1.05) !important;
    background: transparent !important;
}

/* ENLACES ACTIVOS */
.universal-menu .universal-menu-list li a.active,
.universal-menu .universal-menu-list li a.menu-link.active,
.universal-menu .universal-menu-list .menu-link.active,
.universal-menu a.menu-link.active,
body .universal-menu a.active,
html body .universal-menu a.active {
    color: #00232E !important;
    text-decoration: none !important;
    background: transparent !important;
}

/* LÍNEAS DECORATIVAS */
.universal-menu .universal-menu-list li a::after,
.universal-menu .universal-menu-list li a.menu-link::after,
.universal-menu a.menu-link::after,
body .universal-menu a::after {
    content: '' !important;
    position: absolute !important;
    bottom: -8px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    width: 0 !important;
    height: 1px !important;
    background: #00232E !important;
    transition: width 0.3s ease !important;
}

.universal-menu .universal-menu-list li a:hover::after,
.universal-menu .universal-menu-list li a.active::after,
.universal-menu a.menu-link:hover::after,
.universal-menu a.menu-link.active::after,
body .universal-menu a:hover::after,
body .universal-menu a.active::after {
    width: 80% !important;
}

/* ADAPTACIONES RESPONSIVAS */

/* DESKTOP GRANDE */
@media (min-width: 1200px) {
    .universal-menu .universal-menu-list li a,
    .universal-menu a.menu-link,
    body .universal-menu a {
        font-size: 2.2rem !important;
        padding: 1.2rem 3rem !important;
    }
    
    .universal-menu-list li {
        margin: 2.5rem 0 !important;
    }
}

/* DESKTOP */
@media (min-width: 1025px) and (max-width: 1199px) {
    .universal-menu .universal-menu-list li a,
    .universal-menu a.menu-link,
    body .universal-menu a {
        font-size: 2rem !important;
        padding: 1rem 3rem !important;
    }
    
    .universal-menu-list li {
        margin: 2rem 0 !important;
    }
}

/* TABLET */
@media (min-width: 769px) and (max-width: 1024px) {
    .universal-menu .universal-menu-list li a,
    .universal-menu a.menu-link,
    body .universal-menu a {
        font-size: 1.8rem !important;
        padding: 0.8rem 2rem !important;
    }
    
    .universal-menu-list li {
        margin: 1.8rem 0 !important;
    }
}

/* MOBILE HORIZONTAL / TABLET PEQUEÑA */
@media (min-width: 481px) and (max-width: 768px) {
    .menu-toggle {
        width: 40px !important;
        height: 36px !important;
        padding: 6px !important;
    }
    
    .universal-menu .universal-menu-list li a,
    .universal-menu a.menu-link,
    body .universal-menu a {
        font-size: 1.6rem !important;
        padding: 0.7rem 1.5rem !important;
    }
    
    .universal-menu-list li {
        margin: 1.5rem 0 !important;
    }
}

/* MOBILE VERTICAL */
@media (max-width: 480px) {
    .menu-toggle {
        width: 35px !important;
        height: 32px !important;
        padding: 5px !important;
    }
    
    .menu-toggle span {
        height: 2px !important;
        margin: 1.5px 0 !important;
    }
    
    .menu-toggle.active span:nth-child(1) {
        transform: translateY(5px) rotate(45deg) !important;
    }
    
    .menu-toggle.active span:nth-child(3) {
        transform: translateY(-5px) rotate(-45deg) !important;
    }
    
    .universal-menu .universal-menu-list li a,
    .universal-menu a.menu-link,
    body .universal-menu a {
        font-size: 1.4rem !important;
        padding: 0.6rem 1.2rem !important;
    }
    
    .universal-menu-list li {
        margin: 1.2rem 0 !important;
    }
}

/* MOBILE MUY PEQUEÑO */
@media (max-width: 320px) {
    .menu-toggle {
        width: 30px !important;
        height: 28px !important;
    }
    
    .universal-menu .universal-menu-list li a,
    .universal-menu a.menu-link,
    body .universal-menu a {
        font-size: 1.2rem !important;
        padding: 0.5rem 1rem !important;
    }
    
    .universal-menu-list li {
        margin: 1rem 0 !important;
    }
}

/* OCULTAR MENÚ EN DESKTOP SI ES NECESARIO */
@media (min-width: 1025px) {
    /* Descomenta si quieres ocultar el menú hamburguesa en desktop */
    /*
    .menu-toggle {
        display: none !important;
    }
    */
}

body.menu-open {
    overflow: hidden !important;
}

/* ANTI-WORDPRESS/ELEMENTOR OVERRIDES */
.universal-menu * {
    box-sizing: border-box !important;
}

nav.universal-menu ul.universal-menu-list li a {
    color: #00232E !important;
    text-decoration: none !important;
}

body.elementor-default .universal-menu .universal-menu-list li a,
body .elementor-element .universal-menu a,
#page .universal-menu a,
.site .universal-menu a {
    color: #00232E !important;
    text-decoration: none !important;
}/* End custom CSS */