.gallery{
    --columns-count: 3;
    --column-gap: 20px;
    --row-gap: 20px;

    display: flex;
    column-gap: var(--column-gap);
    row-gap: var(--row-gap);
    flex-wrap: wrap;
    justify-content: center;
}
/* .gallery{ */
/*      --grid-layout-gap: 20px; */
/*   --grid-column-count: 3; !* This gets overridden by an inline style. *! */
/*   --grid-item--min-width: 300px; !* This gets overridden by an inline style. *! */

/*   !** */
/*    * Calculated values. */
/*    *! */
/*   --gap-count: calc(var(--grid-column-count) - 1); */
/*   --total-gap-width: calc(var(--gap-count) * var(--grid-layout-gap)); */
/*   --grid-item--max-width: calc((100% - var(--total-gap-width)) / var(--grid-column-count)); */

/*   display: grid; */
/*   grid-template-columns: repeat(auto-fill, minmax(max(var(--grid-item--min-width), var(--grid-item--max-width)), 1fr)); */
/*   grid-gap: var(--grid-layout-gap); */
/* } */
.gallery__card{
    /* flex: 0 0 auto; */
    width: calc((100% - (var(--columns-count) - 1)* var(--column-gap)) / var(--columns-count));
    position: relative;
    cursor: pointer;
    border-radius: 5px;
    overflow: hidden;
}
.gallery__card.margin-right-auto{
    margin-right: auto;
}
.gallery__img{
    width: 100%;
    height: auto;
    display: block;
}
.gallery__img__download_link{
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 2;
    opacity: 0;
    transition: opacity 0.3s ease-in-out, background-color 0.3s ease-in-out;
    border-radius: 5px;
}
.gallery__img__download_link__icon{
    display: block;
}
.gallery__card:hover .gallery__img__download_link {
    opacity: 1;
}

.gallery__img__download_link:hover{
    background-color: rgba(0, 0, 0, 0.5);
}
/* PhotoSwipe styles */
.pswp--image-bg-white .pswp__img,
.pswp--image-bg-white .pswp__img--placeholder--blank {
    background-color: #fff;
}
@media only screen and (max-width: 992px) {
    .gallery {
        --columns-count: 2;
    }
}
@media only screen and (max-width: 601px) {
    .gallery {
        --columns-count: 1;
    }
}
