/* Text Animation */
.antra-animation,
.antra-animation span {
  animation-duration: 0.3s;
  animation-fill-mode: both;
}

.antra-animation span {
  display: inline-block;
}

/* Fade Effect */
.antra-fadeIn {
  animation-name: asFadeIn;
}

@keyframes asFadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

.antra-fadeInLeft {
  animation-name: asFadeInLeft;
}

@keyframes asFadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-50px);
  }

  to {
    opacity: 1;
  }
}

.antra-fadeInRight {
  animation-name: asFadeInRight;
}

@keyframes asFadeInRight {
  from {
    opacity: 0;
    transform: translateX(50px);
  }

  to {
    opacity: 1;
  }
}

.antra-fadeInDown {
  animation-name: asFadeInTop;
}

@keyframes asFadeInTop {
  from {
    opacity: 0;
    transform: translateY(-50px);
  }

  to {
    opacity: 1;
  }
}

.antra-fadeInUp {
  animation-name: asFadeInBottom;
}

@keyframes asFadeInBottom {
  from {
    opacity: 0;
    transform: translateY(50px);
  }

  to {
    opacity: 1;
  }
}

/* Move From Effect */
.antra-moveFromLeft {
  animation-name: asMoveFromLeft;
}

@keyframes asMoveFromLeft {
  from {
    visibility: hidden;
    transform: translateX(-50px);
  }

  to {
    visibility: visible;
  }
}

.antra-moveFromRight {
  animation-name: asMoveFromRight;
}

@keyframes asMoveFromRight {
  from {
    visibility: hidden;
    transform: translateX(50px);
  }

  to {
    visibility: visible;
  }
}

.antra-moveFromTop {
  animation-name: asMoveFromTop;
}

@keyframes asMoveFromTop {
  from {
    visibility: hidden;
    transform: translateY(-50px);
  }

  to {
    visibility: visible;
  }
}

.antra-moveFromBottom {
  animation-name: asMoveFromBottom;
}

@keyframes asMoveFromBottom {
  from {
    visibility: hidden;
    transform: translateY(50px);
  }

  to {
    visibility: visible;
  }
}

/* Blur Effect */

.antra-blurIn {
  animation-name: asBlurIn;
}

@keyframes asBlurIn {
  from {
    filter: blur(20px);
    opacity: 0;
  }
}

.antra-blurInLeft {
  animation-name: asBlurInLeft;
}

@keyframes asBlurInLeft {
  from {
    transform: translateX(50px);
    filter: blur(20px);
    opacity: 0;
  }
}

.antra-blurInRight {
  animation-name: asBlurInRight;
}

@keyframes asBlurInRight {
  from {
    transform: translateX(-50px);
    filter: blur(20px);
    opacity: 0;
  }
}

.antra-blurInTop {
  animation-name: asBlurInTop;
}

@keyframes asBlurInTop {
  from {
    transform: translateY(50px);
    filter: blur(20px);
    opacity: 0;
  }
}

.antra-blurInBottom {
  animation-name: asBlurInBottom;
}

@keyframes asBlurInBottom {
  from {
    transform: translateY(-50px);
    filter: blur(20px);
    opacity: 0;
  }
}

/* Zoom Effect */
.antra-zoomIn {
  animation-name: asZoomIn;
}

@keyframes asZoomIn {
  from {
    transform: scale(5);
    opacity: 0;
  }
}

.antra-zoomInLeft {
  animation-name: asZoomInLeft;
}

@keyframes asZoomInLeft {
  from {
    transform: scale(5) translateX(-50%);
    opacity: 0;
  }
}

.antra-zoomInRight {
  animation-name: asZoomInRight;
}

@keyframes asZoomInRight {
  from {
    transform: scale(5) translateX(50%);
    opacity: 0;
  }
}

.antra-zoomInTop {
  animation-name: asZoomInTop;
}

@keyframes asZoomInTop {
  from {
    transform: scale(10) translateY(-50%);
    opacity: 0;
  }
}

.antra-zoomInBottom {
  animation-name: asZoomInBottom;
}

@keyframes asZoomInBottom {
  from {
    transform: scale(10) translateY(50%);
    opacity: 0;
  }
}

/* Flip Effect */
.antra-flipInTop {
  animation-name: asFlipInTop;
}

