@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap");
/* Overwrite Gutenberg Variables */
:root {
  --wp--style--global--content-size: 1200px;
}

/* Breakpoints */
/* Typography */
/* Color Palette */
/* Layout */
/* Block - Gallery */
.epic-gallery .gallery-item {
  display: flex;
  flex-direction: column;
}
.epic-gallery .gallery-item.padded {
  padding: 1rem;
}
.epic-gallery .gallery-item a {
  display: inline-block;
  margin-top: 1rem;
}
.epic-gallery .modal-image {
  background: none;
  border: none;
  display: flex;
  padding: 0;
}
.epic-gallery .modal-image + .gallery-item-text {
  margin-top: 0.5rem;
}
.epic-gallery img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.epic-gallery img + .gallery-item-text {
  margin-top: 1rem;
}
.epic-gallery .gallery-item-text {
  align-items: flex-start;
  display: flex;
  flex: 1;
  flex-direction: column;
}
.epic-gallery .gallery-item-text p {
  flex: 1;
}
.epic-gallery.equal-grid {
  display: grid;
  grid-gap: 2rem;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 782px) {
  .epic-gallery.equal-grid {
    grid-gap: 1rem;
    grid-template-columns: 1fr 1fr;
  }
}
@media only screen and (min-width: 1024px) {
  .epic-gallery.equal-grid {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.epic-gallery.equal-grid img {
  height: 200px;
}
@media only screen and (min-width: 782px) {
  .epic-gallery.equal-grid img {
    height: 250px;
  }
}
.epic-gallery.masonry {
  display: grid;
  grid-gap: 2rem;
  grid-template-columns: 1fr;
}
@media only screen and (min-width: 782px) {
  .epic-gallery.masonry {
    grid-gap: 1rem;
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.epic-gallery.masonry .gallery-item:not(:first-child) {
  margin-top: 2rem;
}
@media only screen and (min-width: 782px) {
  .epic-gallery.masonry .gallery-item:not(:first-child) {
    margin-top: 1rem;
  }
}
.epic-gallery.masonry .gallery-item img {
  height: 200px;
}
@media only screen and (min-width: 782px) {
  .epic-gallery.masonry > div:nth-child(1) .gallery-item:nth-child(3n+1) img, .epic-gallery.masonry > div:nth-child(3) .gallery-item:nth-child(3n+1) img {
    height: 200px;
  }
}
@media only screen and (min-width: 782px) {
  .epic-gallery.masonry > div:nth-child(1) .gallery-item:nth-child(3n+2) img, .epic-gallery.masonry > div:nth-child(3) .gallery-item:nth-child(3n+2) img {
    height: 350px;
  }
}
@media only screen and (min-width: 782px) {
  .epic-gallery.masonry > div:nth-child(1) .gallery-item:nth-child(3n+3) img, .epic-gallery.masonry > div:nth-child(3) .gallery-item:nth-child(3n+3) img {
    height: 300px;
  }
}
@media only screen and (min-width: 782px) {
  .epic-gallery.masonry > div:nth-child(2) .gallery-item:nth-child(3n+1) img {
    height: 300px;
  }
}
@media only screen and (min-width: 782px) {
  .epic-gallery.masonry > div:nth-child(2) .gallery-item:nth-child(3n+2) img {
    height: 200px;
  }
}
@media only screen and (min-width: 782px) {
  .epic-gallery.masonry > div:nth-child(2) .gallery-item:nth-child(3n+3) img {
    height: 250px;
  }
}

.epic-gallery-modal {
  opacity: 0;
  transition: opacity 0.2s ease-in-out, visibility 0s 0.5s;
  visibility: hidden;
}
.epic-gallery-modal.active {
  opacity: 1;
  transition: opacity 0.2s 0.1s ease-in-out, visibility 0s;
  visibility: visible;
}
.epic-gallery-modal .epic-gallery-modal-overlay {
  align-items: center;
  background: rgba(0, 0, 0, 0.8);
  display: flex;
  height: 100vh;
  justify-content: center;
  left: 0;
  position: fixed;
  top: 0;
  width: 100vw;
  z-index: 9999;
}
.epic-gallery-modal .epic-gallery-modal-content {
  align-items: center;
  background: #ffffff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-height: 90vh;
  max-width: 90vw;
  padding: 2rem 1rem 1rem 1rem;
  position: relative;
}
.epic-gallery-modal .epic-gallery-modal-content .epic-gallery-modal-close {
  background: none;
  border: none;
  padding: 0;
  position: absolute;
  right: 1rem;
  text-decoration: underline;
  top: 0.5rem;
}
.epic-gallery-modal .epic-gallery-modal-content img {
  display: flex;
  max-height: calc(90vh - 3rem);
  max-width: calc(90vw - 2rem);
}