body {
  cursor: ;
}

.cursor {
  width: 20px;
  height: 20px;
  border: 1px solid white;
  border-radius: 50%;
  position: absolute;
  z-index: 99;
  transition-duration: 500ms;
  transition-timing-function: ease-out;
  animation: cursorAnim .5s infinite alternate;
}

.cursor::after {
  content: "";
  width: 40px;
  height: 40px;
  position: absolute;
  border: 8px solid #41fe84;
  border-radius: 50%;
  opacity: .5;
  top: -11px;
  left: -11px;
  animation: cursorAnim2 .5s infinite alternate;
}

@keyframes cursorAnim {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(.7);
  }
}

@keyframes cursorAnim2 {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(.4);
  }
}

@keyframes cursorAnim3 {
  0% {
    transform: scale(1);
  }
  50% {
    transform: scale(3);
  }
  100% {
    transform: scale(1);
    opacity: 0;
  }
}

.expand {
  animation: cursorAnim3 .5s forwards;
  border: 1px solid red;
}

@media screen and (max-width: 900px){
    .cursor {
        display: none
    }
}
