
.mouse {
  position: absolute;
  bottom: 20px;
  left: 50%;
  margin-left: -15px;  
  width: 30px;
  height: 60px;
  border-radius: 100px;
  border:1px solid #fff;
}
.mouse:before, .mouse:after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}
.mouse:before {
  width: 26px;
  height: 54px;
  border-radius: 100px;
}
.mouse:after {
  background-color: #ffffff;
  width: 8px;
  height: 8px;
  border-radius: 100%;
  -webkit-animation: trackBallSlide 5s linear infinite;
          animation: trackBallSlide 5s linear infinite;
}

.mouse span {
    border-left: 1px solid #fff;
    position: absolute;
    bottom: -21px;
    left: 14px;
    height: 20px;
}

@-webkit-keyframes colorSlide {
  0% {
    background-position: 0% 100%;
  }
  20% {
    background-position: 0% 0%;
  }
  21% {
    background-color: #4e5559;
  }
  29.99% {
    background-color: #ffffff;
    background-position: 0% 0%;
  }
  30% {
    background-color: #4e5559;
    background-position: 0% 100%;
  }
  50% {
    background-position: 0% 0%;
  }
  51% {
    background-color: #4e5559;
  }
  59.99% {
    background-color: #ffffff;
    background-position: 0% 0%;
  }
  60% {
    background-color: #4e5559;
    background-position: 0% 100%;
  }
  80% {
    background-position: 0% 0%;
  }
  81% {
    background-color: #4e5559;
  }
  89.99%, 100% {
    background-color: #ffffff;
  }
}

@keyframes colorSlide {
  0% {
    background-position: 0% 100%;
  }
  20% {
    background-position: 0% 0%;
  }
  21% {
    background-color: #4e5559;
  }
  29.99% {
    background-color: #ffffff;
    background-position: 0% 0%;
  }
  30% {
    background-color: #4e5559;
    background-position: 0% 100%;
  }
  50% {
    background-position: 0% 0%;
  }
  51% {
    background-color: #4e5559;
  }
  59.99% {
    background-color: #ffffff;
    background-position: 0% 0%;
  }
  60% {
    background-color: #4e5559;
    background-position: 0% 100%;
  }
  80% {
    background-position: 0% 0%;
  }
  81% {
    background-color: #4e5559;
  }
  89.99%, 100% {
    background-color: #ffffff;
  }
}
@-webkit-keyframes trackBallSlide {
  0% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  6% {
    opacity: 1;
    -webkit-transform: scale(0.9) translateY(5px);
            transform: scale(0.9) translateY(5px);
  }
  14% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(40px);
            transform: scale(0.4) translateY(40px);
  }
  15%, 19% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(-20px);
            transform: scale(0.4) translateY(-20px);
  }
  28%, 29.99% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  30% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  36% {
    opacity: 1;
    -webkit-transform: scale(0.9) translateY(5px);
            transform: scale(0.9) translateY(5px);
  }
  44% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(40px);
            transform: scale(0.4) translateY(40px);
  }
  45%, 49% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(-20px);
            transform: scale(0.4) translateY(-20px);
  }
  58%, 59.99% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  66% {
    opacity: 1;
    -webkit-transform: scale(0.9) translateY(5px);
            transform: scale(0.9) translateY(5px);
  }
  74% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(40px);
            transform: scale(0.4) translateY(40px);
  }
  75%, 79% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(-20px);
            transform: scale(0.4) translateY(-20px);
  }
  88%, 100% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
}
@keyframes trackBallSlide {
  0% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  6% {
    opacity: 1;
    -webkit-transform: scale(0.9) translateY(5px);
            transform: scale(0.9) translateY(5px);
  }
  14% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(40px);
            transform: scale(0.4) translateY(40px);
  }
  15%, 19% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(-20px);
            transform: scale(0.4) translateY(-20px);
  }
  28%, 29.99% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  30% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  36% {
    opacity: 1;
    -webkit-transform: scale(0.9) translateY(5px);
            transform: scale(0.9) translateY(5px);
  }
  44% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(40px);
            transform: scale(0.4) translateY(40px);
  }
  45%, 49% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(-20px);
            transform: scale(0.4) translateY(-20px);
  }
  58%, 59.99% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  60% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
  66% {
    opacity: 1;
    -webkit-transform: scale(0.9) translateY(5px);
            transform: scale(0.9) translateY(5px);
  }
  74% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(40px);
            transform: scale(0.4) translateY(40px);
  }
  75%, 79% {
    opacity: 0;
    -webkit-transform: scale(0.4) translateY(-20px);
            transform: scale(0.4) translateY(-20px);
  }
  88%, 100% {
    opacity: 1;
    -webkit-transform: scale(1) translateY(-20px);
            transform: scale(1) translateY(-20px);
  }
}
@-webkit-keyframes nudgeMouse {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
  }
  30% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
  }
  60% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  80% {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
  }
  90% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes nudgeMouse {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
  }
  30% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
  }
  60% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  80% {
    -webkit-transform: translateY(8px);
            transform: translateY(8px);
  }
  90% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes nudgeText {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  30% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  60% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  80% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  90% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@keyframes nudgeText {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  20% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  30% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  50% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  60% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
  80% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px);
  }
  90% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}
@-webkit-keyframes colorText {
  21% {
    color: #4e5559;
  }
  30% {
    color: #ffffff;
  }
  51% {
    color: #4e5559;
  }
  60% {
    color: #ffffff;
  }
  81% {
    color: #4e5559;
  }
  90% {
    color: #ffffff;
  }
}
@keyframes colorText {
  21% {
    color: #4e5559;
  }
  30% {
    color: #ffffff;
  }
  51% {
    color: #4e5559;
  }
  60% {
    color: #ffffff;
  }
  81% {
    color: #4e5559;
  }
  90% {
    color: #ffffff;
  }
}

/** KV bg **/
#home-anim {
  position: absolute;
  top:0;
  left: 0;  
}

@media (max-width: 1600px) {
  #home-anim {
    height: 100vh;
  }
}



#home {
  clip-path: url(#cache);
}

#orange {
  fill: none;
  opacity: 0.15;
  stroke: #ffad2d;
  stroke-width: 12;
  stroke-miterlimit:10;
  animation: show 4s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out; 
}

#blue {
  fill: none;
  opacity: 0.15;
  stroke: #1f7ee9;
  stroke-width: 12;
  stroke-miterlimit:10;
  animation: show 4s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;
}

#green {
  fill: none;
  opacity: 0.15;
  stroke: #0fb94f;
  stroke-width: 6;
  stroke-miterlimit:10;
  stroke-dasharray: 200;
  stroke-dashoffset: 800;
  animation: draw 4s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-timing-function: ease-in-out;    
}

@keyframes draw {
  to {
    stroke-dashoffset: 0;
 }
    }

@keyframes show {
  0% {
    opacity: 0.15;
 }
  50% {
    opacity: 0.2;
 }
  100% {
    opacity: 0.15;
 }
    }

