@keyframes move {
    100% {
        transform: translate3d(0, 0, 1px) rotate(360deg);
    }
}

.background {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background: #0a1424;
    overflow: hidden;
}

.background span {
    width: 4vmin;
    height: 4vmin;
    border-radius: 4vmin;
    backface-visibility: hidden;
    position: absolute;
    animation: move;
    animation-duration: 29;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.background span:nth-child(0) {
    color: #162232;
    top: 27%;
    left: 75%;
    animation-duration: 177s;
    animation-delay: -53s;
    transform-origin: 13vw 16vh;
    box-shadow: -8vmin 0 1.522716278311599vmin currentColor;
}

.background span:nth-child(1) {
    color: #162232;
    top: 80%;
    left: 14%;
    animation-duration: 16s;
    animation-delay: -196s;
    transform-origin: -15vw -5vh;
    box-shadow: -8vmin 0 1.2387757830269128vmin currentColor;
}

.background span:nth-child(2) {
    color: #162232;
    top: 40%;
    left: 88%;
    animation-duration: 36s;
    animation-delay: -209s;
    transform-origin: 10vw 0vh;
    box-shadow: 8vmin 0 1.2213761753428496vmin currentColor;
}

.background span:nth-child(3) {
    color: #0c2427;
    top: 40%;
    left: 5%;
    animation-duration: 47s;
    animation-delay: -71s;
    transform-origin: 3vw 22vh;
    box-shadow: 8vmin 0 1.0876265094069901vmin currentColor;
}

.background span:nth-child(4) {
    color: #0c2427;
    top: 55%;
    left: 86%;
    animation-duration: 214s;
    animation-delay: -97s;
    transform-origin: -14vw 3vh;
    box-shadow: -8vmin 0 1.4485716592009206vmin currentColor;
}

.background span:nth-child(5) {
    color: #0c2427;
    top: 17%;
    left: 55%;
    animation-duration: 99s;
    animation-delay: -45s;
    transform-origin: -3vw 5vh;
    box-shadow: 8vmin 0 1.810235764702454vmin currentColor;
}

.background span:nth-child(6) {
    color: #143824;
    top: 88%;
    left: 78%;
    animation-duration: 110s;
    animation-delay: -198s;
    transform-origin: 13vw -8vh;
    box-shadow: -8vmin 0 1.06923693575827vmin currentColor;
}

.background span:nth-child(7) {
    color: #0c2427;
    top: 68%;
    left: 69%;
    animation-duration: 101s;
    animation-delay: -24s;
    transform-origin: -2vw -9vh;
    box-shadow: 8vmin 0 1.2247321721254618vmin currentColor;
}

.background span:nth-child(8) {
    color: #143824;
    top: 10%;
    left: 17%;
    animation-duration: 132s;
    animation-delay: -181s;
    transform-origin: 8vw -19vh;
    box-shadow: 8vmin 0 1.5091979782027187vmin currentColor;
}

.background span:nth-child(9) {
    color: #143824;
    top: 51%;
    left: 32%;
    animation-duration: 53s;
    animation-delay: -74s;
    transform-origin: -11vw 12vh;
    box-shadow: -8vmin 0 1.3485449141046442vmin currentColor;
}

.background span:nth-child(10) {
    color: #162232;
    top: 61%;
    left: 80%;
    animation-duration: 138s;
    animation-delay: -59s;
    transform-origin: 19vw -6vh;
    box-shadow: 8vmin 0 1.5770406799701402vmin currentColor;
}

.background span:nth-child(11) {
    color: #143824;
    top: 7%;
    left: 24%;
    animation-duration: 19s;
    animation-delay: -20s;
    transform-origin: 23vw 21vh;
    box-shadow: -8vmin 0 1.3443470351451536vmin currentColor;
}

.background span:nth-child(12) {
    color: #143824;
    top: 20%;
    left: 18%;
    animation-duration: 154s;
    animation-delay: -144s;
    transform-origin: -9vw 21vh;
    box-shadow: 8vmin 0 1.9364759074252276vmin currentColor;
}

.background span:nth-child(13) {
    color: #0c2427;
    top: 28%;
    left: 80%;
    animation-duration: 63s;
    animation-delay: -45s;
    transform-origin: 12vw -17vh;
    box-shadow: -8vmin 0 1.1274971656545945vmin currentColor;
}

.background span:nth-child(14) {
    color: #143824;
    top: 8%;
    left: 83%;
    animation-duration: 205s;
    animation-delay: -155s;
    transform-origin: -5vw -12vh;
    box-shadow: -8vmin 0 1.213352013884478vmin currentColor;
}

.background span:nth-child(15) {
    color: #143824;
    top: 62%;
    left: 66%;
    animation-duration: 98s;
    animation-delay: -146s;
    transform-origin: -11vw 0vh;
    box-shadow: 8vmin 0 1.4515452747224038vmin currentColor;
}

.background span:nth-child(16) {
    color: #143824;
    top: 85%;
    left: 46%;
    animation-duration: 184s;
    animation-delay: -168s;
    transform-origin: 16vw -12vh;
    box-shadow: -8vmin 0 1.6543168170414762vmin currentColor;
}

.background span:nth-child(17) {
    color: #0c2427;
    top: 55%;
    left: 33%;
    animation-duration: 110s;
    animation-delay: -51s;
    transform-origin: -3vw -12vh;
    box-shadow: -8vmin 0 1.1111431375511742vmin currentColor;
}