
.image-overlay-card {
    display: inline-block;           /* REQUIRED for column layout */
    width: 100%;
    margin-bottom: 1.25rem;
    break-inside: avoid;              /* IMPORTANT */
    cursor: pointer;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.image-overlay-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 25px 50px rgba(0,0,0,0.2);
}

/* Card image */
.card-image {
    width: 100%;
    background-size: cover;
    background-position: center;
    transition: transform 0.6s ease;
}

/* Zoom on hover */
.image-overlay-card:hover .card-image {
    transform: scale(1.05);
}

/* Overlay animation */
.overlay {
    opacity: 0;
    transform: translateY(100%);
    transition: all 0.4s ease;
}

.image-overlay-card:hover .overlay {
    opacity: 1;
    transform: translateY(0);
}

/* Text clamp */
.line-clamp-1, .line-clamp-2 {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.line-clamp-1 { -webkit-line-clamp: 1; }
.line-clamp-2 { -webkit-line-clamp: 2; }

.text-white-50 {
    color: rgba(255,255,255,0.7) !important;
}