/* McCallen Construction — clean form styling (replaces Gravity Forms) */
.hiio-form-wrap { max-width: 640px; margin: 0 auto; }
.hiio-form { display: flex; flex-direction: column; gap: 14px; }
.hiio-row { display: flex; flex-direction: column; gap: 6px; }
.hiio-label {
  font-family: 'Roboto', 'Montserrat', sans-serif;
  font-size: 14px;
  font-weight: 600;
  color: #2C343A;
  letter-spacing: .02em;
}
.hiio-req { color: #c0392b; margin-left: 4px; }
.hiio-input {
  width: 100%;
  padding: 12px 14px;
  font-size: 15px;
  font-family: 'Roboto', 'Montserrat', sans-serif;
  border: 1px solid #cfd4d8;
  border-radius: 3px;
  background: #fff;
  color: #2C343A;
  box-sizing: border-box;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.hiio-input:focus {
  outline: none;
  border-color: #333E48;
  box-shadow: 0 0 0 3px rgba(51, 62, 72, .15);
}
.hiio-textarea { resize: vertical; min-height: 120px; font-family: inherit; }
.hiio-submit {
  background: #2C343A;
  color: #fff;
  border: none;
  padding: 14px 32px;
  font-family: 'Roboto Slab', 'Roboto', serif;
  font-size: 15px;
  font-weight: 600;
  letter-spacing: .06em;
  text-transform: uppercase;
  border-radius: 3px;
  cursor: pointer;
  transition: background .15s ease, transform .05s ease;
  align-self: flex-start;
}
.hiio-submit:hover { background: #333E48; }
.hiio-submit:active { transform: translateY(1px); }
.hiio-submit:disabled { opacity: .6; cursor: not-allowed; }

.form-message {
  padding: 12px 16px;
  margin-top: 12px;
  border-radius: 3px;
  font-weight: 500;
  font-family: 'Roboto', 'Montserrat', sans-serif;
}
.form-message--success { background: #d4edda; color: #155724; border: 1px solid #c3e6cb; }
.form-message--error   { background: #f8d7da; color: #721c24; border: 1px solid #f5c6cb; }
