/* Column masonry: each column stacks independently (no row-height gaps). */
.gallery-masonry {
    column-width: 280px;
    column-gap: 1.25rem;
    margin-top: 1.5rem;
}

.gallery-masonry-item {
    display: block;
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    margin-bottom: 1.25rem;
    border-radius: 8px;
    overflow: hidden;
    background: rgba(0, 0, 0, 0.25);
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.25);
    line-height: 0;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.gallery-masonry-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.35);
}

.gallery-masonry-img {
    width: 100%;
    height: auto;
    display: block;
}

@media (max-width: 576px) {
    .gallery-masonry {
        column-width: 100%;
    }
}
