/* Inquiry form enhancements (contact + book-a-demo).
   Loaded site-wide; only affects pages that contain a form[data-inquiry]. */

/* Field layout. The original site loaded these from the Freeform plugin's own
   stylesheet (/cpresources/…), which the port didn't carry over, so Book a Demo
   lost its side-by-side fields and the space between rows. Contact kept a copy
   inline; both forms now share this one. The theme colours the required-field
   asterisk green. */
.freeform-row {
  display: flex;
  justify-content: space-between;
  margin: 0 -15px;
}
.freeform-row .freeform-column {
  flex: 1 0;
  padding: 10px 0;
  margin: 0 15px;
  box-sizing: border-box;
}
.freeform-row .freeform-column label { display: block; }
.freeform-row .freeform-column .freeform-label { font-weight: bold; }
.freeform-row .freeform-column .freeform-label.freeform-required:after {
  content: "*";
  margin-left: 5px;
}
.freeform-row .freeform-column .freeform-input {
  width: 100%;
  display: block;
  box-sizing: border-box;
}

/* Honeypot: present in the DOM for bots, invisible + unreachable for humans. */
.ff-hp {
  position: absolute !important;
  left: -9999px !important;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

/* Status / result messages shown after submitting.
   The site's root font-size is 62.5% (1rem = 10px), so size in rem accordingly:
   1.8rem sits between the form labels (1.7rem) and body copy (1.9rem). */
.form-status {
  margin: 2rem 0 0;
  padding: 1.4rem 1.8rem;
  border-radius: 6px;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
}
.form-status[hidden] { display: none; }
.form-status.is-pending { background: #eef2f7; color: #36506b; border: 1px solid #d4dde8; }
.form-status.is-success { background: #e6f6ec; color: #1d6b38; border: 1px solid #bfe6cd; }
.form-status.is-error   { background: #fdecea; color: #a32219; border: 1px solid #f5c2c0; }

/* Highlight fields that failed validation. */
[data-inquiry] .field-invalid input,
[data-inquiry] .field-invalid textarea,
[data-inquiry] .field-invalid .checkmark {
  border-color: #c0392b !important;
}

/* reCAPTCHA disclosure shown beneath the forms. */
.recaptcha-disclosure {
  margin: 1.5rem 0 0;
  font-size: 1.3rem;
  line-height: 1.4;
  color: #8b96a2;
}
/* The theme sizes every link at 1.9rem and bolds links in paragraphs; keep
   these at the size and weight of the sentence around them. */
.recaptcha-disclosure a {
  color: #8b96a2;
  font-size: inherit;
  font-weight: inherit;
  text-decoration: underline;
}
