.masonry {
    -moz-transition: all .5s ease-in-out;
    -webkit-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    -moz-column-gap: 30px;
    -webkit-column-gap: 30px;
    column-gap: 30px;
    -moz-column-fill: balance;
    -webkit-column-fill: balance;
    column-fill: balance
}

.masonry .masonry-brick-wrapper {
    display: inline
}

.masonry.message {
    -moz-column-count: 1;
    -webkit-column-count: 1;
    column-count: 1;
    text-align: center;
    width: 83.33333%;
    margin: 0 auto
}

@media only screen and (min-width: 992px) {
    .masonry {
           -moz-column-count: 2;
           -webkit-column-count: 2;
           column-count: 2
    }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
    .masonry {
           -moz-column-count: 2;
           -webkit-column-count: 2;
           column-count: 2
    }
}

.masonry.gallery *.brick {
    margin-bottom: 30px;
    position: relative
}

.masonry.gallery *.brick img {
    width: 100%;
    max-width: 100%;
    vertical-align: bottom;
    color: white
}

.masonry.gallery *.brick figcaption {
    visibility: hidden;
    height: 0
}

.masonry.gallery *.brick:hover .overlay {
    opacity: .4;
    cursor: pointer
}

.masonry.gallery *.brick .overlay {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    transition: .3s ease;
    background-color: black
}

.masonry.gallery *.brick .overlay .fa-expand {
    color: white;
    font-size: 3rem;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: center
}

.masonry.gallery *.brick .overlay .fa-expand:hover {
    color: #eee
}

.masonry.gallery *.brick .overlay .credit {
    color: white;
    font-size: 14px;
    position: absolute;
    bottom: 5px;
    left: 10px;
    text-align: left
}



.pswp_custom_caption {
    overflow-wrap: break-word;
    text-align: center;
    margin-bottom: 1.25em
}

.pswp_custom_caption .pswp_custom_caption__title {
    text-transform: uppercase;
    font-size: 1.2rem;
    font-family: "josefin-sans", "Helvetica Neue", "Helvetica", "Arial", sans-serif
}

.pswp_custom_caption .pswp_custom_caption__products .app_cats {
    visibility: visible
}

.pswp__caption.pswp__caption--fake *.app_cats {
    visibility: hidden !important
}

.gallery-filter {
    text-align: center;
    margin-bottom: 3rem
}

@media only screen and (min-width: 1200px) {
    .gallery-filter {
           width: 50%
    }
}

@media only screen and (min-width: 1680px) {
    .gallery-filter {
           width: 40%
    }
}
