/* TLC Reviews */
.tlc-reviews { position: relative; overflow: hidden; background: var(--tlc-ink); padding: 6rem 1.5rem; }
.tlc-reviews__inner { margin: 0 auto; max-width: 72rem; }

.tlc-reviews__head { display: flex; flex-direction: column; align-items: center; text-align: center; }
.tlc-reviews__heading {
  margin: 1rem 0 0;
  font-family: var(--tlc-font-display);
  font-size: clamp(2rem, 4.5vw, 3.5rem);
  font-weight: 500;
  color: var(--tlc-ivory);
}
.tlc-reviews__rating { margin-top: 0.75rem; display: flex; align-items: center; gap: 0.5rem; }
.tlc-reviews__rating-note { font-size: 0.875rem; color: var(--tlc-fog); }

.tlc-stars { display: flex; gap: 0.125rem; }
.tlc-star { color: var(--tlc-brass); }

/* columns */
.tlc-reviews__cols {
  margin-top: 3.5rem;
  display: flex;
  justify-content: center;
  gap: 1.25rem;
  overflow: hidden;
  max-height: 42.5rem;
  -webkit-mask-image: linear-gradient(to bottom, transparent, black 15%, black 85%, transparent);
  mask-image: linear-gradient(to bottom, transparent, black 15%, black 85%, transparent);
}
.tlc-reviews__col { flex: 1; min-width: 0; max-width: 24rem; overflow: hidden; }
.tlc-reviews__col--md { display: none; }
.tlc-reviews__col--lg { display: none; }
@media (min-width: 768px) { .tlc-reviews__col--md { display: block; } }
@media (min-width: 1024px) { .tlc-reviews__col--lg { display: block; } }

.tlc-reviews__track {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding-bottom: 1.25rem;
  animation: tlc-vscroll var(--dur, 18s) linear infinite;
}
@keyframes tlc-vscroll { from { transform: translateY(0); } to { transform: translateY(-50%); } }

.tlc-review {
  border-radius: 1rem;
  border: 1px solid color-mix(in srgb, var(--tlc-brass) 15%, transparent);
  background: var(--tlc-navy);
  padding: 1.5rem;
  box-shadow: 0 8px 32px -12px rgba(0, 0, 0, 0.6);
}
.tlc-review__quote { margin: 0.75rem 0 0; font-size: 1rem; line-height: 1.625; color: color-mix(in srgb, var(--tlc-ivory) 85%, transparent); }
.tlc-review__foot { margin-top: 1rem; border-top: 1px solid color-mix(in srgb, var(--tlc-brass) 10%, transparent); padding-top: 0.75rem; }
.tlc-review__name { margin: 0; font-size: 0.875rem; font-weight: 500; color: var(--tlc-brass-soft); }
.tlc-review__detail { margin: 0.125rem 0 0; font-family: var(--tlc-font-mono); font-size: 10px; text-transform: uppercase; letter-spacing: 0.1em; color: var(--tlc-fog); }

/* trust badges */
.tlc-reviews__badges {
  margin-top: 3rem;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.75rem 2rem;
  border-top: 1px solid color-mix(in srgb, var(--tlc-brass) 10%, transparent);
  padding-top: 2.5rem;
}
.tlc-reviews__badge { display: flex; align-items: center; gap: 0.5rem; font-size: 0.875rem; color: var(--tlc-fog); }
.tlc-reviews__badge-dot { height: 0.25rem; width: 0.25rem; flex-shrink: 0; border-radius: 9999px; background: var(--tlc-brass); }
