/* Recruitment follows the existing vacancy rows and contact-form styles. */
.recruitment-section { padding-top: 2rem; padding-bottom: 5rem; }
.recruitment-schedule { background: var(--blue-mw-dark); color: white; border-radius: 10px; padding: .2em 1em; font-weight: 600; }
.recruitment-location { padding: .2em 1em; font-weight: 600; }
.recruitment-job-title { font-weight: 900; }
.recruitment-job-summary { font-size: 1.1em; line-height: 2em; }
.recruitment-detail-heading { padding: 0 2rem 1.5rem; }
.recruitment-detail-heading h2 { font-weight: 900; }
.recruitment-metadata { color: var(--blue-mw-dark); font-weight: 600; }

.recruitment-application { margin: 2rem auto 0; max-width: 900px; }
.recruitment-form-intro { margin-bottom: 2rem; }
.recruitment-cv { padding: 1.5rem; background: white; border: 1px dashed var(--blue-mw-primary); border-radius: 16px; }
#recruitment-form .recruitment-cv label { padding-left: 0; }
.recruitment-cv p { margin-bottom: .8rem; font-size: .95em; }
.recruitment-cv input { max-width: 100%; }
#recruitment-form .recruitment-consent { display: flex; gap: .8rem; padding: 0; font-weight: 400; font-size: .9em; line-height: 1.6; margin: 1rem 0 2rem; }
.recruitment-consent input { flex-shrink: 0; margin-top: .3rem; width: 18px; height: 18px; }
@media (max-width: 767px) {
  .recruitment-job-metadata { flex-wrap: wrap; }
  .recruitment-job-summary { margin-top: 1rem; }
  .recruitment-detail-heading, .jobs.recruitment-description { padding-left: 0; padding-right: 0; }
}

#recruitment-detail { padding: 0 !important; }

/* A disabled button indicates a lock, not an operation still running. */
#recruitment-form button:disabled { cursor: default; }
#recruitment-form[aria-busy="true"] button:disabled { cursor: wait; }
.recruitment-confirmation { text-align: center; padding: 1rem 0; }
.recruitment-confirmation-icon { display: inline-flex; align-items: center; justify-content: center; width: 64px; height: 64px; border-radius: 50%; background: #e2f0e5; color: #36834a; font-size: 2.5rem; margin-bottom: 1.5rem; }
.recruitment-confirmation h3 { font-weight: 900; color: var(--blue-mw-dark); }
.recruitment-confirmation p { margin: 1rem auto 0; max-width: 600px; line-height: 1.8; }
.recruitment-confirmation:focus { outline: none; }
