.srp-testi-section, .srp-testi-section *{ box-sizing:border-box; }

.srp-testi-section{
  --srp-accent:#D04A6C;
  --srp-accent-deep:#B93A5C;
  --srp-ink:#1a1a1a;
  --srp-ink-soft:#555;
  --srp-line:#eee;
  --srp-white:#fff;

  background:#f0f0f0;
  padding:56px 20px 48px;
  border-radius:16px;
  font-family:'Nunito Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}

.srp-testi-header{ text-align:center; margin-bottom:36px; }

.srp-testi-title{
  font-size:2rem;
  font-weight:700;
  color:var(--srp-ink);
  margin:0 0 10px;
}

.srp-testi-sub{
  font-size:.95rem;
  color:var(--srp-ink-soft);
  margin:0;
}

.srp-testi-empty{
  text-align:center;
  color:var(--srp-ink-soft);
  font-size:14px;
}

.srp-testi-viewport{
  overflow:hidden;
  max-width:1100px;
  margin:0 auto;
}

.srp-testi-track{
  display:flex;
  gap:22px;
  transition:transform .42s cubic-bezier(.4,0,.2,1);
  will-change:transform;
}

.srp-testi-track.srp-no-transition{ transition:none; }

.srp-testi-card{
  flex:0 0 calc(33.333% - 15px);
  background:var(--srp-white);
  border-radius:14px;
  border:1.5px solid var(--srp-line);
  padding:26px 24px 22px;
  display:flex;
  flex-direction:column;
  min-height:220px;
}

.srp-testi-stars{
  color:#f5a623;
  font-size:1.25rem;
  letter-spacing:3px;
  margin-bottom:12px;
}

.srp-testi-review{
  font-size:.87rem;
  color:#444;
  line-height:1.6;
  flex:1;
  margin:0 0 16px;
}

.srp-testi-divider{
  border:none;
  border-top:1px solid var(--srp-line);
  margin:0 0 16px;
}

.srp-testi-author{
  display:flex;
  align-items:center;
  gap:12px;
}

.srp-testi-meta{
  display:flex;
  flex-direction:column;
  gap:2px;
}

.srp-testi-name{
  font-size:.88rem;
  font-weight:600;
  color:var(--srp-ink);
}

.srp-testi-role{
  font-size:.78rem;
  color:var(--srp-accent);
  line-height:1.4;
}

.srp-testi-dots{
  display:flex;
  justify-content:center;
  gap:8px;
  margin-top:26px;
}

.srp-testi-dot{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#d5d5d5;
  border:none;
  padding:0;
  cursor:pointer;
  transition:background .2s ease, transform .2s ease;
}

.srp-testi-dot:hover{ background:#bbb; }

.srp-testi-dot.srp-active{
  background:var(--srp-accent);
  transform:scale(1.2);
}

.srp-testi-controls{
  display:flex;
  justify-content:center;
  gap:14px;
  margin-top:18px;
}

.srp-testi-btn{
  width:44px;
  height:44px;
  border-radius:50%;
  border:none;
  background:var(--srp-accent);
  color:#fff;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:center;
  transition:background .2s, transform .15s;
  box-shadow:0 4px 12px rgba(208,74,108,.25);
}

.srp-testi-btn:hover{
  background:var(--srp-accent-deep);
  transform:scale(1.08);
}

@media (max-width:768px){
  .srp-testi-card{ flex:0 0 100%; }
  .srp-testi-title{ font-size:1.5rem; }
}

@media (min-width:769px) and (max-width:1024px){
  .srp-testi-card{ flex:0 0 calc(50% - 11px); }
}

@media (prefers-reduced-motion: reduce){
  .srp-testi-track{ transition:none; }
}
