
/* Homepage testimonials: one visible card, with stable height between slides. */
.ssk-testimonial-region { width: min(100%, 800px); margin-inline: auto; }
.testimonials-grid.ssk-testimonial-carousel {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 0;
  perspective: none;
}
.ssk-testimonial-carousel > .testimonial-card {
  grid-area: 1 / 1;
  width: 100%;
  min-width: 0;
  margin: 0;
  box-sizing: border-box;
  visibility: hidden;
  opacity: 0 !important;
  transform: none !important;
  pointer-events: none;
  transition: opacity .35s ease;
}
.ssk-testimonial-carousel > .testimonial-card.ssk-testimonial-active {
  visibility: visible;
  opacity: 1 !important;
  pointer-events: auto;
}
.ssk-testimonial-controls, .ssk-testimonial-dots {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: .5rem;
  flex-wrap: wrap;
}
.ssk-testimonial-controls { margin-top: 1.5rem; }
.ssk-testimonial-controls button {
  min-width: 44px;
  min-height: 44px;
  padding: .5rem .9rem;
  border-radius: 8px;
  cursor: pointer;
  font-size: 1.25rem;
  line-height: 1.4;
}
.ssk-testimonial-controls .ssk-testimonial-playback { min-width: 90px; font-size: 1rem; }
.ssk-testimonial-dots { margin-top: .5rem; }
.ssk-testimonial-dots button,
.ssk-testimonial-dots button:hover,
.ssk-testimonial-dots button:focus {
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0 !important;
  border-radius: 50%;
  background: radial-gradient(circle, #1b4d3e 0 5px, transparent 6px) !important;
  cursor: pointer;
}
.ssk-testimonial-dots button[aria-current="true"] {
  background: radial-gradient(circle, #1b4d3e 0 7px, #d4af37 8px 10px, transparent 11px) !important;
}
body.dark-mode .ssk-testimonial-dots button {
  background: radial-gradient(circle, #f6e9bf 0 5px, transparent 6px) !important;
}
body.dark-mode .ssk-testimonial-dots button[aria-current="true"] {
  background: radial-gradient(circle, #fff 0 7px, #d4af37 8px 10px, transparent 11px) !important;
}
.ssk-testimonial-status { text-align: center; margin: .25rem 0 0; font-size: .875rem; }
@media (max-width: 480px) {
  .ssk-testimonial-carousel > .testimonial-card { padding: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .ssk-testimonial-carousel > .testimonial-card { transition: none; }
}
