@font-face { font-family: Montserrat; src: url('fonts/Montserrat-Bold-Website-Font.ttf'); } 

/* customizable snowflake styling */
.snowflake {
  color: #fff;
  font-size: 1em;
  font-family: Arial, sans-serif;
  text-shadow: 0 0 5px #fff;
}

.snowflake, .snowflake .inner {
  animation-iteration-count: infinite;
  animation-play-state: running;
}

@keyframes snowflakes-fall {
  0% { transform: translateY(0); }
  100% { transform: translateY(110vh); }
}

@keyframes snowflakes-shake {
  0%, 100% { transform: translateX(0); }
  50% { transform: translateX(80px); }
}

.snowflake {
  position: fixed;
  top: -10%;
  z-index: 9999;
  -webkit-user-select: none;
  user-select: none;
  cursor: default;
  animation-name: snowflakes-shake;
  animation-duration: 3s;
  animation-timing-function: ease-in-out;
}

.snowflake .inner {
  animation-duration: 10s;
  animation-name: snowflakes-fall;
  animation-timing-function: linear;
}

/* Position and delay settings for each snowflake */
.snowflake:nth-of-type(1) { left: 1%; animation-delay: 0s; }
.snowflake:nth-of-type(1) .inner { animation-delay: 0s; }
.snowflake:nth-of-type(2) { left: 10%; animation-delay: 1s; }
.snowflake:nth-of-type(2) .inner, .snowflake:nth-of-type(9) .inner { animation-delay: 1s; }
.snowflake:nth-of-type(3) { left: 20%; animation-delay: 0.5s; }
.snowflake:nth-of-type(3) .inner, .snowflake:nth-of-type(7) .inner { animation-delay: 6s; }
.snowflake:nth-of-type(4) { left: 30%; animation-delay: 2s; }
.snowflake:nth-of-type(12) .inner, .snowflake:nth-of-type(4) .inner { animation-delay: 4s; }
.snowflake:nth-of-type(5) { left: 40%; animation-delay: 2s; }
.snowflake:nth-of-type(11) .inner, .snowflake:nth-of-type(5) .inner { animation-delay: 2s; }
.snowflake:nth-of-type(6) { left: 50%; animation-delay: 3s; }
.snowflake:nth-of-type(6) .inner { animation-delay: 8s; }
.snowflake:nth-of-type(7) { left: 60%; animation-delay: 2s; }
.snowflake:nth-of-type(8) { left: 70%; animation-delay: 1s; }
.snowflake:nth-of-type(8) .inner { animation-delay: 2.5s; }
.snowflake:nth-of-type(9) { left: 80%; animation-delay: 0s; }
.snowflake:nth-of-type(10) { left: 90%; animation-delay: 1.5s; }
.snowflake:nth-of-type(10) .inner { animation-delay: 3s; }
.snowflake:nth-of-type(11) { left: 25%; animation-delay: 0s; }
.snowflake:nth-of-type(12) { left: 65%; animation-delay: 2.5s; }

body {
  margin: 0;
  padding: 50;
  border: 0;
  background: radial-gradient(circle at 10% 20%, #a2d2df 0%, #baf2ef 90%);
  background-size: cover;
  background-repeat: no-repeat;
  background-attachment: fixed;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  height: 100vh;
  width: 100vw;

}


div.textContainer {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  padding: 20px;
  z-index: 10000;
}

.question {
  font-size: 7vw;
  text-align: center;
  font-family: Montserrat, monospace;
  color: white;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
}

.answer {
  font-size: 7vw;
  text-align: center;
  font-family: Montserrat, monospace;
  color: white;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
}

h2.reveal {
  font-size: 7vw;
  color: white;
  font-family: Montserrat, monospace;
  background-color: #ff0000;
  border-radius: 20px;
  padding: 20px;
}

/* Snow drift styling */
.snow-drift {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 200px; /* Adjust height as needed */
  background: linear-gradient(to top, #fff, rgba(0, 255, 255, 0));
  z-index: 9998; /* Below the snowflakes */
}

.floating-credit {
  position: fixed;
  bottom: 15px;
  right: 15px;
  background: rgba(0, 0, 0, 0.7); /* Slight transparency */
  color: white;
  font-size: 3.5vw;
  font-family: Arial, sans-serif;
  padding: 6px 10px;
  border-radius: 20px;
  text-decoration: none;
  transition: background 0.3s, opacity 0.3s;
  opacity: 0.4; /* Starts subtle */
  z-index: 10001;
}

.floating-credit:hover {
  background: rgba(0, 0, 0, 0.9);
  opacity: 0.6;
}