.ahvr-circle {
  position: relative;
  padding: 10px;
}

.ahvr-circle .image {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 50%;
  z-index: 10;
}

.ahvr-circle .spinner {
  border-width: 10px;
  border-color: #30A9DE;
  border-style: solid;
  border-right-color: #EFDC05;
  border-bottom-color: #EFDC05;
  transition: all 0.8s ease-in-out;
  z-index: 11;
  background-color: rgba(0, 0, 0, 0.25);
}

.ahvr-circle:hover .spinner {
  background-color: rgba(0, 0, 0, 0.6);
}

.ahvr-circle .spinner,
.ahvr-circle .overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
}

.ahvr-circle .overlay {
  z-index: 12;
}

.ahvr-circle .middle {
  color: #f3f3f3;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  width: 100%;
  padding: 1rem;
}

.ahvr-circle.effect-rotate:hover .spinner,
.ahvr-circle.effect-opacity:hover .spinner {
  background-clip: content-box;
  transform: rotate(180deg);
}

.ahvr-circle.effect-opacity .spinner {
  background-color: transparent !important;
}

.ahvr-circle.effect-opacity .overlay {
  background: rgba(0, 0, 0, 0.6);
  transition: all 0.5s ease-in-out;
  opacity: 0;
  border-width: 10px;
  border-color: transparent;
  border-style: solid;
  background-clip: padding-box;
}

.ahvr-circle.effect-opacity:hover .overlay {
  opacity: 1;
}
