body {
  font-family: 'Lato', sans-serif;
  font-weight: 'thin';
  font-weight: 300;
  margin: 0;
}

img.headshot {
  margin: 10vh auto 0;
  width: 0;
  height: 0;
  border-radius: 50%;
  display: block;
  animation: headshot-appear 0.5s forwards; 
  box-shadow: 4px 4px 40px rgba(0, 0, 0, 0.4);
}

@keyframes headshot-appear {
  to {  
    width: 250px;
    height: 250px;
  }
}

.wrapper {
  margin: 40px auto;
  max-width: 550px;
  opacity: 0;
  animation: wrapper-opacity 0.6s 0.2s linear forwards;
}

@keyframes wrapper-opacity {
  from {opacity: 0;}
  to {opacity: 1;}
}

p, li {
  line-height: 22px;
}

p.intro {
  margin-top: 5vh;
  font-size: 16px;
  font-weight: 700;
}

p.bio, li {
  font-size: 14px;
}

a {
  color: black;
  transition: color 0.2s;
}

a:visited {
  color: black;
}

a:hover {
  color: #a8a8a8;
  cursor: pointer;
}

@media only screen and (max-width: 600px) {
  .wrapper {
    margin: 40px 40px;
  }
}

.loading *,
.loading *:before,
.loading *:after {
  animation-play-state: paused !important;
}
