.elementor-15118 .elementor-element.elementor-element-02a90b1{--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;border-style:none;--border-style:none;--border-radius:5px 5px 5px 5px;box-shadow:0px 0px 8px 0px rgba(183.6, 183.6, 183.6, 0.5);--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-15118 .elementor-element.elementor-element-775d86a{--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;border-style:none;--border-style:none;--border-radius:5px 5px 5px 5px;box-shadow:0px 0px 8px 0px rgba(183.6, 183.6, 183.6, 0.5);}.elementor-15118 .elementor-element.elementor-element-da1a3fb .elementor-heading-title{font-family:var( --e-global-typography-57a412e-font-family ), Sans-serif;font-size:var( --e-global-typography-57a412e-font-size );font-weight:var( --e-global-typography-57a412e-font-weight );text-transform:var( --e-global-typography-57a412e-text-transform );font-style:var( --e-global-typography-57a412e-font-style );text-decoration:var( --e-global-typography-57a412e-text-decoration );line-height:var( --e-global-typography-57a412e-line-height );letter-spacing:var( --e-global-typography-57a412e-letter-spacing );word-spacing:var( --e-global-typography-57a412e-word-spacing );color:var( --e-global-color-text );}.elementor-15118 .elementor-element.elementor-element-b8943d3{--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;border-style:none;--border-style:none;--border-radius:5px 5px 5px 5px;box-shadow:0px 0px 8px 0px rgba(183.6, 183.6, 183.6, 0.5);}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child){padding-block-end:calc(0px/2);}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:first-child){margin-block-start:calc(0px/2);}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item{margin-inline:calc(0px/2);}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items.elementor-inline-items{margin-inline:calc(-0px/2);}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:after{inset-inline-end:calc(-0px/2);}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:not(:last-child):after{content:"";height:1%;border-color:#ddd;}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items:not(.elementor-inline-items) .elementor-icon-list-item:not(:last-child):after{border-block-start-style:solid;border-block-start-width:1px;}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items.elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-style:solid;}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after{border-inline-start-width:1px;}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-icon i{transition:color 0.3s;}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-icon svg{transition:fill 0.3s;}.elementor-15118 .elementor-element.elementor-element-f2dd719{--e-icon-list-icon-size:8px;--icon-vertical-offset:0px;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item > .elementor-icon-list-text, .elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item > a{font-family:"Poppins", Sans-serif;font-size:1.4rem;font-weight:400;}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-text{color:var( --e-global-color-text );transition:color 0.3s;}.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:hover .elementor-icon-list-text{color:#FFFFFF;}.elementor-15118 .elementor-element.elementor-element-953cf9e{--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;border-style:none;--border-style:none;--border-radius:5px 5px 5px 5px;box-shadow:0px 0px 8px 0px rgba(183.6, 183.6, 183.6, 0.5);--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-not-valid-tip{display:block !important;font-family:"Poppins", Sans-serif;font-size:10px;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-validation-errors{display:block !important;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7-wrapper{text-align:default;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .eael-contact-form-7-heading{text-align:center;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .eael-contact-form-7-title{font-family:"Poppins", Sans-serif;font-size:16px;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .eael-contact-form-7-description{font-family:"Poppins", Sans-serif;font-size:14px;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form p:not(:last-of-type) .wpcf7-form-control-wrap{margin-bottom:0px;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form-control.wpcf7-text, .elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form-control.wpcf7-quiz, .elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form-control.wpcf7-quiz, .elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form-control.wpcf7-textarea, .elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form-control.wpcf7-select{font-family:"Poppins", Sans-serif;font-size:12px;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form label, .elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form .wpcf7-quiz-label{font-family:"Poppins", Sans-serif;font-size:12px;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form-control::-webkit-input-placeholder{font-family:"Poppins", Sans-serif;font-size:12px;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-form input[type="submit"]{font-family:"Poppins", Sans-serif;font-size:14px;font-weight:bold;}.elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-mail-sent-ng, .elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-mail-sent-ok, .elementor-15118 .elementor-element.elementor-element-70873fa .eael-contact-form-7 .wpcf7-response-output{font-family:"Poppins", Sans-serif;font-size:12px;}.elementor-15118 .elementor-element.elementor-element-70873fa{margin:20px 0px calc(var(--kit-widget-spacing, 0px) + 10px) 0px;}@media(min-width:768px){.elementor-15118 .elementor-element.elementor-element-02a90b1{--width:100%;}.elementor-15118 .elementor-element.elementor-element-775d86a{--width:100%;}.elementor-15118 .elementor-element.elementor-element-b8943d3{--width:100%;}.elementor-15118 .elementor-element.elementor-element-953cf9e{--width:100%;}}@media(max-width:1024px){.elementor-15118 .elementor-element.elementor-element-da1a3fb .elementor-heading-title{font-size:var( --e-global-typography-57a412e-font-size );line-height:var( --e-global-typography-57a412e-line-height );letter-spacing:var( --e-global-typography-57a412e-letter-spacing );word-spacing:var( --e-global-typography-57a412e-word-spacing );}}@media(max-width:767px){.elementor-15118 .elementor-element.elementor-element-da1a3fb .elementor-heading-title{font-size:var( --e-global-typography-57a412e-font-size );line-height:var( --e-global-typography-57a412e-line-height );letter-spacing:var( --e-global-typography-57a412e-letter-spacing );word-spacing:var( --e-global-typography-57a412e-word-spacing );}}/* Start custom CSS for icon-list, class: .elementor-element-f2dd719 *//* --- CONFIGURACIÓN BASE DE LA LISTA --- */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    align-items: stretch !important; /* Fuerza a todos los ítems a ocupar el mismo ancho exacto */
}

