

/* Back to Top with Radial Progress  */

@-webkit-keyframes border-transform {
  0%,100% { border-radius: 63% 37% 54% 46% / 55% 48% 52% 45%; }
  14% { border-radius: 40% 60% 54% 46% / 49% 60% 40% 51%; }
  28% { border-radius: 54% 46% 38% 62% / 49% 70% 30% 51%; }
  42% { border-radius: 61% 39% 55% 45% / 61% 38% 62% 39%; }
  56% { border-radius: 61% 39% 67% 33% / 70% 50% 50% 30%; }
  70% { border-radius: 50% 50% 34% 66% / 56% 68% 32% 44%; }
  84% { border-radius: 46% 54% 50% 50% / 35% 61% 39% 65%; }
}

.progress-wrap {
  position: fixed;
  right: 40px;
  bottom: 40px;
  height: 50px;
  width: 50px;
  cursor: pointer;
  display: block;
  border-radius: 50px;
  box-shadow: inset 0 0 0 2px rgba(255,255,255,1);
  z-index: 10000;
  opacity: 0;
  visibility: hidden;
  transform: translateY(15px);
  -webkit-transition: all 200ms linear;
  transition: all 200ms linear;
}

.progress-wrap.active-progress {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* default arrow color */
.progress-wrap::after {
  position: absolute;
  font-family: 'bootstrap-icons';
  font-weight: 600;
  content: '\F148';
  text-align: center;
  line-height: 50px;
  font-size: 24px;
  /*color: #ecedf3;*/
  color: rgba(95, 65, 251, 0.8);
  left: 0;
  top: 0;
  height: 50px;
  width: 50px;
  cursor: pointer;
  display: block;
  z-index: 1;
  -webkit-transition: all 200ms linear;
  transition: all 200ms linear;
}

.progress-wrap:hover::after {
  opacity: 0;
}

/* on-hover arrow color */
.progress-wrap::before {
  position: absolute;
  font-family: 'bootstrap-icons';
  content: '\F148';
  text-align: center;
  line-height: 50px;
  font-size: 24px;
  font-weight: 600;
  opacity: 0;
  background: #fff;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  left: 0;
  top: 0;
  height: 50px;
  width: 50px;
  cursor: pointer;
  display: block;
  z-index: 2;
  -webkit-transition: all 200ms linear;
  transition: all 200ms linear;
}

.progress-wrap:hover::before {
  opacity: 1;
}

.progress-wrap svg path {
  fill: none;
}

.progress-wrap svg.progress-circle path {
  /*stroke: #ecedf3;*/
  stroke: rgba(95, 65, 251, 0.8);
  stroke-width: 6;
  box-sizing: border-box;
  -webkit-transition: all 200ms linear;
  transition: all 200ms linear;
  shape-rendering: "crispEdges";
}