.spinner_container {
  position:fixed;
  background-color:rgba(255,255,255,0.3);
  top:0;
  right:0;
  bottom:0;
  left:0;
  opacity:1;
  visibility:visible;
  z-index:9050;
  transition:opacity .2s ease,visibility 0;
  transition-delay:0s,.3s;
  display:none;
}

.spinner {
  position:absolute;
  z-index:9050;
  top:50%;
  left:50%;
  transform:rotate(90deg) translate(-50%,-50%);
}

.spinner,.spinner__dot-a,.spinner__dot-b {
  transform-origin:50% 50%;
  will-change:transform;
}

.spinner__dot-a,.spinner__dot-b {
  position:absolute;
  width:100%;
  top:0;
  left:0;
}

.spinner:after,.spinner:before,.spinner__dot-a:after,.spinner__dot-a:before,.spinner__dot-b:after,.spinner__dot-b:before {
  position:absolute;
  background:rgb(62, 84, 181);
  border-radius:50%;
  animation-duration:1s;
  animation-iteration-count:infinite;
  transform:translateZ(0);
  content:"";
}

.spinner__dot-a {
  transform:rotate(60deg);
}

.spinner__dot-b {
  transform:rotate(120deg);
}

.spinner:before {
  animation-delay:-.080s;
}

.spinner__dot-a:before {
  animation-delay:.080s;
}

.spinner__dot-b:before {
  animation-delay:.24s;
}

.spinner:after {
  animation-delay:.42s;
}

.spinner__dot-a:after {
  animation-delay:.582s;
}

.spinner__dot-b:after {
  animation-delay:.75s;
}

.spinner–large,.spinner_large {
  width:2.75rem;
}

.spinner–large .spinner__dot-a:after,.spinner–large .spinner__dot-a:before,.spinner–large .spinner__dot-b:after,.spinner–large .spinner__dot-b:before,.spinner–large.spinner:after,.spinner–large.spinner:before,.spinner_large .spinner__dot-a:after,.spinner_large .spinner__dot-a:before,.spinner_large .spinner__dot-b:after,.spinner_large .spinner__dot-b:before,.spinner_large.spinner:after,.spinner_large.spinner:before {
  width:.625rem;
  height:.625rem;
}

.spinner–large .spinner__dot-a:before,.spinner–large .spinner__dot-b:before,.spinner–large.spinner:before,.spinner_large .spinner__dot-a:before,.spinner_large .spinner__dot-b:before,.spinner_large.spinner:before {
  animation-name:dotsBounceBefore-medium;
  top:-.3125rem;
  left:-.3125rem;
}

.spinner–large .spinner__dot-a:after,.spinner–large .spinner__dot-b:after,.spinner–large.spinner:after,.spinner_large .spinner__dot-a:after,.spinner_large .spinner__dot-b:after,.spinner_large.spinner:after {
  animation-name:dotsBounceAfter-medium;
  top:-.3125rem;
  right:-.3125rem;
}

@keyframes dotsBounceBefore-medium {
  0%{transform:translateZ(0)}
  60%{transform:translateZ(0);animation-timing-function:cubic-bezier(.55,.085,.68,.53)}
  80%{transform:translate3d(-.5rem,0,0);animation-timing-function:cubic-bezier(0,1.11,.7,1.43)}
  to{transform:translateZ(0)}
}

@keyframes dotsBounceAfter-medium {
  0%{transform:translateZ(0)}
  60%{transform:translateZ(0);animation-timing-function:cubic-bezier(.55,.085,.68,.53)}
  80%{transform:translate3d(.5rem,0,0);animation-timing-function:cubic-bezier(0,1.11,.7,1.43)}
  to{transform:translateX(0)}
}

@keyframes dotsBounceBefore-large {
  0%{transform:translateZ(0)}
  60%{transform:translateZ(0);animation-timing-function:cubic-bezier(.55,.085,.68,.53)}
  80%{transform:translate3d(-.75rem,0,0);animation-timing-function:cubic-bezier(0,1.11,.7,1.43)}
to{transform:translateX(0)}
}

@keyframes dotsBounceAfter-large {
  0%{transform:translateZ(0)}
  60%{transform:translateZ(0);animation-timing-function:cubic-bezier(.55,.085,.68,.53)}
  80%{transform:translate3d(.75rem,0,0);animation-timing-function:cubic-bezier(0,1.11,.7,1.43)}
  to{transform:translateX(0)}
}  