.elementor-widget.polarized-anim--float > .elementor-widget-container,
.elementor-widget.polarized-anim--float-soft > .elementor-widget-container,
.elementor-widget.polarized-anim--drift > .elementor-widget-container {
  will-change: transform;
}

.elementor-widget.polarized-anim--float > .elementor-widget-container {
  animation: polarized-widget-float 3s ease-in-out infinite;
}

.elementor-widget.polarized-anim--float-soft > .elementor-widget-container {
  animation: polarized-widget-float-soft 5s ease-in-out infinite;
}

.elementor-widget.polarized-anim--drift > .elementor-widget-container {
  animation: polarized-widget-drift 6s ease-in-out infinite;
}

@keyframes polarized-widget-float {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -12px, 0);
  }
}

@keyframes polarized-widget-float-soft {
  0%,
  100% {
    transform: translate3d(0, 0, 0);
  }
  50% {
    transform: translate3d(0, -6px, 0);
  }
}

@keyframes polarized-widget-drift {
  0% {
    transform: translate3d(0, 0, 0);
  }
  33% {
    transform: translate3d(6px, -6px, 0);
  }
  66% {
    transform: translate3d(-6px, -2px, 0);
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-widget.polarized-anim--float > .elementor-widget-container,
  .elementor-widget.polarized-anim--float-soft > .elementor-widget-container,
  .elementor-widget.polarized-anim--drift > .elementor-widget-container {
    animation: none;
  }
}
