/* Contenedor principal del Carrusel */
.ecc-carousel-wrapper {
    width: 100%;
    overflow: hidden;
    position: relative;
}

/* Tarjeta individual del slide */
.ecc-slide {
    position: relative;
    width: 100%;
    /* Altura mínima de respaldo: evita que el slide colapse si el control
       "Altura del Carrusel" de Elementor todavía no ha generado su CSS.
       El control de Elementor la sobreescribe cuando está activo. */
    min-height: 450px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    border-radius: 0px !important; /* Se eliminan por completo los bordes redondeados */
}

/* Enlace contenedor que expande el área clickeable a TODA la tarjeta */
.ecc-slide-link {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    /* Cubre la tarjeta completa para que cualquier punto sea clickable */
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
}

/* Fondo dinámico de la entrada con efecto Ken Burns */
.ecc-slide-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 1;
    /* Transición de zoom lento de 6 segundos */
    transition: transform 6s ease-in-out;
}

/* Capa de protección de contraste (Overlay) */
.ecc-slide-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    /* Transición suave para el cambio de color al pasar el mouse */
    transition: background-color 0.4s ease-in-out;
}

/* --- ESTADOS HOVER (ACCIONES DEL MOUSE) --- */
.ecc-slide:hover .ecc-slide-bg {
    transform: scale(1.18); /* Zoom sutil hacia adelante (Ken Burns) */
}

/* Caja de contenido de textos */
.ecc-slide-content {
    position: relative;
    z-index: 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    padding: 30px 25px;
    text-align: center;
    box-sizing: border-box;
    flex-grow: 1;
}

/* Etiqueta superior de la categoría */
.ecc-slide-cat {
    color: #f39c12; /* Color naranja corporativo */
    font-family: sans-serif;
    font-size: 13px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 12px;
}

/* Título de la entrada */
.ecc-slide-title {
    color: #ffffff;
    font-family: sans-serif;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.3;
    margin: 0;
    padding: 0;
    text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.4);
}