/* Gallery page additions. Base layout comes from rooms-and-suites.css. */
.gallery-page-shell {
  padding-top: 2.5rem;
}

.gallery-overview-section {
  padding-bottom: 70px;
}

.gallery-overview-row {
  align-items: center;
}

.gallery-preview-collage a,
.gallery-photo-card {
  display: inline-block;
  overflow: hidden;
  border-radius: 6px;
  background: #fff;
}

.gallery-preview-collage img,
.gallery-photo-card img {
  display: block;
  width: 100%;
  object-fit: cover;
  transition:
    transform 0.25s ease,
    filter 0.25s ease;
}

.gallery-preview-collage a:hover img,
.gallery-photo-card:hover img {
  transform: scale(1.035);
  filter: saturate(1.05);
}

.gallery-overview-copy {
  max-width: 430px;
}

.gallery-room-section {
  padding-bottom: 72px;
}

.gallery-section-heading {
  margin-bottom: 18px;
}

.gallery-heading-line {
  display: flex;
  align-items: center;
}

.gallery-heading-line::before {
  content: "";
  width: 100%;
  height: 1px;
  background: rgba(212, 175, 55, 0.45);
}

.gallery-section-intro {
  max-width: 650px;
  margin: 0 auto 28px;
  color: #3b331a;
  font-size: 74%;
  font-weight: 300;
  line-height: 1.7;
  text-align: center;
}

.gallery-photo-grid {
  display: grid;
  grid-template-columns: repeat(12, 1fr);
  gap: 12px;
}

.gallery-photo-card {
  grid-column: span 3;
  height: 210px;
}

.gallery-photo-card:nth-child(10n + 1),
.gallery-photo-card:nth-child(10n + 7) {
  grid-column: span 5;
  height: 280px;
}

.gallery-photo-card:nth-child(10n + 4) {
  grid-column: span 4;
}

.gallery-photo-card img {
  height: 100%;
}

@media (max-width: 900px) {
  .gallery-photo-card,
  .gallery-photo-card:nth-child(10n + 1),
  .gallery-photo-card:nth-child(10n + 4),
  .gallery-photo-card:nth-child(10n + 7) {
    grid-column: span 6;
    height: 230px;
  }

  .gallery-heading-line {
    display: none;
  }
}

@media (max-width: 560px) {
  .gallery-page-shell {
    padding-top: 1.5rem;
  }

  .gallery-overview-copy {
    max-width: 100%;
  }

  .gallery-photo-grid {
    grid-template-columns: 1fr;
  }

  .gallery-photo-card,
  .gallery-photo-card:nth-child(10n + 1),
  .gallery-photo-card:nth-child(10n + 4),
  .gallery-photo-card:nth-child(10n + 7) {
    grid-column: auto;
    height: 235px;
  }
}
.gallery-room-section {
  scroll-margin-top: 110px;
}
