* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

section {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    width: 100%;
    background: #4070f4;
}

section .dots span {
    position: absolute;
    height: 10px;
    width: 10px;
    background: #fff;
    border-radius: 50%;
    transform: rotate(calc(var(--i) * (360deg / 15))) translateY(35px);
    animation: animate 1.5s linear infinite;
    animation-delay: calc((var(--i) * 0.1s));
    opacity: 0;
}

@keyframes animate {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}