/* Animated Circles */
.animated-circle {
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(var(--x), var(--y)) rotate(0deg) scale(0.75);
    font-size: 20vmin;
    width: 3em;
    height: 3em;
    border-radius: 90% 95% 85% 105%;
    background: #0f0;
    mix-blend-mode: screen;
    filter: hue-rotate(0deg);
    -webkit-animation: wobble calc(var(--animation-speed) * var(--t)) linear infinite;
    animation: wobble calc(var(--animation-speed) * var(--t)) linear infinite;
    transform-origin: -var(--y) -var(--x);
    box-shadow: 0 0 0.5em 0.2em #000 inset, 0 0 0.15em 0 #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.animated-circle:nth-child(1) {
    --x: -53%;
    --y: -53%;
    --t: 37;
}

.animated-circle:nth-child(2) {
    --x: -47%;
    --y: -52%;
    --t: 58;
}

.animated-circle:nth-child(3) {
    --x: -45%;
    --y: -50%;
    --t: 46;
}

.animated-circle:nth-child(4) {
    --x: -53%;
    --y: -45%;
    --t: 72;
}

.animated-circle:nth-child(5) {
    --x: -55%;
    --y: -45%;
    --t: 62;
}

@-webkit-keyframes wobble {
    to {
        filter: hue-rotate(360deg);
        transform: translate(var(--x), var(--y)) rotate(360deg) scale(0.75);
    }
}

@keyframes wobble {
    to {
        filter: hue-rotate(360deg);
        transform: translate(var(--x), var(--y)) rotate(360deg) scale(0.75);
    }
}