.reviews-slider {
  background: var(--color-light, #f5f5f5);
  color: var(--color-black, #0a0909);
  overflow: hidden;
  padding: clamp(2rem, 4vw, 4rem) 0;
}

.reviews-slider-image-wrap,
.reviews-slider-content {
  position: relative;
  height: 100%;
  min-height: 140px;
  overflow: hidden;
}

.reviews-slider-image-wrap {
  background: var(--color-base, #e3ded6);
}

.reviews-slider-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(0);
  transform: scale(1);
  transition:
    transform 0.8s ease,
    filter 0.4s ease;
}

.reviews-slider-image-wrap:hover .reviews-slider-image {
  transform: scale(1.04);
}

.reviews-slider-content {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-black, #0a0909);
  color: var(--color-white, #ffffff);
  padding: clamp(3rem, 5vw, 6rem) clamp(1.5rem, 4vw, 6rem);
}

.reviews-slider-content-inner {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  min-height: inherit;
  text-align: center;
}

.reviews-slider-heading {
  position: absolute;
  top: clamp(2rem, 4vw, 4.5rem);
  left: 50%;
  width: 100%;
  transform: translateX(-50%);
}

.reviews-slider-subheadline {
  margin: 0 0 0.65rem;
  color: rgba(255, 255, 255, 0.65);
  font-family: var(--font-headline);
  font-size: clamp(0.9rem, 1vw, 1.1rem);
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.reviews-slider-headline {
  margin: 0;
  color: var(--color-white, #ffffff);
  font-family: var(--font-headline);
  text-transform: uppercase;
}

.reviews-slider-track {
  width: 100%;
  max-width: 70rem;
  margin: 0 auto;
  padding: clamp(6rem, 8vw, 9rem) 0 clamp(1.25rem, 2vw, 2rem);
}

.reviews-slider-track:not(.slick-initialized)
  .reviews-slider-slide:not(:first-child) {
  display: none;
}

.reviews-slider-slide {
  width: 100%;
}

.reviews-slider-review {
  margin: 0;
}

.reviews-slider-quote {
  margin: 0 auto;
  max-width: 66rem;
  color: var(--color-white, #ffffff);
  font-family: var(--font-body);
  font-size: clamp(1.15rem, 1.45vw, 1.8rem);
  font-weight: 400;
  line-height: 1.22;
}

.reviews-slider-quote p {
  margin: 0;
}

.reviews-slider-author {
  margin-top: clamp(1.5rem, 2vw, 2.4rem);
  color: rgba(255, 255, 255, 0.68);
  font-family: var(--font-headline);
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}

.reviews-slider-arrows {
  position: static;
  z-index: 5;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.75rem;
  margin: 0 auto;
}

.reviews-slider-arrow {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(3rem, 3.8vw, 4.4rem);
  height: clamp(3rem, 3.8vw, 4.4rem);
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.18);
  color: var(--color-white, #ffffff);
  cursor: pointer;
  transition:
    background var(--transition-default, 0.25s ease),
    transform var(--transition-default, 0.25s ease);
}

.reviews-slider-arrow:hover,
.reviews-slider-arrow:focus-visible {
  background: rgba(255, 255, 255, 0.32);
}

.reviews-slider-arrow:focus-visible {
  outline: 2px solid var(--color-white, #ffffff);
  outline-offset: 3px;
}

.reviews-slider-arrow span::before {
  display: block;
  color: var(--color-white, #ffffff);
  font-family: var(--font-body);
  font-size: clamp(1.8rem, 2.1vw, 2.5rem);
  line-height: 1;
  transform: translateY(-0.05em);
}

.reviews-slider-arrow--prev span::before {
  content: "←";
}

.reviews-slider-arrow--next span::before {
  content: "→";
}

.reviews-slider-arrow--prev:hover,
.reviews-slider-arrow--prev:focus-visible {
  transform: translateX(-0.15rem);
}

.reviews-slider-arrow--next:hover,
.reviews-slider-arrow--next:focus-visible {
  transform: translateX(0.15rem);
}

.reviews-slider .slick-list,
.reviews-slider .slick-track {
  width: 100%;
}

.reviews-slider .slick-slide {
  height: auto;
}

.reviews-slider .slick-slide > div {
  height: 100%;
}

@media (max-width: 1199.98px) {
  .reviews-slider-image-wrap,
  .reviews-slider-content {
    min-height: clamp(31rem, 52vw, 44rem);
  }

  .reviews-slider-headline {
    font-size: clamp(2.4rem, 5vw, 4.4rem);
  }
}

@media (max-width: 991.98px) {
  .reviews-slider-image-col {
    order: 1;
  }

  .reviews-slider-image-wrap {
    min-height: auto;
    aspect-ratio: 1 / 1.25;
  }

  .reviews-slider-content {
    min-height: clamp(30rem, 90vw, 40rem);
    padding: clamp(2.5rem, 7vw, 4rem) clamp(1.25rem, 5vw, 2rem);
  }

  .reviews-slider-heading {
    top: clamp(2rem, 7vw, 3rem);
  }

  .reviews-slider-track {
    padding-top: clamp(5.5rem, 18vw, 7rem);
    padding-bottom: clamp(1.25rem, 5vw, 2rem);
  }

  .reviews-slider-quote {
    font-size: clamp(1.05rem, 4vw, 1.35rem);
  }

  .reviews-slider-arrows {
    position: static;
    right: auto;
    bottom: auto;
    transform: none;
    margin: 0 auto;
  }
}

@media (max-width: 575.98px) {
  .reviews-slider {
    padding: 1rem 0;
  }

  .reviews-slider-container {
    padding-right: 1rem;
    padding-left: 1rem;
  }

  .reviews-slider-headline {
    font-size: clamp(2rem, 11vw, 3.2rem);
  }

  .reviews-slider-image-wrap {
    aspect-ratio: 1 / 1.15;
  }

  .reviews-slider-content {
    min-height: clamp(30rem, 115vw, 38rem);
  }

  .reviews-slider-author {
    font-size: 0.95rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  .reviews-slider-image,
  .reviews-slider-arrow {
    transition: none;
  }
}
