/* ==========================================================
   ECFI · SISTEMA VISUAL INSTITUCIONAL
   Aplicación global - Elementor / Popups / Formularios / Menús
   ========================================================== */

:root,
.elementor-kit-1350{
    --ecfi-blue-950:#02073a;
    --ecfi-blue-900:#06135f;
    --ecfi-blue-800:#0a2c86;
    --ecfi-blue-600:#1557d8;

    --ecfi-gold:#f4c019;
    --ecfi-gold-soft:#ffe47a;

    --ecfi-white:#ffffff;
    --ecfi-text:#dce5f5;
    --ecfi-muted:#9eabc2;

    --ecfi-border:rgba(255,255,255,.10);
    --ecfi-blue-border:rgba(21,87,216,.34);
    --ecfi-gold-border:rgba(244,192,25,.32);

    --ecfi-shadow:0 14px 38px rgba(0,0,0,.22);
    --ecfi-radius:18px;

    /* Colores globales Elementor */
    --e-global-color-primary:#1557d8;
    --e-global-color-secondary:#0a2c86;
    --e-global-color-text:#dce5f5;
    --e-global-color-accent:#f4c019;
}


/* ==========================================================
   1. BASE GENERAL
   ========================================================== */

html{
    scroll-behavior:smooth;
}

body{
    background:#02073a;
    color:var(--ecfi-text);
}

