/* ==================================================
   FUNEBRE: Section Highlight (2 columnas: imagen | tarjeta)
   Targeting por :has() sobre clases de WIDGET (las de contenedor no renderizan)
   ================================================== */

.section-highlight {
    padding: 0;
}

.section-highlight .e-con-inner {
    padding: 0;
    min-width: 100%;
}

.section-highlight__title { text-align: center; margin-bottom: 8px; }
.section-highlight__title .title-accent { font-size: 0.46em; letter-spacing: 0.06em; }

.e-con.e-con:has(> .section-highlight__media),
.e-con.e-con:has(> .e-con-inner > .section-highlight__media) {
    flex-direction: row !important; 
    flex-wrap: nowrap !important;
    align-items: center !important; 
    justify-content: center !important;
    align-items: stretch !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    
}

.section-highlight__media { 
    min-width: 0% !important;
    width: 100%;
    max-width: 30rem !important;
    display: flex;
    flex: 0 0 50% !important; 
    position: relative; 
    justify-content: end;
    z-index: 2; 
}

.section-highlight__media img { 
    width: 100%; 
    display: block; 
    border-radius: 18px; 
    height: 100% !important;
    object-fit: cover !important;
}

.e-con.e-con:has(> .section-highlight__text),
.e-con.e-con:has(> .e-con-inner > .section-highlight__text) {
    flex: 0 1 50% !important; 
    background-color: #E6E3E5 !important;
    border-radius: 0 2rem 2rem 0 !important;
    padding: 3rem !important;
    align-items: center !important; 
    text-align: center;
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
    justify-content: center !important;
}

.section-highlight__text { 
    max-width: 430px; 
    margin-left: auto; 
    margin-right: auto; 
}

.section-highlight__text, .section-highlight__text p { 
    color: #5b6470 !important; 
    text-align: center; 
    line-height: 1.15;
    font-size: 1.4rem !important;
    font-weight: 300;
}

.section-highlight__text p { 
    margin-bottom: 16px; 
}

.section-highlight__cta { 
    margin-top: 14px; 
    text-align: center; 
}

.section-highlight__cta .elementor-button {
    background-color: #4b5568 !important; 
    color: #f4f1ec !important;
    font-size: 1rem !important;
    padding: 0.8rem 3rem 0.9rem 3rem !important;
    letter-spacing: 0.04em;
}

.section-highlight__cta .elementor-button:hover { 
    background-color: #3b424f !important; 
}

div.section-highlight__phone.elementor-widget-heading .elementor-heading-title { 
    color: #5B6470D4 !important; 
    font-weight: 500; 
    margin-top: 12px; 
}

@media (min-width: 1025px) {
    
    .section-highlight {
        width: 90%;
    }
}

@media (max-width: 1024px) {

    .section-highlight {
        width: 94%;
    }
}

@media (max-width: 880px) {
    .e-con.e-con:has(> .section-highlight__media),
    .e-con.e-con:has(> .e-con-inner > .section-highlight__media) { flex-direction: column !important; }
    .section-highlight__media { flex-basis: auto !important; width: 100%; max-width: 460px; }
    .e-con.e-con:has(> .section-highlight__text),
    .e-con.e-con:has(> .e-con-inner > .section-highlight__text) {
        margin-left: 0 !important; margin-top: -48px !important;
        padding: 64px 30px 40px !important; border-radius: 46px 16px 46px 16px !important; width: 100%;
    }
}

@media (max-width: 767px) {
    
    .section-highlight {
        width: 96%;
    }
    
    .e-con.e-con:has(> .section-highlight__text),
    .e-con.e-con:has(> .e-con-inner > .section-highlight__text) {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }    
}

