/* Career application: shared navy, yellow and card treatment of site forms. */
.career-application { min-width: 0; }
.career-application__intro { width: 100%; max-width: none; margin-bottom: 2rem; color: #555b69; line-height: 1.75; }
.career-application__intro strong { color: #29305f; font-size: 1.15rem; }
.career-application .webform-submission-sign-up-application-form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.35rem 1.5rem;
  padding: clamp(1.25rem, 3vw, 2.75rem);
  border: 1px solid #dfe2eb;
  border-top: 5px solid var(--gprs-yellow);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 16px 42px rgba(31, 39, 80, .1);
}
.career-application .form-item { min-width: 0; margin: 0; }
.career-application .form-item-application-heading,
.career-application .form-item-major-focus-of-study,
.career-application fieldset,
.career-application .form-actions { grid-column: 1 / -1; }
.career-application .form-item-application-heading { padding-bottom: 1.25rem; border-bottom: 1px solid #e1e4ec; }
.career-application .form-item-application-heading h2 { margin: 0; color: #252c5d; font-size: clamp(1.55rem, 3vw, 2.1rem); }
.career-application label,
.career-application legend { color: #29305f; font-weight: 700; font-size: 1rem; }
.career-application label { display: block; margin-bottom: .5rem; }
.career-application :where(input[type="text"], input[type="email"]) {
  box-sizing: border-box; width: 100%; max-width: 100%; min-height: 50px;
  padding: .75rem .85rem; border: 1px solid #aeb4c5; border-radius: 7px;
  background: #fff; color: #222735; font: inherit;
}
.career-application :where(input[type="text"], input[type="email"]):hover { border-color: #747d9d; }
.career-application input:focus-visible { outline: 3px solid rgba(245, 196, 0, .65); outline-offset: 3px; box-shadow: 0 0 0 1px #36449a; }
.career-application fieldset { min-width: 0; padding: 1.25rem; border: 1px solid #d8dce7; border-radius: 10px; background: #f8f9fb; }
.career-application legend { float: none; width: auto; margin: 0; padding: 0 .4rem; }
.career-application .js-webform-radios { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .75rem; }
.career-application .form-type-radio { position: relative; }
.career-application input[type="radio"] { position: absolute; top: 50%; left: .9rem; transform: translateY(-50%); width: 1.15rem; height: 1.15rem; margin: 0; accent-color: #36449a; }
.career-application .form-type-radio label { display: flex; align-items: center; min-height: 50px; margin: 0; padding: .7rem .75rem .7rem 2.65rem; border: 1px solid #aeb4c5; border-radius: 7px; background: #fff; cursor: pointer; }
.career-application .form-type-radio label:hover { border-color: #36449a; }
.career-application input[type="radio"]:checked + label { border-color: #36449a; background: #eef0fa; box-shadow: inset 0 0 0 1px #36449a; }
.career-application .form-actions { margin: .25rem 0 0; }
.career-application input[type="submit"] { min-height: 50px; padding: .8rem 1.75rem; border: 0; border-radius: 7px; background: var(--gprs-yellow); color: #20264c !important; font: inherit; font-weight: 800; cursor: pointer; }
.career-application input[type="submit"]:hover { background: #e3b600; box-shadow: 0 8px 18px rgba(94, 74, 0, .18); }
@media (max-width: 640px) {
  .career-application .webform-submission-sign-up-application-form { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; border-radius: 10px; }
  .career-application .js-webform-radios { grid-template-columns: minmax(0, 1fr); }
  .career-application input[type="submit"] { width: 100%; }
}

