.gallery-intro {
  padding: 70px 0 54px;
  text-align: center;
}

.gallery-intro .reading {
  max-width: 760px;
  margin-inline: auto;
}

.gallery-intro p:last-child {
  max-width: 650px;
  margin: 22px auto 0;
  font-size: 19px;
}

.gallery-collection {
  padding: 36px 0 96px;
  background: var(--white);
}

.gallery-group + .gallery-group {
  margin-top: 78px;
  padding-top: 72px;
  border-top: 1px solid rgba(78, 96, 66, .16);
}

.gallery-group-heading {
  margin-bottom: 30px;
}

.gallery-group-heading .eyebrow {
  margin-bottom: 10px;
}

.gallery-grid {
  columns: 3 280px;
  column-gap: 24px;
}

.gallery-item {
  display: inline-block;
  width: 100%;
  margin: 0 0 24px;
  overflow: hidden;
  break-inside: avoid;
  border: 1px solid rgba(78, 96, 66, .14);
  border-radius: 18px;
  background: var(--cream);
  box-shadow: 0 12px 30px rgba(55, 64, 50, .08);
}

.gallery-item img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

@media (max-width: 880px) {
  .gallery-grid {
    columns: 2 280px;
  }
}

@media (max-width: 650px) {
  .gallery-intro {
    padding: 50px 0 40px;
  }

  .gallery-collection {
    padding: 24px 0 70px;
  }

  .gallery-group + .gallery-group {
    margin-top: 58px;
    padding-top: 54px;
  }

  .gallery-grid {
    columns: 1;
  }

  .gallery-item {
    margin-bottom: 18px;
  }
}
