/* Keep the consent checkbox and its label on one line. */
.form-item-privacy-notice-consent {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  width: 100% !important;
  max-width: none !important;
  flex-basis: 100% !important;
  grid-column: 1 / -1 !important;
  float: none !important;
  clear: both !important;
  margin: 24px 0 !important;
}

.form-item-privacy-notice-consent input[type="checkbox"] {
  position: static !important;
  appearance: auto !important;
  width: 16px !important;
  height: 16px !important;
  flex: 0 0 16px !important;
  margin: 0 !important;
  transform: none !important;
}

.form-item-privacy-notice-consent label {
  display: inline-block !important;
  position: static !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
}

.form-item-privacy-notice-consent label a {
  color: #0066cc !important;
  text-decoration: underline !important;
}

.form-item-privacy-notice-consent label.form-required::before {
  content: none !important;
}

.form-item-privacy-notice-consent label.form-required::after {
  content: " *" !important;
  display: inline !important;
  position: static !important;
  color: #d92d20 !important;
  background: none !important;
  font-size: 14px !important;
  margin-inline-start: 4px !important;
}

/* Place the submit actions on a separate row. */
form:has(.form-item-privacy-notice-consent) .webform-actions {
  width: 100% !important;
  flex-basis: 100% !important;
  grid-column: 1 / -1 !important;
  clear: both !important;
}

.form-item-privacy-notice-consent .privacy-consent-error {
  display: block !important;
  flex: 0 0 100% !important;
  width: 100% !important;
  margin-top: 6px;
  color: #b42318;
  font-size: 14px;
  line-height: 1.6;
}

.form-item-privacy-notice-consent .privacy-consent-error::before {
  content: "ⓘ";
  margin-inline-end: 6px;
}

.form-item-privacy-notice-consent input[aria-invalid="true"] {
  outline: 1px solid #b42318;
  outline-offset: 2px;
}

/* English career form: align upload rows to the left. */
html[lang^="en"] form.dga-career-form
[id^="ajax-wrapper"]:has(.webform-type-webform-document-file) {
  direction: ltr !important;
  text-align: left !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  justify-self: start !important;
  align-self: flex-start !important;
  grid-column: 1 / -1 !important;
}

/* Keep each upload field aligned within its wrapper. */
html[lang^="en"] form.dga-career-form
[id^="ajax-wrapper"] > .webform-type-webform-document-file {
  float: none !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  text-align: left !important;
}

html[lang^="en"] form.dga-career-form
.webform-type-webform-document-file label,
html[lang^="en"] form.dga-career-form
.webform-type-webform-document-file .dga-file-help {
  text-align: left !important;
}