/* Testimonials (Figma: section-testimonials 35:12401 — 1512×1672) */
.fighter-testimonials {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 64px;
  background: var(--fighter-black);
  overflow: hidden;
  text-align: center;
  box-sizing: border-box;
}

.fighter-testimonials.fighter-section {
  overflow: hidden;
}

/*
 * Ellipse on inert glow layer (not block ::before) so editor selection ignores it.
 * 35:12402 — x:622 y:-157 670×670
 */
.fighter-testimonials__glow {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.fighter-testimonials__glow::before {
  content: "";
  position: absolute;
  pointer-events: none;
  left: calc(622 / 1512 * 100%);
  top: -157px;
  width: min(670px, 44.31vw);
  height: min(670px, 44.31vw);
  background: var(--fighter-bg-ellipse) center / contain no-repeat;
}

.fighter-testimonials__header,
.fighter-testimonials__grid,
.fighter-testimonials__empty {
  position: relative;
  z-index: 1;
  width: 100%;
  box-sizing: border-box;
}

.fighter-testimonials__header {
  max-width: min(100%, 900px);
  padding-inline: var(--fighter-section-x);
}

.fighter-testimonials .fighter-section-title {
  gap: 24px;
  margin-bottom: 0;
  max-width: none;
  width: 100%;
}

.fighter-testimonials .fighter-section-title__eyebrow {
  font-size: 16px;
  line-height: 16px;
  text-align: center;
  width: 100%;
}

.fighter-testimonials .fighter-section-title__heading {
  display: flex;
  justify-content: center;
  width: max-content;
  max-width: 100%;
  margin-inline: auto;
}

.fighter-testimonials .fighter-section-title__deco {
  left: -23.5px;
  top: 32px;
  transform: none;
  z-index: -1;
}

.fighter-testimonials .fighter-section-title--center .fighter-section-title__deco {
  left: -46.5px;
  transform: none;
}

.fighter-testimonials .fighter-section-title__title {
  font-size: clamp(1.375rem, 3.5vw, 48px);
  line-height: 1;
  text-align: center;
  white-space: nowrap;
}

@media (max-width: 991px) {
  .fighter-testimonials .fighter-section-title__title {
    white-space: normal;
    font-size: 28px;
    line-height: 28px;
  }
}

/* grid-masonry — 3 cols × 408, gap 24, side pad 120 */
.fighter-testimonials__grid {
  display: flex;
  align-items: flex-start;
  gap: 24px;
  padding-inline: var(--fighter-section-x);
  max-width: var(--fighter-design-width);
  margin-inline: auto;
}

.fighter-testimonials__col {
  flex: 1 1 0;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.fighter-review-card {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 24px;
  padding: 32px;
  background: var(--fighter-gray-80);
  border: 1px solid var(--fighter-white-7);
  border-radius: var(--fighter-radius-lg);
  text-align: left;
  box-sizing: border-box;
}

.fighter-review-card__stars {
  display: block;
  flex-shrink: 0;
  width: 100px;
  height: 20px;
  pointer-events: none;
}

.fighter-review-card__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  width: 100%;
}

.fighter-review-card__headline {
  margin: 0;
  font-family: var(--fighter-font-body);
  font-weight: 700;
  font-size: 20px;
  line-height: 26px;
  color: var(--fighter-white);
}

.fighter-review-card__quote {
  margin: 0;
  font-family: var(--fighter-font-body);
  font-weight: 400;
  font-size: 16px;
  line-height: 26px;
  color: var(--fighter-white-80);
}

.fighter-review-card__author {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
}

.fighter-review-card__avatar {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 100px;
  overflow: hidden;
  background: var(--fighter-gray-100);
}

.fighter-review-card__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 70% 20%;
  filter: grayscale(1);
}

.fighter-review-card__name {
  margin: 0;
  font-family: var(--fighter-font-body);
  font-weight: 700;
  font-size: 20px;
  line-height: 26px;
  color: var(--fighter-white);
}

.fighter-testimonials__empty {
  margin: 0;
  padding-inline: var(--fighter-section-x);
  color: var(--fighter-white-80);
  text-align: center;
}

@media (max-width: 900px) {
  .fighter-testimonials__grid {
    flex-direction: column;
  }

  .fighter-testimonials__col {
    width: 100%;
  }
}

/* Mobile carousel (Figma 35:12514) — one card, dots + arrows */
.fighter-testimonials-carousel {
  display: none;
  position: relative;
  z-index: 1;
  flex-direction: column;
  gap: 48px;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
}

@media (max-width: 767px) {
  .fighter-testimonials {
    gap: 48px;
  }

  .fighter-testimonials__glow::before {
    left: 50%;
    top: -80px;
    transform: translateX(-50%);
  }

  .fighter-testimonials .fighter-section-title__deco {
    left: 0;
    top: 28px;
  }

  .fighter-testimonials__grid {
    display: none;
  }

  .fighter-testimonials-carousel {
    display: flex;
  }

  .fighter-testimonials-swiper {
    width: 100%;
    overflow: hidden;
    padding-inline: 0;
    box-sizing: border-box;
  }

  .fighter-testimonials-swiper .swiper-wrapper {
    align-items: stretch;
  }

  .fighter-testimonials-swiper.fighter-swiper-is-jumping .swiper-wrapper {
    transition-duration: 0ms !important;
  }

  .fighter-testimonials-swiper .swiper-slide {
    height: auto;
    box-sizing: border-box;
  }

  .fighter-testimonials-swiper .fighter-review-card {
    height: 100%;
    min-height: 320px;
    padding: 20px;
    gap: 20px;
    background: var(--fighter-gray-50);
  }

  .fighter-review-card__headline {
    font-size: 18px;
    line-height: 24px;
  }

  .fighter-review-card__quote {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 7;
    overflow: hidden;
    line-height: 24px;
  }

  .fighter-testimonials__controls {
    width: 100%;
    max-width: none;
    padding: 0 var(--fighter-section-x);
    margin: 0;
    box-sizing: border-box;
  }
}
