body {
  background-color: darkblue;
  height: 97vh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.circle {
  position: relative;
  width: 400px;
  height: 400px;
  border-radius: 100%;
  background-color: gray;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.border {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 50%;
  border: 20px solid white;
  border-top: 20px solid red;
  transition: transform 2s ease-in-out;
}

.circle:hover .border {
  cursor: pointer;
  animation: rotate-border 2s linear;
}

.circle > p {
  font-size: 50px;
  color: white;
  font-weight: bold;
  position: relative;
}

@keyframes rotate-border {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
