.tvs-role-contact-form__choice {
  border: 0;
  margin: 0 0 1.5rem;
  padding: 0;
}

.tvs-role-contact-form__choice legend {
  color: #7e9a47;
  font-weight: 700;
  margin-bottom: .5rem;
}

.tvs-role-contact-form__choice label {
  display: block;
  margin: .5rem 0;
}

.tvs-role-contact-form__choice input[type="radio"] {
  margin-right: .35rem;
}

.tvs-role-contact-form__form[hidden] {
  display: none !important;
}

/* Keep each question in its own row, even on wide screens. This makes the
 * form's sequence easier to scan and keeps validation feedback unambiguous. */
#top .tvs-role-contact-form .avia_ajax_form .form_element_half,
#top .tvs-role-contact-form .avia_ajax_form .form_element_fourth,
#top .tvs-role-contact-form .avia_ajax_form_2 .form_element_half,
#top .tvs-role-contact-form .avia_ajax_form_2 .form_element_fourth {
  clear: both;
  width: 100%;
  margin-left: 0;
}

/* Enfold gives each form row 11px above and below. A tighter rhythm keeps the
 * relationship between an input and the following label easy to follow. */
#top .tvs-role-contact-form .avia_ajax_form p.form_element,
#top .tvs-role-contact-form .avia_ajax_form_2 p.form_element {
  margin: 6px 0;
}

/* Contact Form 7's default validation box surrounds the whole form. Keep the
 * summary as a concise hint and make the affected field and its message clear. */
#top .tvs-role-contact-form .wpcf7 form.invalid .wpcf7-response-output,
#top .tvs-role-contact-form .wpcf7 form.unaccepted .wpcf7-response-output {
  margin: 0 0 1.25rem;
  padding: 0;
  border: 0;
  background: transparent;
  color: #b42318;
  font-weight: 700;
}

/* Success is communicated by the response itself, not by a frame around the
 * complete form. */
#top .tvs-role-contact-form .wpcf7 form.sent .wpcf7-response-output {
  margin: 1.25rem 0 0;
  padding: .85rem 1rem;
  border: 0;
  background: #46b450;
  color: #fff;
  font-weight: 700;
}

#top .tvs-role-contact-form .wpcf7-not-valid-tip {
  margin-top: .45rem;
  color: #b42318;
  font-size: .875rem;
  font-weight: 700;
  line-height: 1.4;
}

#top .tvs-role-contact-form input[aria-invalid="true"],
#top .tvs-role-contact-form select[aria-invalid="true"],
#top .tvs-role-contact-form textarea[aria-invalid="true"] {
  border-color: #b42318 !important;
  box-shadow: 0 0 0 1px #b42318;
}

#top .tvs-role-contact-form input[type="checkbox"][aria-invalid="true"] {
  outline: 2px solid #b42318;
  outline-offset: 2px;
}

#top .tvs-role-contact-form input[aria-invalid="true"]:focus,
#top .tvs-role-contact-form select[aria-invalid="true"]:focus,
#top .tvs-role-contact-form textarea[aria-invalid="true"]:focus {
  box-shadow: 0 0 0 2px #b42318;
}
