.gallery {
  padding: 4rem 0;
}

.gallery .gallery_images_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.gallery .gallery_images_wrapper .gallery_images_column {
  -webkit-box-flex: 25%;
      -ms-flex: 25%;
          flex: 25%;
  max-width: 25%;
  padding: 0 0.25rem;
}

.gallery .gallery_images_wrapper .gallery_images_column .gallery_image {
  width: 100%;
  margin: 0 0 0.5rem 0;
  position: relative;
  overflow: hidden;
  border-radius: 0.15rem;
}

.gallery .gallery_images_wrapper .gallery_images_column .gallery_image .gallery_image_overlay {
  width: 100%;
  padding: 1.25rem;
  display: inline-block;
  position: absolute;
  bottom: 0;
  left: 0;
  color: #FAFAFA;
  font-size: 1rem;
  opacity: 0;
  -webkit-transition: opacity 225ms ease, -webkit-transform 325ms ease;
  transition: opacity 225ms ease, -webkit-transform 325ms ease;
  transition: opacity 225ms ease, transform 325ms ease;
  transition: opacity 225ms ease, transform 325ms ease, -webkit-transform 325ms ease;
  -webkit-transform: translate3d(0, 100%, 0);
          transform: translate3d(0, 100%, 0);
  pointer-events: none;
}

.gallery .gallery_images_wrapper .gallery_images_column .gallery_image img {
  width: 100%;
  vertical-align: middle;
  -o-object-position: center;
     object-position: center;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 0.15rem;
}

.gallery .gallery_images_wrapper .gallery_images_column .gallery_image::before {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background-color: rgba(0, 0, 0, 0.5);
  opacity: 0;
  -webkit-transition: opacity 225ms ease;
  transition: opacity 225ms ease;
  pointer-events: none;
}

.gallery .gallery_images_wrapper .gallery_images_column .gallery_image:hover {
  cursor: pointer;
}

.gallery .gallery_images_wrapper .gallery_images_column .gallery_image:hover .gallery_image_overlay {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

.gallery .gallery_images_wrapper .gallery_images_column .gallery_image:hover::before {
  opacity: 1;
}

.gallery .gallery_images_wrapper .gallery_images_column:first-child {
  padding: 0 0.25rem 0 0;
}

.gallery .gallery_images_wrapper .gallery_images_column:last-child {
  padding: 0 0 0 0.25rem;
}

@media (max-width: 991.98px) {
  .gallery .gallery_images_wrapper .gallery_images_column {
    -webkit-box-flex: calc(50%);
        -ms-flex: calc(50%);
            flex: calc(50%);
    max-width: calc(50%);
    padding: 0 0.25rem 0 0 !important;
  }
  .gallery .gallery_images_wrapper .gallery_images_column:nth-child(2n) {
    padding: 0 0 0 0.25rem !important;
  }
}

@media (max-width: 425.98px) {
  .gallery .gallery_images_wrapper .gallery_images_column {
    -webkit-box-flex: calc(100%);
        -ms-flex: calc(100%);
            flex: calc(100%);
    max-width: calc(100%);
    padding: 0 !important;
  }
}
