.fhc-form-intro { max-width: 780px; margin: 30px auto 0; }
.fhc-long-form fieldset { padding: 24px; margin: 0 0 24px; border: 1px solid #c8d5e2; border-radius: 12px; }
.fhc-long-form legend { padding: 0 10px; color: #092b44; font-size: 1.15rem; font-weight: 850; }
.field-question { display: block; margin-bottom: 10px; font-weight: 800; }
.choice-row, .choice-stack { display: flex; gap: 14px 24px; }
.choice-row { align-items: center; }
.choice-stack { flex-direction: column; }
.choice-row label, .choice-stack label { display: flex; align-items: flex-start; gap: 9px; margin: 0; font-weight: 600; cursor: pointer; }
.choice-row input, .choice-stack input { flex: 0 0 auto; width: 20px; height: 20px; margin: 2px 0 0; accent-color: #1675b7; }
.wrap-choices { flex-wrap: wrap; }
.two-column-choices { display: grid; grid-template-columns: 1fr 1fr; }
.conditional-panel { padding: 20px; margin: 18px 0 0; background: #f3f7fa; border-left: 4px solid #1675b7; border-radius: 8px; }
.conditional-panel[hidden] { display: none; }
.field textarea.short-textarea { min-height: 110px; }
.verification-row { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: 12px; align-items: end; }
.verification-row .field { margin-bottom: 12px; }
.verification-row .button { margin-bottom: 12px; white-space: nowrap; }
.verification-status { padding: 10px 12px; margin: 4px 0 0; background: #f3f7fa; border-radius: 7px; font-weight: 700; }
.verification-status.is-success { color: #135d2d; background: #e7f6ed; }
.verification-status.is-error { color: #8f211c; background: #fff0ef; }
.verification-status.is-pending { color: #725200; background: #fff8d9; }

@media (max-width: 650px) {
  .fhc-long-form fieldset { padding: 18px; }
  .choice-row { align-items: flex-start; flex-direction: column; }
  .two-column-choices { grid-template-columns: 1fr; }
  .verification-row { grid-template-columns: 1fr; }
  .verification-row .button { width: 100%; }
}
