:root {
  --content-load-time: 500ms;
}

html {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  height: 100%;
  width: 100vw;
}

body {
  display: flex;
  flex-direction: column;
  margin: 0;
  background: linear-gradient(-45deg, #ee7752, #e73c7e, #23a6d5, #23d5ab);
  background-size: 400% 400%;
  animation: gradient 15s ease infinite;
  color: white;
  font-family: roboto, sans-serif;
}

.header {
  font-size: 100px;
  font-weight: 300;
  text-align: center;
  padding-top: 50px;
  padding-bottom: 25px;
  margin: 0 0 25px;
  border-bottom: 2px solid white;
  animation: content-load var(--content-load-time) ease-in-out var(--header-load-time) backwards;
}

.about-body {
  text-align: center;
  line-height: 2em;
  font-weight: 300;
  font-size: 20px;
  animation: content-load var(--content-load-time) ease-in-out calc(var(--header-load-time) + var(--content-load-time)) backwards;
}

.sign {
  line-height: 1.5em;
  font-weight: 300;
  font-size: 15px;
  text-align: right;
  margin-right: 15%;
  animation: content-load var(--content-load-time) ease-in-out calc(var(--header-load-time) + var(--content-load-time)) backwards;
}

@keyframes content-load {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
  }
}

@keyframes gradient {
  0% {
    background-position: 0 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0 50%;
  }
}

@media screen and (max-width: 1110px) {
  .sign {
    margin-right: 10px;
  }
}
