@import url(https://fonts.googleapis.com/css?family=Lato:300italic);
html,
body {
  width: 100%;
  height: 100vh;
  overflow: hidden;
}

body {
  background: #252432;
}

.link {
  color: black;
  padding: 1rem;
  border-radius: 8px;
  background: #fff;

  position: relative;
  top: 4rem;
}

#cake {
  display: block;
  position: relative;
  margin: -10em auto 0 auto;
}

.candle {
  background: #ffffff;
  border-radius: 10px;
  position: absolute;
  top: 228px;
  left: 50%;
  margin-left: -2.4px;
  margin-top: -8.33333333px;
  width: 5px;
  height: 35px;
  transform: translateY(-300px);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-animation: in 500ms 6s ease-out forwards;
  animation: in 500ms 6s ease-out forwards;
}

.candle:after,
.candle:before {
  background: rgba(255, 0, 0, 0.4);
  content: "";
  position: absolute;
  width: 100%;
  height: 2.22222222px;
}

.candle:after {
  top: 25%;
  left: 0;
}

.candle:before {
  top: 45%;
  left: 0;
}

.fire {
  border-radius: 100%;
  position: absolute;
  top: -20px;
  left: 50%;
  margin-left: -2.6px;
  width: 6.66666667px;
  height: 18px;
}

.fire:nth-child(1) {
  -webkit-animation: fire 2s 6.5s infinite;
  animation: fire 2s 6.5s infinite;
}

.fire:nth-child(2) {
  -webkit-animation: fire 1.5s 6.5s infinite;
  animation: fire 1.5s 6.5s infinite;
}

.fire:nth-child(3) {
  -webkit-animation: fire 1s 6.5s infinite;
  animation: fire 1s 6.5s infinite;
}

.fire:nth-child(4) {
  -webkit-animation: fire 0.5s 6.5s infinite;
  animation: fire 0.5s 6.5s infinite;
}

.fire:nth-child(5) {
  -webkit-animation: fire 0.2s 6.5s infinite;
  animation: fire 0.2s 6.5s infinite;
}

@-webkit-keyframes fire {
  0%,
  100% {
    background: rgba(254, 248, 97, 0.5);
    box-shadow: 0 0 40px 10px rgba(248, 233, 209, 0.2);
    transform: translateY(0) scale(1);
  }
  50% {
    background: rgba(255, 50, 0, 0.1);
    box-shadow: 0 0 40px 20px rgba(248, 233, 209, 0.2);
    transform: translateY(-20px) scale(0);
  }
}
@keyframes fire {
  0%,
  100% {
    background: rgba(254, 248, 97, 0.5);
    box-shadow: 0 0 40px 10px rgba(248, 233, 209, 0.2);
    transform: translateY(0) scale(1);
  }
  50% {
    background: rgba(255, 50, 0, 0.1);
    box-shadow: 0 0 40px 20px rgba(248, 233, 209, 0.2);
    transform: translateY(-20px) scale(0);
  }
}
@-webkit-keyframes in {
  to {
    transform: translateY(0);
  }
}
@keyframes in {
  to {
    transform: translateY(0);
  }
}
.text {
  color: #d1d1d1;
  font-family: "Lato", sans-serif;
  font-weight: 300;
  font-style: italic;
  text-align: center;
}
.text h1 {
  font-size: 1.4em;
}
/* From Uiverse.io by Ali-Tahmazi99 */ 
/* From uiverse.io by @Ali-Tahmazi99 */
button {
 display: inline-block;
 width: 150px;
 height: 50px;
 border-radius: 10px;
 border: 1px solid #03045e;
 position: relative;
 overflow: hidden;
 transition: all 0.5s ease-in;
 z-index: 1;

 top: 3rem;

 cursor: pointer;
}

button::before,
button::after {
 content: '';
 position: absolute;
 top: 0;
 width: 0;
 height: 100%;
 transform: skew(15deg);
 transition: all 0.5s;
 overflow: hidden;
 z-index: -1;
}

button::before {
 left: -10px;
 background: #240046;
}

button::after {
 right: -10px;
 background: #5a189a;
}

button:hover::before,
button:hover::after {
 width: 58%;
}

button:hover span {
 color: #e0aaff;
 transition: 0.3s;
}

button span {
 color: #03045e;
 font-size: 18px;
 transition: all 0.3s ease-in;
}

/* Fade out animation */
.fade-out {
  opacity: 0;
  transition: opacity 2s ease-out;
}

body.fade-out {
  opacity: 0;
}