/* =========================================================
   TESTIMONIAL – Nightwatch-style
   ========================================================= */

.c-testimonial {
  padding: var(--tc-space-16) var(--tc-container-padding);
  background: var(--tc-testimonial-bg);
  color: var(--tc-testimonial-text);
}

.c-testimonial__inner {
  max-width: var(--tc-container-width);
  margin: 0 auto;
}

/* Panel -------------------------------------------------- */

.c-testimonial__panel {
  position: relative;
  border-radius: var(--tc-radius-2xl, 28px);
  padding: var(--tc-space-10) var(--tc-space-10) var(--tc-space-9);
  background: var(--tc-testimonial-surface);
  overflow: hidden;
}

/* Vertikale Linien links / rechts ------------------------ */

.c-testimonial__lines {
  position: absolute;
  top: 15%;
  bottom: 12%;
  width: 1px;
  opacity: 0.45;
  background: linear-gradient(
	to bottom,
	transparent,
	var(--tc-testimonial-line),
	transparent
  );
}

.c-testimonial__lines--left {
  left: 0;
}

.c-testimonial__lines--right {
  right: 0;
}

/* Content ------------------------------------------------ */

.c-testimonial__content {
  max-width: 52rem;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  padding: 48px;
}

/* Label */

.c-testimonial__label {
  font-size: var(--tc-font-size-xs);
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: var(--tc-testimonial-muted);
  margin-bottom: var(--tc-space-4);
}

/* Quote Icon */

.c-testimonial__quote-icon {
  margin-bottom: var(--tc-space-4);
}

.c-testimonial__quote-icon span {
  display: inline-block;
  font-size: 2.4rem;
  line-height: 1;
  color: var(--tc-testimonial-accent);
}

/* Quote Text */

.c-testimonial__quote {
  font-size: clamp(1.1rem, 1.4vw, 1.3rem);
  line-height: var(--tc-line-height-loose);
  color: var(--tc-testimonial-quote);
  margin-bottom: var(--tc-space-6);
}

/* Author ------------------------------------------------- */

.c-testimonial__author {
  display: inline-flex;
  align-items: center;
  gap: var(--tc-space-3);
}

.c-testimonial__avatar {
  width: 40px;
  height: 40px;
  border-radius: 999px;
  overflow: hidden;
  background: rgba(148, 163, 184, 0.4);
  flex-shrink: 0;
}

.c-testimonial__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.c-testimonial__meta {
  display: flex;
  flex-direction: column;
}

.c-testimonial__name {
  font-size: var(--tc-font-size-sm);
  font-weight: 600;
  color: var(--tc-testimonial-text);
}

.c-testimonial__role {
  font-size: var(--tc-font-size-xs);
  color: var(--tc-testimonial-muted);
}

/* =========================================================
   THEMES: DARK / LIGHT
   ========================================================= */

.c-testimonial--dark {
  --tc-testimonial-bg: #020617;
  --tc-testimonial-surface: radial-gradient(circle at bottom, #020617 0, #020617 40%, #020617 100%);
  --tc-testimonial-text: #e5e7eb;
  --tc-testimonial-muted: #9ca3af;
  --tc-testimonial-quote: #f9fafb;
  --tc-testimonial-accent: #22c55e;
  --tc-testimonial-line: rgba(75, 85, 99, 0.9);
}

.c-testimonial--light {
  --tc-testimonial-bg: #f9fafb;
  --tc-testimonial-surface: #ffffff;
  --tc-testimonial-text: #0f172a;
  --tc-testimonial-muted: #6b7280;
  --tc-testimonial-quote: #020617;
  --tc-testimonial-accent: #22c55e;
  --tc-testimonial-line: rgba(209, 213, 219, 0.9);
}

/* Responsive --------------------------------------------- */

@media (max-width: 900px) {
  .c-testimonial {
	padding-inline: 1.25rem;
  }

  .c-testimonial__panel {
	padding: var(--tc-space-8) var(--tc-space-6) var(--tc-space-7);
	border-radius: 24px;
  }

  .c-testimonial__content {
	max-width: 100%;
  }
}