/* page motion */
.add-upscroll:not(.play-mo) {transform:translateY(70px) ;opacity:0;}
.play-mo.add-upscroll ,.play-mo .add-upscroll {animation: add-upscroll 0.7s 0s ease-in-out;animation-fill-mode: both;}
.play-mo.add-upscroll.delay10 ,.play-mo .add-upscroll.delay10 {animation: add-upscroll 0.8s 0.1s ease-in-out;animation-fill-mode: both;}
.play-mo.add-upscroll.delay20 ,.play-mo .add-upscroll.delay20 {animation: add-upscroll 0.8s 0.2s ease-in-out;animation-fill-mode: both;}
.play-mo.add-upscroll.delay30 ,.play-mo .add-upscroll.delay30 {animation: add-upscroll 0.8s 0.3s ease-in-out;animation-fill-mode: both;}
.play-mo.add-upscroll.delay40 ,.play-mo .add-upscroll.delay40 {animation: add-upscroll 0.8s 0.4s ease-in-out;animation-fill-mode: both;}
.play-mo.add-upscroll.delay50 ,.play-mo .add-upscroll.delay50 {animation: add-upscroll 0.8s 0.5s ease-in-out;animation-fill-mode: both;}
.play-mo.add-upscroll.delay60 ,.play-mo .add-upscroll.delay60 {animation: add-upscroll 0.8s 0.6s ease-in-out;animation-fill-mode: both;}
.play-mo.add-upscroll.delay70 ,.play-mo .add-upscroll.delay70 {animation: add-upscroll 0.8s 0.7s ease-in-out;animation-fill-mode: both;}
.play-mo.add-upscroll.delay80 ,.play-mo .add-upscroll.delay80 {animation: add-upscroll 0.8s 0.8s ease-in-out;animation-fill-mode: both;}
@keyframes add-upscroll {
	0%		{transform:translateY(70px);opacity:0;}
	100%	{transform: translateY(0px);opacity:1;}
}

.add-downscroll:not(.play-mo) {transform:translateY(-70px) ;opacity:0;}
.play-mo.add-downscroll ,.play-mo .add-downscroll {animation: add-downscroll 0.7s 0.0s ease-in-out;animation-fill-mode: both;}
.play-mo.add-downscroll.delay10 ,.play-mo .add-downscroll.delay10 {animation: add-downscroll 0.7s 0.1s ease-in-out;animation-fill-mode: both;}
.play-mo.add-downscroll.delay20 ,.play-mo .add-downscroll.delay20 {animation: add-downscroll 0.7s 0.2s ease-in-out;animation-fill-mode: both;}
.play-mo.add-downscroll.delay30 ,.play-mo .add-downscroll.delay30 {animation: add-downscroll 0.7s 0.3s ease-in-out;animation-fill-mode: both;}
.play-mo.add-downscroll.delay40 ,.play-mo .add-downscroll.delay40 {animation: add-downscroll 0.7s 0.4s ease-in-out;animation-fill-mode: both;}
.play-mo.add-downscroll.delay50 ,.play-mo .add-downscroll.delay50 {animation: add-downscroll 0.7s 0.5s ease-in-out;animation-fill-mode: both;}
.play-mo.add-downscroll.delay60 ,.play-mo .add-downscroll.delay60 {animation: add-downscroll 0.7s 0.6s ease-in-out;animation-fill-mode: both;}
.play-mo.add-downscroll.delay70 ,.play-mo .add-downscroll.delay70 {animation: add-downscroll 0.7s 0.7s ease-in-out;animation-fill-mode: both;}
.play-mo.add-downscroll.delay80 ,.play-mo .add-downscroll.delay80 {animation: add-downscroll 0.7s 0.8s ease-in-out;animation-fill-mode: both;}

@keyframes add-downscroll {
	0%		{transform: translateY(-70px) ;opacity:0;}
	100%	{transform: translateY(0px);opacity:1;}
}

header.show {animation: showMenu 0.3s ease-out;animation-fill-mode: both;}
@keyframes showMenu {

	100%{
		opacity:1;
		top:0px;
	}

}


.centerAni {
    transform-origin: center center;
	}
.rightorg {
    transform-origin: right center;
	}

