:root {
  --glow-rgb: 239 42 201;
}

body.main_page {
  background: linear-gradient(145deg, rgb(119, 46, 195), rgb(58, 18, 153));
  background-image: url("main_elisa.jpg");
  background-size: contain;
  height: 100vh;
  overflow: hidden;
}

.spin-text {
    font-size: 5rem;
    font-weight: bold;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 
        1px 1px 0px #e63946, 
        2px 2px 0px #271707, 
        3px 3px 0px #fcbf49, 
        4px 4px 0px #a8dadc, 
        5px 5px 0px #457b9d;
    transform: rotateY(0deg);
    transform-style: preserve-3d;
    animation: spin-3d 4s infinite linear;
}

@keyframes spin-3d {
    0% {
        transform: rotateY(0deg);
    }
    100% {
        transform: rotateY(360deg);
    }
}

a {
  color: white;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.glow-point {
  position: absolute;
  box-shadow: 0rem 0rem 1.2rem 0.6rem rgb(var(--glow-rgb));
  pointer-events: none;
}

.star {
  position: absolute;
  clip-path: polygon(50% 0, 79% 90%, 2% 35%, 98% 35%, 21% 90%);
  z-index: 2;
  font-size: 1rem;
  animation-duration: 1500ms;
  animation-fill-mode: forwards;
  pointer-events: none;
}

@keyframes fall-1 {
  0% {
    transform: translate(0px, 0px) rotateX(45deg) rotateY(30deg) rotateZ(0deg) scale(0.25);
    opacity: 0;
  }

  5% {
    transform: translate(10px, -10px) rotateX(45deg) rotateY(30deg) rotateZ(0deg) scale(1);
    opacity: 1;
  }

  100% {
    transform: translate(25px, 200px) rotateX(180deg) rotateY(270deg) rotateZ(90deg) scale(1);
    opacity: 0;
  }
}

@keyframes fall-2 {
  0% {
    transform: translate(0px, 0px) rotateX(-20deg) rotateY(10deg) scale(0.25);
    opacity: 0;
  }

  10% {
    transform: translate(-10px, -5px) rotateX(-20deg) rotateY(10deg) scale(1);
    opacity: 1;
  }

  100% {
    transform: translate(-10px, 160px) rotateX(-90deg) rotateY(45deg) scale(0.25);
    opacity: 0;
  }
}

@keyframes fall-3 {
  0% {
    transform: translate(0px, 0px) rotateX(0deg) rotateY(45deg) scale(0.5);
    opacity: 0;
  }

  15% {
    transform: translate(7px, 5px) rotateX(0deg) rotateY(45deg) scale(1);
    opacity: 1;
  }

  100% {
    transform: translate(20px, 120px) rotateX(-180deg) rotateY(-90deg) scale(0.5);
    opacity: 0;
  }
}