#loading {
    width: 50px;
    height: 50px;
    position: fixed;
    left: 50%;
    top: 50%;
    animation: loading 2.5s infinite linear both;
    display: none;
}

.loading-dot {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0; 
    animation: loading-dot 2.0s infinite ease-in-out both; 
}

.loading-dot:before {
    content: '';
    display: block;
    width: 25%;
    height: 25%;
    background-color: orangered;
    border-radius: 100%;
    animation: loading-dot-before 2.0s infinite ease-in-out both; 
}

.loading-dot:nth-child(1) { animation-delay: -1.1s; }
.loading-dot:nth-child(2) { animation-delay: -1.0s; }
.loading-dot:nth-child(3) { animation-delay: -0.9s; }
.loading-dot:nth-child(4) { animation-delay: -0.8s; }
.loading-dot:nth-child(5) { animation-delay: -0.7s; }
.loading-dot:nth-child(6) { animation-delay: -0.6s; }
.loading-dot:nth-child(1):before { animation-delay: -1.1s; }
.loading-dot:nth-child(2):before { animation-delay: -1.0s; }
.loading-dot:nth-child(3):before { animation-delay: -0.9s; }
.loading-dot:nth-child(4):before { animation-delay: -0.8s; }
.loading-dot:nth-child(5):before { animation-delay: -0.7s; }
.loading-dot:nth-child(6):before { animation-delay: -0.6s; }

@keyframes loading {
    100% { transform: rotate(360deg); } 
}

@keyframes loading-dot {
    80%, 100% { transform: rotate(360deg); } 
}

@keyframes loading-dot-before {
    50% {
        transform: scale(0.4); 
    } 100%, 0% {
        transform: scale(1.0); 
    } 
}