.contact-form {
  max-width: 100%;
  overflow: hidden;
}

.contact-form fieldset {
  position: static;
}

.contact-form label {
  position: static;
  display: block;
  margin: 0 0 .4rem;
  color: #343a40;
  font-weight: 700;
  transform: none;
}

/*
 * modern-business.css uses input:not(#privacidad), whose :not() argument gives
 * the selector ID specificity.  Use this form's existing ID so the permanent
 * border wins for inputs as well as for the textarea, without affecting any
 * other form in the site.
 */
#contact-form input.form-control,
#contact-form textarea.form-control {
  box-sizing: border-box;
  width: 100%;
  height: auto;
  min-height: 48px;
  padding: .75rem;
  background-color: #fff;
  border: 1px solid #6c757d;
  border-radius: .25rem;
}

#contact-form input.form-control:hover,
#contact-form textarea.form-control:hover {
  border-color: #495057;
}

#contact-form input.form-control:focus,
#contact-form textarea.form-control:focus {
  border-color: #075ea8;
  outline: 3px solid rgba(7, 94, 168, .28);
  outline-offset: 1px;
  box-shadow: 0 0 0 .2rem rgba(7, 94, 168, .25);
}

.contact-form textarea.form-control {
  min-height: 150px;
  resize: vertical;
}

.contact-form .contact-message,
.contact-form .contact-privacy {
  margin: 0 0 1.5rem;
}

.contact-form .form-check-label {
  display: inline;
  font-weight: 400;
}

.contact-form #captcha-image {
  width: 280px;
  max-width: 100%;
  height: auto;
  margin: 0 1rem .75rem 0;
}

.contact-form button {
  margin: 0 0 .75rem;
}

@media (max-width: 575px) {
  .contact-form #captcha-image {
    width: min(280px, 100%);
    margin-right: 0;
  }

  .contact-form #reload-captcha {
    width: 100%;
  }
}
