/* ============================================================
   Op. Dr. Ramazan Güler — Testimonials
   ============================================================ */

.testimonials { background: var(--color-bg-alt); }

.testimonials__slider {
  position: relative;
  overflow: hidden;
  margin-inline: -4px;
  padding: 6px 4px 10px;
}
.testimonials__track {
  display: flex;
  gap: var(--sp-3);
  transition: transform var(--transition-slow);
}
.testimonial-card {
  flex: 0 0 calc((100% - 2 * var(--sp-3)) / 3);
  background: var(--color-white);
  border-radius: var(--radius-lg);
  padding: var(--sp-4);
  box-shadow: var(--shadow-card);
  border: 1px solid var(--color-border);
  position: relative;
  transition: var(--transition-base);
  display: flex;
  flex-direction: column;
}
.testimonial-card:hover { transform: translateY(-4px); box-shadow: var(--shadow-lg); }

.testimonial-card__quote {
  position: absolute;
  top: var(--sp-3); right: var(--sp-3);
  color: var(--color-primary-alpha);
  font-size: 5rem;
  line-height: 1;
  font-family: var(--font-heading);
  color: var(--color-border);
  user-select: none;
}
.testimonial-card__stars { margin-bottom: var(--sp-1); }
.testimonial-card__text {
  font-size: 1.05rem;
  font-weight: var(--fw-medium);
  color: var(--color-text);
  line-height: 1.8;
  flex: 1;
  margin-bottom: var(--sp-3);
  font-style: italic;
}
.testimonial-card__footer {
  display: flex;
  align-items: center;
  gap: .75rem;
}
.testimonial-card__avatar {
  width: 48px; height: 48px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid var(--color-border);
}
.testimonial-card__name { font-size: 1rem; font-weight: var(--fw-bold); color: var(--color-text); margin-bottom: 2px; }
.testimonial-card__country {
  font-size: .85rem;
  font-weight: var(--fw-medium);
  color: var(--color-text-muted);
  display: flex;
  align-items: center;
  gap: .35rem;
}

/* ── Slider Controls */
.testimonials__controls {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--sp-2);
  margin-top: var(--sp-4);
}
.testimonials__btn {
  width: 44px; height: 44px;
  border-radius: 50%;
  border: 2px solid var(--color-border);
  color: var(--color-text-muted);
  display: flex; align-items: center; justify-content: center;
  transition: var(--transition-base);
}
.testimonials__btn:hover { border-color: var(--color-primary); color: var(--color-primary); background: var(--color-primary-alpha); }
.testimonials__btn svg { width: 18px; height: 18px; }
.testimonials__dots {
  display: flex;
  gap: 6px;
}
.testimonials__dot {
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--color-border-dark);
  transition: var(--transition-base);
  cursor: pointer;
  border: none;
}
.testimonials__dot.active { background: var(--color-primary); width: 24px; border-radius: var(--radius-full); }

.testimonials__platforms {
  display: flex;
  align-items: stretch;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.5rem 2.5rem;
  margin-bottom: var(--sp-5);
}
.testimonials__platform {
  display: grid;
  grid-template-rows: 44px auto auto;
  justify-items: center;
  align-items: center;
  row-gap: .45rem;
  min-width: 160px;
  text-decoration: none;
  color: inherit;
  opacity: .96;
  transition: opacity var(--transition-fast), transform var(--transition-fast);
}
.testimonials__platform:hover { opacity: 1; transform: translateY(-2px); }
.testimonials__platform-logo {
  display: block;
  height: 30px;
  width: auto;
  max-width: 170px;
  max-height: 44px;
  object-fit: contain;
  object-position: center;
}
.testimonials__platform-logo.is-pe { height: 42px; }
.testimonials__platform-logo.is-google { height: 32px; }
.testimonials__platform-stars {
  display: flex;
  align-items: center;
  gap: 3px;
}
.testimonials__platform-stars img {
  display: block;
  width: 18px;
  height: 18px;
}
.testimonials__platform-meta {
  font-size: .82rem;
  font-weight: 500;
  color: var(--color-text-muted);
  line-height: 1.35;
  text-align: center;
}
.testimonials__platform-meta strong {
  color: var(--color-text);
  font-weight: 700;
}

/* ============================================================
   Op. Dr. Ramazan Güler — FAQ
   ============================================================ */

.faq__list { max-width: 820px; margin: 0 auto; display: flex; flex-direction: column; gap: var(--sp-1); }

.faq__item {
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  overflow: hidden;
  transition: var(--transition-base);
  box-shadow: var(--shadow-sm);
}
.faq__item:hover { border-color: var(--color-primary); }
.faq__item.open { border-color: var(--color-primary); box-shadow: var(--shadow-md); }

.faq__question {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--sp-2) var(--sp-3);
  text-align: left;
  font-size: var(--fs-base);
  font-weight: var(--fw-semibold);
  color: var(--color-text);
  cursor: pointer;
  gap: var(--sp-2);
  transition: color var(--transition-fast);
  background: none;
  border: none;
  -webkit-tap-highlight-color: transparent;
}
.faq__item.open .faq__question { color: var(--color-primary); }
.faq__icon {
  width: 28px; height: 28px;
  border-radius: 50%;
  border: 1.5px solid var(--color-border);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  color: var(--color-text-muted);
  transition: var(--transition-base);
}
.faq__icon svg { width: 14px; height: 14px; transition: transform var(--transition-base); }
.faq__item.open .faq__icon { background: var(--color-primary); border-color: var(--color-primary); color: #fff; }
.faq__item.open .faq__icon svg { transform: rotate(45deg); }

.faq__answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height .4s cubic-bezier(0.4, 0, 0.2, 1), padding .3s ease;
}
.faq__answer-inner {
  padding: 0 var(--sp-3) var(--sp-3);
  font-size: 1.05rem;
  color: var(--color-text-muted);
  line-height: var(--lh-relaxed);
}

