/* PhotoSwipe thumbnail gallery */

.gallery {
    display: grid;
    gap: 10px;
    margin: 0 auto;
    overflow: hidden;
}

.gallery a {
    display: block;
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.gallery img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}


/* Desktop Hires (1900px wide) */

@media (min-width: 1910px) {

    .gallery {
        width: 1900px;
        grid-template-columns: repeat(7, 1fr);
    }

}


/* Desktop Midres (1580px wide) */

@media (min-width: 1590px) and (max-width: 1909px) {

    .gallery {
        width: 1580px;
        grid-template-columns: repeat(6, 1fr);
    }

}


/* Desktop Lores (1260px wide) */

@media (min-width: 1270px) and (max-width: 1589px) {

    .gallery {
        width: 1260px;
        grid-template-columns: repeat(5, 1fr);
    }

}


/* Tablet Landscape (940px wide) */

@media (min-width: 950px) and (max-width: 1269px) {

    .gallery {
        width: 940px;
        grid-template-columns: repeat(4, 1fr);
    }

}


/* Tablet Portrait (620px wide) */

@media (min-width: 630px) and (max-width: 949px) {

    .gallery {
        width: 620px;
        grid-template-columns: repeat(3, 1fr);
    }

}


/* Smartphone Hires (440px wide) */

@media (min-width: 450px) and (max-width: 629px) {

    .gallery {
        width: 440px;
        grid-template-columns: repeat(3, 1fr);
    }

}


/* Smartphone Lores (300px wide) */

@media (max-width: 459px) {

    .gallery {
        width: 300px;
        grid-template-columns: repeat(2, 1fr);
    }

}