/* Componente: Tarjetas de casos SIASCA */
.siasca-cases {
    padding: 3rem 1rem 4rem;
}

.siasca-cases__grid {
    display: grid;
    gap: 2rem;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
}

.siasca-case {
    position: relative;
    isolation: isolate;
    border-radius: 1.25rem;
    overflow: hidden;
    background: #000;
    cursor: pointer;
    min-height: 420px;
    display: flex;
    align-items: flex-end;
}

.siasca-case:focus-visible {
    outline: 3px solid var(--bs-primary);
    outline-offset: 2px;
}

.siasca-case__media {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.siasca-case__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    /* ligero oscurecimiento por defecto para contraste del panel */
    filter: brightness(0.9);
    transition: filter .45s ease, transform .6s ease;
}

/* Al pasar el mouse o foco, eliminar el filtro para que la imagen se vea clara */
.siasca-case:hover .siasca-case__media img,
.siasca-case:focus .siasca-case__media img {
    filter: none;
    transform: scale(1.03);
}

.siasca-case__panel {
    position: relative;
    z-index: 2;
    background: #fff;
    width: 84%;
    margin: 15px 8%;
    border-radius: 1rem;
    padding: 1.4rem 1.6rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, .15);
    transform: translateY(0);
    transition: all .55s cubic-bezier(.16, .68, .34, 1);
    display: flex;
    flex-direction: column;
    gap: .75rem;
}

/* Estado inicial (colapsado): solo título visible, descripción oculta */
.siasca-case__panel {
    max-height: 120px;
}

.siasca-case__desc {
    opacity: 0;
    max-height: 0;
    overflow: hidden;
    transition: opacity .35s ease .05s, max-height .55s ease;
    font-size: .95rem;
    line-height: 1.4;
}

/* Hover / Focus: expandir panel mostrando descripción (similar a tarjeta izquierda) */
.siasca-case:hover .siasca-case__panel,
.siasca-case:focus .siasca-case__panel {
    max-height: 240px;
}

.siasca-case:hover .siasca-case__desc,
.siasca-case:focus .siasca-case__desc {
    opacity: 1;
    max-height: 160px;
}

.siasca-case__title {
    margin: 0;
}

.siasca-case__link {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: block;
    width: 100%;
    height: 100%;
    text-indent: -9999px;
    background: transparent;
    pointer-events: auto;
}

@media (min-width: 992px) {
    .siasca-cases__grid {
        grid-template-columns: repeat(3, 1fr);
    }

    .siasca-case {
        min-height: 460px;
    }
}

@media (hover: none) {

    /* En dispositivos táctiles mostrar siempre expandido */
    .siasca-case__panel {
        max-height: 240px;
    }

    .siasca-case__desc {
        opacity: 1;
        max-height: 160px;
    }

    .siasca-case__media img {
        /* En táctil dejamos la imagen sin filtro para mejor visibilidad */
        filter: none;
    }
}