.add-qzoom:not(.play-mo) {transform:scale(0) ;opacity:0;}
.play-mo.add-qzoom ,.play-mo .add-qzoom {animation: add-qzoom 0.7s 0.0s cubic-bezier(0.34, 1.56, 0.64, 1);animation-fill-mode: both;}
.play-mo.add-qzoom.delay10 ,.play-mo .add-qzoom.delay10 {animation: add-qzoom 0.7s 0.1s cubic-bezier(0.34, 1.56, 0.64, 1);animation-fill-mode: both;}
.play-mo.add-qzoom.delay20 ,.play-mo .add-qzoom.delay20 {animation: add-qzoom 0.7s 0.2s cubic-bezier(0.34, 1.56, 0.64, 1);animation-fill-mode: both;}
.play-mo.add-qzoom.delay30 ,.play-mo .add-qzoom.delay30 {animation: add-qzoom 0.7s 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);animation-fill-mode: both;}
.play-mo.add-qzoom.delay40 ,.play-mo .add-qzoom.delay40 {animation: add-qzoom 0.7s 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);animation-fill-mode: both;}
.play-mo.add-qzoom.delay50 ,.play-mo .add-qzoom.delay50 {animation: add-qzoom 0.7s 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);animation-fill-mode: both;}
.play-mo.add-qzoom.delay60 ,.play-mo .add-qzoom.delay60 {animation: add-qzoom 0.7s 0.6s cubic-bezier(0.34, 1.56, 0.64, 1);animation-fill-mode: both;}
.play-mo.add-qzoom.delay70 ,.play-mo .add-qzoom.delay70 {animation: add-qzoom 0.7s 0.7s cubic-bezier(0.34, 1.56, 0.64, 1);animation-fill-mode: both;}
.play-mo.add-qzoom.delay80 ,.play-mo .add-qzoom.delay80 {animation: add-qzoom 0.7s 0.8s cubic-bezier(0.34, 1.56, 0.64, 1);animation-fill-mode: both;}

@keyframes add-qzoom {
	0%		{transform: scale(0);opacity:0.5;}
	100%	{transform: scale(1);opacity:1;}
}

.heartbeat {animation: heartbeat 4s 1s ease-in-out infinite both;}
.heartbeat.delay10 {animation: heartbeat 2.5s 0.2s ease-in-out infinite both;}
.heartbeat.delay20 {animation: heartbeat 2.5s 2s ease-in-out infinite both;}

 @keyframes heartbeat {
  from {
    transform:translateY(0);
    transform-origin: center center;
    animation-timing-function: ease-out;
  }
  10% {
    transform:translateY(-20px);
    animation-timing-function: ease-in;
  }
  17% {
    transform:translateY(-25px);
    animation-timing-function: ease-out;
  }
  33% {
    transform:translateY(-10px);
    animation-timing-function: ease-in;
  }
  45% {
    transform:translateY(-5px);
    animation-timing-function: ease-out;
  }
}

.blink {animation: blink 2s infinite both;}
.blink.delay10 {animation: blink 2.5s 0.2s infinite both;}
@keyframes blink {
  0%,
  50%,
  100% {
    opacity: 1;
  }
  25%,
  75% {
    opacity: 0;
  }
}

/* main .star { animation: star ease-in-out 2s infinite both;} */

@keyframes star {
   0% {   transform: translate(700px,-500px); opacity: 0.8; }
   50% {  transform: translate(0px,0px);opacity: 1; }
   60% {  transform: translate(0px,0px);opacity: 1; }
   100% {  transform: translate(-700px,500px);opacity: 0; }
}

header {opacity:0;animation: header1 0.5s 0.2s cubic-bezier(0.25, 1, 0.5, 1)  both;}

@keyframes header1 {
  0%{
    transform: translateY(-150px);opacity:0;
  }
  100% {
    transform: translateY(0px);opacity:1;
  }
}

.headingWrap .hObj {opacity:0;animation: hObj 0.8s 0.2s cubic-bezier(0.34, 1.56, 0.64, 1)  both;}
.headingWrap .hObj.add {opacity:1;animation: hObjadd 4.5s  cubic-bezier(0.68, -0.6, 0.32, 1.6)  infinite alternate;}
.headingWrap .hObj01{opacity:0;animation: hObj01 0.5s 0.5s cubic-bezier(0.25, 1, 0.5, 1)  both;}
.headingWrap .hObj02{opacity:0;animation: hObj01 0.5s 0.2s cubic-bezier(0.25, 1, 0.5, 1)  both;}
.headingWrap .hObj03{opacity:0;animation: hObj01 0.5s 0.5s cubic-bezier(0.25, 1, 0.5, 1)  both;}
.headingWrap .hObj03.add{opacity:0;animation: hObj03add 1.2s   cubic-bezier(0.68, -0.6, 0.32, 1.6)   infinite alternate;}

