.elementor-widget-civi-image-animation {
	--civi-animation-transformX-0: 20px;
	--civi-animation-transformY-0: 60px;
	--civi-animation-transformX-100: 160px;
	--civi-animation-transformY-100: -40px;
	--civi-animation-delay: 2000ms;
	--civi-animation-jump-top: 3%;
	--civi-animation-jump-left: 3%;
  }
  .elementor-widget-civi-image-animation.civi-style-jump.jump-top .civi-image {
	animation: jump_top var(--civi-animation-delay) infinite ease-in-out alternate;
  }
  .elementor-widget-civi-image-animation.civi-style-jump.jump-left .civi-image {
	animation: jump_left var(--civi-animation-delay) infinite ease-in-out alternate;
  }
  .elementor-widget-civi-image-animation.civi-style-circular-motion {
	animation: translateAnimation var(--civi-animation-delay) infinite ease-in-out alternate, zindexAnimation calc(var(--civi-animation-delay) * 2) infinite ease-in-out;
  }
  .elementor-widget-civi-image-animation.civi-style-circular-motion .civi-image {
	animation: scaleAnimation var(--civi-animation-delay) infinite ease-in-out alternate;
	transform: scale(0.5);
	animation-delay: calc(var(--civi-animation-delay) / -2);
  }
  .elementor-widget-civi-image-animation.civi-style-lamp-swing .style-lamp-swing {
	position: relative;
	animation: lamp_swing var(--civi-animation-delay) infinite alternate ease-in-out;
	transform-origin: 30px -20px;
  }
  .elementor-widget-civi-image-animation.civi-style-lamp-swing .style-lamp-swing:before {
	content: "";
	display: block;
	position: absolute;
	width: 2px;
	height: 20px;
	background: black;
	top: -50px;
	left: 30px;
  }
  .elementor-widget-civi-image-animation.civi-style-lamp-swing .style-lamp-swing:after {
	content: "";
	display: block;
	position: absolute;
	top: 82%;
	left: -85px;
	z-index: -1;
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.6), transparent);
	height: 520px;
	width: 280px;
	border-radius: 100% 100% 0 0;
	z-index: -1;
  }
  .elementor-widget-civi-image-animation.civi-style-lamp-swing .civi-image:before {
	content: "";
	width: 24px;
	height: 8px;
	left: 38px;
	position: absolute;
	top: 82%;
	border-radius: 50%;
	background-color: transparent;
	-webkit-box-shadow: 0 10px 10px 2px rgb(255, 255, 255);
	-moz-box-shadow: 0 10px 10px 2px rgb(255, 255, 255);
	box-shadow: 0 10px 10px 2px rgb(255, 255, 255);
	animation: flash 5s infinite ease-in-out alternate;
  }

  .civi-image-animation.style-card .gallery-image{
	display: inline-block;
	position: relative;
  }

  .civi-image-animation.style-card .gallery-image img{
	width: 100%;
	object-fit: cover;
	transition: all .3s cubic-bezier(.4,0,.2,1);
  }

  .civi-image-animation.style-card .gallery-image .card{
	width: 218px;
	height: 240px;
	border-radius: 10px;
	box-shadow: 3.5089285373687744px 3.5089285373687744px 8.772321701049805px 0px rgba(0, 0, 0, 0.10);
	position: relative;
	z-index: 2;
	overflow: hidden;
	transition: all .3s cubic-bezier(.4,0,.2,1);
	background-color: #fff;
  }
  .civi-image-animation.style-card .gallery-image .card:nth-child(1),
  .civi-image-animation.style-card .gallery-image .card:nth-child(3){
	position: absolute;
	left: -30px;
	top: 12px;
	width: 180px;
	height: 200px;
	z-index: 1;
  }

  .civi-image-animation.style-card .gallery-image .card:nth-child(3){
	left: auto;
	right: -30px;
  }

  .civi-image-animation.style-card .civi-image-wrap{
	display: inline-block;
    width: 278px;
  }

  .civi-image-animation.style-card .civi-image-wrap:hover .gallery-image .card{
	width: 160px;
  }

  .civi-image-animation.style-card .civi-image-wrap:hover .gallery-image .card:nth-child(1){
	transform: rotate(-5deg);
	left: -75px;
	right: auto;
  }

  .civi-image-animation.style-card .civi-image-wrap:hover .gallery-image .card:nth-child(3){
	transform: rotate(5deg);
	right: -75px;
	left: auto;
  }

  @keyframes translateAnimation {
	0% {
	  -webkit-transform: translateX(var(--civi-animation-transformX-0)) translateY(var(--civi-animation-transformY-0));
	  -moz-transform: translateX(var(--civi-animation-transformX-0)) translateY(var(--civi-animation-transformY-0));
	  -o-transform: translateX(var(--civi-animation-transformX-0)) translateY(var(--civi-animation-transformY-0));
	  -ms-transform: translateX(var(--civi-animation-transformX-0)) translateY(var(--civi-animation-transformY-0));
	  transform: translateX(var(--civi-animation-transformX-0)) translateY(var(--civi-animation-transformY-0));
	}
	100% {
	  -webkit-transform: translateX(var(--civi-animation-transformX-100)) translateY(var(--civi-animation-transformY-100));
	  -moz-transform: translateX(var(--civi-animation-transformX-100)) translateY(var(--civi-animation-transformY-100));
	  -o-transform: translateX(var(--civi-animation-transformX-100)) translateY(var(--civi-animation-transformY-100));
	  -ms-transform: translateX(var(--civi-animation-transformX-100)) translateY(var(--civi-animation-transformY-100));
	  transform: translateX(var(--civi-animation-transformX-100)) translateY(var(--civi-animation-transformY-100));
	}
  }
  @keyframes scaleAnimation {
	100% {
	  -webkit-transform: scale(1);
	  -moz-transform: scale(1);
	  -o-transform: scale(1);
	  -ms-transform: scale(1);
	  transform: scale(1);
	}
  }
  @keyframes zindexAnimation {
	25% {
	  z-index: 1;
	}
	75% {
	  z-index: -1;
	}
  }
  @keyframes jump_left {
	0% {
	  -webkit-transform: translateX(0);
	  -moz-transform: translateX(0);
	  -o-transform: translateX(0);
	  -ms-transform: translateX(0);
	  transform: translateX(0);
	}
	100% {
	  -webkit-transform: translateX(var(--civi-animation-jump-left));
	  -moz-transform: translateX(var(--civi-animation-jump-left));
	  -o-transform: translateX(var(--civi-animation-jump-left));
	  -ms-transform: translateX(var(--civi-animation-jump-left));
	  transform: translateX(var(--civi-animation-jump-left));
	}
  }
  @keyframes jump_top {
	0% {
	  -webkit-transform: translateY(0);
	  -moz-transform: translateY(0);
	  -o-transform: translateY(0);
	  -ms-transform: translateY(0);
	  transform: translateY(0);
	}
	100% {
	  -webkit-transform: translateY(var(--civi-animation-jump-top));
	  -moz-transform: translateY(var(--civi-animation-jump-top));
	  -o-transform: translateY(var(--civi-animation-jump-top));
	  -ms-transform: translateY(var(--civi-animation-jump-top));
	  transform: translateY(var(--civi-animation-jump-top));
	}
  }
  @keyframes lamp_swing {
	0% {
	  -webkit-transform: rotate(-20deg);
	  -moz-transform: rotate(-20deg);
	  -o-transform: rotate(-20deg);
	  -ms-transform: rotate(-20deg);
	  transform: rotate(-20deg);
	}
	100% {
	  -webkit-transform: rotate(20deg);
	  -moz-transform: rotate(20deg);
	  -o-transform: rotate(20deg);
	  -ms-transform: rotate(20deg);
	  transform: rotate(20deg);
	}
  }
  @keyframes flash {
	5% {
	  -webkit-box-shadow: 0 10px 10px 2px rgba(255, 255, 255, 0.2);
	  -moz-box-shadow: 0 10px 10px 2px rgba(255, 255, 255, 0.2);
	  box-shadow: 0 10px 10px 2px rgba(255, 255, 255, 0.2);
	}
	25% {
	  -webkit-box-shadow: 0 10px 10px 2px rgb(255, 255, 255);
	  -moz-box-shadow: 0 10px 10px 2px rgb(255, 255, 255);
	  box-shadow: 0 10px 10px 2px rgb(255, 255, 255);
	}
	80% {
	  -webkit-box-shadow: 0 10px 10px 2px rgb(255, 255, 255);
	  -moz-box-shadow: 0 10px 10px 2px rgb(255, 255, 255);
	  box-shadow: 0 10px 10px 2px rgb(255, 255, 255);
	}
	100% {
	  -webkit-box-shadow: 0 10px 10px 2px rgba(255, 255, 255, 0.2);
	  -moz-box-shadow: 0 10px 10px 2px rgba(255, 255, 255, 0.2);
	  box-shadow: 0 10px 10px 2px rgba(255, 255, 255, 0.2);
	}
  }
