.site-nav [aria-current="page"], .footer-inner [aria-current="page"] {
  text-decoration: underline;
  text-underline-offset: .3em;
}

.venue-gallery-heading {
  padding-block: clamp(2.2rem, 6vw, 5.6rem);
  background: url('assets/foliage-right.webp') no-repeat right bottom / min(25vw, 15rem), var(--deep);
  color: var(--paper);
}
.venue-gallery-heading .eyebrow,
.venue-gallery-heading .section-title span { color: var(--yellow); }
.venue-gallery-heading .section-title { font-size: clamp(3rem, 8vw, 6.6rem); }
.venue-gallery-heading .section-intro { max-width: 76%; }

.venue-gallery { padding-block: clamp(1.4rem, 3vw, 2.7rem) clamp(2.4rem, 6vw, 5.6rem); }
.venue-gallery-filters { display: flex; flex-wrap: wrap; gap: .45rem; }
.venue-gallery-filters button {
  min-height: 2.75rem;
  padding: .45rem .9rem;
  border: 1px solid #a8c1bb;
  border-radius: 1.5rem;
  background: var(--paper);
  color: var(--deep);
  cursor: pointer;
  font-weight: 700;
}
.venue-gallery-filters button:hover { background: #e6eeea; }
.venue-gallery-filters [aria-pressed="true"] { border-color: var(--teal); background: var(--teal); color: white; }
.venue-gallery-result { margin: .65rem 0 1rem; color: #575b53; font-size: .9rem; }
.venue-gallery-result:empty { display: none; }
.venue-gallery-credits { margin: 1.4rem 0 0; color: #575b53; font-size: .9rem; }
.venue-gallery-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(.7rem, 2vw, 1.5rem); }
.venue-gallery-card {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #e5e4d7;
  border-radius: .7rem;
  background: #fffdf6;
  text-decoration: none;
}
.venue-gallery-card img { width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.venue-gallery-card span { display: block; padding: .55rem .7rem; font-weight: 700; }
.venue-gallery-card:hover span { color: var(--teal); text-decoration: underline; text-underline-offset: .2em; }

@media (max-width: 700px) {
  .venue-gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .venue-gallery-card span { padding: .45rem .5rem; font-size: .9rem; }
}
