.pawpal-testi{
  background: var(--pp-bg);
  border: 1px solid color-mix(in srgb, var(--pp-accent) 55%, #ffffff 45%);
  border-radius: var(--pp-radius);
  padding: 18px 18px 20px;
  color: var(--pp-ink);
}
.pawpal-testi-head h2{ margin:0 0 6px; font-size: clamp(20px, 2.4vw, 28px); }
.pawpal-testi-head p{ margin:0 0 14px; opacity:.9; }

.pawpal-testi-grid{ display:grid; gap:14px; }
.pawpal-testi-grid.cols-1{ grid-template-columns: 1fr; }
.pawpal-testi-grid.cols-2{ grid-template-columns: repeat(2, 1fr); }
.pawpal-testi-grid.cols-3{ grid-template-columns: repeat(3, 1fr); }
.pawpal-testi-grid.cols-4{ grid-template-columns: repeat(4, 1fr); }
@media (max-width: 980px){ .pawpal-testi-grid.cols-3, .pawpal-testi-grid.cols-4{ grid-template-columns: repeat(2,1fr); } }
@media (max-width: 640px){ .pawpal-testi-grid.cols-2, .pawpal-testi-grid.cols-3, .pawpal-testi-grid.cols-4{ grid-template-columns: 1fr; } }

.pawpal-testi-card{
  background: var(--pp-card);
  border: 1px solid color-mix(in srgb, var(--pp-accent) 35%, #ffffff 65%);
  border-radius: calc(var(--pp-radius) - 2px);
  padding: 14px 14px 12px;
  box-shadow: calc(var(--pp-shadow) * 1px) 10px calc(var(--pp-shadow) * 26px) rgba(0,0,0,0.10);
}
.pawpal-testi-top{ display:flex; align-items:center; gap:10px; margin-bottom:10px; flex-wrap:wrap; }
.pawpal-stars{ font-weight:900; letter-spacing: .06em; color: color-mix(in srgb, var(--pp-accent) 70%, #000 30%); }
.pawpal-verified{
  font-size: 12px; font-weight: 800;
  background: color-mix(in srgb, var(--pp-accent) 25%, #fff 75%);
  border: 1px solid color-mix(in srgb, var(--pp-accent) 45%, #fff 55%);
  padding: 4px 10px; border-radius: 999px;
}
.pawpal-demo{
  font-size: 12px; font-weight: 900;
  background: #fff3cd;
  border: 1px solid #ffe69c;
  padding: 4px 10px; border-radius: 999px;
}

.pawpal-testi-body{ font-size: 14.5px; line-height:1.55; }
.pawpal-testi-body p{ margin:0 0 10px; }
.pawpal-testi-body p:last-child{ margin-bottom:0; }

.pawpal-testi-footer{
  margin-top: 12px;
  display:flex; gap:10px; align-items:center;
  border-top: 1px dashed color-mix(in srgb, var(--pp-accent) 35%, #ffffff 65%);
  padding-top: 10px;
}
.pawpal-avatar{
  width: 44px; height: 44px; border-radius: 999px;
  display:flex; align-items:center; justify-content:center;
  background: color-mix(in srgb, var(--pp-accent) 22%, #fff 78%);
  border: 1px solid color-mix(in srgb, var(--pp-accent) 40%, #fff 60%);
  overflow:hidden;
  font-size: 18px;
}
.pawpal-avatar img{ width:100%; height:100%; object-fit:cover; }
.pawpal-name{ font-weight: 900; }
.pawpal-dog{ font-weight: 800; opacity:.85; }
.pawpal-city{ font-size: 13px; opacity:.85; }

