* {
  box-sizing: border-box;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-kerning: auto;
}
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
  font-size: 12pt;
  font-weight: 400;
  color: rgb(202, 182, 142);
  border-color: rgb(255, 232, 186);
  background: rgb(41, 40, 48);
  font-family: 'Lora', 'Merriweather', serif;
}
header {
  text-align: center;
}
header img {
  display: block;
  margin: 0 auto;
  width: auto;
  max-width: 200px;
}
h1, h2, h3, h4, h5, h6 {
  margin: 0 auto .5em auto;
  max-width: 1000px;
  font-weight: 500;
  font-family: 'Merriweather', 'Lora', serif;
}
h1 {
  font-size: 250%;
  text-align: center;
}
h2 {
  color: rgb(148, 122, 70);
}
p {
  font-size: 13pt;
  line-height: 1.5;
  margin: 0 auto;
  max-width: 1000px;
}
* + p {
  margin-top: 1em;
}
section {
  padding: 3em 1em;
}
section.light {
  background: rgb(53, 52, 58);
}
section.dark {
  background: rgb(41, 40, 48);
}
section.short {
  padding-top: 1em;
  padding-bottom: 1em;
}
footer {
  font-size: 10pt;
  color: #2f2f2f;
  text-align: center;
  font-family: 'Open Sans', sans-serif;
}
footer a {
  color: rgba(255, 255, 255, 0.1);
}
footer a:hover,
footer a:focus {
  color: #222;
}
footer p {
  color: #555;
  font-size: 10pt;
  margin: 1em auto;
  max-width: 750px;
}
.center {
  text-align: center;
}

/* Form Styles */
form ::-webkit-input-placeholder {
  color: rgba(255, 255, 255, .5);
}
form ::-moz-placeholder {
  color: rgba(255, 255, 255, .5);
}
form :-ms-input-placeholder {
  color: rgba(255, 255, 255, .5);
}
form :placeholder-shown {
  color: rgba(255, 255, 255, .5);
}
form {
  margin: 1em auto;
  max-width: 700px;
  padding: 1em;
}
form h2 {
  margin-top: 1em;
}
form label,
form .label,
form label span,
form .label span {
  display: block;
  cursor: pointer;
}
form label,
form .label {
  margin: 2em 0;
}
form label label,
form .label label,
form label .label,
form .label .label {
  margin: 1em 0 0 0;
}
form label span,
form .label span {
  color: rgb(148, 122, 70);
}
form label label span,
form label .label span,
form .label label span,
form .label .label span {
  display: inline;
  font-size: 14pt;
  color: rgba(255, 255, 255, .5);
}
form label:after,
form .label:after {
  content: '';
  display: block;
  clear: both;
}
form .inline {
  display: inline-block;
}
form .inline + .inline {
  margin-left: 1em;
}
form .required:after {
  content: '*';
  color: #c55;
  margin-left: .25em;
  font-size: 125%;
}
form input,
form select,
form textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 14pt;
  font-family: 'Lora', 'Merriweather', serif;
  color: rgb(202, 182, 142);
  padding: .5em;
  border-radius: 0;
  border: 1px solid rgba(255, 255, 255, .25);
  background: transparent;
  display: block;
  width: 100%;
  transition:
    color .2s ease-in-out,
    background-image .2s ease-in-out,
    border-color .2s ease-in-out
  ;
}
form input:hover,
form input:focus,
form select:hover,
form select:focus,
form textarea:hover,
form textarea:focus {
  color: rgb(202, 182, 142);
  border-color: rgb(202, 182, 142);
}
form select:hover,
form select:focus {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E %3Cpolygon fill='rgb(202, 182, 142)' opacity='1' points='0,4 16,4 8,12'/%3E %3C/svg%3E");
}
form option {
  color: initial;
}
form input[type=radio],
form input[type=checkbox] {
  cursor: pointer;
  display: inline-block;
  width: auto;
  position: relative;
  margin-right: .25em;
}
form input[type=radio] {
  -webkit-appearance: radio;
  appearance: radio;
}
form input[type=checkbox] {
  -webkit-appearance: checkbox;
  appearance: checkbox;
  display: inline;
  width: auto;
}
form input[type=radio]:checked ~ span {
  color: rgb(202, 182, 142);
  font-weight: bolder;
  text-decoration: underline;
}
form select {
  cursor: pointer;
  color: rgba(255, 255, 255, .5);
  padding-right: 1.5em;
    outline: none;
  text-indent: 0.01px;
  text-overflow: '';
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E %3Cpolygon fill='rgba(255, 255, 255, .5)' opacity='1' points='0,4 16,4 8,12'/%3E %3C/svg%3E");
  background-repeat: no-repeat;
  background-position: calc(100% - .5em) 50%;
  background-size: 12px;
}
form select::-ms-expand {
  display: none;
}
form textarea {
  min-height: 5em;
  max-height: 50vh;
}
form [type=submit] {
  cursor: pointer;
  color: white;
  font-family: 'Raleway', sans-serif;
  padding: 1em;
  font-weight: 700;
  background: #cab68e;
  border-radius: 3px;
  border-bottom: 2px solid rgba(0, 0, 0, .2)
}
form [type=submit]:hover,
form [type=submit]:focus {
  color: rgb(41, 40, 48);
}
form [type=submit]:active {
  opacity: .7
}
form * + input:not([type=radio]):not([type=checkbox]),
form * + select,
form * + textarea {
  margin-top: 1em;
}
@media (min-width: 700px) {
  form .split {
    width: calc(50% - .5em);
    float: left;
  }
  form .split + .split {
    margin-left: 1em;
  }
  form .third {
    width: calc(33.33% - (2em / 3));
    float: left;
  }
  form .third + .third:nth-of-type(3n+1),
  form .third + .third:nth-of-type(3n+2) {
    margin-left: 1em;
  }
}