@keyframes hObj {
  0%{
    transform: translateY(-450px) rotate(1000deg) scale(0);opacity:0;
  }
  100% {
    transform: translateY(0px) rotate(0deg) scale(1);opacity:1;
  }
}
@keyframes hObjadd {
  0%{
    transform: rotate(0deg) scale(1);opacity:1;
  }
  40% {
    transform: rotate(-20deg) scale(0.9);opacity:1;
  }
  100% {
    transform: rotate(60deg) scale(1);opacity:1;
  }
}
@keyframes hObj01 {
  0%{
    transform: translateY(-150px)   scale(0);opacity:0;
  }
  100% {
    transform: translateY(0px)  scale(1);opacity:1;
  }
}
@keyframes hObj03add {
  0%{
    transform: translateY(0px)   scale(1);opacity:1;
  }
  100% {
    transform: translateY(-50px)  scale(1.2);opacity:1;
  }
}
 .headingWrap .kv-wrap{
background: none;

}
.headingWrap .kv-wrap .kv-inner-bg {
  background: url(../images/kv_bg.png) no-repeat center 0 / auto 32.05rem;
  width:100%;height:100%;
  opacity:0;animation: kv-inner-bg 0.8s 0.2s cubic-bezier(0.34, 1.56, 0.64, 1)  both;
}
.headingWrap .kv-wrap .kv-inner-bg.add {
opacity:1;animation: kv-inner-bg-add 2.8s 0.2s cubic-bezier(0.34, 1.56, 0.64, 1)  infinite alternate;
}

@keyframes kv-inner-bg {
  0%{
    transform: translateY(-50px)   scale(0.8);opacity:0;
  }
  100% {
    transform: translateY(0px)  scale(1);opacity:1;
  }
}
@keyframes kv-inner-bg-add {
  0%{
    transform: translateY(0px)   scale(1);opacity:1;
  }
  100% {
    transform: translateY(10px)  scale(1.1);opacity:1;
  }
}

.headingWrap .kv-inner .obj01 {opacity:0;animation: computer-group 0.4s 0.1s cubic-bezier(0.25, 1, 0.5, 1)  both;}
.headingWrap .kv-inner .obj01.add {opacity:1;animation: obj01add 0.9s 0.1s cubic-bezier(0.25, 1, 0.5, 1)  infinite alternate;}
.headingWrap .kv-inner .obj02 {opacity:0;animation: computer-group 0.6s 0.2s cubic-bezier(0.25, 1, 0.5, 1)  both;}
.headingWrap .kv-inner .obj02.add {opacity:1;animation: obj02add 1.6s 0.2s linear infinite;}
@keyframes obj01add {
  0%{
    transform: scale(1);opacity:1;
  }
  100% {
    transform:  scale(1.1);opacity:1;
  }
}
@keyframes obj02add {

  100% {
    transform:  rotate(-360deg);
  }
}
/* .headingWrap .kv-inner .computer-group {opacity:0;animation: computer-group 0.8s 0.3s cubic-bezier(0.25, 1, 0.5, 1) both;} */
.headingWrap .kv-inner .computer-group .shadow {opacity:0;animation: computer-group-shadow 1.8s 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) infinite alternate;}
.headingWrap .kv-inner .computer-group .computer {}

@keyframes computer-group {
  0%{
    transform: translateY(-250px)   scale(0.5);opacity:0;
  }
  100% {
    transform: translateY(0px)  scale(1);opacity:1;
  }
}
@keyframes computer-group-shadow {
  0%{
    transform: scale(0.9);opacity:0;
  }
  100% {
    transform:  scale(1);opacity:1;
  }
}

/* .headingWrap .kv-inner .robot-group {opacity:0;animation: computer-group 0.8s 0.6s cubic-bezier(0.25, 1, 0.5, 1)  both;} */
.headingWrap .kv-inner .robot-group .shadow .shadow{animation: robot-group-shadow 0.7s 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) infinite alternate;}
.headingWrap .kv-inner .robot-group .robot{animation: robot-group-robot 0.7s 0.8s cubic-bezier(0.25, 1, 0.5, 1) infinite alternate;}
@keyframes robot-group-shadow {
  0%{
    transform: scale(1);opacity:0.7;
  }
  100% {
    transform:  scale(0.8);opacity:1;
  }
}
@keyframes robot-group-robot {
  0%{
    transform: translateY(-10px)  scale(1.05);opacity:1;
  }
  100% {
    transform: translateY(0px)   scale(1);opacity:1;
  }
}
/* .headingWrap .kv-inner .talk-group{opacity:0;animation: computer-group 0.8s 0.8s cubic-bezier(0.25, 1, 0.5, 1)  both;} */
.headingWrap .kv-inner .talk-group .shadow{animation: talk-group-shadow 0.7s 0s cubic-bezier(0.34, 1.56, 0.64, 1) infinite alternate;}
.headingWrap .kv-inner .talk-group .talk{animation: talk-group-talk 1.7s 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) infinite alternate;transform-origin: 90% 109%;}

@keyframes talk-group-shadow {
  0%{
    transform: scale(1);opacity:0.7;
  }
  100% {
    transform:  scale(0.8);opacity:1;
  }
}
@keyframes talk-group-talk {
  0%{
    transform: translateY(0px)  ;;opacity:1;
  }
  100% {
    transform: translateY(30px)  ;;opacity:1;
  }
}

