/**
 * TG Iwata Reviews
 * Heading (from the text group) + an Owl carousel of testimonial cards.
 * Section background/colors come from the Advanced tab; override anything
 * per-instance with the section ID (e.g. #iwata-reviews).
 */

/* ---- Carousel shell ---- */
.tg-reviews-carousel { position: relative; }

/* Prev/next arrows — yellow circles, top-right (above the cards) */
.tg-reviews-carousel .owl-nav {
  position: absolute;
  top: -3.75rem;
  right: 0;
  display: flex;
  gap: 0.5rem;
  margin: 0;
}
.tg-reviews-carousel .owl-nav button.owl-prev,
.tg-reviews-carousel .owl-nav button.owl-next {
  width: 31px;
  height: 31px;
  border-radius: 50%;
  background: var(--theme-primary-color, #F6EC23);
  color: #111;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8rem;
  transition: opacity 150ms ease;
}
.tg-reviews-carousel .owl-nav button.owl-prev:hover,
.tg-reviews-carousel .owl-nav button.owl-next:hover { opacity: 0.85; }
.tg-reviews-carousel .owl-nav button.disabled { opacity: 0.35; cursor: default; }
.tg-reviews-carousel .owl-dots { margin-top: 1.25rem; text-align: center; }

/* ---- Equal-height cards ----
   Owl lays slides out inline-block, so each card is only as tall as its own
   quote. Flex the stage + items so every visible slide stretches to the
   tallest one; the card fills that height and runs as a column so the
   reviewer block can pin to the bottom. */
.tg-reviews-carousel.owl-carousel .owl-stage { display: flex; }
.tg-reviews-carousel.owl-carousel .owl-item { display: flex; height: auto; }
.tg-reviews-carousel.owl-carousel .owl-item > * { width: 100%; }

/* ---- Testimonial card ---- */
.tg-review-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  background: #2a2a2a;
  color: #fff;
  border-radius: 14px;
  padding: 2rem 1.9rem 1.85rem;
  font-family: var(--secondary-font-family);
}
.tg-review-card__quote {
  display: block;
  font-size: 6.75rem;
  line-height: 0.7;
  font-weight: 700;
  color: var(--theme-primary-color, #F6EC23);
  margin-bottom: -1.75rem;   /* pull the copy up tight under the glyph */
}
.tg-review-card__content {
  font-size: 0.95rem;
  line-height: 1.6;
  color: #d9d9d9;
  margin-bottom: 1.5rem;
}
.tg-review-card__content strong { color: #fff; font-weight: 700; }
.tg-review-card__content p { margin: 0; }
.tg-review-card__name {
  margin: auto 0 0.25rem;   /* top:auto pins the reviewer block (name/meta/stars) to the card bottom */
  font-weight: 700;
  font-size: 1rem;
}
.tg-review-card__meta {
  margin: 0 0 1.1rem;
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  color: #9a9a9a;
}
.tg-review-card__stars {
  font-size: 1.35rem;
  letter-spacing: 0.01em;
  line-height: 1;
}
.tg-review-card__star { color: rgba(255, 255, 255, 0.22); }
.tg-review-card__star.is-filled { color: var(--theme-primary-color, #F6EC23); }
