body {
  margin: 0;
  padding: 0;
  background-color: #23222A;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}

a {
  color: #EDE8ED;
  font-family: "Courier New", "Courier New";
  font-size: 16px;
}

p {
  color: #EDE8ED;
  font-family: "Courier New", "Courier New";
  font-size: 16px;

  a {
    color: #EDE8ED;
  }
}

#waves {
  width: 120vw;
  height: 25vh;
  transform: scale(1,-1);
  position: absolute;
  left: -10vw;
  z-index: 10;
  pointer-events: none;

  svg {
    display: block;
    height: 100%;
    width: 100%;
  }
}

#content {
  width: 100vw;
  height: 100vh;
  overflow: hidden;
  position: fixed;
  text-align: center;

  #header {
    width: 100vw;
    height: 20vh;
    margin-top: 12vh;

    #title {
      white-space: pre;
      transform: translateY(30vh);

      @media only screen and (min-width: 800px)
      {
        font-size: 72px;
      }
      @media only screen and (max-width: 799px)
      {
        font-size: 48px;
      }
      @media only screen and (max-width: 450px)
      {
        font-size: 11vw;
      }

      font-weight: 900;
      transition: all 0.5s ease;
    }

    #title.title-fly {
      animation: title-fly-animation 2s ease forwards;
      transform: translateY(0);
    }
     
    #click-to-replay {
      opacity: 0;
      font-size: 12px;
      transition: all 0.5s ease;
    }

    #click-to-replay.fade-in {
      animation: fade-in-animation 5s ease forwards;
    }

    a {
      font-size: 12px;
    }
  }

  #centre {
    display: flex;
    opacity: 0;

    @media only screen and (min-width: 550px)
    {
      flex-direction: row;
    }
    @media only screen and (max-width: 549px)
    {
      flex-direction: column-reverse;
    }

    #left {
      min-width: 50vw;
      align-content: center;

      div {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        width: fit-content;
        margin: 0 auto;

        a {
          text-decoration: none;

          #svg-linkedin {
            width: 24px;
            transform: translateY(8px);
          }

          #p-linkedin {
            display: inline;
          }

          #svg-github {
            width: 24px;
            transform: translateY(8px);
          }

          #p-github {
            display: inline;
          }
        }
      }
    }

    #right {
      min-width: 50vw;

      #photo {
        img {
          border-radius: 20px;
          box-shadow: 1px 1px 2px 2px rgba(0, 0, 0, 0.5);

          @media only screen and (min-width: 550px)
          {
            max-width: 40vw;
            max-height: 55vh;
          }
          @media only screen and (max-width: 549px)
          {
            max-height: 40vh;
          }
        }
      }
    }
  }

  #centre.fade-in {
    animation: fade-in-animation 5s ease forwards;
  }

  #footer {
    width: 100vw;
    min-height: 5vh;
    position: absolute;
    bottom: 0;

    p {
      margin-right: 5vw;
      margin-left: 5vw;
      font-size: 12px;

      a {
        font-size: 12px;
      }
    }
  }
}

@keyframes fade-in-animation {
  0% { opacity: 0; }
  100% { opacity: 1; }
}

@keyframes title-fly-animation {
  0% { transform: translateY(30vh); }
  100% { height: translateY(0vh); }
}
