/* ==========================================================================
   Games slider block (BEM: game-card__element--modifier)
   ========================================================================== */

.games-slider {
  position: relative;
  margin-top: var(--space-h2-text);
}

.games-slider__track {
  display: flex;
  gap: var(--space-md);
  overflow-x: auto;
  overflow-y: hidden;
  scroll-behavior: smooth;
  /* Kein CSS scroll-snap: es kann mit dem programmatischen scrollBy() der
     Pfeil-Buttons in Konflikt geraten und die Karten sofort zurückschnappen
     lassen, sodass ein Klick wirkungslos wirkt. */
  -webkit-overflow-scrolling: touch;
  padding-bottom: var(--space-xs);
  /* Kein sichtbarer Drag-Scrollbalken — Steuerung erfolgt über die Pfeil-Buttons
     (Wischen mit dem Finger bleibt auf Touch-Geräten weiterhin möglich). */
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.games-slider__track::-webkit-scrollbar {
  display: none;
  height: 0;
}

.game-card {
  flex: 0 0 auto;
  width: clamp(155px, 60vw, 200px);
  background: var(--color-bg-dark);
  border-radius: var(--radius-card);
  padding: var(--space-md);
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.game-card__image {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: var(--radius-card);
}

.game-card__title {
  color: var(--color-white);
  font-weight: var(--fw-semibold);
  font-size: var(--fs-small);
  flex-grow: 1;
}

.game-card__cta {
  font-size: var(--fs-small);
}

@media (min-width: 768px) {
  .game-card {
    width: clamp(160px, 22vw, 200px);
  }
}

@media (min-width: 1024px) {
  .game-card {
    width: clamp(170px, 16vw, 210px);
  }
}

.games-slider__nav {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-sm);
  margin-top: var(--space-md);
}

.games-slider__prev,
.games-slider__next {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: var(--color-bg-dark);
  color: var(--color-white);
  font-size: var(--fs-h3);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background var(--transition-fast);
}

.games-slider__prev:hover,
.games-slider__next:hover {
  background: var(--color-heading-gold);
  color: var(--color-btn-text-dark);
}

.games-slider__prev.is-disabled,
.games-slider__next.is-disabled {
  opacity: 0.4;
}