@keyframes asFlipInTop {
  from {
    transform: perspective(600px);
    opacity: 0;
  }

  30% {
    transform: perspective(600px) rotateX(180deg);
    transform-origin: 0 0;
    animation-timing-function: ease-out;
  }

  to {
    transform: perspective(600px);
  }
}

.antra-flipInBottom {
  animation-name: asFlipInBottom;
}

@keyframes asFlipInBottom {
  from {
    transform: perspective(600px);
    opacity: 0;
  }

  30% {
    transform: perspective(600px) rotateX(180deg);
    transform-origin: bottom;
    animation-timing-function: ease-out;
  }

  to {
    transform: perspective(600px);
  }
}

/* Roll Effect */
.antra-rollFromLeft {
  animation-name: asRollFromLeft;
}

@keyframes asRollFromLeft {
  from {
    transform: translateX(-60px) perspective(600px) rotateY(180deg);
    opacity: 0;
  }
}

.antra-rollFromRight {
  animation-name: asRollFromRight;
}

@keyframes asRollFromRight {
  from {
    transform: translateX(60px) perspective(600px) rotateY(-180deg);
    opacity: 0;
  }
}

.antra-rollFromTop {
  animation-name: asRollFromTop;
}

@keyframes asRollFromTop {
  from {
    transform: translateY(-60px) perspective(600px) rotateX(180deg);
    opacity: 0;
  }
}

.antra-rollFromBottom {
  animation-name: asRollFromBottom;
}

@keyframes asRollFromBottom {
  from {
    transform: translateY(60px) perspective(600px) rotateX(-180deg);
    opacity: 0;
  }
}

/* Rotate Skate Effect */
.antra-rotateSkateInRight {
  animation-name: asRotateSkateInRight;
}

@keyframes asRotateSkateInRight {
  from {
    transform: scaleX(0.2) translateX(100px);
    opacity: 0;
  }
}

.antra-rotateSkateInLeft {
  animation-name: asRotateSkateInLeft;
}

@keyframes asRotateSkateInLeft {
  from {
    transform: scaleX(0.2) translateX(-100px);
    opacity: 0;
  }
}

.antra-rotateSkateInTop {
  animation-name: asRotateSkateInTop;
}

@keyframes asRotateSkateInTop {
  from {
    transform: scaleY(0.2) translateY(-100px);
    opacity: 0;
  }
}

.antra-rotateSkateInBottom {
  animation-name: asRotateSkateInBottom;
}

@keyframes asRotateSkateInBottom {
  from {
    transform: scaleY(0.2) translateY(100px);
    opacity: 0;
  }
}

/* PopUp Effect */
.antra-popUp {
  animation-name: asPopUp;
}

@keyframes asPopUp {
  0% {
    visibility: hidden;
  }

  50% {
    transform: scale(1.1);
    visibility: visible;
  }
}

.antra-popUpLeft {
  animation-name: asPopUpLeft;
}

@keyframes asPopUpLeft {
  0% {
    visibility: hidden;
  }

  50% {
    visibility: visible;
    transform: translateX(-20px) scale(1.1);
    animation-timing-function: ease-in;
  }
}

.antra-popUpRight {
  animation-name: asPopUpRight;
}

@keyframes asPopUpRight {
  0% {
    visibility: hidden;
  }

  50% {
    visibility: visible;
    transform: translateX(20px) scale(1.1);
    animation-timing-function: ease-in;
  }
}

/* Kenburns Top */

.swiper-slide-active .kenburns-top {
  -webkit-animation-name: kenburns-top;
  animation-name: kenburns-top;
}

@-webkit-keyframes kenburns-top {
  0% {
    -webkit-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
    -webkit-transform-origin: 50% 16%;
    transform-origin: 50% 16%;
  }

  100% {
    -webkit-transform: scale(1.08) translateY(-15px);
    transform: scale(1.08) translateY(-15px);
    -webkit-transform-origin: top;
    transform-origin: top;
  }
}

@keyframes kenburns-top {
  0% {
    -webkit-transform: scale(1) translateY(0);
    transform: scale(1) translateY(0);
    -webkit-transform-origin: 50% 16%;
    transform-origin: 50% 16%;
  }

  100% {
    -webkit-transform: scale(1.08) translateY(-15px);
    transform: scale(1.08) translateY(-15px);
    -webkit-transform-origin: top;
    transform-origin: top;
  }
}
