/**
 * Copyright 2023, Alex Baics
 */
:root {
    --grid-line: rgba(0, 90, 240, 1.0);
    --grid-glow: rgba(0, 90, 240, 0.3);
    --grid-bg: black;
}

.synthwave_background {
    z-index: -1;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    background: black url("stars.png") fixed;
}
.synthwave_background .sky {

    position: absolute;
    width: 100%;
    height: 70%;
    background:
        linear-gradient(transparent, rgba(129, 30, 255, 0.3), rgba(242, 34, 255, 0.4));
}
.synthwave_background .grid {
    background:
        linear-gradient(
            transparent 15%,
            var(--grid-glow) 47%,
            var(--grid-line) 48%,
            var(--grid-line) 52%,
            var(--grid-glow) 53%,
            transparent 85%
        ),
        linear-gradient(to right,
            transparent 25%,
            var(--grid-glow) 47%,
            var(--grid-line) 48%,
            var(--grid-line) 52%,
            var(--grid-glow) 53%,
            transparent 75%
        ),
        var(--grid-bg)
    ;
    position: absolute;
    width: 200%;
    height: 200%;
    background-size: auto 5%, 1.5% auto;
    transform: rotateX(90deg) translateX(-50%);
    transform-origin: 0 10%;
    transition: background-position-x 400ms;
}
.synthwave_background .ground {
    perspective: 50vh;
    perspective-origin: top;
    position: absolute;
    height: 35%;
    bottom: 0;
    left: 0;
    width: 100%;
}
.synthwave_background .distance_fog {
    position: absolute;
    width: 100%;
    height: 40%;
    bottom: 0;
    background:
        linear-gradient(transparent, #240526 15%, #126 30%, transparent);
}
.synthwave_background .city_skyline_1,
.synthwave_background .city_skyline_2,
.synthwave_background .city_skyline_3 {
    position: absolute;
    width: 100%;
    height: 20%;
    background: url('city.svg');
    background-size: auto 100%;
    bottom: 30%;
    transition: background-position-x 400ms;
}
.synthwave_background .city_skyline_1 {
    background-position-x: 100px;
    filter: brightness(30%) blur(4px);
}
.synthwave_background .city_skyline_2 {
    background-position-x: 300px;
    filter: brightness(22%) blur(3px);
}
.synthwave_background .city_skyline_3 {
    background-position-x: 500px;
    filter: brightness(15%) blur(2px);
}

.synthwave_background .content_shadow {
    width: 1600px;
    height: 100vh;
    background: linear-gradient(
        to left,
        rgba(0,0,0,0.0),
        rgba(0,0,0,0.7) 350px,
        rgba(0,0,0,0.7) 1250px,
        rgba(0,0,0,0.0)
    );
    position: absolute;
    left: calc(50% - 800px);
}
