.elementor-16711 .elementor-element.elementor-element-3c8a3e2{--display:flex;--min-height:30rem;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--overlay-opacity:0.5;}.elementor-16711 .elementor-element.elementor-element-3c8a3e2:not(.elementor-motion-effects-element-type-background), .elementor-16711 .elementor-element.elementor-element-3c8a3e2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://staging.laregionaldeseguros.com/wp-content/uploads/2026/08/Banner_cabecera_LRDS-2-01.jpg");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-16711 .elementor-element.elementor-element-3c8a3e2::before, .elementor-16711 .elementor-element.elementor-element-3c8a3e2 > .elementor-background-video-container::before, .elementor-16711 .elementor-element.elementor-element-3c8a3e2 > .e-con-inner > .elementor-background-video-container::before, .elementor-16711 .elementor-element.elementor-element-3c8a3e2 > .elementor-background-slideshow::before, .elementor-16711 .elementor-element.elementor-element-3c8a3e2 > .e-con-inner > .elementor-background-slideshow::before, .elementor-16711 .elementor-element.elementor-element-3c8a3e2 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{--background-overlay:'';}.elementor-16711 .elementor-element.elementor-element-01b3827{--display:flex;}.elementor-16711 .elementor-element.elementor-element-b09460b{text-align:center;}.elementor-16711 .elementor-element.elementor-element-b09460b .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:3rem;font-weight:700;text-shadow:3px 3px 5px #182834;color:#FFFFFF;}.elementor-16711 .elementor-element.elementor-element-f33bcc1{text-align:center;}.elementor-16711 .elementor-element.elementor-element-9cff842.elementor-element{--align-self:center;}.elementor-16711 .elementor-element.elementor-element-392cf71{--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-16711 .elementor-element.elementor-element-421d385{text-align:start;}.elementor-16711 .elementor-element.elementor-element-421d385 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:4rem;font-weight:700;color:var( --e-global-color-text );}.elementor-16711 .elementor-element.elementor-element-2d93efb .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-text );}.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button{background-color:#95BFE4;font-family:"Titillium Web", Sans-serif;font-size:2rem;font-weight:700;fill:#FFFFFF;color:#FFFFFF;}.elementor-16711 .elementor-element.elementor-element-551d475{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table{width:100%;border-style:solid;border-width:1px 1px 1px 1px;border-color:#eeeeee;}.elementor-16711 .elementor-element.elementor-element-c4b5913 th{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-align:left;border-style:solid;border-width:1px 1px 1px 1px;border-color:#eeeeee;}.elementor-16711 .elementor-element.elementor-element-c4b5913 th .ql-editor{text-align:left;}.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table-wrap .ea-advanced-data-table th{color:#444444;}.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table-wrap .ea-advanced-data-table th:before{border-bottom-color:#444444;}.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table-wrap .ea-advanced-data-table th:after{border-top-color:#444444;}.elementor-16711 .elementor-element.elementor-element-c4b5913 thead{background-color:#8BB8E8;}.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table th{padding:10px 10px 10px 10px;}.elementor-16711 .elementor-element.elementor-element-c4b5913 td{font-family:"Poppins", Sans-serif;font-size:1rem;font-weight:400;text-align:left;color:#666666;border-style:solid;border-width:1px 1px 1px 1px;border-color:#eeeeee;}.elementor-16711 .elementor-element.elementor-element-c4b5913 td .ql-editor{text-align:left;}.elementor-16711 .elementor-element.elementor-element-c4b5913 tbody{background-color:#ffffff;}.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table td{padding:10px 10px 10px 10px;}.elementor-16711 .elementor-element.elementor-element-b51cca6 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-text );}.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button{background-color:#95BFE4;font-family:"Titillium Web", Sans-serif;font-size:2rem;font-weight:700;fill:#FFFFFF;color:#FFFFFF;}.elementor-16711 .elementor-element.elementor-element-2fa3652{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table{width:100%;border-style:solid;border-width:1px 1px 1px 1px;border-color:#eeeeee;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 th{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-align:left;border-style:solid;border-width:1px 1px 1px 1px;border-color:#eeeeee;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 th .ql-editor{text-align:left;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table-wrap .ea-advanced-data-table th{color:#444444;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table-wrap .ea-advanced-data-table th:before{border-bottom-color:#444444;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table-wrap .ea-advanced-data-table th:after{border-top-color:#444444;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 thead{background-color:#8BB8E8;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table th{padding:10px 10px 10px 10px;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 td{font-family:"Poppins", Sans-serif;font-size:1rem;font-weight:400;text-align:left;color:#666666;border-style:solid;border-width:1px 1px 1px 1px;border-color:#eeeeee;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 td .ql-editor{text-align:left;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 tbody{background-color:#ffffff;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table td{padding:10px 10px 10px 10px;}.elementor-16711 .elementor-element.elementor-element-5740f86{text-align:center;}.elementor-16711 .elementor-element.elementor-element-5740f86 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-text );}.elementor-16711 .elementor-element.elementor-element-8cf5d10{text-align:center;}.elementor-16711 .elementor-element.elementor-element-8cf5d10 .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-size:var( --e-global-typography-primary-font-size );font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-text );}.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button{background-color:#95BFE4;font-family:"Titillium Web", Sans-serif;font-size:2rem;font-weight:700;fill:#FFFFFF;color:#FFFFFF;}.elementor-16711 .elementor-element.elementor-element-90614f0{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}@media(min-width:1025px){.elementor-16711 .elementor-element.elementor-element-3c8a3e2:not(.elementor-motion-effects-element-type-background), .elementor-16711 .elementor-element.elementor-element-3c8a3e2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-attachment:scroll;}}@media(max-width:1024px){.elementor-16711 .elementor-element.elementor-element-2d93efb .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table{width:100%;}.elementor-16711 .elementor-element.elementor-element-c4b5913 th{font-size:var( --e-global-typography-accent-font-size );}.elementor-16711 .elementor-element.elementor-element-b51cca6 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table{width:100%;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 th{font-size:var( --e-global-typography-accent-font-size );}.elementor-16711 .elementor-element.elementor-element-5740f86 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-16711 .elementor-element.elementor-element-8cf5d10 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}@media(max-width:767px){.elementor-16711 .elementor-element.elementor-element-2d93efb .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table{width:100%;}.elementor-16711 .elementor-element.elementor-element-c4b5913 th{font-size:var( --e-global-typography-accent-font-size );}.elementor-16711 .elementor-element.elementor-element-b51cca6 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table{width:100%;}.elementor-16711 .elementor-element.elementor-element-b8bf6b3 th{font-size:var( --e-global-typography-accent-font-size );}.elementor-16711 .elementor-element.elementor-element-5740f86 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}.elementor-16711 .elementor-element.elementor-element-8cf5d10 .elementor-heading-title{font-size:var( --e-global-typography-primary-font-size );}}/* Start custom CSS for container, class: .elementor-element-3c8a3e2 *//* --- 1. ANIMACIÓN ULTRA FLUIDA Y LENTA PARA EL FONDO --- */
.elementor-16711 .elementor-element.elementor-element-3c8a3e2 {
    opacity: 0;
    animation: fondoCinematicoLento 4s cubic-bezier(0.16, 1, 0.3, 1) forwards;
}

