.elementor-4940 .elementor-element.elementor-element-e045b54{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:30px;--padding-right:0px;}.elementor-4940 .elementor-element.elementor-element-0d604b1{--spacer-size:30px;}.elementor-widget-icon-list .elementor-icon-list-item:not(:last-child):after{border-color:var( --e-global-color-text );}.elementor-widget-icon-list .elementor-icon-list-icon i{color:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-icon svg{fill:var( --e-global-color-primary );}.elementor-widget-icon-list .elementor-icon-list-item > .elementor-icon-list-text, .elementor-widget-icon-list .elementor-icon-list-item > a{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-icon-list .elementor-icon-list-text{color:var( --e-global-color-secondary );}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(1.1rem/2);}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(1.1rem/2);}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(1.1rem/2);}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-1.1rem/2);}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-1.1rem/2);}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-icon i{color:#6EC1E4;transition:color 0.3s;}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-icon svg{fill:#6EC1E4;transition:fill 0.3s;}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-item:hover .elementor-icon-list-icon i{color:#656565;}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-item:hover .elementor-icon-list-icon svg{fill:#656565;}.elementor-4940 .elementor-element.elementor-element-62c64e6{--e-icon-list-icon-size:45px;--icon-vertical-offset:0px;}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-item > a{font-family:"Inter", Sans-serif;font-size:1.1rem;font-weight:400;}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-item:hover .elementor-icon-list-text{color:#1A8FCA;}.elementor-4940 .elementor-element.elementor-element-62c64e6 .elementor-icon-list-text{transition:color 0.3s;}.elementor-4940 .elementor-element.elementor-element-5b549de > .elementor-widget-container{padding:30px 30px 30px 30px;}.elementor-4940 .elementor-element.elementor-element-5b549de .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-4940 .elementor-element.elementor-element-5b549de .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-4940 .elementor-element.elementor-element-5b549de{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-4940 .elementor-element.elementor-element-5b549de .elementor-icon-list-item > .elementor-icon-list-text, .elementor-4940 .elementor-element.elementor-element-5b549de .elementor-icon-list-item > a{font-family:"Inter", Sans-serif;font-weight:400;}.elementor-4940 .elementor-element.elementor-element-5b549de .elementor-icon-list-text{transition:color 0.3s;}.elementor-4940 .elementor-element.elementor-element-5c31a95 > .elementor-widget-container{padding:5px 30px 30px 30px;}.elementor-4940 .elementor-element.elementor-element-5c31a95 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-4940 .elementor-element.elementor-element-5c31a95 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-4940 .elementor-element.elementor-element-5c31a95{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-4940 .elementor-element.elementor-element-5c31a95 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-4940 .elementor-element.elementor-element-5c31a95 .elementor-icon-list-item > a{font-family:"Inter", Sans-serif;font-weight:400;}.elementor-4940 .elementor-element.elementor-element-5c31a95 .elementor-icon-list-text{transition:color 0.3s;}#elementor-popup-modal-4940 .dialog-widget-content{animation-duration:0.4s;box-shadow:2px 8px 23px 3px rgba(0,0,0,0.2);}#elementor-popup-modal-4940 .dialog-message{height:100vh;align-items:flex-start;}#elementor-popup-modal-4940{justify-content:center;align-items:center;}#elementor-popup-modal-4940 .dialog-close-button{display:flex;}@media(max-width:1024px){#elementor-popup-modal-4940 .dialog-message{width:80vw;}#elementor-popup-modal-4940{justify-content:flex-start;}}@media(max-width:767px){#elementor-popup-modal-4940 .dialog-message{width:80vw;}#elementor-popup-modal-4940{justify-content:flex-start;}}/* Start custom CSS for icon-list, class: .elementor-element-62c64e6 *//* ==========================================================
   DRAWER MENU
   ========================================================== */

/* 1. Separación de filas y alineación */
.jm-drawer-menu .elementor-icon-list-item {
    margin-bottom: 20px !important;
}

.jm-drawer-menu .elementor-icon-list-item a {
    display: flex !important;
    align-items: center !important;
    text-decoration: none !important;
}

/* 2. Contenedor del icono (limpio, sin segundo círculo) */
.jm-drawer-menu .elementor-icon-list-icon {
    width: auto !important;
    height: auto !important;
    min-width: unset !important;
    background: transparent !important;
    border-radius: 0 !important;
    margin-right: 18px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* 3. Tamaño real del SVG (el círculo propio del SVG ahora mide 50px y el icono se ve grande y nítido) */
.jm-drawer-menu .elementor-icon-list-icon svg {
    width: 50px !important;
    height: 50px !important;
    display: block !important;
}

/* 4. ESTADO INACTIVO: Iconos en gris (#C6C6C6) */
.jm-drawer-menu .elementor-icon-list-icon svg .cls-2,
.jm-drawer-menu .elementor-icon-list-icon svg path.cls-2,
.jm-drawer-menu .elementor-icon-list-icon svg rect.cls-2 {
    fill: #C6C6C6 !important;
    transition: fill 0.25s ease !important;
}

/* 5. ESTADO INACTIVO: Textos en gris (#575756), tamaño normal y sin negrita */
.jm-drawer-menu .elementor-icon-list-text {
    font-size: 20px !important;
    font-weight: 400 !important;
    color: #575756 !important;
    transition: color 0.25s ease !important;
}

/* ==========================================================
   ESTADO ACTIVO: Solo el ítem que coincida con la página actual
   ========================================================== */
.jm-drawer-menu .elementor-icon-list-item.is-active .elementor-icon-list-text {
    color: #1A8FCA !important;
    font-weight: 700 !important;
}

.jm-drawer-menu .elementor-icon-list-item.is-active .elementor-icon-list-icon svg .cls-2,
.jm-drawer-menu .elementor-icon-list-item.is-active .elementor-icon-list-icon svg path.cls-2,
.jm-drawer-menu .elementor-icon-list-item.is-active .elementor-icon-list-icon svg rect.cls-2 {
    fill: #1A8FCA !important;
}

/* Hover interactivo */
.jm-drawer-menu .elementor-icon-list-item:hover .elementor-icon-list-text {
    color: #1A8FCA !important;
}
.jm-drawer-menu .elementor-icon-list-item:hover .elementor-icon-list-icon svg .cls-2 {
    fill: #1A8FCA !important;
}/* End custom CSS */
/* Start custom CSS *//* ==========================================================
   MENU MOBILE PUSH EFFECT + ANIMACIÓN COLLAPSE (ZUNISOFT)
   ========================================================== */
@media (max-width: 767px) {

    /* Evitar desborde horizontal */
    html, body {
        overflow-x: hidden !important;
        position: relative;
    }

    /* 1. CONTENEDOR PRINCIPAL (#page) */
    #page {
        transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1),
                    -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1),
                    border-radius 0.4s cubic-bezier(0.25, 1, 0.5, 1),
                    box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
        transform-origin: center left;
        background-color: #ffffff;
    }

    /* Transformación durante apertura/cierre (libera GPU en reposo para Smart Slider) */
    body.jm-push-menu-open #page {
        will-change: transform;
        transform: translate3d(80vw, 0, 0) !important;
        -webkit-transform: translate3d(80vw, 0, 0) !important;
    }

    body.jm-push-menu-closing #page {
        will-change: transform;
        transform: translate3d(0, 0, 0) !important;
        -webkit-transform: translate3d(0, 0, 0) !important;
    }

    /* 2. SINCRONIZACIÓN DEL DRAWER A 0.4s */
    .elementor-popup-modal {
        justify-content: flex-start !important;
    }

    div[id*="elementor-popup-modal"] .dialog-widget-content,
    .elementor-popup-modal .dialog-widget-content,
    .elementor-popup-modal .slideInLeft,
    .elementor-popup-modal .slideOutLeft {
        animation-duration: 0.4s !important;
        -webkit-animation-duration: 0.4s !important;
        animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
        -webkit-animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1) !important;
    }

    /* 3. BOTÓN INTERNO DE ELEMENTOR INVISIBLE */
    .elementor-popup-modal .dialog-close-button {
        opacity: 0 !important;
        position: absolute !important;
        width: 0 !important;
        height: 0 !important;
        overflow: hidden !important;
        pointer-events: none !important;
    }

    /* 4. SIN RECTÁNGULOS DE ENFOQUE */
    .elementor-popup-modal a,
    .elementor-popup-modal a:focus,
    .elementor-popup-modal *:focus {
        outline: none !important;
        box-shadow: none !important;
        -webkit-tap-highlight-color: transparent !important;
    }

    /* ==========================================================
       ANIMACIÓN #3: HAMBURGUESA A CRUZ / COLLAPSE (ZUNISOFT)
       ========================================================== */
    .elementor-element-f900f10 .elementor-icon svg,
    a[href*="popup%3Aopen"] .elementor-icon svg {
        display: none !important;
    }

    .elementor-element-f900f10 .elementor-icon,
    a[href*="popup%3Aopen"] .elementor-icon {
        position: relative !important;
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 32px !important;
        height: 32px !important;
        cursor: pointer !important;
        z-index: 999999 !important;
    }

    .jm-hamburger-bar {
        position: relative;
        display: block;
        width: 24px;
        height: 2.5px;
        background-color: #000000;
        border-radius: 2px;
        transition: background-color 0.2s ease 0.2s;
    }

    .jm-hamburger-bar::before,
    .jm-hamburger-bar::after {
        content: '';
        position: absolute;
        left: 0;
        width: 24px;
        height: 2.5px;
        background-color: #000000;
        border-radius: 2px;
        transform-origin: center center;
        transition: top 0.2s ease 0.2s,
                    transform 0.2s cubic-bezier(0.25, 1, 0.5, 1) 0s;
    }

    .jm-hamburger-bar::before { top: -7.5px; }
    .jm-hamburger-bar::after { top: 7.5px; }

    body.jm-push-menu-open .jm-hamburger-bar {
        background-color: transparent !important;
        transition: background-color 0.2s ease 0s;
    }

    body.jm-push-menu-open .jm-hamburger-bar::before,
    body.jm-push-menu-open .jm-hamburger-bar::after {
        top: 0 !important;
        transition: top 0.2s ease 0s,
                    transform 0.2s cubic-bezier(0.25, 1, 0.5, 1) 0.2s !important;
    }

    body.jm-push-menu-open .jm-hamburger-bar::before {
        transform: rotate(45deg) !important;
    }

    body.jm-push-menu-open .jm-hamburger-bar::after {
        transform: rotate(-45deg) !important;
    }

    /* 5. WHATSAPP */
    body.jm-push-menu-open .wa__btn_popup,
    body.jm-push-menu-open .wa__btn_popup .wa__btn_popup_icon {
        display: none !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    /* ==========================================================
       ESTADO ACTIVO / INACTIVO DE LOS LINKS DEL DRAWER
       ========================================================== */

    /* ÍTEM ACTIVO: Texto azul e icono SVG en azul (#1A8FCA) */
    .elementor-4940 .elementor-icon-list-item.is-active .elementor-icon-list-text,
    .elementor-popup-modal .elementor-icon-list-item.is-active .elementor-icon-list-text {
        color: #1A8FCA !important;
        font-weight: 700 !important;
    }

    .elementor-4940 .elementor-icon-list-item.is-active .elementor-icon-list-icon svg .cls-2,
    .elementor-4940 .elementor-icon-list-item.is-active .elementor-icon-list-icon svg path.cls-2,
    .elementor-4940 .elementor-icon-list-item.is-active .elementor-icon-list-icon svg rect.cls-2,
    .elementor-popup-modal .elementor-icon-list-item.is-active .elementor-icon-list-icon svg .cls-2,
    .elementor-popup-modal .elementor-icon-list-item.is-active .elementor-icon-list-icon svg path.cls-2,
    .elementor-popup-modal .elementor-icon-list-item.is-active .elementor-icon-list-icon svg rect.cls-2 {
        fill: #1A8FCA !important;
    }

    /* ÍTEMS INACTIVOS: Texto gris (#575756) e icono SVG gris (#C6C6C6) */
    .elementor-4940 .elementor-icon-list-item:not(.is-active) .elementor-icon-list-text,
    .elementor-popup-modal .elementor-icon-list-item:not(.is-active) .elementor-icon-list-text {
        color: #575756 !important;
        font-weight: 400 !important;
        transition: color 0.25s ease !important;
    }

    .elementor-4940 .elementor-icon-list-item:not(.is-active) .elementor-icon-list-icon svg .cls-2,
    .elementor-4940 .elementor-icon-list-item:not(.is-active) .elementor-icon-list-icon svg path.cls-2,
    .elementor-4940 .elementor-icon-list-item:not(.is-active) .elementor-icon-list-icon svg rect.cls-2,
    .elementor-popup-modal .elementor-icon-list-item:not(.is-active) .elementor-icon-list-icon svg .cls-2,
    .elementor-popup-modal .elementor-icon-list-item:not(.is-active) .elementor-icon-list-icon svg path.cls-2,
    .elementor-popup-modal .elementor-icon-list-item:not(.is-active) .elementor-icon-list-icon svg rect.cls-2 {
        fill: #C6C6C6 !important;
        transition: fill 0.25s ease !important;
    }
}/* End custom CSS */