.image-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 10px;
}

.image-grid.landscape-img {
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
}

.image-grid a {
    display: block;
    overflow: hidden;
    position: relative;
}

.image-grid img {
    width: 100%;
    height: auto;
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.image-grid a:hover img {
    transform: scale(1.1);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
}

@media (max-width: 1080px) {
    .image-grid.landscape-img {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    }
}

@media (max-width: 767px) {
    .image-grid {
        grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
        gap: 6px;
    }

    .image-grid.landscape-img {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
}

@media (max-width: 576px) {
    .image-grid.landscape-img {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    }
}