/* Testimonials: same animated navy background as the Product Design "What We Design" section. */
#testimonials { position: relative; isolation: isolate; overflow: clip; background: #151d2b; }
#testimonials > .container { position: relative; z-index: 1; }
#testimonials::before {
  content: "";
  position: absolute;
  inset: -10%;
  z-index: 0;
  pointer-events: none;
  background:
    radial-gradient(34% 40% at 6% 18%, rgb(46 92 200 / 18%), transparent 70%),
    radial-gradient(30% 36% at 96% 88%, rgb(70 90 210 / 14%), transparent 70%);
  animation: tmBgDrift 22s ease-in-out infinite alternate;
}
#testimonials::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400' fill='none'%3E%3Ccircle cx='-60' cy='120' r='300' stroke='%236f95ff' stroke-opacity='.35' stroke-width='1.2'/%3E%3Ccircle cx='-60' cy='120' r='360' stroke='%23ffca3a' stroke-opacity='.18'/%3E%3Ccircle cx='166' cy='330' r='4' fill='%23ffca3a'/%3E%3C/svg%3E") left -40px top -60px / 520px 520px no-repeat,
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 400 400' fill='none'%3E%3Ccircle cx='460' cy='300' r='260' stroke='%236f95ff' stroke-opacity='.32' stroke-width='1.2'/%3E%3Ccircle cx='202' cy='290' r='4' fill='%23ffca3a'/%3E%3C/svg%3E") right -60px bottom -80px / 460px 460px no-repeat,
    radial-gradient(circle, rgb(150 175 235 / 16%) .8px, transparent 1.4px) 0 0 / 18px 18px;
  -webkit-mask-image: linear-gradient(90deg, #000 0%, transparent 14%, transparent 86%, #000 100%);
  mask-image: linear-gradient(90deg, #000 0%, transparent 14%, transparent 86%, #000 100%);
  animation: tmBgPulse 9s ease-in-out infinite alternate;
}
@keyframes tmBgDrift { from { transform: translate(0, 0); } to { transform: translate(3%, -2%); } }
@keyframes tmBgPulse { from { opacity: .75; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { #testimonials::before, #testimonials::after { animation: none; } }
