/** Arrow Bounces */

.arrowBounce a::before {
    animation: arrowLoop 3000ms ease-in-out 1500ms infinite normal forwards;
}


/** Grid */
.grid-modul-animation article img:nth-child(4n+1) {
	animation: zoomin 1000ms cubic-bezier(0.250, 0.460, 0.450, 0.940) 1250ms alternate both;
	/* vibrate-0 7000ms cubic-bezier(0.11, 0, 0.5, 0) 1000ms infinite normal forwards; */
}
.grid-modul-animation article img:nth-child(4n+2) {
	animation: zoomin 1000ms cubic-bezier(0.250, 0.460, 0.450, 0.940) 1500ms alternate both;
	/* vibrate-1 5000ms ease-in-out 2000ms infinite normal forwards; */
}
.grid-modul-animation article img:nth-child(4n+3) {
	animation: zoomin 1000ms cubic-bezier(0.250, 0.460, 0.450, 0.940) 1750ms alternate both;
	/* vibrate-2 6000ms ease-in-out 2000ms infinite normal forwards; */
}
.grid-modul-animation article img:nth-child(4n+4) {
	animation: zoomin 1000ms cubic-bezier(0.250, 0.460, 0.450, 0.940) 2000ms alternate both;
	/* vibrate-3 7000ms ease-in-out 2000ms infinite normal forwards; */
}
.grid-modul-animation article img:nth-child(4n+5) {
    animation-fill-mode: both;
	animation: zoomin 1000ms cubic-bezier(0.250, 0.460, 0.450, 0.940) 2250ms alternate both; 
	/* tada 4000ms ease-in-out 2000ms infinite normal forwards; */
}
.grid-modul-animation article img:nth-child(4n+6) {
	animation: zoomin 1000ms cubic-bezier(0.250, 0.460, 0.450, 0.940) 3500ms alternate both;
	/* vibrate-0 7000ms cubic-bezier(0.11, 0, 0.5, 0) 2000ms infinite normal forwards; */
}

/** Contac */
.contact-form .submit-container.contact-submit,
.contact-form:after {
	animation: zoomin 1000ms cubic-bezier(0.250, 0.460, 0.450, 0.940) 250ms alternate both;
}

/** Keyframes */
@keyframes vibrate-0 {
	0% {
		transform: translate(0);
	}

	20% {
		transform: translate(2px, -2px);
	}

	40% {
		transform: translate(2px, 2px);
	}

	60% {
		transform: translate(-2px, 2px);
	}

	80% {
		transform: translate(-2px, -2px);
	}

	100% {
		transform: translate(0);
	}
}
@keyframes vibrate-1 {
	0% {
		transform: translate(0);
	}

	20% {
		transform: translate(-2px, 2px);
	}

	40% {
		transform: translate(-2px, -2px);
	}

	60% {
		transform: translate(2px, 2px);
	}

	80% {
		transform: translate(2px, -2px);
	}

	100% {
		transform: translate(0);
	}
}

@keyframes vibrate-2 {
	0% {
		transform: translate(0);
	}

	10% {
		transform: translate(-2px, -2px);
	}

	20% {
		transform: translate(2px, -2px);
	}

	30% {
		transform: translate(-2px, 2px);
	}

	40% {
		transform: translate(2px, 2px);
	}

	50% {
		transform: translate(-2px, -2px);
	}

	60% {
		transform: translate(2px, -2px);
	}

	70% {
		transform: translate(-2px, 2px);
	}

	80% {
		transform: translate(-2px, -2px);
	}

	90% {
		transform: translate(2px, -2px);
	}

	100% {
		transform: translate(0);
	}
}

@keyframes vibrate-3 {
	0% {
		transform: translate(0);
	}

	20% {
		transform: translate(2px, -2px);
	}

	40% {
		transform: translate(2px, 2px);
	}

	60% {
		transform: translate(-2px, 2px);
	}

	80% {
		transform: translate(-2px, -2px);
	}

	100% {
		transform: translate(0);
	}
}

 @keyframes tada {
    0% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
    }
    10%, 20% {
    -webkit-transform: scale3d(.9875, .9875, .9875) rotate3d(0, 0, .025, -.025deg);
    transform: scale3d(.9875, .9875, .9875) rotate3d(0, 0, .025, -.025deg);
    }
    30%, 50%, 70%, 90% {
    -webkit-transform: scale3d(1.0125, 1.0125, 1.0125) rotate3d(0, 0, .025, .025deg);
    transform: scale3d(1.0125, 1.0125, 1.0125) rotate3d(0, 0, 1, .025deg);
    }
    40%, 60%, 80% {
    -webkit-transform: scale3d(1.0125, 1.0125, 1.0125) rotate3d(0, 0, .025, -.025deg);
    transform: scale3d(1.0125, 1.0125, 1.0125) rotate3d(0, 0, .025, -.025deg);
    }
    100% {
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
    }
} 

 @keyframes zoomin {
    0% {
      transform: scale(0);
      opacity: 0;
    }
    100% {
      transform: scale(1);
      opacity: 1;
    }
  }
  
/* @keyframes arrowLoop {
	0% {
		animation-timing-function: ease-in-out;
		opacity: 1;
		transform: translateX(-12px) 250ms;
	}

	24% {
		opacity: 1;
	}

	40% {
		animation-timing-function: ease-in;
		transform: translateX(-7.5px);
	}

	65% {
		animation-timing-function: ease-in;
		transform: translateX(-3.25px);
	}

	82% {
		animation-timing-function: ease-in;
		transform: translateX(-1.5125px);
	}

	93% {
		animation-timing-function: ease-in;
		transform: translateX(-1px);
	}

	25%,
	55%,
	75%,
	87%,
	98% {
		animation-timing-function: ease-out;
		transform: translateX(0px);
	}

	100% {
		animation-timing-function: ease-out;
		opacity: 1;
		transform: translateX(0px);
	}
} */
@keyframes arrowLoop {
	0% {
		animation-timing-function: ease-in;
		opacity: 1;
		transform: translateX(-48px) 250ms;
	}

	24% {
		opacity: 1;
	}

	40% {
		animation-timing-function: ease-in;
		transform: translateX(-26px);
	}

	65% {
		animation-timing-function: ease-in;
		transform: translateX(-13px);
	}

	82% {
		animation-timing-function: ease-in;
		transform: translateX(-6.5px);
	}

	93% {
		animation-timing-function: ease-in;
		transform: translateX(-4px);
	}

	25%,
	55%,
	75%,
	87%,
	98% {
		animation-timing-function: ease-out;
		transform: translateX(0px);
	}

	100% {
		animation-timing-function: ease-out;
		opacity: 1;
		transform: translateX(0px);
	}
}