/* Animate only the existing decorative hero images (home .kv-graphic-wrap and sub-page .blob wrappers). */
.kv-graphic-wrap .kv-blob,
.blob .kv-blob {
  will-change: transform;
  transform-origin: 50% 50%;
}
.kv-graphic-wrap .kv-blob-1,
.blob .kv-blob-1 {
  animation: clutch-drift-front 11s ease-in-out -3s infinite;
}
.kv-graphic-wrap .kv-blob-2,
.blob .kv-blob-2 {
  animation: clutch-drift-top 13s ease-in-out -8s infinite;
}
.kv-graphic-wrap .kv-blob-3,
.blob .kv-blob-3 {
  animation: clutch-drift-back 16s ease-in-out -13s infinite;
}
@keyframes clutch-drift-front {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(-3deg) scale(1); }
  50% { transform: translate3d(-7rem, -8.5rem, 0) rotate(8deg) scale(1.09); }
}
@keyframes clutch-drift-top {
  0%, 100% { transform: translate3d(-3rem, -3rem, 0) rotate(5deg) scale(1.05); }
  50% { transform: translate3d(5.5rem, 5.5rem, 0) rotate(-7deg) scale(1); }
}
@keyframes clutch-drift-back {
  0%, 100% { transform: translate3d(0, 3rem, 0) rotate(-5deg) scale(1); }
  50% { transform: translate3d(-8.5rem, -4.5rem, 0) rotate(7deg) scale(1.07); }
}
@media (prefers-reduced-motion: reduce) {
  .kv-graphic-wrap .kv-blob {
    animation: none;
    transform: none;
    will-change: auto;
  }
}
