.referencia-wrap .gallery {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    gap: 12px;
}

.referencia-wrap .img-container {
    grid-column: span 3;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 6px 18px rgba(0, 0, 0, .08);
    background: #fff;
}

.referencia-wrap .img-container img {
    width: 100%;
    height: auto;
    display: block;
    transition: transform .3s ease;
}

.referencia-wrap .img-container:hover img {
    transform: scale(1.02);
}

@media (max-width: 992px) {
    .referencia-wrap .img-container {
        grid-column: span 4;
    }
}

@media (max-width: 768px) {
    .referencia-wrap .img-container {
        grid-column: span 6;
    }
}

@media (max-width: 480px) {
    .referencia-wrap .img-container {
        grid-column: span 12;
    }
}

.slide-caption {
    padding: 10px 12px;
    color: #1f2937;
}

.slide-caption h4 {
    margin: 0 0 6px;
    font-size: 16px;
}

.slide-caption p {
    margin: 0;
    font-size: 14px;
    color: #4b5563;
}