/* Shared PayHr logo motion: hold each position for 2.8s, swap in 0.7s. */
.brand-animated svg, .wordmark .brand-mark { overflow: visible; }
.brand-animated svg rect:first-child, .wordmark .brand-mark rect:first-child { animation: brand-squircle-back 7s ease-in-out infinite; }
.brand-animated svg rect:last-child, .wordmark .brand-mark rect:last-child { animation: brand-squircle-front 7s ease-in-out infinite; }
@keyframes brand-squircle-back {
  0%, 40%, 100% { transform: translate(0, 0); opacity: .35; }
  45%, 95% { transform: translate(8px, 0); opacity: .65; }
  50%, 90% { transform: translate(8px, 8px); opacity: 1; }
}
@keyframes brand-squircle-front {
  0%, 40%, 100% { transform: translate(0, 0); opacity: 1; }
  45%, 95% { transform: translate(-8px, 0); opacity: .65; }
  50%, 90% { transform: translate(-8px, -8px); opacity: .35; }
}
@media (prefers-reduced-motion: reduce) {
  .brand-animated svg rect, .wordmark .brand-mark rect { animation: none; }
}
