/**
 * 1. The `reverse` animation direction plays the animation backwards
 *    which makes it start at the stroke offset 100 which means displaying
 *    no stroke at all and animating it to the value defined in the SVG
 *    via the inline `stroke-dashoffset` attribute.
 * 2. Rotate by -90 degree to make the starting point of the
 *    stroke the top of the circle.
 * 3. Using CSS transforms on SVG elements is not supported by Internet Explorer
 *    and Edge, use the transform attribute directly on the SVG element as a
 * .  workaround (https://markus.oberlehner.net/blog/pure-css-animated-svg-circle-chart/#part-4-internet-explorer-strikes-back).
 */
.circle-chart__circle {
  animation: circle-chart-fill 2s reverse; /* 1 */ 
  transform: rotate(-90deg); /* 2, 3 */
  transform-origin: center; /* 4 */
}

/**
 * 1. Rotate by -90 degree to make the starting point of the
 *    stroke the top of the circle.
 * 2. Scaling mirrors the circle to make the stroke move right
 *    to mark a positive chart value.
 * 3. Using CSS transforms on SVG elements is not supported by Internet Explorer
 *    and Edge, use the transform attribute directly on the SVG element as a
 * .  workaround (https://markus.oberlehner.net/blog/pure-css-animated-svg-circle-chart/#part-4-internet-explorer-strikes-back).
 */
.circle-chart__circle--negative {
  transform: rotate(-90deg) scale(1,-1); /* 1, 2, 3 */
}

.circle-chart__info {
  animation: circle-chart-appear 400s forwards;
  opacity: 0;
  transform: translateY(0.3em);
}

@keyframes circle-chart-fill {
  to { stroke-dasharray: 0 100; }
}

@keyframes circle-chart-appear {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.counter-single .counter-icon svg {
    width: 30px;
  height: 30px;
}

.circle-chart {
    max-width: 100%;
}

.ls-stats-counter {
    padding: 20px;
}

@media(min-width: 450px) and (max-width: 767px) {
  .ls-stats-counter .row-fluid {
      display: flex;
      flex-wrap: wrap;
  }
  
  .ls-stats-counter .row-fluid > div {
      width: 100%;
      padding: 20px 10px;
  }
}

.counter-single .percent-text {
      font-size: 2rem;
    font-weight: bold;
    margin: 0;
    padding: 0;
}

/* circle counter */
.counter-single .circle-counter {
    position: relative;
    max-width: 200px;
    margin: 0 auto;
    text-align: center;
}

.counter-single .circle-counter .circle-content {
    height: 200px;
    max-width: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.counter-single .circle-counter .circle-chart {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
}
  
/* half circle */
.counter-single .half-circle {
    position: relative;
    max-width: 223px;
    margin: 0 auto;
    text-align: center;
}

.counter-single .half-circle .circle-content {
    height: 150px;
    max-width: 223px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-direction: column;
}


.counter-single .half-circle .half-circle-chart {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
}
  