/* The closing illustration shares the site's Euro / precision signature. */
.money-motif { width: min(280px, 100%); margin: 24px auto 0; pointer-events: none; user-select: none; }
.money-motif svg { display: block; width: 100%; height: auto; overflow: visible; }
.money-bundle { transform-origin: 280px 202px; }
.money-target-click, .money-target-pulse { transform-origin: 0 0; }

@media (min-width: 761px) {
  .closing .money-motif { position: absolute; width: 34%; max-width: 480px; top: clamp(135px, 13.2vw, 210px); right: clamp(30px, 3vw, 40px); margin: 0; }
}

.money-motif[data-motion="ready"] .money-target-travel { animation: money-aim 5.8s cubic-bezier(.45, 0, .2, 1) infinite; }
.money-motif[data-motion="ready"] .money-target-click { animation: money-click 5.8s ease-in-out infinite; }
.money-motif[data-motion="ready"] .money-target-pulse { animation: money-pulse 5.8s ease-out infinite; }
.money-motif[data-motion="ready"] .money-bundle { animation: money-response 5.8s ease-in-out infinite; }
.money-motif[data-motion="ready"][data-playing="false"] svg * { animation-play-state: paused; }

@keyframes money-aim {
  0%, 16%, 100% { transform: translate(-132px, 104px); }
  42%, 68% { transform: translate(0, 0); }
  90% { transform: translate(-132px, 104px); }
}
@keyframes money-click {
  0%, 47%, 58%, 100% { transform: scale(1); }
  51% { transform: scale(.86); }
  55% { transform: scale(1.04); }
}
@keyframes money-pulse {
  0%, 50%, 67%, 100% { transform: scale(1); opacity: 0; }
  51% { transform: scale(.9); opacity: .65; }
  65% { transform: scale(1.5); opacity: 0; }
}
@keyframes money-response {
  0%, 48%, 59%, 100% { transform: scale(1); }
  52% { transform: scale(.98); }
}
@media (prefers-reduced-motion: reduce) {
  .money-motif[data-motion="ready"][aria-hidden="true"] svg * { animation: none; }
}
@media print { .money-motif[data-motion="ready"][aria-hidden="true"] svg * { animation: none; } }
