:root {
  --lightBlue: #9ae7c9;
  --pink: #ff99a9;
  --black: #17111a;
  --red: #d04153;
  --brighterGreen: #d5f66e;
  --offWhite: #dfcbbf;
  --filterColor: rgba(241, 139, 105, 0.15);
}

footer,
footer a {
  position: absolute;
  top: 2%;
  right: 2%;
  z-index: 200;
  color: var(--pink);
}

.image {
  border-radius: 15px;
}

.field1 {
  z-index: -2;
  width: 101%;
  height: 100%;
  background-image: url(../images/field.svg);
  background-attachment: scroll;
  background-repeat: repeat-x;
  background-size: 75% auto;
  filter: drop-shadow(0 -15px 50px var(--brighterGreen));
  animation: dandelionField 25s infinite alternate forwards;
}

.mountain {
  z-index: -3;
  width: 100%;
  height: 100%;
  background-image: url(../images/mountain.svg);
  background-repeat: repeat-x;
  background-size: 75% auto;
  filter: drop-shadow(0 -15px 50px var(--pink));
  animation: dandelionField 50s infinite alternate-reverse forwards;
}

.dandelionSeed {
  z-index: -2;
  width: 100%;
  height: 100%;
  position: -50% -50%;
  background-image: url(../images/dandelion_seed.svg);
  background-repeat: repeat;
  background-size: 576px auto;
  filter: drop-shadow(0 0 25px var(--offWhite));
  animation: dandelionSeed 50s infinite linear forwards;
}

.star1 {
  z-index: -6;
  width: 100%;
  height: 100%;
  background-image: url(../images/stars.svg);
  background-repeat: repeat;
  background-size: 576px auto;
  animation: star1 24s infinite linear forwards;
}

.staticPlanet {
  width: 100%;
  height: auto;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  filter: drop-shadow(0 -15px 50px #c766b2);
}

.scanlines {
  position: absolute;
  z-index: 98;
  height: 100%;
  width: 100%;
  opacity: 0.1;
  background-image: url(../images/scanline.svg);
  background-repeat: repeat;
  background-size: 100% 0.5%;

  animation: moveBGDown 50s infinite linear;
}
.brightLine {
  position: absolute;
  z-index: 97;
  height: 100%;
  width: 100%;
  opacity: 0.5;
  background-image: url(../images/brightline.svg);
  background-repeat: repeat-x;
  background-size: 100% 3%;
  filter: drop-shadow(0 10px 15px var(--lightBlue));

  animation: moveBGDown 50s infinite linear;
}

.outerGradient {
  z-index: 100;
  height: 100%;
  width: 100%;
  background: radial-gradient(circle, var(--filterColor) 70%, var(--black) 95%);
}

.grain {
  z-index: 95;
  height: 300%;
  left: -50%;
  opacity: 0.6;
  position: fixed;
  top: -100%;
  width: 300%;
  opacity: 0.05;
  background-size: 2048px auto;
  background-image: url(../images/noise.png);
  animation: grain 8s steps(10) infinite;
}

html {
  height: 100%;
}

body {
  width: 100%;
  overflow: hidden;
  background: black;
  margin: 0;
  padding: 0;
  background-color: var(--black);
}

.image {
  vertical-align: middle;
  user-select: none;
  width: 100%;
  height: 100%;
}

.image * {
  user-select: none;
  position: absolute;
  vertical-align: middle;
  padding: 0;
  margin: 0;
  align-self: center;
}

@keyframes moveBGDown {
  0% {
    background-position: 0% 0%;
  }

  100% {
    background-position: 0% 100%;
  }
}

@keyframes moveBGRight {
  0% {
    background-position: 0% 0%;
  }
  100% {
    background-position: 100% 0%;
  }
}

@keyframes dandelionSeed {
  0% {
    background-position: 0px 0px;
  }
  100% {
    background-position: 576px -1152px;
    transform: rotate(0deg);
  }
}

@keyframes dandelionField {
  0% {
    background-position: 100% 95%;
  }

  100% {
    background-position: -100% 103%;
  }
}

@keyframes grain {
  0%,
  100% {
    transform: translate(0, 0);
  }
  10% {
    transform: translate(-5%, -10%);
  }
  20% {
    transform: translate(-15%, 5%);
  }
  30% {
    transform: translate(7%, -25%);
  }
  40% {
    transform: translate(-5%, 25%);
  }
  50% {
    transform: translate(-15%, 10%);
  }
  60% {
    transform: translate(15%, 0%);
  }
  70% {
    transform: translate(0%, 15%);
  }
  80% {
    transform: translate(3%, 35%);
  }
  90% {
    transform: translate(-10%, 10%);
  }
}
@keyframes star1 {
  0% {
    background-position: 576px 0;
    filter: drop-shadow(0 0 25px var(--offWhite));
  }

  50% {
    filter: drop-shadow(0 0 5px var(--offWhite));
  }

  100% {
    background-position: 0px 0;
    filter: drop-shadow(0 0 25px var(--offWhite));
  }
}
