/* One continuous band: constant height, natural image proportions, no gutters. */
.photo-strip.photo-strip--marquee {
  --marquee-height: clamp(270px, 31vw, 510px);
  display: block;
  overflow: hidden;
  gap: 0;
  scroll-snap-type: none;
}
.marquee-track, .marquee-cycle {
  display: flex;
  width: max-content;
  gap: 0;
  align-items: stretch;
}
.marquee-track { will-change: transform; }
.marquee-cycle { position: relative; flex: none; }
.photo-strip--marquee .strip-item:nth-child(n) {
  display: block;
  flex: 0 0 auto;
  width: auto;
  height: var(--marquee-height);
  margin: 0;
  padding: 0;
  scroll-snap-align: none;
}
.photo-strip--marquee .strip-item img {
  width: auto;
  max-width: none;
  height: 100%;
  object-fit: contain;
  transform: none;
  transition: none;
}
.photo-strip--marquee .strip-item:focus-visible { outline-offset: -4px; }
.photo-strip--marquee.marquee-static { overflow-x: auto; }
.marquee-static .marquee-track { transform: none !important; will-change: auto; }
.marquee-static .marquee-copy { display: none; }
.strip-caption { flex-wrap: wrap; }
.marquee-toggle {
  display: inline-flex;
  align-items: center;
  margin-left: auto;
  min-height: 36px;
  padding: 6px 0;
  color: var(--muted);
  font-size: 12px;
  white-space: nowrap;
}
.marquee-toggle[hidden] { display: none; }
@media (max-width: 700px) {
  .photo-strip.photo-strip--marquee { --marquee-height: 330px; }
  .strip-caption { gap: 8px 20px; }
  .strip-caption > span:first-child { flex: 1 1 100%; max-width: none; }
  .marquee-toggle { margin-left: 0; margin-right: auto; }
}