/* .headingWrap .kv-inner .cloud-group {opacity:0;animation: computer-group 0.6s 1.0s cubic-bezier(0.25, 1, 0.5, 1)  both;} */
.headingWrap .kv-inner .cloud-group .shadow{animation: cloud-group-shadow 0.7s 0s cubic-bezier(0.34, 1.56, 0.64, 1) infinite alternate;}
.headingWrap .kv-inner .cloud-group .cloud{animation: cloud-group-cloud 0.7s 0s cubic-bezier(0.25, 1, 0.5, 1) infinite alternate;}
.headingWrap .kv-inner .cloud-group .arrow{animation: cloud-group-arrow 0.7s 0s cubic-bezier(0.25, 1, 0.5, 1) infinite alternate;}
.headingWrap .kv-inner .cloud-group .point{animation: cloud-group-point 0.7s 0s cubic-bezier(0.25, 1, 0.5, 1) infinite alternate;}
@keyframes cloud-group-shadow {
  0%{
    transform: scale(1);opacity:0.7;
  }
  100% {
    transform:  scale(1.2);opacity:1;
  }
}
@keyframes cloud-group-cloud {
  0%{
    transform: translateY(-5px)  scale(1);opacity:1;
  }
  100% {
    transform: translateY(0px) scale(1.2);opacity:1;
  }
}
@keyframes cloud-group-arrow {
  0% , 50% {
    transform: translate(0px,0px)  scale(1);opacity:1;
  }
  20%{
    transform: translate(10px,-10px)  scale(1);opacity:1;
  }
  100% {
    transform: translate(20px,-20px)   scale(1);opacity:1;
  }
}
@keyframes cloud-group-point {
  0% , 50% {
    transform: translate(0px,0px)  scale(1);opacity:1;
  }
  20%{
    transform: translate(10px,-10px)  scale(1);opacity:1;
  }
  100% {
    transform: translate(25px,-25px)   scale(1.5);opacity:1;
  }

}
/* .headingWrap .kv-inner .spring-group {opacity:0;animation: computer-group 0.6s 0.5s cubic-bezier(0.25, 1, 0.5, 1)  both;} */
.headingWrap .kv-inner .spring-group .spring_shadow{animation: spring-group-shadow 0.7s 0s cubic-bezier(0.34, 1.56, 0.64, 1) infinite alternate;}
.headingWrap .kv-inner .spring-group .spring{animation: spring-group-spring 0.7s 0s cubic-bezier(0.34, 1.56, 0.64, 1) infinite alternate;}
@keyframes spring-group-shadow {
  0%{
    transform: scale(1);opacity:0.7;
  }
  100% {
    transform:  scale(0.8);opacity:1;
  }
}
@keyframes spring-group-spring {
  0%{
    transform: translate(0px,0px)  rotate3d(1, 0, 12, 0deg);;opacity:1;
  }
  100% {
    transform: translate(-10px,-15px)  rotate3d(1, 0, 5, -10deg);;opacity:1;
  }
}
.headingWrap .kv-inner .obj {opacity:0;animation: obj-group 0.6s 0.9s cubic-bezier(0.25, 1, 0.5, 1)  both;}
.headingWrap .kv-inner .obj.add {opacity:1;animation: obj-group-add 5.6s 0.2s linear infinite ;}
.headingWrap .kv-inner .obj03 {opacity:0;animation: computer-group 0.8s 1.1s cubic-bezier(0.25, 1, 0.5, 1)  both;}
.headingWrap .kv-inner .obj03.add {opacity:1;animation: obj03-group 0.8s 0.1s cubic-bezier(0.25, 1, 0.5, 1)  infinite alternate;}

@keyframes obj03-group {
  0%{
    transform: translate(0px,0px)   scale(1);opacity:1;
  }
  100% {
    transform: translate(50px,20px)  scale(1.1);opacity:0.8;
  }
}
 
@keyframes obj-group {
  0%{
    transform: translateY(150px) rotate(300deg)  scale(5.5);opacity:0;
  }
  100% {
    transform: translateY(0px) rotate(0deg) scale(1);opacity:1;
  }
}
@keyframes obj-group-add {

  100% {
    transform:  rotate(-360deg);
  }
}

.countdown span {opacity:1;animation: countdown 0.5s 0.2s cubic-bezier(0.25, 1, 0.5, 1)  infinite alternate;}
@keyframes countdown {
  0%{
    transform: scale(1);opacity:1;
  }
  100% {
    transform: scale(1.1);opacity:0.8;
  }
}

@keyframes char-wrap {
  0% {   transform: translate(0px,0px); }
  100% {   transform: translate(0px,-10px); }
}

@keyframes ship {
  0% {   transform: translate(0px,0px);opacity: 1; }
  100% {   transform: translate(0px,-5px);; opacity: 1;}
}