body {
  background-color: #ffffff;
  color: #2a2a2a;
  display: flex;
  flex-direction: column;
  font-family: 'Khula', sans-serif;
  font-size: 14px;
  padding: 0;
  margin-bottom: 5vw;
}

header {
  font-family: 'Khula';
  margin: 8vw 0 8vw 0;
  text-align: center;
}

header h1 {
  font-size: 6.2vw;
  font-weight: 800;
  letter-spacing: -0.3vw;
}

header h1 span.name {
  display: inline-block;
  font-size: 10vw;
  letter-spacing: -0.25vw;
  margin-bottom: -1vw;
  text-transform: uppercase;
}

header h1 span.strapline {
  display: block;
}

main {
  background-color: #ffff7a;
  border: 1px solid #ffff0a;
  border-radius: 10px 10px 10px 10px;
  box-shadow: 0px 0px 100px -30px rgba(0,0,0,0.75);
  margin: 0 auto 3vw auto;
  padding: 4vw 4vw;
  width: 60vw;
}

main p {
  font-size: 1.7em;
  font-weight: 300;
  line-height: 1.8em;
  margin-top: 3vw;
}

main p:first-child {
  margin-top: 0;
}

main p a {
  background: #6bff9a;
  color: inherit;
  display: inline-block;
  line-height: 1em;
  padding: 0.4em 0.2em 0.2em 0.2em;
  text-decoration: none;
}

footer {
  font-size: 1.5vw;
  font-weight: 300;
  margin: 4vw auto 0 auto;
  opacity: 0.2;
  text-align: center;
}

footer h2 {
  font-weight: 600;
}

footer a {
  color: inherit;
  text-decoration: none;
}

footer a code {
  font-family: "SF Mono", monospace;
  font-weight: 200;
}

@media handheld, only screen and (max-width: 768px) {
  header h1 { font-size: 5.5vw;}
  header h1 span.name { font-size: 16.5vw; line-height: 14vw; margin-bottom: 5px; }
  main { padding: 8vw 0; width: 100%; }
  main p { font-size: 1.4em; padding: 0 8vw; }
  footer { font-size: 1.0em; margin: 5vw auto 4vw; }
}
