*,
*::before,
*::after {
  box-sizing: border-box; }

body {
  font-family: 'Roboto', sans-serif;
  line-height: 1.5;
  font-weight: 400;
  margin: 0;
  display: flex;
  flex-direction: column;
  min-height: 100vh; }

a,
a:link {
  color: #6bb844;
  text-decoration: none; }
  a:hover,
  a:link:hover {
    text-decoration: underline; }

a:visited {
  color: #6bb844; }

.wrapper {
  margin: 0 auto;
  padding-left: 2rem;
  padding-right: 2rem; }
  @media (min-width: 48rem) {
    .wrapper {
      max-width: 44rem; } }
  @media (min-width: 64rem) {
    .wrapper {
      max-width: 60rem; } }
  @media (min-width: 80rem) {
    .wrapper {
      max-width: 76rem; } }
header,
main,
footer {
  padding: 1rem 0; }
  @media (min-width: 48rem) {
    header,
    main,
    footer {
      padding: 2rem 0; } }
header {
  text-align: center; }

footer {
  background-color: #2d2d2d;
  color: #fff;
  text-align: left; }
  footer p {
    color: #fff; }
  footer .fs-logo svg {
    width: 170px; }

@media (min-width: 48rem) {
  header {
    margin-top: 4rem; } }

header p {
  margin: 0; }

header .logo-wrapper {
  margin-top: 2rem;
  margin-bottom: 2rem; }
  @media (min-width: 48rem) {
    header .logo-wrapper {
      margin: 0; } }
header .logo,
header .logo:link,
header .logo:visited {
  font-size: 1.5rem;
  font-weight: 900;
  text-decoration: none;
  color: #434343; }
  @media (min-width: 48rem) {
    header .logo,
    header .logo:link,
    header .logo:visited {
      font-size: 3.5rem; } }
  header .logo svg,
  header .logo:link svg,
  header .logo:visited svg {
    fill: #2d2d2d; }

@media (min-width: 48rem) {
  header .request {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 2rem 0; } }

header .request form {
  position: relative;
  margin-bottom: 2rem; }
  @media (min-width: 48rem) {
    header .request form {
      padding: 0;
      margin-bottom: 0; } }
  header .request form input {
    background: transparent;
    padding-right: 6rem;
    width: 100%; }
  header .request form button {
    position: absolute;
    padding-top: .625rem;
    padding-bottom: .625rem;
    font-size: .875rem;
    top: 0;
    right: 0; }

@media (min-width: 48rem) {
  header .request > .button {
    margin-left: 1rem; } }

main svg {
  display: block;
  max-width: 100%;
  height: 12rem;
  margin: 3rem auto; }
  main svg text {
    font-size: 1.2rem; }
    @media (max-width: 48rem) {
      main svg text {
        font-size: 1.375rem;
        font-weight: 400; } }
main h2 {
  font-size: 1.5rem;
  text-transform: uppercase;
  margin: 5rem 0 .5rem; }
  @media (min-width: 48rem) {
    main h2 {
      font-size: 2.5rem; } }
main p {
  font-size: 1rem; }
  @media (min-width: 48rem) {
    main p {
      font-size: 1.375rem; } }
  main p small {
    font-size: .75rem; }
    @media (min-width: 48rem) {
      main p small {
        font-size: .875rem; } }
main li {
  font-size: 1rem; }
  @media (min-width: 48rem) {
    main li {
      font-size: 1.375rem; } }
.faq dt,
.faq dd,
.faq p {
  color: #434343;
  font-size: 1rem; }
  @media (min-width: 48rem) {
    .faq dt,
    .faq dd,
    .faq p {
      font-size: 1.375rem; } }
.faq dt {
  color: #434343;
  text-transform: unset;
  margin-bottom: 0.5rem; }

.faq dd {
  margin-bottom: 2rem; }

label {
  display: block;
  font-size: .75rem;
  text-transform: uppercase;
  font-weight: bold; }

select {
  font-family: inherit;
  font-size: 1rem;
  width: 100%;
  border-radius: 0;
  margin-bottom: .5rem;
  background-color: rgba(200, 214, 229, 0.2);
  border: 0;
  border-bottom: 1px solid #434343;
  padding: .625rem; }
  select:focus {
    background-color: #fff;
    outline: none;
    border-bottom-color: #6bb844;
    box-shadow: #6bb844 0 1px 0; }

textarea,
input[type="text"],
input[type="email"],
input[type="url"],
input[type="search"] {
  background-color: rgba(200, 214, 229, 0.2);
  font-family: inherit;
  font-size: 1rem;
  width: 100%;
  padding: .625rem 0;
  border: 0;
  border-bottom: 1px solid #434343;
  margin: 0; }
  textarea:focus,
  input[type="text"]:focus,
  input[type="email"]:focus,
  input[type="url"]:focus,
  input[type="search"]:focus {
    background-color: #fff;
    border-bottom-color: #6bb844;
    box-shadow: #6bb844 0 1px 0;
    outline: none; }

textarea {
  resize: none; }

.form-field {
  padding: 2rem 0; }

.form-field-checkbox input[type="checkbox"] {
  vertical-align: middle; }

.form-field-checkbox label {
  font-size: 1rem;
  display: unset;
  text-transform: unset;
  font-weight: unset; }

.form-submit {
  padding: 1rem 0;
  font-size: .875rem; }
  .form-submit .link-dimmed,
  .form-submit .link-dimmed:link,
  .form-submit .link-dimmed:visited {
    color: #434343; }

button,
.button,
.button:visited,
.button:link {
  background-color: #6bb844;
  border-radius: .125rem;
  border: 0;
  box-shadow: rgba(67, 67, 67, 0.15) 0 0.125rem 0;
  color: #fff;
  font-family: inherit;
  font-size: 1rem;
  line-height: 1;
  padding: .75rem 2rem;
  text-decoration: none;
  white-space: nowrap; }
  button:hover,
  .button:hover,
  .button:visited:hover,
  .button:link:hover {
    opacity: .75; }
  button:active,
  .button:active,
  .button:visited:active,
  .button:link:active {
    box-shadow: none;
    outline: none;
    opacity: 1; }
  button.button-tiny,
  .button.button-tiny,
  .button:visited.button-tiny,
  .button:link.button-tiny {
    font-size: .75rem;
    padding: .25rem 1rem; }

@media (min-width: 48rem) {
  .steps {
    display: flex;
    align-items: flex-start;
    justify-content: space-between; } }

.steps li {
  counter-increment: step;
  flex: 1;
  text-align: center;
  padding: .5rem; }
  @media (min-width: 48rem) {
    .steps li {
      padding: 1rem; } }
  .steps li::before {
    content: counter(step);
    font-size: 1.5rem;
    color: #fff;
    width: 2em;
    line-height: 2em;
    margin: 0 auto;
    height: 2em;
    border-radius: 100%;
    display: block;
    background-color: #6bb844; }
    @media (min-width: 48rem) {
      .steps li::before {
        font-size: 2.5rem; } }
  .steps li p {
    font-size: 1.25rem; }
    @media (min-width: 48rem) {
      .steps li p {
        font-size: 1.5rem; } }
.info,
.warning {
  font-size: 1rem;
  padding: 1rem;
  border-radius: .25rem; }

.info {
  background-color: #6bb844;
  color: #fff;
  margin-bottom: 1rem; }
  .info h2,
  .info p {
    margin: 0;
    padding: 0; }
  .info h2 {
    font-size: 1.25rem;
    font-weight: 900;
    margin-bottom: .5rem; }
  .info p {
    font-size: 1rem; }

.warning {
  background-color: #feca57;
  color: #434343; }

dl,
dt,
dd {
  list-style: none;
  padding: 0;
  margin: 0; }

dt {
  font-weight: 900;
  text-transform: uppercase;
  font-size: .625rem;
  letter-spacing: .4px;
  color: rgba(67, 67, 67, 0.5); }

.request-details dd {
  margin-bottom: 1rem; }

.request-details h2 {
  margin: 0;
  padding: 0;
  text-align: left; }

.request-details .moderation-message {
  white-space: pre-line; }

.message-details {
  border: 1px solid #c8d6e5;
  padding: 1rem;
  margin-bottom: 2rem; }
  .message-details .message-meta {
    border-bottom: 1px solid #c8d6e5; }
  .message-details .message-body {
    white-space: pre-line; }

.message-publicbody {
  background-color: rgba(254, 202, 87, 0.2); }

.request-status {
  padding: .5rem 1rem;
  font-size: .625rem;
  text-transform: uppercase;
  font-weight: 900;
  border-radius: .25rem;
  display: inline-block;
  background-color: #c8d6e5;
  color: #434343; }
  .request-status-rejected {
    background-color: #ff6b6b;
    color: #fff; }

/*# sourceMappingURL=main.css.7c84095cb617.map */