
@keyframes move {
    100% {
        transform: translate3d(0, 0, 1px) rotate(360deg);
    }
}

.background {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background: linear-gradient(45deg, #142f4b, #162C43, #18293B, #1B2532, #1D222A, #1f1f22);
    overflow: hidden;
		z-index: -2;
}

.backgroundOverlay {
    position: fixed;
    width: 100vw;
    height: 100vh;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.8);
    overflow: hidden;
		z-index: -1;
}

.background span {
    width: 1vmin;
    height: 1vmin;
    border-radius: 1vmin;
    backface-visibility: hidden;
    position: absolute;
    animation: move;
    animation-duration: 1;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
}

.background span:nth-child(0) {
    color: #2f72d6;
    top: 99%;
    left: 62%;
    animation-duration: 256s;
    animation-delay: -212s;
    transform-origin: -4vw 8vh;
    box-shadow: 2vmin 0 1.214454069961697vmin currentColor;
}
.background span:nth-child(1) {
    color: #abe4ff;
    top: 60%;
    left: 25%;
    animation-duration: 48s;
    animation-delay: -229s;
    transform-origin: 20vw -8vh;
    box-shadow: 2vmin 0 0.6254730898876443vmin currentColor;
}
.background span:nth-child(2) {
    color: #254ea0;
    top: 49%;
    left: 46%;
    animation-duration: 220s;
    animation-delay: -338s;
    transform-origin: -20vw -12vh;
    box-shadow: -2vmin 0 1.195498963863177vmin currentColor;
}
.background span:nth-child(3) {
    color: #2f72d6;
    top: 97%;
    left: 90%;
    animation-duration: 410s;
    animation-delay: -359s;
    transform-origin: -1vw -20vh;
    box-shadow: -2vmin 0 1.0702827234376682vmin currentColor;
}
.background span:nth-child(4) {
    color: #254ea0;
    top: 78%;
    left: 34%;
    animation-duration: 28s;
    animation-delay: -183s;
    transform-origin: -21vw 23vh;
    box-shadow: -2vmin 0 1.1982824064825817vmin currentColor;
}
.background span:nth-child(5) {
    color: #254ea0;
    top: 94%;
    left: 94%;
    animation-duration: 407s;
    animation-delay: -424s;
    transform-origin: -15vw 18vh;
    box-shadow: 2vmin 0 1.0398277179598296vmin currentColor;
}
.background span:nth-child(6) {
    color: #2f72d6;
    top: 48%;
    left: 59%;
    animation-duration: 105s;
    animation-delay: -377s;
    transform-origin: 9vw -8vh;
    box-shadow: -2vmin 0 1.159085121179067vmin currentColor;
}
.background span:nth-child(7) {
    color: #abe4ff;
    top: 54%;
    left: 30%;
    animation-duration: 384s;
    animation-delay: -194s;
    transform-origin: -7vw -9vh;
    box-shadow: -2vmin 0 0.5733535938226515vmin currentColor;
}
.background span:nth-child(8) {
    color: #abe4ff;
    top: 83%;
    left: 30%;
    animation-duration: 311s;
    animation-delay: -226s;
    transform-origin: 20vw 13vh;
    box-shadow: -2vmin 0 0.8588125511986185vmin currentColor;
}
.background span:nth-child(9) {
    color: #abe4ff;
    top: 26%;
    left: 39%;
    animation-duration: 389s;
    animation-delay: -386s;
    transform-origin: 8vw 16vh;
    box-shadow: 2vmin 0 0.4572691739290061vmin currentColor;
}
.background span:nth-child(10) {
    color: #2f72d6;
    top: 86%;
    left: 84%;
    animation-duration: 9s;
    animation-delay: -392s;
    transform-origin: -7vw 21vh;
    box-shadow: -2vmin 0 1.1486742292875105vmin currentColor;
}
.background span:nth-child(11) {
    color: #2f72d6;
    top: 5%;
    left: 81%;
    animation-duration: 127s;
    animation-delay: -172s;
    transform-origin: 14vw 15vh;
    box-shadow: -2vmin 0 0.5874830823941226vmin currentColor;
}
.background span:nth-child(12) {
    color: #abe4ff;
    top: 36%;
    left: 48%;
    animation-duration: 263s;
    animation-delay: -291s;
    transform-origin: 15vw 21vh;
    box-shadow: 2vmin 0 1.1131061600212102vmin currentColor;
}
.background span:nth-child(13) {
    color: #2f72d6;
    top: 21%;
    left: 11%;
    animation-duration: 355s;
    animation-delay: -199s;
    transform-origin: 9vw 16vh;
    box-shadow: -2vmin 0 0.4851958769225617vmin currentColor;
}
.background span:nth-child(14) {
    color: #254ea0;
    top: 15%;
    left: 32%;
    animation-duration: 395s;
    animation-delay: -299s;
    transform-origin: -19vw 11vh;
    box-shadow: 2vmin 0 1.1920608461606375vmin currentColor;
}
.background span:nth-child(15) {
    color: #2f72d6;
    top: 21%;
    left: 1%;
    animation-duration: 411s;
    animation-delay: -78s;
    transform-origin: -11vw 21vh;
    box-shadow: -2vmin 0 0.7176297221752076vmin currentColor;
}
.background span:nth-child(16) {
    color: #2f72d6;
    top: 71%;
    left: 50%;
    animation-duration: 63s;
    animation-delay: -232s;
    transform-origin: 20vw -15vh;
    box-shadow: -2vmin 0 0.9763174826027962vmin currentColor;
}
.background span:nth-child(17) {
    color: #254ea0;
    top: 74%;
    left: 93%;
    animation-duration: 290s;
    animation-delay: -204s;
    transform-origin: 5vw 21vh;
    box-shadow: -2vmin 0 1.1817222582685687vmin currentColor;
}
.background span:nth-child(18) {
    color: #abe4ff;
    top: 27%;
    left: 56%;
    animation-duration: 205s;
    animation-delay: -384s;
    transform-origin: 24vw -8vh;
    box-shadow: -2vmin 0 0.6936174930952015vmin currentColor;
}
.background span:nth-child(19) {
    color: #254ea0;
    top: 56%;
    left: 8%;
    animation-duration: 486s;
    animation-delay: -80s;
    transform-origin: -19vw 11vh;
    box-shadow: 2vmin 0 0.5489886574989109vmin currentColor;
}
.background span:nth-child(20) {
    color: #2f72d6;
    top: 67%;
    left: 28%;
    animation-duration: 391s;
    animation-delay: -167s;
    transform-origin: -6vw 12vh;
    box-shadow: 2vmin 0 0.5389956237353837vmin currentColor;
}
.background span:nth-child(21) {
    color: #2f72d6;
    top: 38%;
    left: 62%;
    animation-duration: 74s;
    animation-delay: -171s;
    transform-origin: -20vw -15vh;
    box-shadow: 2vmin 0 0.8732725106294671vmin currentColor;
}
.background span:nth-child(22) {
    color: #2f72d6;
    top: 90%;
    left: 39%;
    animation-duration: 237s;
    animation-delay: -5s;
    transform-origin: -9vw -23vh;
    box-shadow: -2vmin 0 0.818026689006132vmin currentColor;
}
.background span:nth-child(23) {
    color: #abe4ff;
    top: 5%;
    left: 76%;
    animation-duration: 485s;
    animation-delay: -94s;
    transform-origin: -22vw -19vh;
    box-shadow: -2vmin 0 1.077508980555909vmin currentColor;
}
.background span:nth-child(24) {
    color: #254ea0;
    top: 19%;
    left: 15%;
    animation-duration: 417s;
    animation-delay: -401s;
    transform-origin: 20vw -5vh;
    box-shadow: 2vmin 0 0.5833842359966035vmin currentColor;
}
.background span:nth-child(25) {
    color: #abe4ff;
    top: 2%;
    left: 95%;
    animation-duration: 284s;
    animation-delay: -438s;
    transform-origin: -3vw -17vh;
    box-shadow: -2vmin 0 0.7149233263234653vmin currentColor;
}
.background span:nth-child(26) {
    color: #abe4ff;
    top: 70%;
    left: 89%;
    animation-duration: 25s;
    animation-delay: -163s;
    transform-origin: 7vw -6vh;
    box-shadow: -2vmin 0 0.32919060880941553vmin currentColor;
}
.background span:nth-child(27) {
    color: #254ea0;
    top: 28%;
    left: 11%;
    animation-duration: 223s;
    animation-delay: -488s;
    transform-origin: 4vw -20vh;
    box-shadow: 2vmin 0 0.7094870231222178vmin currentColor;
}
.background span:nth-child(28) {
    color: #2f72d6;
    top: 28%;
    left: 50%;
    animation-duration: 390s;
    animation-delay: -317s;
    transform-origin: -4vw -13vh;
    box-shadow: -2vmin 0 0.5032419453153787vmin currentColor;
}
.background span:nth-child(29) {
    color: #254ea0;
    top: 87%;
    left: 78%;
    animation-duration: 191s;
    animation-delay: -33s;
    transform-origin: 12vw -4vh;
    box-shadow: -2vmin 0 0.6617518714822429vmin currentColor;
}
.background span:nth-child(30) {
    color: #254ea0;
    top: 8%;
    left: 61%;
    animation-duration: 418s;
    animation-delay: -189s;
    transform-origin: -2vw 20vh;
    box-shadow: 2vmin 0 0.5357104148294733vmin currentColor;
}
.background span:nth-child(31) {
    color: #254ea0;
    top: 5%;
    left: 84%;
    animation-duration: 459s;
    animation-delay: -216s;
    transform-origin: -17vw -15vh;
    box-shadow: -2vmin 0 1.1340240532823862vmin currentColor;
}
.background span:nth-child(32) {
    color: #abe4ff;
    top: 33%;
    left: 63%;
    animation-duration: 240s;
    animation-delay: -167s;
    transform-origin: 16vw -11vh;
    box-shadow: -2vmin 0 0.3328532358826991vmin currentColor;
}
.background span:nth-child(33) {
    color: #2f72d6;
    top: 8%;
    left: 25%;
    animation-duration: 122s;
    animation-delay: -104s;
    transform-origin: 17vw -18vh;
    box-shadow: 2vmin 0 0.3364645451131356vmin currentColor;
}
.background span:nth-child(34) {
    color: #abe4ff;
    top: 19%;
    left: 6%;
    animation-duration: 51s;
    animation-delay: -429s;
    transform-origin: 4vw 15vh;
    box-shadow: 2vmin 0 1.2127354526776999vmin currentColor;
}
.background span:nth-child(35) {
    color: #abe4ff;
    top: 26%;
    left: 100%;
    animation-duration: 311s;
    animation-delay: -483s;
    transform-origin: 9vw -14vh;
    box-shadow: -2vmin 0 0.46314791135337063vmin currentColor;
}
.background span:nth-child(36) {
    color: #254ea0;
    top: 66%;
    left: 69%;
    animation-duration: 255s;
    animation-delay: -461s;
    transform-origin: -6vw 17vh;
    box-shadow: 2vmin 0 0.6425163964156884vmin currentColor;
}
.background span:nth-child(37) {
    color: #abe4ff;
    top: 40%;
    left: 69%;
    animation-duration: 389s;
    animation-delay: -442s;
    transform-origin: -12vw 18vh;
    box-shadow: -2vmin 0 0.6958261442085963vmin currentColor;
}
.background span:nth-child(38) {
    color: #abe4ff;
    top: 48%;
    left: 5%;
    animation-duration: 282s;
    animation-delay: -347s;
    transform-origin: 21vw -3vh;
    box-shadow: -2vmin 0 0.496029658350151vmin currentColor;
}
.background span:nth-child(39) {
    color: #abe4ff;
    top: 35%;
    left: 86%;
    animation-duration: 316s;
    animation-delay: -474s;
    transform-origin: 18vw 6vh;
    box-shadow: 2vmin 0 0.6139559667311553vmin currentColor;
}
.background span:nth-child(40) {
    color: #2f72d6;
    top: 49%;
    left: 69%;
    animation-duration: 259s;
    animation-delay: -333s;
    transform-origin: 17vw 13vh;
    box-shadow: -2vmin 0 0.27682619000081066vmin currentColor;
}
.background span:nth-child(41) {
    color: #2f72d6;
    top: 9%;
    left: 71%;
    animation-duration: 100s;
    animation-delay: -113s;
    transform-origin: -12vw 18vh;
    box-shadow: -2vmin 0 0.6404282358708532vmin currentColor;
}
.background span:nth-child(42) {
    color: #2f72d6;
    top: 73%;
    left: 84%;
    animation-duration: 227s;
    animation-delay: -404s;
    transform-origin: -5vw -20vh;
    box-shadow: -2vmin 0 0.8459759384295812vmin currentColor;
}
.background span:nth-child(43) {
    color: #254ea0;
    top: 98%;
    left: 10%;
    animation-duration: 303s;
    animation-delay: -411s;
    transform-origin: -6vw -19vh;
    box-shadow: 2vmin 0 0.9514081637393064vmin currentColor;
}
.background span:nth-child(44) {
    color: #254ea0;
    top: 99%;
    left: 66%;
    animation-duration: 430s;
    animation-delay: -326s;
    transform-origin: 20vw -12vh;
    box-shadow: -2vmin 0 0.4635562338682957vmin currentColor;
}
.background span:nth-child(45) {
    color: #2f72d6;
    top: 30%;
    left: 61%;
    animation-duration: 451s;
    animation-delay: -18s;
    transform-origin: -10vw -23vh;
    box-shadow: 2vmin 0 0.4930214419264436vmin currentColor;
}
.background span:nth-child(46) {
    color: #2f72d6;
    top: 12%;
    left: 41%;
    animation-duration: 473s;
    animation-delay: -178s;
    transform-origin: 18vw 17vh;
    box-shadow: 2vmin 0 1.1992650362065536vmin currentColor;
}
.background span:nth-child(47) {
    color: #254ea0;
    top: 16%;
    left: 27%;
    animation-duration: 150s;
    animation-delay: -359s;
    transform-origin: -19vw -5vh;
    box-shadow: -2vmin 0 1.1541388115859799vmin currentColor;
}
.background span:nth-child(48) {
    color: #254ea0;
    top: 81%;
    left: 26%;
    animation-duration: 94s;
    animation-delay: -225s;
    transform-origin: -9vw 5vh;
    box-shadow: 2vmin 0 0.3709549784771047vmin currentColor;
}
.background span:nth-child(49) {
    color: #2f72d6;
    top: 38%;
    left: 51%;
    animation-duration: 398s;
    animation-delay: -454s;
    transform-origin: 4vw -9vh;
    box-shadow: -2vmin 0 0.43946319986873106vmin currentColor;
}