.elementor-7738 .elementor-element.elementor-element-5b3c138{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7738 .elementor-element.elementor-element-ec57d9a{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7738 .elementor-element.elementor-element-58d4010 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-7738 .elementor-element.elementor-element-3b8be06{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7738 .elementor-element.elementor-element-943ddd4{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7738 .elementor-element.elementor-element-9e16fbd{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7738 .elementor-element.elementor-element-6267c25{--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;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}/* Start custom CSS for container, class: .elementor-element-3b8be06 *//* SECCIÓN GENERAL FONDO AZUL UTM */
.utm-especialidades-section {
    background: #0D4F99;
    padding: 90px 6%;
    text-align: center;
}

/* TÍTULO PRINCIPAL */
.esp-title {
    font-size: 2.6rem;
    font-weight: 800;
    color: #F2A900 !important; /* TODO AMARILLO */
    line-height: 1.2;
    margin-bottom: 10px;
    text-shadow: 0 3px 12px rgba(0,0,0,0.25);
}

/* Amarillo corporativo */
.esp-yellow {
    color: #F2A900 !important;
}

/* LÍNEA AMARILLA */
.esp-line {
    width: 100px;
    height: 5px;
    background: #F2A900;
    border-radius: 8px;
    margin: 0 auto 45px auto;
}

/* GRID RESPONSIVA */
.esp-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 35px;
}

/* TARJETAS */
.esp-card {
    background: #FFFFFF;
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 15px 32px rgba(0,0,0,0.22);
    transition: 0.3s ease;
}

.esp-card:hover {
    transform: translateY(-8px);
}

/* IMÁGENES */
.esp-img {
    width: 100%;
    height: 220px;
    overflow: hidden;
}

.esp-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.4s ease;
}

.esp-card:hover .esp-img img {
    transform: scale(1.08);
}

/* TÍTULOS DE CADA ESPECIALIDAD */
.esp-card h3 {
    font-size: 1.22rem;
    font-weight: 700;
    color: #0D4F99;
    padding: 18px;
    line-height: 1.3;
    min-height: 78px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* RESPONSIVE - TABLET */
@media (max-width: 980px) {
    .esp-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* RESPONSIVE - MÓVIL */
@media (max-width: 540px) {
    .esp-grid {
        grid-template-columns: 1fr;
    }

    .esp-title {
        font-size: 2.1rem;
    }

    .esp-card h3 {
        font-size: 1.1rem;
    }
}/* End custom CSS */