.event-photos {
  margin: 4cqw 4cqw 0;
  color: #fff1f4;
}
.event-photo-heading { display: flex; align-items: center; justify-content: space-between; gap: 1cqw; margin-bottom: 1.5cqw; }
.event-photos h3 {
  margin: 0;
  font: 700 3cqw/1.2 "QDP Fraunces", Georgia, serif;
}
.event-photo-position { font: 700 clamp(12px, 2.2cqw, 18px)/1.2 "QDP Fraunces", Georgia, serif; }
.event-photo-carousel {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: .5cqw 0;
  width: 100%;
  margin-inline: auto;
}
.event-photo-slides { position: relative; grid-column: 1 / -1; width: 100%; aspect-ratio: var(--event-photo-aspect, 1); }
.event-photo,
.event-photo:any-link {
  position: absolute;
  inset: 0;
  display: block;
  min-width: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  border-radius: 1.2cqw;
  background: transparent;
  color: #ffea86;
  text-decoration: none;
}
.event-photo[hidden] { display: none; }
.event-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.event-photo:focus-visible { outline: 2px solid #ffea86; outline-offset: 2px; }
.event-photo-unavailable { display: grid; place-items: center; height: 100%; font: inherit; }
.event-photo-carousel > button {
  display: grid;
  place-items: center;
  grid-row: 2;
  width: 28px;
  height: 26px;
  padding: 0;
  border: 0;
  background: transparent;
  color: #fff1f4;
  font: 700 18px/1 Georgia, serif;
  cursor: pointer;
}
.event-photo-carousel > button[hidden] { display: none; }
.event-photo-carousel > button:focus-visible { outline: 2px solid #ffea86; outline-offset: 2px; }
.event-photo-previous { grid-column: 1; justify-self: start; }
.event-photo-next { grid-column: 2; justify-self: end; }
.event-photo-strip { min-width: 0; overflow: visible; }
.event-photo-card { position: relative; }
.event-photo-strip .event-card-content { padding-right: 12cqw; }
.event-photo-toggle {
  position: absolute;
  z-index: 3;
  bottom: .45cqw;
  right: 1.2cqw;
  border: 0;
  padding: .3cqw .75cqw;
  border-radius: 999px;
  background: #000;
  color: #fff1f4;
  font: 700 clamp(9px, 1.65cqw, 14px)/1.2 "QDP Fraunces", Georgia, serif;
  cursor: pointer;
}
.event-photo-card:has(.has-flags) .event-photo-toggle { right: 10cqw; }
.event-photo-toggle:focus-visible { outline: 2px solid #ffea86; outline-offset: 2px; }
.event-photo-toggle > span { display: inline-block; }
.event-photo-strip.is-open .event-photo-toggle > span { transform: rotate(180deg); }
.event-photo-strip.is-open .event-card { border-bottom-right-radius: 0 !important; border-bottom-left-radius: 0 !important; }
.event-photo-dropdown {
  margin-left: calc(-1 * var(--event-photo-date-width, 0px));
  overflow: hidden;
  border: 2px solid #ff7945;
  border-top: 0;
  border-radius: 0 0 var(--qdp-card-radius, 4.3cqw) var(--qdp-card-radius, 4.3cqw);
  background: #000;
}
.event-photo-strip.explicit .event-photo-dropdown { border-color: var(--qdp-queer-card, #922185); border-top: 0; }
.event-photo-strip .event-photos { margin: 0; padding: 2cqw; }
.event-photo-strip .event-photos h3 { font-size: 2.5cqw; }
.event-photo-dropdown[hidden] { display: none; }
.archive-profile-month .event-photo-strip { --event-photo-date-width: 8.1cqw; }
@media (min-width: 761px) {
  .archive-event-day .event-photo-strip { --event-photo-date-width: calc(10.9cqw + var(--qdp-time-card-gap)); }
}
.event-photo-go,
.event-photo-go:any-link {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: max(6px, 1cqw) 2cqw;
  background: #ff7945;
  color: var(--qdp-plum-text);
  font: 700 clamp(12px, 2.5cqw, 20px)/1.2 "QDP Fraunces", Georgia, serif;
  text-align: center;
  text-decoration: none;
}
.event-photo-strip.explicit .event-photo-go { background: var(--qdp-queer-card, #922185); color: #fff1f4; }
.event-photo-go:focus-visible { outline: 2px solid #ffea86; outline-offset: -3px; }
.event-time-group .event-row:first-child .event-photo-strip { border-top-right-radius: var(--qdp-card-radius); }
.event-time-group .event-row:last-child .event-photo-strip { border-bottom-right-radius: var(--qdp-tail-radius, var(--qdp-card-radius)); }
.event-photo-viewer {
  position: fixed;
  inset: 0;
  width: min(96vw, 1300px);
  max-width: 96vw;
  height: min(94dvh, 1100px);
  max-height: 94dvh;
  margin: auto;
  padding: 52px 12px 58px;
  overflow: hidden;
  border: 1px solid #ffea86;
  border-radius: 12px;
  background: #090609;
  color: #fff1f4;
  box-sizing: border-box;
}
.event-photo-viewer::backdrop { background: rgb(0 0 0 / .9); }
.event-photo-full { display: block; width: 100%; height: 100%; object-fit: contain; touch-action: pan-y; }
.event-photo-viewer button { min-width: 44px; min-height: 44px; border: 0; border-radius: 50%; background: #922185; color: #fff1f4; font: 700 24px/1 Georgia, serif; cursor: pointer; }
.event-photo-viewer button:focus-visible { outline: 2px solid #ffea86; outline-offset: 2px; }
.event-photo-close { position: absolute; top: 6px; right: 8px; }
.event-photo-controls { position: absolute; bottom: 6px; left: 0; right: 0; display: flex; justify-content: center; align-items: center; gap: 20px; font: 16px/1 Verdana, sans-serif; }
.event-photo-controls [hidden] { display: none; }
