/* Production sync fixes: clean media clipping and live calendar rendering. */
.hero-gallery .lightbox-trigger,
.animal-photos .lightbox-trigger,
.page-hero .lightbox-trigger,
.visit-cta .lightbox-trigger,
.zone-card .lightbox-trigger,
.carousel-card .lightbox-trigger,
.feature-photo.lightbox-trigger {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  background: transparent;
  border-radius: var(--radius-lg);
  overflow: hidden;
  outline: 0;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
}

.hero-gallery .lightbox-trigger > img,
.animal-photos .lightbox-trigger > img,
.page-hero .lightbox-trigger > img,
.visit-cta .lightbox-trigger > img,
.zone-card .lightbox-trigger > img,
.carousel-card .lightbox-trigger > img,
.feature-photo.lightbox-trigger > img {
  display: block;
  width: 100%;
  height: 100%;
  border: 0;
  border-radius: inherit;
  box-shadow: none;
  object-fit: cover;
}

.page-hero .lightbox-trigger,
.visit-cta .lightbox-trigger,
.feature-photo.lightbox-trigger {
  height: auto;
  align-self: start;
  aspect-ratio: 4 / 5;
  max-height: 660px;
  border: 2px solid var(--ink);
  box-shadow: 0 8px 0 0 var(--shadow);
}

.page-hero .lightbox-trigger > img,
.visit-cta .lightbox-trigger > img,
.feature-photo.lightbox-trigger > img {
  height: auto;
  aspect-ratio: 4 / 5;
}

.carousel-card {
  overflow: hidden;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.carousel-card .lightbox-trigger {
  border: 2px solid var(--ink);
  border-radius: 24px;
  box-shadow: 0 5px 0 0 var(--shadow);
}

.carousel-card img,
.food-gallery .carousel-card img,
.venue-gallery .carousel-card img,
.party-gallery .carousel-card img {
  width: 100%;
  height: 100%;
  aspect-ratio: inherit;
  object-fit: cover;
  object-position: center;
}

.carousel-card figcaption {
  display: none;
}

.menu-images img {
  object-fit: contain;
  background: #fff;
}

.lightbox-trigger:focus,
.lightbox-trigger:focus-visible {
  outline: 0;
}

.lightbox-trigger:focus-visible {
  box-shadow: 0 8px 0 0 var(--shadow), 0 0 0 4px var(--yellow);
}

.live-calendar-status {
  display: none;
}
