.home-container {
  background:black;
  color: white;
}

.welcome-text {
  position: relative;
  height: 50%;
  z-index: 3;
}

.welcome-text > div {
  text-align: left;
  position: absolute;
  top: 40%;
  margin-left: 100px;
}

.welcome-text > div > h1 {
  line-height: 100px;
  font-size: 4rem;
  margin-top: 0;
}

/* Twinkling star animation */
@keyframes move-background {
  from {
    -webkit-transform: translate3d(0px, 0px, 0px);
  }
  to {
    -webkit-transform: translate3d(1000px, 0px, 0px);
  }
}
@-webkit-keyframes move-background {
  from {
    -webkit-transform: translate3d(0px, 0px, 0px);
  }
  to {
    -webkit-transform: translate3d(1000px, 0px, 0px);
  }
}

@-moz-keyframes move-background {
  from {
    -webkit-transform: translate3d(0px, 0px, 0px);
  }
  to {
    -webkit-transform: translate3d(1000px, 0px, 0px);
  }
}

@-webkit-keyframes move-background {
  from {
    -webkit-transform: translate3d(0px, 0px, 0px);
  }
  to {
    -webkit-transform: translate3d(1000px, 0px, 0px);
  }
}

.stars {
  background: url("../images/home/stars.png") repeat;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: block;
  z-index: 0;
}

.twinkling {
  width: 10000px;
  height: 100%;
  background: transparent
    url("../images/home/twinkling.png")
    repeat;
  background-size: 1000px 1000px;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 2;

  -moz-animation: move-background 70s linear infinite;
  -ms-animation: move-background 70s linear infinite;
  -o-animation: move-background 70s linear infinite;
  -webkit-animation: move-background 70s linear infinite;
  animation: move-background 70s linear infinite;
}


/* Shooting star animation */
.shooting-stars {
  z-index: 2;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 120%;
  transform: rotate(-45deg);
  pointer-events: none;
}

.shooting-star {
  --shooting-star-color: white;
  --shooting-star-tail-length: 6em;
  --shooting-star-tail-height: 2px;
  --shooting-star-width: calc(var(--shooting-star-tail-length) / 6);
  --fall-duration: 9s;
  --tail-fade-duration: var(--fall-duration);
  position: absolute;
  top: var(--top-offset);
  left: 0;
  width: var(--shooting-star-tail-length);
  height: var(--shooting-star-tail-height);
  color: var(--shooting-star-color);
  background: linear-gradient(45deg, currentColor, transparent);
  border-radius: 50%;
  filter: drop-shadow(0 0 6px currentColor);
  transform: translate3d(104em, 0, 0);
  animation: fall var(--fall-duration) var(--fall-delay) linear infinite, tail-fade var(--tail-fade-duration) var(--fall-delay) ease-out infinite;
}
@media screen and (max-width: 750px) {
  .shooting-star {
    animation: fall var(--fall-duration) var(--fall-delay) linear infinite;
  }
}
.shooting-star::before, .shooting-star::after {
  position: absolute;
  content: "";
  top: 0;
  left: calc(var(--shooting-star-width) / -2);
  width: var(--shooting-star-width);
  height: 100%;
  background: linear-gradient(45deg, transparent, currentColor, transparent);
  border-radius: inherit;
  animation: blink 2s linear infinite;
}
.shooting-star::before {
  transform: rotate(45deg);
}
.shooting-star::after {
  transform: rotate(-45deg);
}

@keyframes fall {
  to {
    transform: translate3d(-30em, 0, 0);
  }
}
@keyframes tail-fade {
  0%, 50% {
    width: var(--shooting-star-tail-length);
    opacity: 1;
  }
  70%, 80% {
    width: 0;
    opacity: 0.4;
  }
  100% {
    width: 0;
    opacity: 0;
  }
}
@keyframes blink {
  50% {
    opacity: 0.6;
  }
}

/* Download Button */
.glow-on-hover {
  color: black;
  border-radius: 10px;
  border: none;
  font-weight: bold;
  cursor: pointer;
  padding: 10px;
}

.glow-on-hover:hover {
  background: linear-gradient(45deg, #ff0000, #ff7300, #fffb00, #48ff00, #00ffd5, #002bff, #7a00ff, #ff00c8, #ff0000);
  background-size: 400%;
  height: calc(100% + 4px);
  animation: glowing 70s linear infinite;
  transition: opacity .3s ease-in-out;
}

@keyframes glowing {
  0% { background-position: 0 0; }
  50% { background-position: 400% 0; }
  100% { background-position: 0 0; }
}

/* Block access to mobile devices */
#block-mobile {
  z-index: 1000000;
  height: 100%;
  width: 100%;
  background-color: white;
  position: absolute;
  text-align: center;
}