/* Estilo fijo para cada fila/ítem de la lista */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item {
    background-color: #ffffff !important;
    padding: 0 !important; /* Quitamos padding aquí para que la animación use todo el espacio */
    margin-bottom: -4px !important; /* Margen negativo para el efecto de superposición */
    border-radius: 3px !important; /* Fuerza las esquinas redondeadas individuales en TODOS */
    border: 1px solid rgba(0, 0, 0, 0.06) !important; /* Borde muy sutil añadido */
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.04) !important; 
    position: relative !important;
    width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important; /* Esconde el fondo azul cuando está afuera del bloque */
    z-index: 1;
}

/* Forzar estructura flex e interna reducida a la mitad de altura */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item,
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item a {
    display: flex !important;
    align-items: center !important; /* Centrado vertical completo */
    width: 100% !important;
    height: 100% !important;
    padding: 7px 10px !important; /* Ajustado a 5px para cortar la altura a la mitad */
    box-sizing: border-box !important;
}

/* Estado normal del texto y su transición suave */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-text {
    color: #000000 !important; /* Vuelve a negro fijo al salir el cursor */
    transition: color 0.3s ease-in-out !important;
    position: relative !important;
    z-index: 3 !important;
}

/* Asegurar que el icono también quede sobre el fondo azul */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-icon {
    position: relative !important;
    z-index: 3 !important;
}

/* --- EFECTO HOVER DE IZQUIERDA A DERECHA --- */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: #95BFE4 !important; /* Tu color seleccionado */
    transform: scaleX(0) !important; /* Empieza con tamaño cero (escondido) */
    transform-origin: left !important; /* La animación nace en la izquierda */
    transition: transform 0.4s ease-in-out !important; /* Velocidad de la transición */
    z-index: 2 !important;
    border-radius: 5px !important; /* Ajustado ligeramente para encajar dentro del borde */
}

/* Estado al pasar el cursor (Hover) - Llenado de fondo y cambio de texto a blanco */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:hover::before {
    transform: scaleX(1) !important; /* Se expande al 100% rellenando el fondo */
    transform-origin: left !important;
}
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:hover .elementor-icon-list-text {
    color: #ffffff !important; /* Texto en blanco al hacer hover */
}

