/* container you pin */
.gsap-hscroll {
  position: relative;
  width: 100%;
  overflow: hidden;
  min-height: 80vh;
}

/* the long horizontal track */
.gsap-hscroll__track {
  display: flex;
  gap: clamp(24px, 4vw, 48px);
  will-change: transform;
}

/* each card */
.gsap-hscroll__item {
  flex: 0 0 clamp(260px, 42vw, 520px);
  aspect-ratio: 4/5;
  border-radius: 20px;
  overflow: hidden;
  transform-origin: center center;
  will-change: transform, opacity, filter;
  background: #0b0b12;
  display: grid;
  align-content: end;
}

.gsap-hscroll__item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.gsap-hscroll__caption {
  color: #fff;
  padding: 16px 18px;
  backdrop-filter: blur(6px);
  background: rgba(0,0,0,0.35);
  font-weight: 600;
}

/* emphasis */
.gsap-hscroll__item.is-current {
  filter: none;
  opacity: 1;
  transform: scale(1.02);
}
.gsap-hscroll__item:not(.is-current) {
  filter: saturate(0.7) contrast(0.95);
  opacity: 0.85;
  transform: scale(0.96);
}

/* optional brand bg */
.gsap-hscroll.theme-dark {
  background: linear-gradient(180deg, #001B68 0%, #000814 100%);
}
