div.message {
  margin: 1rem 0;
  padding: 0.5rem 1rem;
  border: 1px solid var(--greyMedium);
  background-color: var(--greyLight);
}
div.message p {
  margin: 0;
}
div.message.success {
  border: 1px solid var(--greenDark);
  background-color: var(--greenLight);
  color: var(--greenDark);
}
div.message.error {
  border: 1px solid var(--redDark);
  background-color: var(--redLight);
  color: var(--redDark);
}
div.message.width-auto {
  display: table;
  with: fit-content;
}

.center div.message.width-auto {
  margin: 2rem auto;
}

input, textarea {
  font-family: inherit;
  font-size: 0.85rem;
  width: calc(100% - 16px);
}

input[type=submit] {
  display: table;
  width: auto;
  margin: 0.25rem 0 1rem auto;
  padding: 0.5rem 0.75rem;
  font-family: "GT-Sectra-Medium", serif;
  font-size: 1rem;
  line-height: 1;
  font-weight: bold;
  color: #000000;
  border: solid 1px #000000;
  background-color: #ffffff;
  border-radius: 0;
  white-space: nowrap;
}
input[type=submit]:hover {
  background-color: #dddddd;
}

/*-------------------*/
/* ! Contact Form    */
/*-------------------*/
section.contact-form,
section.page-intro + section:not(page-intro).contact-form {
  padding-top: 0;
}

form#contact_form div.form-field {
  margin: 1rem 0;
}
form#contact_form div.form-field label {
  display: block;
  font-weight: bold;
  padding: 0 0 0.25rem 0.4rem;
}
form#contact_form div.form-field input {
  display: block;
  border: solid 1px #cccccc;
  padding: 0.3rem 0.4rem;
  border-radius: 0;
}
form#contact_form div.form-field textarea {
  display: block;
  border: solid 1px #cccccc;
  padding: 6px 8px;
  border-radius: 0;
}
form#contact_form input#username {
  position: absolute;
  left: -5000px;
}
form#contact_form ul.errors {
  margin: 0.25rem 0;
  color: var(--redDark);
}

div#mc_embed_signup.tsf-newsletter-form {
  max-width: 640px;
  margin: 0 auto 3rem auto;
}
div#mc_embed_signup.tsf-newsletter-form form label {
  display: block;
  font-weight: bold;
  padding: 0 0 0.25rem 0.4rem;
}
div#mc_embed_signup.tsf-newsletter-form form input:not([type=submit]) {
  display: block;
  border: solid 1px #cccccc;
  padding: 0.3rem 0.4rem;
  border-radius: 0;
  font-size: 1rem;
}
div#mc_embed_signup.tsf-newsletter-form form select {
  display: block;
  border: solid 1px #cccccc;
  padding: 0.3rem 0.8rem;
  border-radius: 0;
  font-family: "GT-Sectra-Medium", serif;
  font-weight: bold;
}
div#mc_embed_signup.tsf-newsletter-form form div.mc-field-group {
  margin-bottom: 1rem;
}
div#mc_embed_signup.tsf-newsletter-form form div.cols-2 > div.mc-field-group {
  width: calc(50% - 0.5rem);
  display: inline-block;
}
div#mc_embed_signup.tsf-newsletter-form form div.cols-2 > div.mc-field-group:first-child {
  margin-right: 1rem;
}
div#mc_embed_signup.tsf-newsletter-form form select {
  display: block;
  border: solid 1px #cccccc;
  padding: 0.3rem 0.8rem;
  border-radius: 0;
  font-family: "GT-Sectra-Medium", serif;
  font-weight: bold;
}
div#mc_embed_signup.tsf-newsletter-form form div.mc-field-group.language {
  margin-top: 0.5rem;
  float: left;
  clear: none;
}
div#mc_embed_signup.tsf-newsletter-form form div.mc-field-group.language label {
  display: inline-block;
  padding-right: 1rem;
}
div#mc_embed_signup.tsf-newsletter-form form div.mc-field-group.language label + select {
  display: inline-block;
}
