/* News-channel logo ticker in the hero — rendered by sw-press.js.
   The wrapper also carries Framer's own class for the original two-card row, so its
   size and position come from Framer at every breakpoint. */
[data-sw-press-hidden] { display: none !important; }

.swp {
  --swp-gap: 6px;
  --swp-speed: 32s;
  container-type: inline-size;
  min-width: 0;
}
.swp *, .swp *::before, .swp *::after { box-sizing: border-box; }

.swp__track {
  display: flex;
  flex: none;
  width: max-content;
  animation: swp-slide var(--swp-speed) linear infinite;
}
.swp:hover .swp__track { animation-play-state: paused; }

.swp__set {
  display: flex;
  flex: none;
  gap: var(--swp-gap);
  margin: 0;
  padding: 0 var(--swp-gap) 0 0; /* trailing gap makes the loop seamless */
  list-style: none;
}

@keyframes swp-slide {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* two cards visible at a time, same size as the original MeinBezirk / BVZ cards */
.swp__card {
  flex: none;
  width: calc((100cqw - var(--swp-gap)) / 2);
  aspect-ratio: 2.01667;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 24px;
  overflow: hidden;
  border-radius: 12px;
  background: #f7f7f7;
}
.swp__card--bare { padding: 0; }
.swp__link { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }

.swp__img {
  display: block;
  width: auto;
  height: auto;
  max-width: calc(100% * var(--swp-scale, 1));
  max-height: calc(100% * var(--swp-scale, 1));
  object-fit: contain;
  user-select: none;
  -webkit-user-drag: none;
  filter: grayscale(1);
  opacity: 0.85;
  transition: filter 0.35s ease, opacity 0.35s ease;
}
.swp__img--card { width: 100%; height: 100%; max-width: none; max-height: none; object-fit: cover; }

.swp__card:hover .swp__img,
.swp__card:focus-within .swp__img { filter: grayscale(0); opacity: 1; }

/* no hover on touch screens: show the logos in colour straight away */
@media (hover: none) {
  .swp__img { filter: none; opacity: 1; }
}

@media (max-width: 1199px) {
  .swp__card { padding: 18px; }
  .swp__card--bare { padding: 0; }
}
@media (max-width: 809px) {
  .swp { --swp-speed: 26s; }
  .swp__card { padding: 14px; border-radius: 6px; }
  .swp__card--bare { padding: 0; }
}

/* reduced motion: no ticker, just a swipeable row */
@media (prefers-reduced-motion: reduce) {
  .swp { overflow-x: auto !important; scrollbar-width: none; }
  .swp::-webkit-scrollbar { display: none; }
  .swp__track { animation: none; }
  .swp__set--clone { display: none; }
}
