/* ==========================================================================
   Reference — nekonečný marquee slider
   ========================================================================== */

.testimonials { padding: 96px 0; overflow: hidden; }

.marquee { margin-top: 36px; }
.marquee__viewport { overflow: hidden; padding-block: 20px; }
.marquee__track { display: flex; gap: 48px; width: max-content; }

.marquee__controls { display: none; justify-content: center; gap: 12px; margin-top: 32px; }
@media (max-width: 720px) {
  .testimonials { padding: 56px 0; }
  .marquee__controls { display: flex; }

  .marquee__viewport {
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .marquee__viewport::-webkit-scrollbar { display: none; }

  .marquee__track {
    transform: none !important;
    padding-inline: max((100vw - 440px) / 2, 10vw);
  }
  .tcard { scroll-snap-align: center; }

  .tcard[aria-hidden="true"] { display: none; }
}

/* Testimonial card — quote + company */
.tcard {
  flex: 0 0 440px;
  max-width: 80vw;
  display: flex; flex-direction: column; gap: 24px;
  background: var(--surface);
  border: 1px solid var(--border-hair);
  border-radius: var(--radius);
  padding: 36px;
  box-shadow: var(--shadow-sm);
}

.tcard__quote {
  margin: 0;
  font-size: 18px; line-height: 28px; font-weight: 500;
  color: var(--text); letter-spacing: -.01em;
}
.tcard__quote::before {
  content: "\201C"; display: block;
  font-size: 56px; line-height: .5; color: var(--red);
  margin-bottom: 16px; font-family: Georgia, "Times New Roman", serif;
}

/* Company attribution — logo if provided, otherwise a clean wordmark */
.tcard__company {
  display: flex; align-items: center; min-height: 32px;
  margin-top: auto; padding-top: 20px;
  border-top: 1px solid var(--border-hair);
}
/* Logo treatment matches the hardwario.com marquee: greyscale + faded,
   full colour on hover; dark mode inverts so dark logos read light. */
.tcard__company img {
  width: auto; max-width: 200px; object-fit: contain;
  filter: grayscale(1); opacity: .4;
  transition: filter .3s ease, opacity .3s ease;
}
.tcard__company img:hover { filter: none; opacity: 1; }
[data-theme="dark"] .tcard__company img { filter: grayscale(1) invert(1); opacity: .55; }
[data-theme="dark"] .tcard__company img:hover { filter: grayscale(1) invert(1); opacity: 1; }

/* Per-logo optical heights (same values as hardwario.com) */
.tcard__company img[src$="skoda.svg"]     { height: 20px; }
.tcard__company img[src$="vodafone.svg"]  { height: 28px; }
.tcard__company img[src$="eon.svg"]       { height: 24px; }
.tcard__company img[src$="statotest.svg"] { height: 36px; }
.tcard__company img[src$="zat.svg"]       { height: 32px; }
.tcard__company img[src$="tpca.png"]      { height: 20px; }
.tcard__company img[src$="deltavue.png"]  { height: 28px; }
.tcard__company img[src$="iframix.webp"]  { height: 24px; }

.tcard__wordmark { font-size: 18px; font-weight: 800; letter-spacing: -.01em; color: var(--heading); }

.tower-slider__btn {
  width: 44px; height: 44px; border-radius: 50%;
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--surface); border: 1px solid var(--border); color: var(--text);
  transition: border-color .15s ease, color .15s ease;
}
.tower-slider__btn svg { width: 22px; height: 22px; }
.tower-slider__btn:hover { border-color: var(--red); color: var(--red); }

@media (prefers-reduced-motion: reduce) {
  .marquee__viewport { overflow-x: auto; }
}
