/*
 * Photos strip — lean continuous marquee (parity with Elementor image-carousel 29363f36)
 * Height 45vh cover; linear timing; overflow hidden (absorbs carousel-overflow-patch).
 */

.booth-photos {
  width: 100%;
  padding: 0;
  margin: 0 0 -10px;
  background: #fff;
}

.booth-photos *,
.booth-photos *::before,
.booth-photos *::after { box-sizing: border-box; }

.booth-photos__marquee {
  width: 100%;
}

.booth-photos__viewport {
  overflow: hidden;
  width: 100%;
}

.booth-photos__track {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
  width: max-content;
  will-change: transform;
}

.booth-photos__slide {
  flex: 0 0 auto;
  width: calc(100vw / 3);
  max-width: calc(100vw / 3);
}

.booth-photos__slide img {
  display: block;
  width: 100%;
  height: 45vh;
  object-fit: cover;
  object-position: center;
}

@media (max-width: 1024px) {
  .booth-photos__slide {
    width: calc(100vw / 2);
    max-width: calc(100vw / 2);
  }
}

@media (max-width: 767px) {
  .booth-photos__slide {
    width: 100vw;
    max-width: 100vw;
  }
}
@media (max-width: 767px) {
  #booth-photos { display: none; }
}
