
*, *::before, *::after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

body, table, select, option, textarea, input { font-family: "Titillium Web" }

html {
  display: -webkit-flex;
  display: flex;
  height: 100%;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  text-align: center
}

body {
  line-height: 1.5;
  display: inline-block;
  text-align: left
}

p { margin: 0 0 2em }

.u-align-center {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%)
}

.Form {
  padding: 2em;
  background-color: rgba(0,0,0,0.02);
  box-shadow: 0 0 5px rgba(0,0,0,0.1)
}
@media only screen and (min-width:50em) {

.Form { padding: 5em }
}

.Form-section {
  margin-right: -1em;
  margin-bottom: 1.5em
}

.Form-section+.Form-section {
  padding-top: 1em;
  border-top: 1px dotted rgba(0,0,0,0.1)
}

.Form-title {
  display: block;
  font-weight: bold;
  margin-bottom: .5em
}

.Form-label, .Form-label--tick { display: block }

.Form-label--tick {
  position: relative;
  display: inline-block;
  margin-left: 1em
}

.Form-label-radio, .Form-label-checkbox {
  position: absolute;
  z-index: -1;
  width: 1px;
  height: 1px;
  opacity: 0;
  overflow: hidden
}

.Form-label-radio+.Form-label-text, .Form-label-checkbox+.Form-label-text {
  cursor: pointer;
  margin-right: 1em
}

.Form-label-radio+.Form-label-text::before, .Form-label-checkbox+.Form-label-text::before {
  font-size: .875em;
  display: inline-block;
  width: 1.75em;
  height: 1.75em;
  line-height: 1.5;
  border: 1px solid #ccc;
  margin-right: .25em;
  content: "\00a0";
  color: white;
  background-clip: padding-box;
  background-color: white;
  text-align: center
}

.Form-label-radio+.Form-label-text:hover::before, .Form-label-checkbox+.Form-label-text:hover::before {
  border-color: black !important;
  box-shadow: 0 0 0 0 black !important
}

.Form-label-radio:checked+.Form-label-text::before, .Form-label-checkbox:checked+.Form-label-text::before {
  background-color: black;
  border-color: black;
  box-shadow: 0 0 0 0 black;
  font-family: FontAwesome;
  content: "\f00c"
}

.Form-label-radio:focus+.Form-label-text::before, .Form-label-checkbox:focus+.Form-label-text::before, .Form-label-radio:active+.Form-label-text::before, .Form-label-checkbox:active+.Form-label-text::before {
  border-color: #3bb8ff;
  box-shadow: 0 0 2px 0 rgba(0,135,212,0.2)
}

.Form-label-radio+.Form-label-text::before { border-radius: 100% }