@keyframes fondoCinematicoLento {
    from {
        opacity: 0;
        transform: scale(1.08);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* --- 2. CONFIGURACIÓN GENERAL PARA LOS TEXTOS --- */
/* Prepara el título y las migas de pan para que entren con suavidad */
.elementor-16711 .elementor-element.elementor-element-3c8a3e2 .elementor-heading-title, 
.elementor-16711 .elementor-element.elementor-element-3c8a3e2 .elementor-breadcrumbs,
.elementor-16711 .elementor-element.elementor-element-3c8a3e2 .elementor-widget-text-editor {
    opacity: 0;
    animation-name: textoCinematico !important;
    animation-duration: 1.2s !important;
    animation-timing-function: cubic-bezier(0.16, 1, 0.3, 1) !important;
    animation-fill-mode: forwards !important;
}

/* --- 3. RETARDOS (DELAYS) PARA EL EFECTO SECUENCIAL --- */

/* El Título Principal espera 0.6 segundos antes de subir */
.elementor-16711 .elementor-element.elementor-element-3c8a3e2 .elementor-widget-heading {
    margin: 0; /* Asegura la alineación */
}
.elementor-16711 .elementor-element.elementor-element-3c8a3e2 .elementor-widget-heading .elementor-heading-title {
    animation-delay: 0.6s !important;
}

/* Las Migas de Pan (o texto secundario) esperan 1.1 segundos */
.elementor-16711 .elementor-element.elementor-element-3c8a3e2 .elementor-widget-breadcrumbs .elementor-breadcrumbs,
.elementor-16711 .elementor-element.elementor-element-3c8a3e2 .elementor-widget-text-editor {
    animation-delay: 1.1s !important;
}

/* --- 4. MAPA DE MOVIMIENTO DE LOS TEXTOS --- */
@keyframes textoCinematico {
    from {
        opacity: 0;
        transform: translateY(25px); /* Se deslizan desde abajo */
    }
    to {
        opacity: 1;
        transform: translateY(0); /* Quedan en su posición original */
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-551d475 *//* --- CONTROL DINÁMICO: SE ADAPTA AL TAMAÑO DE ELEMENTOR --- */
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button {
    position: relative !important;
    overflow: hidden !important; /* Corta los cuadrados excedentes */
    z-index: 1 !important;
    transition: color 0.3s ease !important;
    /* Eliminamos height, line-height, padding y border-radius fijos */
}

/* Forzar que el texto flote por encima de la animación */
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button .elementor-button-content-wrapper,
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button .elementor-button-text,
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button .elementor-button-icon {
    position: relative !important;
    z-index: 3 !important;
}

/* Base estructural de los dos cuadrados negros acelerados por hardware */
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button::before,
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button::after {
    content: '' !important;
    position: absolute !important;
    background-color: #333333 !important; /* Tu color negro de hover */
    z-index: -1 !important;
    will-change: transform !important;
}

/* CUADRADO IZQUIERDO: Centrado verticalmente */
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button::before {
    top: 50% !important;
    left: -40px !important;
    width: 20px !important;   
    height: 20px !important;  
    transform: translate(0, -50%) scale(1) !important;
    transition: left 0.35s cubic-bezier(0.25, 0.8, 0.25, 1), 
                transform 0.25s cubic-bezier(0.25, 0.8, 0.25, 1) 0.35s !important;
}

/* CUADRADO DERECHO: Lee dinámicamente el 100% de la altura que le des en Elementor */
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button::after {
    top: 0 !important;
    right: -40px !important;
    width: 15px !important;   
    height: 100% !important;  /* &lt;--- TOMA EL ALTO DINÁMICO DE TU MENÚ VISUAL */
    transform: scaleX(1) !important;
    transform-origin: left center !important;
    transition: right 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), 
                transform 0.25s cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s !important;
}

/* --- DETONADORES EN HOVER PURAMENTE NATIVOS --- */

/* El izquierdo viaja al centro geométrico y se expande en cruz */
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button:hover::before {
    left: 50% !important;
    transform: translate(-50%, -50%) scale(40) !important; /* Multiplicador alto para cubrir botones grandes */
}

/* El derecho recorre todo el botón hasta el borde izquierdo y se estira */
.elementor-16711 .elementor-element.elementor-element-551d475 .elementor-button:hover::after {
    right: 100% !important;
    transform: scaleX(50) !important; /* Multiplicador alto para cubrir botones anchos */
}/* End custom CSS */
/* Start custom CSS for eael-advanced-data-table, class: .elementor-element-c4b5913 *//* 1. Efecto Striped (filas intermedias, sin primera ni las 2 últimas) */
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:nth-child(odd):not(:first-child):not(:last-child):not(:nth-last-child(2)) {
    background-color: #F7F9FA !important;
}

.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:nth-child(even):not(:first-child):not(:last-child):not(:nth-last-child(2)) {
    background-color: #FFFFFF !important;
}
Q
/* 2. Primera fila */
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:first-child {
    background-color: #8BB8E8 !important;
}
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:first-child td,
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:first-child th {
    background-color: #8BB8E8 !important;
    color: #FFFFFF !important;
    font-weight: bold !important;
}

/* Fila vacía extra que mete Essential Addons */
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:last-child {
    display: none !important;
}

/* 3. PRIMAS = penúltima fila real */
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:nth-last-child(2),
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:nth-last-child(2) td,
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:nth-last-child(2) th {
    background-color: #8BB8E8 !important;
    color: #FFFFFF !important;
    font-weight: bold !important;
}

/* Hover intermedias */
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:hover:not(:first-child):not(:last-child):not(:nth-last-child(2)) {
    background-color: #E2E8F0 !important;
    transition: background-color 0.2s ease;
}

@media (max-width: 767px) {
    .elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table {
        overflow-x: auto !important;
        display: block !important;
        width: 100% !important;
        -webkit-overflow-scrolling: touch;
    }
}

/* Hover PRIMAS */
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:nth-last-child(2):hover,
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:nth-last-child(2):hover td,
.elementor-16711 .elementor-element.elementor-element-c4b5913 .ea-advanced-data-table tbody tr:nth-last-child(2):hover th {
    background-color: #6FA4DD !important;
    color: #FFFFFF !important;
    transition: background-color 0.2s ease;
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-2fa3652 *//* --- CONTROL DINÁMICO: SE ADAPTA AL TAMAÑO DE ELEMENTOR --- */
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button {
    position: relative !important;
    overflow: hidden !important; /* Corta los cuadrados excedentes */
    z-index: 1 !important;
    transition: color 0.3s ease !important;
    /* Eliminamos height, line-height, padding y border-radius fijos */
}

/* Forzar que el texto flote por encima de la animación */
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button .elementor-button-content-wrapper,
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button .elementor-button-text,
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button .elementor-button-icon {
    position: relative !important;
    z-index: 3 !important;
}

/* Base estructural de los dos cuadrados negros acelerados por hardware */
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button::before,
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button::after {
    content: '' !important;
    position: absolute !important;
    background-color: #333333 !important; /* Tu color negro de hover */
    z-index: -1 !important;
    will-change: transform !important;
}

/* CUADRADO IZQUIERDO: Centrado verticalmente */
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button::before {
    top: 50% !important;
    left: -40px !important;
    width: 20px !important;   
    height: 20px !important;  
    transform: translate(0, -50%) scale(1) !important;
    transition: left 0.35s cubic-bezier(0.25, 0.8, 0.25, 1), 
                transform 0.25s cubic-bezier(0.25, 0.8, 0.25, 1) 0.35s !important;
}

/* CUADRADO DERECHO: Lee dinámicamente el 100% de la altura que le des en Elementor */
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button::after {
    top: 0 !important;
    right: -40px !important;
    width: 15px !important;   
    height: 100% !important;  /* &lt;--- TOMA EL ALTO DINÁMICO DE TU MENÚ VISUAL */
    transform: scaleX(1) !important;
    transform-origin: left center !important;
    transition: right 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), 
                transform 0.25s cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s !important;
}

/* --- DETONADORES EN HOVER PURAMENTE NATIVOS --- */

/* El izquierdo viaja al centro geométrico y se expande en cruz */
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button:hover::before {
    left: 50% !important;
    transform: translate(-50%, -50%) scale(40) !important; /* Multiplicador alto para cubrir botones grandes */
}

/* El derecho recorre todo el botón hasta el borde izquierdo y se estira */
.elementor-16711 .elementor-element.elementor-element-2fa3652 .elementor-button:hover::after {
    right: 100% !important;
    transform: scaleX(50) !important; /* Multiplicador alto para cubrir botones anchos */
}/* End custom CSS */
/* Start custom CSS for eael-advanced-data-table, class: .elementor-element-b8bf6b3 *//* 1. Striped (filas intermedias, sin primera ni última) */
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:nth-child(odd):not(:first-child):not(:last-child) {
    background-color: #F7F9FA !important;
}

.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:nth-child(even):not(:first-child):not(:last-child) {
    background-color: #FFFFFF !important;
}

/* 2. Primera fila (encabezado) */
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:first-child,
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:first-child td,
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:first-child th {
    background-color: #8BB8E8 !important;
    color: #FFFFFF !important;
    font-weight: bold !important;
}

/* 3. Solo ocultar fila fantasma VACÍA de Essential Addons (si existe) */
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:last-child:has(td:first-child:empty) {
    display: none !important;
}

/* 4. PRIMAS = última fila con datos */
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:last-child:not(:has(td:first-child:empty)),
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:last-child:not(:has(td:first-child:empty)) td,
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:last-child:not(:has(td:first-child:empty)) th,
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:nth-last-child(2):has(+ tr td:first-child:empty),
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:nth-last-child(2):has(+ tr td:first-child:empty) td,
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:nth-last-child(2):has(+ tr td:first-child:empty) th {
    background-color: #8BB8E8 !important;
    color: #FFFFFF !important;
    font-weight: bold !important;
}

/* Hover intermedias */
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:hover:not(:first-child):not(:last-child) {
    background-color: #E2E8F0 !important;
    transition: background-color 0.2s ease;
}

/* Hover PRIMAS */
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:last-child:not(:has(td:first-child:empty)):hover,
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:last-child:not(:has(td:first-child:empty)):hover td,
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:nth-last-child(2):has(+ tr td:first-child:empty):hover,
.elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table tbody tr:nth-last-child(2):has(+ tr td:first-child:empty):hover td {
    background-color: #6FA4DD !important;
    color: #FFFFFF !important;
}

@media (max-width: 767px) {
    .elementor-16711 .elementor-element.elementor-element-b8bf6b3 .ea-advanced-data-table {
        overflow-x: auto !important;
        display: block !important;
        width: 100% !important;
        -webkit-overflow-scrolling: touch;
    }
}/* End custom CSS */
/* Start custom CSS for button, class: .elementor-element-90614f0 *//* --- CONTROL DINÁMICO: SE ADAPTA AL TAMAÑO DE ELEMENTOR --- */
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button {
    position: relative !important;
    overflow: hidden !important; /* Corta los cuadrados excedentes */
    z-index: 1 !important;
    transition: color 0.3s ease !important;
    /* Eliminamos height, line-height, padding y border-radius fijos */
}

/* Forzar que el texto flote por encima de la animación */
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button .elementor-button-content-wrapper,
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button .elementor-button-text,
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button .elementor-button-icon {
    position: relative !important;
    z-index: 3 !important;
}

/* Base estructural de los dos cuadrados negros acelerados por hardware */
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button::before,
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button::after {
    content: '' !important;
    position: absolute !important;
    background-color: #333333 !important; /* Tu color negro de hover */
    z-index: -1 !important;
    will-change: transform !important;
}

/* CUADRADO IZQUIERDO: Centrado verticalmente */
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button::before {
    top: 50% !important;
    left: -40px !important;
    width: 20px !important;   
    height: 20px !important;  
    transform: translate(0, -50%) scale(1) !important;
    transition: left 0.35s cubic-bezier(0.25, 0.8, 0.25, 1), 
                transform 0.25s cubic-bezier(0.25, 0.8, 0.25, 1) 0.35s !important;
}

/* CUADRADO DERECHO: Lee dinámicamente el 100% de la altura que le des en Elementor */
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button::after {
    top: 0 !important;
    right: -40px !important;
    width: 15px !important;   
    height: 100% !important;  /* &lt;--- TOMA EL ALTO DINÁMICO DE TU MENÚ VISUAL */
    transform: scaleX(1) !important;
    transform-origin: left center !important;
    transition: right 0.4s cubic-bezier(0.25, 0.8, 0.25, 1), 
                transform 0.25s cubic-bezier(0.25, 0.8, 0.25, 1) 0.4s !important;
}

/* --- DETONADORES EN HOVER PURAMENTE NATIVOS --- */

/* El izquierdo viaja al centro geométrico y se expande en cruz */
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button:hover::before {
    left: 50% !important;
    transform: translate(-50%, -50%) scale(40) !important; /* Multiplicador alto para cubrir botones grandes */
}

/* El derecho recorre todo el botón hasta el borde izquierdo y se estira */
.elementor-16711 .elementor-element.elementor-element-90614f0 .elementor-button:hover::after {
    right: 100% !important;
    transform: scaleX(50) !important; /* Multiplicador alto para cubrir botones anchos */
}/* End custom CSS */