/* Cuando el mouse sale, se vacía hacia la derecha */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:not(:hover)::before {
    transform-origin: right !important; /* Hace que se retire hacia el lado derecho */
}

/* Controlar el orden de las capas en cascada */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(1) { z-index: 10 !important; }
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(2) { z-index: 9 !important; }
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(3) { z-index: 8 !important; }
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(4) { z-index: 7 !important; }
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(5) { z-index: 6 !important; }
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(6) { z-index: 5 !important; }
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(7) { z-index: 4 !important; }
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(8) { z-index: 3 !important; }
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(9) { z-index: 2 !important; }
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item:nth-child(10) { z-index: 1 !important; }



/* --- ESTADO ACTIVO MEDIANTE JAVASCRIPT --- */

/* Forzar que el fondo azul se quede expandido al 100% en la fila activa */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item.is-active::before {
    transform: scaleX(1) !important;
}

/* Forzar que el texto de la fila activa se quede fijo en color blanco */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-item.is-active .elementor-icon-list-text {
    color: #ffffff !important;
}


/* --- CORRECCIÓN DE DOBLE RESALTADO EN HOVER (ACTUALIZADO) --- */

/* Apaga el fondo azul del activo SOLO cuando el mouse está sobre la lista pero NO sobre el propio elemento activo */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items:hover .elementor-icon-list-item.is-active:not(:hover)::before {
    transform: scaleX(0) !important;
}

/* Devuelve el texto a negro SOLO cuando el mouse está en la lista pero NO sobre el propio elemento activo */
.elementor-15118 .elementor-element.elementor-element-f2dd719 .elementor-icon-list-items:hover .elementor-icon-list-item.is-active:not(:hover) .elementor-icon-list-text {
    color: #000000 !important;
}/* End custom CSS */
/* Start custom CSS for eael-contact-form-7, class: .elementor-element-70873fa *//* --- CONFIGURACIÓN DE LOS CAMPOS (EFECTO FLOTANTE) --- */
.elementor-15118 .elementor-element.elementor-element-70873fa input[type="text"],
.elementor-15118 .elementor-element.elementor-element-70873fa input[type="email"],
.elementor-15118 .elementor-element.elementor-element-70873fa input[type="tel"] {
    width: 100% !important;
    background-color: #ffffff !important; /* Fondo blanco puro */
    color: #2D3748 !important;
    padding: 16px 20px !important; /* Más altura interna */
    border: none !important;
    border-bottom: 1px solid #3B9AE1 !important; /* Reducido a 1px para que sea muy fino */
    border-radius: 6px !important; /* Esquinas ligeramente redondeadas */
    box-shadow: 0px 4px 12px rgba(0,0,0,0.06) !important; /* Sombra suave idéntica a la muestra */
    box-sizing: border-box !important;
    font-size: 15px !important;
}

/* --- ELIMINAR TEXTOS FANTASMAS Y SALTOS DE LÍNEA --- */
/* Oculta los labels de CF7 excepto el contenedor de la política */
.elementor-15118 .elementor-element.elementor-element-70873fa label:not(.wpcf7-acceptance), .elementor-15118 .elementor-element.elementor-element-70873fa br {
    display: none !important;
}

.elementor-15118 .elementor-element.elementor-element-70873fa .wpcf7-form-control-wrap {
    display: block !important;
    margin-bottom: 25px !important; /* Separación perfecta entre campos */
}

/* --- ESTILO NATIVO DE ALINEACIÓN PARA LA CASILLA --- */
.elementor-15118 .elementor-element.elementor-element-70873fa .casilla-politica .wpcf7-acceptance label {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    color: #2D3748 !important;
    font-size: 14px !important;
    cursor: pointer !important;
}

.elementor-15118 .elementor-element.elementor-element-70873fa .casilla-politica input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    margin: 0 !important;
}

.elementor-15118 .elementor-element.elementor-element-70873fa .casilla-politica a {
    color: #3B9AE1 !important;
    text-decoration: underline !important;
}/* End custom CSS */