@import url("https://fonts.googleapis.com/css2?family=Bebas+Neue&family=Rubik+Mono+One&display=swap");

html,
* {
  padding: 0;
  margin: 0;
}

body {
  background-image: url("/asset/background.webp");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  position: relative;
  overflow: hidden;
  min-height: 100vh;
  min-height: -webkit-fill-available;
  -webkit-background-size: cover;
}

.snow-container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1;
  overflow: hidden;
}

.snowflake {
  position: absolute;
  color: rgba(255, 255, 255, 0.8);
  font-size: 1em;
  font-family: Arial, sans-serif;
  text-shadow: 0 0 5px rgba(255, 255, 255, 0.8);
  user-select: none;
  animation: snow-fall linear infinite;
  filter: blur(1px);
}

.snowflake::before {
  content: "❄";
}

@keyframes snow-fall {
  0% {
    transform: translateY(0) translateX(0) rotate(0deg);
  }
  100% {
    transform: translateY(100vh) translateX(20px) rotate(360deg);
  }
}

.png-shadow {
  filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.25));
}

.countdown {
  padding-top: 30px;
  font-family: "Rubik Mono One", monospace;
  font-weight: 400;
  font-style: normal;
  font-size: 50px;
  display: flex;
  justify-content: center;
}

.center-container {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  position: relative;
  z-index: 2;
}

.logo-center {
  display: flex;
  justify-content: center;
  padding-bottom: 30px;
}

.ensne-container {
  display: flex;
  justify-content: center;
  height: 200px;
}

.ensne-text {
  font-family: "Arial Black", Arial, sans-serif;
  font-weight: 900;
  font-size: 200px;
  line-height: 200px;
  color: #000;
  display: inline-flex;
  align-items: center;
  filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.25));
  white-space: nowrap;
  letter-spacing: -0.1em;
  transition: transform 0.3s ease;
}

.ensne-text:hover {
  transform: scale(1.1);
}

.ensne-text .char-normal,
.ensne-text .char-mirrored {
  display: inline-block;
}

.ensne-text .char-mirrored {
  transform: scaleX(-1);
}

.ne-wrapper {
  display: inline-block;
  opacity: 0.6;
  margin: 16px;
  padding: 0;
  width: 240px;
  mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.8) 0%,
    rgba(0, 0, 0, 0.6) 30%,
    rgba(0, 0, 0, 0.3) 60%,
    rgba(0, 0, 0, 0) 100%
  );
  -webkit-mask-image: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.8) 0%,
    rgba(0, 0, 0, 0.6) 30%,
    rgba(0, 0, 0, 0.3) 60%,
    rgba(0, 0, 0, 0) 100%
  );
  mask-size: 240px 100%;
  -webkit-mask-size: 240px 100%;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-position: right center;
  -webkit-mask-position: right center;
  vertical-align: baseline;
  font-size: 0;
  line-height: 0;
  overflow: hidden;
  text-align: right;
  animation: left-shift;
  animation-duration: 750ms;
  animation-timing-function: ease-in-out;
  animation-delay: 500ms;
  animation-fill-mode: forwards;
  -webkit-animation: left-shift;
  -webkit-animation-duration: 750ms;
  -webkit-animation-timing-function: ease-in-out;
  -webkit-animation-delay: 500ms;
  -webkit-animation-fill-mode: forwards;
}

.ne-wrapper .char-mirrored {
  font-size: 200px;
  line-height: 200px;
}

.logo {
  padding-right: 20px;
  width: 413px;
  height: 350px;
  transition: transform 0.3s ease;
}

.logo:hover {
  transform: scale(1.1);
}

@keyframes left-shift {
  0% {
    width: 240px;
  }
  100% {
    width: 0px;
  }
}

@-webkit-keyframes left-shift {
  0% {
    width: 240px;
  }
  100% {
    width: 0px;
  }
}

@media only screen and (max-width: 900px) {
  .logo-center {
    padding-bottom: 10px;
  }

  .logo {
    padding-right: 10px;
    width: 137.67px;
    height: 116.67px;
  }

  .ensne-container {
    height: 75px;
  }

  .ensne-text {
    font-size: 75px;
    line-height: 75px;
  }

  .ne-wrapper {
    width: 90px;
    margin: 6px;
    mask-size: 90px 100%;
    -webkit-mask-size: 90px 100%;
  }

  .ne-wrapper .char-mirrored {
    font-size: 75px;
    line-height: 75px;
  }

  @keyframes left-shift {
    0% {
      width: 90px;
    }
    100% {
      width: 0px;
    }
  }

  @-webkit-keyframes left-shift {
    0% {
      width: 90px;
    }
    100% {
      width: 0px;
    }
  }

  .countdown {
    padding-top: 10px;
    font-size: 18px;
  }

  .snowflake {
    font-size: 0.8em;
  }
}