body,
button,
input,
select,
textarea{
    font-family:"Poppins","Montserrat",Arial,sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6{
    color:var(--ecfi-white);
}

p{
    color:var(--ecfi-text);
}

a{
    transition:
        color .25s ease,
        background .25s ease,
        border-color .25s ease,
        transform .25s ease,
        box-shadow .25s ease;
}


/* ==========================================================
   2. SELECCIÓN DE TEXTO
   ========================================================== */

::selection{
    background:var(--ecfi-gold);
    color:var(--ecfi-blue-950);
}


/* ==========================================================
   3. BOTONES PRINCIPALES
   ========================================================== */

.elementor-button,
.elementor-widget-button .elementor-button,
.wp-block-button__link,
button:not(.dialog-close-button):not(.eicon-close),
input[type="submit"],
input[type="button"],
input[type="reset"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button{
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:13px !important;

    background:
        linear-gradient(
            135deg,
            var(--ecfi-blue-800),
            var(--ecfi-blue-600)
        ) !important;

    color:#fff !important;

    font-weight:800 !important;

    box-shadow:
        0 10px 25px
        rgba(21,87,216,.20) !important;

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        background .25s ease !important;
}

.elementor-button:hover,
.elementor-widget-button .elementor-button:hover,
.wp-block-button__link:hover,
button:not(.dialog-close-button):not(.eicon-close):hover,
input[type="submit"]:hover,
input[type="button"]:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover{
    transform:translateY(-2px);

    background:
        linear-gradient(
            135deg,
            var(--ecfi-gold),
            var(--ecfi-gold-soft)
        ) !important;

    color:var(--ecfi-blue-950) !important;

    box-shadow:
        0 15px 32px
        rgba(244,192,25,.22) !important;
}


/* ==========================================================
   4. ENLACES
   ========================================================== */

.elementor-widget-text-editor a,
.elementor-widget-theme-post-content a{
    color:#4f8cff;
}

.elementor-widget-text-editor a:hover,
.elementor-widget-theme-post-content a:hover{
    color:var(--ecfi-gold);
}


/* ==========================================================
   5. ENCABEZADO / HEADER
   ========================================================== */

.elementor-location-header{
    color:#fff;
}

.elementor-location-header .elementor-nav-menu--main a,
.elementor-location-header .elementor-nav-menu a{
    color:#fff !important;
}

.elementor-location-header .elementor-nav-menu--main a:hover,
.elementor-location-header .elementor-nav-menu--main .elementor-item-active,
.elementor-location-header .elementor-nav-menu a:hover{
    color:var(--ecfi-gold) !important;
}


/* ==========================================================
   6. MENÚ DESPLEGABLE
   ========================================================== */

.elementor-nav-menu--dropdown,
.elementor-nav-menu__container,
.e-n-menu-content,
.elementskit-navbar-nav-default .elementskit-navbar-nav{
    background:
        linear-gradient(
            145deg,
            var(--ecfi-blue-950),
            var(--ecfi-blue-900)
        ) !important;

    border:
        1px solid
        var(--ecfi-blue-border) !important;

    border-radius:14px;

    box-shadow:var(--ecfi-shadow);
}

.elementor-nav-menu--dropdown a,
.e-n-menu-content a,
.elementskit-navbar-nav-default a{
    color:#fff !important;
}

.elementor-nav-menu--dropdown a:hover,
.e-n-menu-content a:hover,
.elementskit-navbar-nav-default a:hover{
    background:
        rgba(21,87,216,.16) !important;

    color:var(--ecfi-gold) !important;
}


/* ==========================================================
   7. ICONO MENÚ MÓVIL
   ========================================================== */

.elementor-menu-toggle,
.elementskit-menu-hamburger{
    background:
        linear-gradient(
            135deg,
            var(--ecfi-blue-800),
            var(--ecfi-blue-600)
        ) !important;

    color:#fff !important;

    border:
        1px solid
        rgba(255,255,255,.15) !important;

    border-radius:10px !important;
}

.elementor-menu-toggle:hover,
.elementskit-menu-hamburger:hover{
    background:var(--ecfi-gold) !important;
    color:var(--ecfi-blue-950) !important;
}


/* ==========================================================
   8. TARJETAS
   ========================================================== */

.elementor-post__card,
.elementor-cta__content,
.elementor-widget-icon-box .elementor-widget-container,
.elementor-widget-image-box .elementor-widget-container,
.elementor-widget-testimonial .elementor-widget-container,
.elementor-widget-counter .elementor-widget-container,
.eael-grid-post-holder,
.eael-feature-list-item,
.ekit-wid-con .elementskit-infobox{
    border:
        1px solid
        var(--ecfi-blue-border) !important;

    border-radius:var(--ecfi-radius) !important;

    background:
        linear-gradient(
            145deg,
            rgba(6,19,95,.92),
            rgba(2,7,58,.96)
        ) !important;

    box-shadow:var(--ecfi-shadow);

    transition:
        transform .3s ease,
        border-color .3s ease,
        box-shadow .3s ease;
}

.elementor-post__card:hover,
.elementor-cta__content:hover,
.eael-grid-post-holder:hover,
.ekit-wid-con .elementskit-infobox:hover{
    transform:translateY(-4px);

    border-color:
        var(--ecfi-gold-border) !important;

    box-shadow:
        0 18px 42px
        rgba(0,0,0,.30);
}


/* ==========================================================
   9. ICONOS
   ========================================================== */

.elementor-icon,
.elementor-icon-list-icon i,
.elementor-icon-list-icon svg{
    color:var(--ecfi-gold);
    fill:var(--ecfi-gold);
}


/* ==========================================================
   10. FORMULARIOS
   ========================================================== */

.elementor-field,
.elementor-field-textual,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"],
input[type="url"],
input[type="search"],
select,
textarea{
    background:
        rgba(2,7,58,.78) !important;

    color:#fff !important;

    border:
        1px solid
        rgba(21,87,216,.40) !important;

    border-radius:12px !important;

    outline:none !important;

    transition:
        border-color .25s ease,
        box-shadow .25s ease,
        background .25s ease;
}

.elementor-field:focus,
.elementor-field-textual:focus,
input:focus,
select:focus,
textarea:focus{
    background:
        rgba(6,19,95,.94) !important;

    border-color:
        var(--ecfi-gold) !important;

    box-shadow:
        0 0 0 3px
        rgba(244,192,25,.12) !important;
}

input::placeholder,
textarea::placeholder{
    color:var(--ecfi-muted) !important;
    opacity:1;
}

.elementor-field-label,
label{
    color:var(--ecfi-text);
}


/* ==========================================================
   11. ACORDEONES
   ========================================================== */

.elementor-accordion .elementor-accordion-item,
.elementor-toggle .elementor-toggle-item{
    overflow:hidden;

    border:
        1px solid
        var(--ecfi-blue-border) !important;

    border-radius:12px;

    background:
        rgba(6,19,95,.66);
}

.elementor-tab-title,
.elementor-toggle-title{
    color:#fff !important;
}

.elementor-tab-title.elementor-active,
.elementor-toggle-title.elementor-active{
    color:var(--ecfi-gold) !important;

    background:
        rgba(21,87,216,.15);
}

.elementor-tab-content,
.elementor-toggle-content{
    color:var(--ecfi-text) !important;

    background:
        rgba(2,7,58,.82);
}


/* ==========================================================
   12. PESTAÑAS / TABS
   ========================================================== */

.elementor-tabs-wrapper,
.e-n-tabs-heading{
    border-color:var(--ecfi-blue-border);
}

.elementor-tab-title,
.e-n-tab-title{
    color:var(--ecfi-text) !important;

    border-color:
        rgba(255,255,255,.08) !important;
}

.elementor-tab-title.elementor-active,
.e-n-tab-title[aria-selected="true"]{
    color:var(--ecfi-gold) !important;

    border-color:
        var(--ecfi-gold) !important;
}


/* ==========================================================
   13. VENTANAS EMERGENTES / POPUPS
   ========================================================== */

.elementor-popup-modal{
    background:
        rgba(1,4,30,.78) !important;

    backdrop-filter:blur(7px);
    -webkit-backdrop-filter:blur(7px);
}

.elementor-popup-modal .dialog-widget-content,
.dialog-widget-content,
.elementor-lightbox .dialog-widget-content,
.modal-content,
.swal2-popup{
    color:var(--ecfi-text) !important;

    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(21,87,216,.18),
            transparent 35%
        ),
        linear-gradient(
            145deg,
            var(--ecfi-blue-950),
            var(--ecfi-blue-900)
        ) !important;

    border:
        1px solid
        var(--ecfi-blue-border) !important;

    border-radius:22px !important;

    box-shadow:
        0 28px 80px
        rgba(0,0,0,.48) !important;
}

.dialog-close-button,
.elementor-popup-modal .dialog-close-button{
    color:#fff !important;

    background:
        rgba(255,255,255,.08) !important;

    border-radius:50%;

    transition:
        color .2s ease,
        background .2s ease,
        transform .2s ease;
}

.dialog-close-button:hover,
.elementor-popup-modal .dialog-close-button:hover{
    color:var(--ecfi-blue-950) !important;
    background:var(--ecfi-gold) !important;
    transform:rotate(90deg);
}


/* ==========================================================
   14. BADGES / ETIQUETAS
   ========================================================== */

.elementor-post-info,
.elementor-post-info__terms-list,
.elementor-widget-post-info,
.ecfi-badge{
    color:var(--ecfi-muted);
}


/* ==========================================================
   15. PRECIOS / PROMOCIONES
   ========================================================== */

.elementor-price-table,
.elementor-widget-price-table .elementor-widget-container{
    border:
        1px solid
        var(--ecfi-blue-border);

    background:
        linear-gradient(
            145deg,
            var(--ecfi-blue-900),
            var(--ecfi-blue-950)
        );

    border-radius:20px;
}

.elementor-price-table__price{
    color:var(--ecfi-gold) !important;
}


/* ==========================================================
   16. DIVISORES
   ========================================================== */

.elementor-divider-separator{
    border-color:
        rgba(244,192,25,.42) !important;
}


/* ==========================================================
   17. PAGINACIÓN
   ========================================================== */

.elementor-pagination a,
.elementor-pagination span{
    border-radius:8px;
}

.elementor-pagination a{
    color:var(--ecfi-text) !important;
}

.elementor-pagination a:hover,
.elementor-pagination .current{
    color:var(--ecfi-blue-950) !important;
    background:var(--ecfi-gold);
}


/* ==========================================================
   18. WOOCOMMERCE
   ========================================================== */

.woocommerce div.product,
.woocommerce-cart-form,
.woocommerce-checkout,
.woocommerce-account .woocommerce-MyAccount-content{
    color:var(--ecfi-text);
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error{
    color:var(--ecfi-text);

    background:
        var(--ecfi-blue-900);

    border-color:
        var(--ecfi-gold);
}

.woocommerce-message::before,
.woocommerce-info::before{
    color:var(--ecfi-gold);
}


/* ==========================================================
   19. BARRAS Y SCROLL
   ========================================================== */

::-webkit-scrollbar{
    width:10px;
    height:10px;
}

::-webkit-scrollbar-track{
    background:var(--ecfi-blue-950);
}

::-webkit-scrollbar-thumb{
    background:
        linear-gradient(
            var(--ecfi-blue-600),
            var(--ecfi-blue-800)
        );

    border-radius:999px;
}

::-webkit-scrollbar-thumb:hover{
    background:var(--ecfi-gold);
}


/* ==========================================================
   20. MÓVIL
   ========================================================== */

@media(max-width:767px){

    .elementor-popup-modal .dialog-widget-content,
    .dialog-widget-content{
        width:
            calc(100% - 24px) !important;

        max-width:
            calc(100% - 24px) !important;

        border-radius:16px !important;
    }

    .elementor-button{
        min-height:44px;
    }

    .elementor-nav-menu--dropdown{
        border-radius:0 0 16px 16px;
    }

}


/* ==========================================================
   21. ACCESIBILIDAD
   ========================================================== */

:focus-visible{
    outline:
        3px solid
        var(--ecfi-gold) !important;

    outline-offset:3px;
}

@media(prefers-reduced-motion:reduce){

    *,
    *::before,
    *::after{
        scroll-behavior:auto !important;
        animation-duration:.01ms !important;
        transition-duration:.01ms !important;
    }

}


/* ==========================================================
   ECFI · CAPA DE CONTRASTE Y LEGIBILIDAD
   ========================================================== */


/* ----------------------------------------------------------
   1. TARJETAS Y BLOQUES OSCUROS
   ---------------------------------------------------------- */

.elementor-post__card h1,
.elementor-post__card h2,
.elementor-post__card h3,
.elementor-post__card h4,
.elementor-post__card h5,
.elementor-post__card h6,

.elementor-cta__content h1,
.elementor-cta__content h2,
.elementor-cta__content h3,
.elementor-cta__content h4,

.eael-grid-post-holder h1,
.eael-grid-post-holder h2,
.eael-grid-post-holder h3,

.ekit-wid-con .elementskit-infobox h1,
.ekit-wid-con .elementskit-infobox h2,
.ekit-wid-con .elementskit-infobox h3 {
    color: #ffffff !important;
}


.elementor-post__card p,
.elementor-cta__content p,
.eael-grid-post-holder p,
.ekit-wid-con .elementskit-infobox p {
    color: #dce5f5 !important;
}


/* ----------------------------------------------------------
   2. TESTIMONIOS
   ---------------------------------------------------------- */

.elementor-widget-testimonial,
.elementor-widget-testimonial-carousel {
    color: #dce5f5;
}

.elementor-testimonial-content,
.elementor-testimonial-content p,
.elementor-testimonial__text,
.elementor-testimonial__text p {
    color: #dce5f5 !important;
    opacity: 1 !important;
}

.elementor-testimonial-name,
.elementor-testimonial__name {
    color: #ffffff !important;
    font-weight: 700 !important;
}

.elementor-testimonial-job,
.elementor-testimonial__title {
    color: #b8c6dd !important;
}

.elementor-widget-testimonial .elementor-icon,
.elementor-widget-testimonial-carousel .elementor-icon {
    color: #f4c019 !important;
    fill: #f4c019 !important;
}


/* ----------------------------------------------------------
   3. ETIQUETAS PEQUEÑAS SOBRE FONDOS OSCUROS
   ---------------------------------------------------------- */

.elementor-post__card .elementor-heading-title,
.elementor-cta__content .elementor-heading-title,
.eael-grid-post-holder .elementor-heading-title {
    color: #ffffff !important;
}


/* ----------------------------------------------------------
   4. POPUPS / VENTANAS
   ---------------------------------------------------------- */

.elementor-popup-modal .dialog-widget-content h1,
.elementor-popup-modal .dialog-widget-content h2,
.elementor-popup-modal .dialog-widget-content h3,
.elementor-popup-modal .dialog-widget-content h4,
.elementor-popup-modal .dialog-widget-content h5,
.elementor-popup-modal .dialog-widget-content h6 {
    color: #ffffff !important;
}

.elementor-popup-modal .dialog-widget-content p,
.elementor-popup-modal .dialog-widget-content li,
.elementor-popup-modal .dialog-widget-content span:not(.elementor-button-text) {
    color: #dce5f5;
}


/* ----------------------------------------------------------
   5. ACORDEONES / PESTAÑAS
   ---------------------------------------------------------- */

.elementor-accordion .elementor-tab-title,
.elementor-toggle .elementor-tab-title,
.elementor-toggle .elementor-toggle-title,
.e-n-tabs .e-n-tab-title {
    color: #ffffff !important;
}

.elementor-accordion .elementor-tab-title.elementor-active,
.elementor-toggle .elementor-tab-title.elementor-active,
.e-n-tabs .e-n-tab-title[aria-selected="true"] {
    color: #f4c019 !important;
}

.elementor-accordion .elementor-tab-content,
.elementor-toggle .elementor-tab-content,
.e-n-tabs-content {
    color: #dce5f5 !important;
}


/* ----------------------------------------------------------
   6. LISTAS E ICONOS
   ---------------------------------------------------------- */

.elementor-icon-list-text {
    color: #dce5f5;
}

.elementor-icon-list-icon i,
.elementor-icon-list-icon svg {
    color: #f4c019 !important;
    fill: #f4c019 !important;
}


/* ----------------------------------------------------------
   7. ENLACES SOBRE FONDOS OSCUROS
   ---------------------------------------------------------- */

.elementor-post__card a:not(.elementor-button),
.elementor-cta__content a:not(.elementor-button),
.elementor-popup-modal a:not(.elementor-button),
.elementor-widget-testimonial a {
    color: #7fb0ff !important;
}

.elementor-post__card a:not(.elementor-button):hover,
.elementor-cta__content a:not(.elementor-button):hover,
.elementor-popup-modal a:not(.elementor-button):hover,
.elementor-widget-testimonial a:hover {
    color: #f4c019 !important;
}


/* ----------------------------------------------------------
   8. TEXTO MUTED / METADATOS
   ---------------------------------------------------------- */

.elementor-post-info,
.elementor-post-info__item,
.elementor-post-date,
.elementor-post-avatar,
.elementor-post__meta-data {
    color: #b8c6dd !important;
}


/* ----------------------------------------------------------
   9. SECCIÓN TESTIMONIOS - REFUERZO ESPECIAL
   ---------------------------------------------------------- */

.elementor-widget-testimonial .elementor-widget-container,
.elementor-widget-testimonial-carousel .swiper-slide {
    color: #dce5f5 !important;
}

.elementor-widget-testimonial .elementor-heading-title,
.elementor-widget-testimonial-carousel .elementor-heading-title {
    color: #ffffff !important;
}


/* ----------------------------------------------------------
   10. CLASES AUXILIARES ECFI
   Por si después queremos aplicarlas directamente en Elementor
   ---------------------------------------------------------- */

.ecfi-dark-section,
.ecfi-dark-card {
    color: #dce5f5 !important;
}

.ecfi-dark-section h1,
.ecfi-dark-section h2,
.ecfi-dark-section h3,
.ecfi-dark-section h4,
.ecfi-dark-card h1,
.ecfi-dark-card h2,
.ecfi-dark-card h3,
.ecfi-dark-card h4 {
    color: #ffffff !important;
}

.ecfi-dark-section p,
.ecfi-dark-section li,
.ecfi-dark-card p,
.ecfi-dark-card li {
    color: #dce5f5 !important;
}

.ecfi-eyebrow,
.ecfi-dark-section .ecfi-eyebrow,
.ecfi-dark-card .ecfi-eyebrow {
    color: #f4c019 !important;
}


/* ----------------------------------------------------------
   11. MÓVIL
   ---------------------------------------------------------- */

@media (max-width: 767px) {

    .elementor-testimonial-content,
    .elementor-testimonial__text {
        color: #e7edf8 !important;
    }

    .elementor-testimonial-name,
    .elementor-testimonial__name {
        color: #ffffff !important;
    }

}


/* ==========================================================
   ECFI · BLOQUE NECESITAS AYUDA
   ========================================================== */

.ecfi-help-contrast{
    position:relative;
    overflow:hidden;

    background:
        radial-gradient(
            circle at 88% 18%,
            rgba(244,192,25,.12),
            transparent 32%
        ),
        radial-gradient(
            circle at 8% 90%,
            rgba(21,87,216,.20),
            transparent 38%
        ),
        linear-gradient(
            135deg,
            #06135f 0%,
            #0a2c86 48%,
            #02073a 100%
        ) !important;

    border:
        1px solid rgba(244,192,25,.22) !important;

    border-radius:18px !important;

    box-shadow:
        0 18px 45px rgba(0,0,0,.28) !important;
}


/* brillo superior institucional */

.ecfi-help-contrast::before{
    content:"";
    position:absolute;
    left:0;
    right:0;
    top:0;
    height:3px;

    background:
        linear-gradient(
            90deg,
            transparent,
            #f4c019,
            #ffe47a,
            transparent
        );

    opacity:.85;
    pointer-events:none;
}


/* título */

.ecfi-help-contrast h1,
.ecfi-help-contrast h2,
.ecfi-help-contrast h3,
.ecfi-help-contrast h4,
.ecfi-help-contrast h5,
.ecfi-help-contrast h6,
.ecfi-help-contrast .elementor-heading-title{
    color:#ffffff !important;

    text-shadow:
        0 2px 12px rgba(0,0,0,.22);
}


/* párrafos */

.ecfi-help-contrast p,
.ecfi-help-contrast .elementor-widget-text-editor,
.ecfi-help-contrast .elementor-widget-text-editor p,
.ecfi-help-contrast li{
    color:#dce5f5 !important;
    opacity:1 !important;
}


/* spans heredados de Elementor */

.ecfi-help-contrast p span,
.ecfi-help-contrast .elementor-widget-text-editor span{
    color:#dce5f5 !important;
}


/* enlaces */

.ecfi-help-contrast a:not(.elementor-button){
    color:#ffe47a !important;
}

.ecfi-help-contrast a:not(.elementor-button):hover{
    color:#ffffff !important;
}


/* BOTÓN CONTACTANOS */

.ecfi-help-contrast .elementor-button,
.ecfi-help-contrast a.elementor-button,
.ecfi-help-contrast button{
    background:
        linear-gradient(
            135deg,
            #f4c019,
            #ffe47a
        ) !important;

    color:#02073a !important;

    border:
        1px solid rgba(255,255,255,.24) !important;

    font-weight:800 !important;

    box-shadow:
        0 10px 28px rgba(244,192,25,.22) !important;
}

.ecfi-help-contrast .elementor-button span,
.ecfi-help-contrast .elementor-button-text{
    color:#02073a !important;
}


/* Hover botón */

.ecfi-help-contrast .elementor-button:hover,
.ecfi-help-contrast a.elementor-button:hover,
.ecfi-help-contrast button:hover{
    background:#ffffff !important;

    color:#06135f !important;

    transform:translateY(-2px);

    box-shadow:
        0 14px 32px rgba(0,0,0,.28) !important;
}

.ecfi-help-contrast .elementor-button:hover span{
    color:#06135f !important;
}


/* Fotos del equipo: conservarlas sin filtros */

.ecfi-help-contrast img{
    filter:none !important;
}


/* Móvil */

@media(max-width:767px){

    .ecfi-help-contrast{
        border-radius:15px !important;
    }

    .ecfi-help-contrast .elementor-heading-title{
        line-height:1.18 !important;
    }

    .ecfi-help-contrast p{
        line-height:1.65 !important;
    }

    .ecfi-help-contrast .elementor-button{
        width:100%;
        justify-content:center;
    }

}

/* ECFI-TITULOS-BLANCOS-INICIO */

/* ==========================================================
   ECFI · TÍTULOS PRINCIPALES EN BLANCO
   Mantiene los span que tengan su propio color dorado
   ========================================================== */

.elementor-widget-heading .elementor-heading-title,
.elementor-widget-heading h1,
.elementor-widget-heading h2,
.elementor-widget-heading h3,
.elementor-widget-heading h4,
.elementor-widget-heading h5,
.elementor-widget-heading h6,

.elementor-widget-text-editor h1,
.elementor-widget-text-editor h2,
.elementor-widget-text-editor h3,
.elementor-widget-text-editor h4,

.e-con h1,
.e-con h2,
.e-con h3,
.elementor-section h1,
.elementor-section h2,
.elementor-section h3 {
    color: #ffffff !important;
}


/*
 * IMPORTANTE:
 * No aplicamos color a los SPAN internos.
 * De esta forma, palabras destacadas en dorado
 * mantienen el color definido en Elementor.
 */

.elementor-heading-title {
    text-shadow: 0 2px 12px rgba(0,0,0,.18);
}


/* Títulos de tarjetas oscuras */

.elementor-widget-icon-box .elementor-icon-box-title,
.elementor-widget-image-box .elementor-image-box-title,
.elementskit-infobox .elementskit-info-box-title,
.ekit-wid-con .elementskit-info-box-title {
    color: #ffffff !important;
}


/* Títulos de bloques especiales */

.elementor-widget-testimonial h1,
.elementor-widget-testimonial h2,
.elementor-widget-testimonial h3,
.elementor-widget-testimonial-carousel h1,
.elementor-widget-testimonial-carousel h2,
.elementor-widget-testimonial-carousel h3 {
    color: #ffffff !important;
}


/* Mejor legibilidad en móvil */

@media (max-width: 767px) {

    .elementor-heading-title,
    .e-con h1,
    .e-con h2,
    .e-con h3 {
        color: #ffffff !important;
    }

}

/* ECFI-TITULOS-BLANCOS-FIN */
