.mainMask {
  z-index: 9999999;
/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#d6f0ff+0,2aa9c9+100&0.7+0,0.94+100 */
background: -moz-radial-gradient(center, ellipse cover,  rgba(214,240,255,0.7) 0%, rgba(42,169,201,0.94) 100%); /* FF3.6-15 */
background: -webkit-radial-gradient(center, ellipse cover,  rgba(214,240,255,0.7) 0%,rgba(42,169,201,0.94) 100%); /* Chrome10-25,Safari5.1-6 */
background: radial-gradient(ellipse at center,  rgba(214,240,255,0.7) 0%,rgba(42,169,201,0.94) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3d6f0ff', endColorstr='#f02aa9c9',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */

    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    
    width:100%;
    height:100%;
    
}
.loadingContainer{
  position: fixed;
  top: 50%;
  left:50%;
  transform: translate(-50%, -50%);
}
:root {
  --duration: 1.0s;
  --container-size: 250px;
  --box-size: 33px;
  --box-border-radius: 15%; }

.hop_n_slide_container {
  width: var(--container-size);
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative; }

.hop_n_slide_container .box_elm {
  width: var(--box-size);
  height: var(--box-size);
  position: relative;
  display: block;
  transform-origin: -50% center;
  border-radius: var(--box-border-radius); }
  .hop_n_slide_container .box_elm:after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
    background-color: lightblue;
    border-radius: var(--box-border-radius);
    box-shadow: 0px 0px 10px 0px rgba(28, 159, 255, 0.4); }
  .hop_n_slide_container .box_elm:nth-child(1) {
    animation: slide var(--duration) ease-in-out infinite alternate; }
    .hop_n_slide_container .box_elm:nth-child(1):after {
      animation: color-change var(--duration) ease-in-out infinite alternate; }
  .hop_n_slide_container .box_elm:nth-child(2) {
    animation: flip-1 var(--duration) ease-in-out infinite alternate; }
    .hop_n_slide_container .box_elm:nth-child(2):after {
      animation: squidge-1 var(--duration) ease-in-out infinite alternate; }
  .hop_n_slide_container .box_elm:nth-child(3) {
    animation: flip-2 var(--duration) ease-in-out infinite alternate; }
    .hop_n_slide_container .box_elm:nth-child(3):after {
      animation: squidge-2 var(--duration) ease-in-out infinite alternate; }
  .hop_n_slide_container .box_elm:nth-child(4) {
    animation: flip-3 var(--duration) ease-in-out infinite alternate; }
    .hop_n_slide_container .box_elm:nth-child(4):after {
      animation: squidge-3 var(--duration) ease-in-out infinite alternate; }
  .hop_n_slide_container .box_elm:nth-child(5) {
    animation: flip-4 var(--duration) ease-in-out infinite alternate; }
    .hop_n_slide_container .box_elm:nth-child(5):after {
      animation: squidge-4 var(--duration) ease-in-out infinite alternate; }
  .hop_n_slide_container .box_elm:nth-child(2):after {
    background-color: #037993; }
  .hop_n_slide_container .box_elm:nth-child(3):after {
    background-color: #0594b4; }
  .hop_n_slide_container .box_elm:nth-child(4):after {
    background-color: #0ab8df; }
  .hop_n_slide_container .box_elm:nth-child(5):after {
    background-color: #11cef9; }

@keyframes slide
{
  0% {
    background-color: #037993;
    transform: translatex(0vw); }
  100% {
    background-color: #11cef9;
    transform: translatex(calc(var(--container-size) - (var(--box-size) * 1.25))); } }

@keyframes color-change
{
  0% {
    background-color: #037993; }
  100% {
    background-color: #11cef9; } }

@keyframes flip-1 {
  0%, 15% {
    transform: rotate(0); }
  35%, 100% {
    transform: rotate(-180deg); } }

@keyframes squidge-1 {
  5% {
    transform-origin: center bottom;
    transform: scalex(1) scaley(1); }
  15% {
    transform-origin: center bottom;
    transform: scalex(1.3) scaley(0.7); }
  25%, 20% {
    transform-origin: center bottom;
    transform: scalex(0.8) scaley(1.4); }
  55%, 100% {
    transform-origin: center top;
    transform: scalex(1) scaley(1); }
  40% {
    transform-origin: center top;
    transform: scalex(1.3) scaley(0.7); } }

@keyframes flip-2 {
  0%, 30% {
    transform: rotate(0); }
  50%, 100% {
    transform: rotate(-180deg); } }

@keyframes squidge-2 {
  20% {
    transform-origin: center bottom;
    transform: scalex(1) scaley(1); }
  30% {
    transform-origin: center bottom;
    transform: scalex(1.3) scaley(0.7); }
  40%, 35% {
    transform-origin: center bottom;
    transform: scalex(0.8) scaley(1.4); }
  70%, 100% {
    transform-origin: center top;
    transform: scalex(1) scaley(1); }
  55% {
    transform-origin: center top;
    transform: scalex(1.3) scaley(0.7); } }

@keyframes flip-3 {
  0%, 45% {
    transform: rotate(0); }
  65%, 100% {
    transform: rotate(-180deg); } }

@keyframes squidge-3 {
  35% {
    transform-origin: center bottom;
    transform: scalex(1) scaley(1); }
  45% {
    transform-origin: center bottom;
    transform: scalex(1.3) scaley(0.7); }
  55%, 50% {
    transform-origin: center bottom;
    transform: scalex(0.8) scaley(1.4); }
  85%, 100% {
    transform-origin: center top;
    transform: scalex(1) scaley(1); }
  70% {
    transform-origin: center top;
    transform: scalex(1.3) scaley(0.7); } }

@keyframes flip-4 {
  0%, 60% {
    transform: rotate(0); }
  80%, 100% {
    transform: rotate(-180deg); } }

@keyframes squidge-4 {
  50% {
    transform-origin: center bottom;
    transform: scalex(1) scaley(1); }
  60% {
    transform-origin: center bottom;
    transform: scalex(1.3) scaley(0.7); }
  70%, 65% {
    transform-origin: center bottom;
    transform: scalex(0.8) scaley(1.4); }
  100%, 100% {
    transform-origin: center top;
    transform: scalex(1) scaley(1); }
  85% {
    transform-origin: center top;
    transform: scalex(1.3) scaley(0.7); } }
    

.spinner {
  margin: 0px auto;
  width: 50px;
  height: 40px;
  text-align: center;
  font-size: 10px;
}

.spinner > div {
  background-color: rgba(61, 141, 168, 1);
  height: 100%;
  width: 6px;
  display: inline-block;
  
  -webkit-animation: sk-stretchdelay 1.2s infinite ease-in-out;
  animation: sk-stretchdelay 1.2s infinite ease-in-out;
}

.spinner .rect2 {
  -webkit-animation-delay: -1.1s;
  animation-delay: -1.1s;
}

.spinner .rect3 {
  -webkit-animation-delay: -1.0s;
  animation-delay: -1.0s;
}

.spinner .rect4 {
  -webkit-animation-delay: -0.9s;
  animation-delay: -0.9s;
}

.spinner .rect5 {
  -webkit-animation-delay: -0.8s;
  animation-delay: -0.8s;
}

@-webkit-keyframes sk-stretchdelay {
  0%, 40%, 100% { -webkit-transform: scaleY(0.4) }  
  20% { -webkit-transform: scaleY(1.0) }
}

@keyframes sk-stretchdelay {
  0%, 40%, 100% { 
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
  }  20% { 
    transform: scaleY(1.0);
    -webkit-transform: scaleY(1.0);
  }
}
