:root {
  --background-color: #ddb5dd;
  --text-color: #a081e2;
  --text-ligher-color: #b19ae2;
}

@font-face {
  font-family: Bubble;
  src: url("../font.otf") format("opentype");
}

*  {
  cursor: url(../img/cursor.png), auto;
}

body {
  color: var(--text-color);
  background-color: var(--background-color);
  font-family: Bubble;

  text-align: center;

  overflow: hidden;
  -webkit-overflow-scrolling: hidden;

  /* Thanks to: https://stackoverflow.com/a/4407335 */
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;                     
}

ul {
  font-size: 48px;

  display: flex;
  justify-content: space-evenly;

  margin: 0;
  padding: 0;
}

ul > li {
  display: block;
  flex: 0 1 auto;
}

a {
  color: var(--text-color);
  text-decoration: none;
}

a:hover {
  color: var(--text-ligher-color);
  text-decoration: underline;

  cursor: url(../img/pointer.png), pointer;
}

.stroke {
  text-shadow: -1px -1px 0 #000, 1px -1px 0 #000, -1px 1px 0 #000, 1px 1px 0 #000;
}

.logo {
  z-index: -1;
  margin-bottom: -120px;
}

.heading {
  font-size: 72px;
  color: var(--text-color);

  margin-bottom: -22px;
}

.heading:hover {
  color: var(--text-ligher-color);
}

.description {
  font-size: 48px;
  color: var(--text-color);

  text-decoration: none;
}

.description:hover {
  color: var(--text-ligher-color);
}

.center {
  text-align: center;

  position: absolute;

  left: 50%;
  top: 50%;

  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.catgirl {
  position: absolute;

  bottom: -20px;
  right: -20px;

  width: 30vh;
}

.snowflake {
  z-index: -9999 !important;
}

.list {
  margin-bottom: -15px;
}

.footer {
  font-size: 28px;
  position: fixed;

  left: 0;
  bottom: 20px;

  width: 100%;
}

@media only screen and (max-width: 480px) {
  .logo {
    margin-bottom: -75px;
  
    width: 95%;
  }

  .heading {
    font-size: 46px;
    margin-bottom: -5px;
    white-space: nowrap;
  }

  .description {
    font-size: 32px;
  }

  .catgirl {
    width: 200px;
  }

  .footer {
    bottom: 40px;
  }
}

/* Thanks to: https://github.com/pajasevi/CSSnowflakes */
@-webkit-keyframes snowflakes-fall{0%{top:-10%}100%{top:100%}}@-webkit-keyframes snowflakes-shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}50%{-webkit-transform:translateX(80px);transform:translateX(80px)}}@keyframes snowflakes-fall{0%{top:-10%}100%{top:100%}}@keyframes snowflakes-shake{0%,100%{transform:translateX(0)}50%{transform:translateX(80px)}}.snowflake{position:fixed;top:-10%;z-index:9999;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default;-webkit-animation-name:snowflakes-fall,snowflakes-shake;-webkit-animation-duration:10s,3s;-webkit-animation-timing-function:linear,ease-in-out;-webkit-animation-iteration-count:infinite,infinite;-webkit-animation-play-state:running,running;animation-name:snowflakes-fall,snowflakes-shake;animation-duration:10s,3s;animation-timing-function:linear,ease-in-out;animation-iteration-count:infinite,infinite;animation-play-state:running,running}.snowflake:nth-of-type(0){left:1%;-webkit-animation-delay:0s,0s;animation-delay:0s,0s}.snowflake:nth-of-type(1){left:10%;-webkit-animation-delay:1s,1s;animation-delay:1s,1s}.snowflake:nth-of-type(2){left:20%;-webkit-animation-delay:6s,.5s;animation-delay:6s,.5s}.snowflake:nth-of-type(3){left:30%;-webkit-animation-delay:4s,2s;animation-delay:4s,2s}.snowflake:nth-of-type(4){left:40%;-webkit-animation-delay:2s,2s;animation-delay:2s,2s}.snowflake:nth-of-type(5){left:50%;-webkit-animation-delay:8s,3s;animation-delay:8s,3s}.snowflake:nth-of-type(6){left:60%;-webkit-animation-delay:6s,2s;animation-delay:6s,2s}.snowflake:nth-of-type(7){left:70%;-webkit-animation-delay:2.5s,1s;animation-delay:2.5s,1s}.snowflake:nth-of-type(8){left:80%;-webkit-animation-delay:1s,0s;animation-delay:1s,0s}.snowflake:nth-of-type(9){left:90%;-webkit-animation-delay:3s,1.5s;animation-delay:3s,1.5s}.snowflake:nth-of-type(10){left:25%;-webkit-animation-delay:2s,0s;animation-delay:2s,0s}.snowflake:nth-of-type(11){left:65%;-webkit-animation-delay:4s,2.5s;animation-delay:4s,2.5s}