/* Gallery container */
.gallery {
    padding-top: 10px;
    max-width: 70vw;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); /* Responsive grid */
    gap: 20px; /* Space between images */
}

.image-item {
    position: relative;
    overflow: hidden;
    background-color: #e0e0e0; /* Background color for empty spaces */
    border-radius: 8px;
    padding-top: 133.33%; /* 3:4 aspect ratio */
}

.image-item img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Make image cover the container while maintaining its aspect ratio */
}

.image-item img:hover {
    transform: scale(1.05);
}

@media (max-width: 480px) {
    /* On very small screens, you can reduce the number of columns to 1 or 2 */
    .gallery {
        grid-template-columns: repeat(3, 1fr); /* 3 columns for very small screens */
        max-width: 90vw !important;
    }
}