.spinner {
    width: 40rem;
    height: 40rem;
    position: fixed;
    margin: auto;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index:2;
}
.spinner:before, .spinner::before{position:fixed;z-index:-1;top:0;left:0;bottom:0;right:0;margin:auto;width:100%;height:100%;background:rgb(0,0,0);opacity:0.25;content:'';}

.double-bounce1, .double-bounce2 {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background-color: #1EBAE5;
  opacity: 0.8;
  position: absolute;
  top: 0;
  left: 0;
  z-index:1;

  -webkit-animation: sk-bounce 2.0s infinite ease-in-out;
  animation: sk-bounce 2.0s infinite ease-in-out;
}
.double-bounce2 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}
.spinner .progress{position:fixed;top:50%;height:1em;margin-top:-0.5em;margin-left:-0.5em;line-height:1em;width:1em;border-radius:100%;background:#ffffff;display:block;left:0;transition:left linear 0.4s;}
.spinner .progress{position:fixed;top:50%;height:0.4em;margin-top:-0.2em;margin-left:auto;margin-right:auto;line-height:0.4em;width:0em;border-radius:0;background:#0BB14E;display:block;left:0;right:0;transition:width linear 0.4s;}
.spinner .progress{
-webkit-animation: progress-width 2.0s infinite ease-in-out;
animation: progress-width 2.0s infinite ease-in-out;
}
/* Layout update 2017-10-18 */
.spinner:before, .spinner::before{position:fixed;z-index:-1;top:0;left:0;bottom:0;right:0;margin:auto;width:100%;height:100%;background:rgb(0,0,0);opacity:0.5;content:'';}
.double-bounce1, .double-bounce2 {
  background:#fff;
  background:#0BB14E;
  opacity: 0.7;
}
.double-bounce2 {
  background:#fff;
}

@-webkit-keyframes sk-bounce {
  0%, 100% { -webkit-transform: scale(0.0) }
  50% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bounce {
  0%, 100% {
    transform: scale(0.0);
    -webkit-transform: scale(0.0);
  } 50% {
    transform: scale(1.0);
    -webkit-transform: scale(1.0);
  }
}

@-webkit-keyframes progress-width {
  0%, 100% { width: 0; }
  50% { width: 100%; }
}
@keyframes progress-width {
  0%, 100% { width: 0; }
  50% { width: 100%; }
}