/* Floating Decoration Animations */

@keyframes wrsvp-sway {
  0% {
    transform: rotate(-5deg);
  }

  50% {
    transform: rotate(5deg);
  }

  100% {
    transform: rotate(-5deg);
  }
}

@keyframes wrsvp-float {
  0% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-20px);
  }

  100% {
    transform: translateY(0px);
  }
}

@keyframes wrsvp-rotate {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes wrsvp-pulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.1);
  }

  100% {
    transform: scale(1);
  }
}

.wrsvp-floating-img {
  display: inline-block;
  /* Allows transform */
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
  /* Duration and direction handled by inline styles from widget */
}

.wrsvp-floating-img img {
  display: block;
  max-width: 100%;
  height: auto;
}

/* Animation Classes */
.wrsvp-anim-sway {
  animation-name: wrsvp-sway;
}

.wrsvp-anim-float {
  animation-name: wrsvp-float;
}

.wrsvp-anim-rotate {
  animation-name: wrsvp-rotate;
  animation-timing-function: linear;
  /* Better for continuous rotation */
}

.wrsvp-anim-pulse {
  animation-name: wrsvp-pulse;
}