.career-application { min-height: 100vh; min-height: 100svh; padding: 75px 0 125px; background: radial-gradient(circle at 85% 12%, #dfeeff 0, transparent 34%), linear-gradient(135deg, #f6faff, #edf4fc 68%, #f8fbff); }
.career-application .breadcrumbs { margin-bottom: 65px; }
.career-layout { display: grid; grid-template-columns: minmax(290px, .8fr) minmax(0, 1.2fr); gap: clamp(42px, 6vw, 100px); align-items: start; }
.career-intro { position: sticky; top: 170px; }
.career-intro h1 { max-width: 580px; margin: 19px 0 29px; font-size: clamp(3.3rem, 5.5vw, 6rem); }
.career-intro h1 em { display: block; color: var(--brand); font-style: normal; }
.career-intro > p { max-width: 495px; color: var(--muted); font-size: 1.14rem; line-height: 1.8; }
.career-intro-note { display: flex; gap: 16px; max-width: 470px; margin-top: 50px; padding: 22px 0; border-top: 1px solid #cbddef; }
.career-intro-note > span { color: var(--brand); font-size: 1.45rem; line-height: 1; }
.career-intro-note p { margin: 0; color: #455d77; font-size: .97rem; line-height: 1.65; }
.career-form { min-width: 0; padding: clamp(28px, 3.3vw, 50px); border: 1px solid #d5e3f3; border-radius: var(--radius-lg); background: var(--white); box-shadow: var(--shadow); }
.career-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.career-form-heading { display: flex; align-items: start; justify-content: space-between; gap: 20px; }
.career-form-heading > div > span { color: var(--brand); font-size: .8rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.career-form-heading h2 { margin-top: 8px; font-size: clamp(1.9rem, 3vw, 2.6rem); }
.career-form-heading > b { flex: 0 0 auto; margin-top: 4px; color: #147c60; font-size: .8rem; white-space: nowrap; }
.career-form-heading > b i { display: inline-block; width: 8px; height: 8px; margin-right: 7px; border-radius: 50%; background: var(--mint); }
.career-form-lead { margin: 17px 0 30px; padding-bottom: 25px; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 1rem; }
.career-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 19px; }
.career-fields label { min-width: 0; display: block; color: var(--navy); font-size: .97rem; font-weight: 700; }
.career-fields label > span, .career-questions legend > span, .career-upload strong > b, .career-consent b { color: var(--danger); }
.career-fields .career-wide { grid-column: 1 / -1; }
.career-fields input { display: block; width: 100%; min-width: 0; min-height: 50px; margin-top: 8px; padding: 10px 14px; border: 1px solid #c8d9ea; border-radius: 9px; background: #fbfdff; color: var(--navy); font-size: .98rem; font-weight: 400; }
.career-fields input::placeholder { color: #8495a9; }
.career-fields input:focus { border-color: var(--brand); outline: 3px solid rgba(47, 115, 217, .14); outline-offset: 0; }
.career-questions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 19px; margin-top: 28px; }
.career-questions fieldset { min-width: 0; display: flex; gap: 9px; margin: 0; padding: 17px; border: 1px solid var(--line); border-radius: 12px; }
.career-questions legend { padding: 0 5px; color: var(--navy); font-size: .9rem; font-weight: 700; }
.career-questions label { position: relative; flex: 1; cursor: pointer; }
.career-questions label input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.career-questions label > span { display: grid; min-height: 42px; place-items: center; border: 1px solid #c8d9ea; border-radius: 8px; color: #536a83; background: #f6faff; font-weight: 700; }
.career-questions input:checked + span { border-color: var(--brand); color: var(--brand-dark); background: var(--brand-soft); box-shadow: inset 0 0 0 1px var(--brand); }
.career-questions input:focus-visible + span { outline: 3px solid rgba(47, 115, 217, .32); outline-offset: 3px; }
.career-upload { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: 28px; padding: 22px; border: 1px dashed #8bb5e6; border-radius: 12px; background: #f4f9ff; cursor: pointer; }
.career-upload:focus-within { outline: 3px solid rgba(47, 115, 217, .32); outline-offset: 3px; }
.career-upload span, .career-upload strong, .career-upload small { display: block; }
.career-upload strong { color: var(--navy); font-size: 1rem; }
.career-upload small { margin-top: 4px; color: var(--muted); font-size: .9rem; }
.career-upload > b { flex: 0 0 auto; padding: 10px 13px; border: 1px solid #9ebfe7; border-radius: 8px; color: var(--brand-dark); background: var(--white); font-size: .83rem; }
.career-upload input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.career-file-status { margin: 8px 0 0; color: var(--brand-dark); font-size: .84rem; overflow-wrap: anywhere; }
.career-file-status.is-error { color: var(--danger); }
.career-consent { display: flex; align-items: flex-start; gap: 12px; margin-top: 27px; color: #435b75; font-size: .92rem; line-height: 1.6; cursor: pointer; }
.career-consent input { flex: 0 0 18px; width: 18px; height: 18px; margin-top: 4px; accent-color: var(--brand); }
.career-consent a { color: var(--brand-dark); font-weight: 700; }
.career-privacy-note { margin: 19px 0 0; padding: 17px 19px; border-left: 3px solid var(--brand); border-radius: 0 8px 8px 0; background: var(--brand-pale); color: #52657d; font-size: .87rem; line-height: 1.65; }
.career-submit { margin-top: 26px; }
.career-submit:disabled { opacity: .65; cursor: wait; }
.career-status { margin: 16px 0 0; color: var(--muted); font-size: .87rem; line-height: 1.65; }
.career-status.is-success, .career-status.is-error { padding: 13px 15px; border-radius: 8px; }
.career-status.is-success { background: var(--mint-soft); color: #147c60; }
.career-status.is-error { background: #fff0f0; color: var(--danger); }
@media (max-width: 1000px) { .career-layout { gap: 40px; }.career-intro h1 { font-size: clamp(2.9rem, 6vw, 4.7rem); }.career-form-heading { flex-direction: column; gap: 8px; } }
@media (max-width: 800px) { .career-application { padding: 55px 0 85px; }.career-application .breadcrumbs { margin-bottom: 42px; }.career-layout { grid-template-columns: 1fr; }.career-intro { position: static; }.career-intro-note { margin-top: 25px; }.career-form { margin-top: 8px; } }
@media (max-width: 550px) { .career-application { padding: 38px 0 68px; }.career-fields, .career-questions { grid-template-columns: 1fr; }.career-fields .career-wide { grid-column: auto; }.career-form { padding: 27px 20px; }.career-upload { align-items: flex-start; flex-direction: column; }.career-intro h1 { font-size: clamp(2.65rem, 12vw, 4rem); } }
