body {
    background: #000;
    height: 100vh;
}

@keyframes animate {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}

.container {
    position: relative;
    width: 300px;
    height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    justify-self: center;
    -webkit-box-reflect: below 5px linear-gradient(to bottom, rgba(0,0,0,.0), rgba(0,0,0,.5));
}

.container img {
    scale: 0.35;
    z-index: 99;
    border-radius: 50%;
    aspect-ratio: 1/1;
}

.loader {
    position: absolute;
    width: 200px;
    height: 200px;
    border-radius: 50%;
    animation: animate 2s linear infinite;
}

.loader1:before, .loader2::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: linear-gradient(to top, transparent, #0B63AB);
    background-size: 100px 205px;
    background-repeat: no-repeat;
    border-top-left-radius: 100px;
    border-bottom-left-radius: 100px;
    z-index: -99;
}

.loader2, .loader4 {
    animation-delay: -1s;
    filter: hue-rotate(-100deg);
}

.loader i {
    position: absolute;
    width: 10px;
    height: 10px;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    --color: #00fff9;
    background: var(--color);
    border-radius: 50%;
    z-index: -99;
    box-shadow: 
        0 0 10px var(--color),
        0 0 20px var(--color),
        0 0 30px var(--color),
        0 0 40px var(--color),
        0 0 50px var(--color),
        0 0 60px var(--color),
        0 0 70px var(--color),
        0 0 80px var(--color),
        0 0 90px var(--color),
        0 0 100px var(--color);
}

.loader span {
    position: absolute;
    inset: 10px;
    background: #000;
    border-radius: 50%;
    z-index: 0;
}