/* Application-only field layout; keep each label next to its own control. */
.jobs-page .job-form { width: 100%; max-width: none; padding: clamp(22px, 3vw, 40px); }
.jobs-page .form-status { max-width: none; }
.job-form .field-grid { align-items: start; gap: 24px; }
.job-form .field { display: flex; flex-direction: column; gap: 10px; margin: 0; }
.job-form .form-section > .field { margin-top: 20px; }
.job-form .field > span { font-size: 16px; font-weight: 600; line-height: 1.4; }
.job-form .field input, .job-form .field select, .job-form .field textarea {
  box-sizing: border-box; min-height: 58px; padding: 15px 16px;
  font: 400 17px/1.4 Arial, Helvetica, sans-serif; letter-spacing: normal;
}
.job-form .field textarea { min-height: 136px; }
.job-form .form-section { margin-bottom: 28px; padding-bottom: 28px; }
.job-form .form-section legend { font-size: 25px; margin-bottom: 24px; }
.job-form .demographic-note { margin-top: 22px; }
.job-city-state { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 16px; align-items: start; }
@media screen and (max-width: 700px) {
  .job-form .field-grid { grid-template-columns: minmax(0, 1fr); gap: 20px; }
  .job-city-state { grid-template-columns: minmax(0, 1fr); gap: 20px; }
}
