.hiring-teaser {
  width: calc(100% - 40px); max-width: 1160px; margin: 80px auto;
  padding: 48px; border-radius: 22px; background: #173b27; color: #fff;
  display: flex; align-items: center; justify-content: space-between; gap: 32px;
  box-sizing: border-box;
}
.hiring-teaser .hiring-eyebrow { color: #c4e7a7; }
.hiring-teaser h2 { margin: 10px 0 14px; font-size: clamp(28px, 3.1vw, 42px); line-height: 1.15; color: #fff; }
.hiring-teaser p { max-width: 650px; margin: 0; font-size: 16px; line-height: 1.7; color: #e1ebdd; }
.hiring-eyebrow { display: block; font-size: 12px; font-weight: 750; letter-spacing: .1em; text-transform: uppercase; }
.hiring-link { display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 15px 22px; min-height: 48px; border-radius: 10px; background: #c8e8a8; color: #173322; font-weight: 750; line-height: 1.3; text-decoration: none; border: 1px solid transparent; box-sizing: border-box; cursor: pointer; white-space: nowrap; }
.hiring-link:hover { background: #d8f0bf; color: #173322; }
.hiring-link.secondary { background: #fff; border-color: #cad8c3; color: #173322; }
.hiring-link:focus-visible, .career-page a:focus-visible, .career-page button:focus-visible { outline: 3px solid #75a747; outline-offset: 4px; }
.hiring-footer-link { display: block; width: calc(100% - 40px); max-width: 1160px; margin: 16px auto 0; font-size: 13px; color: inherit; }
.career-page { margin: 0; background: #f5f7f1; color: #1a3325; font-family: var(--font), system-ui, sans-serif; }
.career-header { background: #fff; border-bottom: 1px solid #dde5d7; }
.career-header-inner { max-width: 1160px; width: calc(100% - 40px); margin: auto; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; padding: 20px 0; }
.career-brand { display: block; line-height: 0; }
.career-brand .brand-logo { display: block; width: 285px; max-width: 100%; height: auto; max-height: 74px; object-fit: contain; }
.career-header nav { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.career-header nav a { color: #244632; font-size: 14px; font-weight: 650; text-decoration: none; padding: 9px 0; }
.career-header nav a:hover { text-decoration: underline; text-underline-offset: 4px; }
.career-main { max-width: 1160px; width: calc(100% - 40px); margin: 0 auto; padding: 65px 0 80px; }
.career-intro { max-width: 760px; margin-bottom: 36px; }
.career-intro .hiring-eyebrow { color: #497b32; }
.career-intro h1 { margin: 14px 0 18px; font-size: clamp(36px, 5vw, 60px); letter-spacing: -.045em; line-height: 1.08; font-weight: 750; }
.career-intro > p { margin: 0; color: #566754; font-size: 17px; line-height: 1.75; max-width: 690px; }
.career-role-list { display: flex; gap: 9px; flex-wrap: wrap; margin: 20px 0 0; padding: 0; list-style: none; }
.career-role-list li { border: 1px solid #d5e1ca; background: #edf3e7; border-radius: 999px; padding: 7px 12px; font-size: 12px; font-weight: 650; }
.career-layout { display: grid; grid-template-columns: .9fr 1.1fr; align-items: start; gap: 28px; }
.career-card { background: #fff; border: 1px solid #dce6d4; border-radius: 18px; padding: 32px; box-shadow: 0 8px 28px rgba(20, 45, 24, .025); min-width: 0; }
.career-card h2 { font-size: 24px; line-height: 1.25; margin: 0 0 13px; color: #1a3325; letter-spacing: -.02em; }
.career-card > p { font-size: 14px; line-height: 1.7; color: #5a6b56; margin: 0 0 20px; }
.career-steps { list-style: none; counter-reset: career-step; margin: 25px 0; padding: 0; }
.career-steps li { counter-increment: career-step; display: grid; grid-template-columns: 32px 1fr; gap: 12px; margin-bottom: 23px; }
.career-steps li::before { content: counter(career-step); display: grid; place-items: center; width: 32px; height: 32px; border-radius: 50%; background: #e9f1e1; color: #31572b; font-size: 13px; font-weight: 750; }
.career-steps strong { display: block; font-size: 15px; margin: 2px 0 5px; }
.career-steps p { font-size: 13px; line-height: 1.7; color: #5b6d56; margin: 0; }
.career-downloads { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 12px; }
.career-downloads .hiring-link { font-size: 14px; }
.career-assistance { font-size: 13px !important; line-height: 1.75 !important; padding-top: 24px; margin-top: 25px !important; border-top: 1px solid #e1e8da; }
.career-assistance a { color: #315d30; text-underline-offset: 3px; overflow-wrap: anywhere; }
.career-pdf-preview { max-width: 1160px; margin-top: 30px; border: 1px solid #dce6d4; background: #fff; border-radius: 16px; padding: 20px; }
.career-pdf-preview summary { font-size: 14px; font-weight: 700; cursor: pointer; }
.career-pdf-preview iframe { display: block; width: 100%; height: 700px; border: 0; margin-top: 18px; border-radius: 8px; }
.hiring-field-grid { display: grid; gap: 19px; }
.hiring-field { min-width: 0; }
.hiring-field label, .hiring-field legend { display: block; padding: 0; margin: 0 0 8px; font-size: 14px; font-weight: 700; color: #213d2c; }
.hiring-field fieldset { border: 0; margin: 0; padding: 0; }
.hiring-required { color: #4a7135; margin-left: 4px; }
.hiring-field input:not([type="checkbox"]):not([type="radio"]), .hiring-field textarea, .hiring-field select { width: 100%; box-sizing: border-box; border: 1px solid #bdcbb5; background: #fff; color: #183023; border-radius: 9px; min-height: 48px; padding: 12px; font: inherit; font-size: 16px; line-height: 1.45; outline: none; }
.hiring-field input:focus, .hiring-field select:focus, .hiring-field textarea:focus { border-color: #648b46; box-shadow: 0 0 0 3px #e7f0dd; }
.hiring-field input[type="file"] { padding: 10px; background: #f8faf4 !important; font-size: 13px !important; line-height: 1.8 !important; }
.hiring-field input[type="file"]::file-selector-button { margin-right: 12px; border: 0; border-radius: 6px; padding: 8px 12px; background: #e3efd7; color: #22472d; font-weight: 700; cursor: pointer; }
.hiring-field [aria-invalid="true"] { border-color: #a64a36 !important; }
.hiring-field-description, .hiring-file-name { margin: 7px 0 0; color: #61735b; font-size: 12px; line-height: 1.65; overflow-wrap: anywhere; }
.hiring-field-error { margin: 6px 0 0; color: #9d3927; font-size: 13px; line-height: 1.55; }
.hiring-form-error { padding: 12px 14px; border-radius: 8px; color: #7a2c20; background: #fff0e9; font-size: 14px; line-height: 1.6; margin: 18px 0 0; }
.hiring-form-actions { display: flex; align-items: center; gap: 12px; margin: 26px 0 0; }
.hiring-submit { flex: 1; border: 0; background: #275c31; color: #fff; min-height: 50px; border-radius: 9px; padding: 14px 20px; font: inherit; font-size: 15px; font-weight: 750; cursor: pointer; }
.hiring-submit:hover { background: #174423; }
.hiring-submit:disabled, .hiring-link:disabled { opacity: .65; cursor: progress; }
.hiring-form-step, .hiring-form-hint { font-size: 12px; color: #607254; line-height: 1.6; }
.hiring-success { padding: 14px 0 20px; }
.hiring-success h3 { margin: 0 0 12px; font-size: 27px; }
.hiring-success p { margin: 0 0 12px; font-size: 15px; line-height: 1.75; color: #53684d; overflow-wrap: anywhere; }
.hiring-success-mark { width: 44px; height: 44px; border-radius: 50%; display: grid; place-items: center; color: #2a612a; background: #e4f0db; font-size: 25px; margin-bottom: 18px; }
.career-footer { background: #183225; color: #e9f0e3; padding: 32px 20px; }
.career-footer-inner { max-width: 1160px; margin: auto; display: flex; justify-content: space-between; flex-wrap: wrap; gap: 20px; font-size: 13px; line-height: 1.8; }
.career-footer-inner strong { display: block; color: #fff; font-size: 14px; }
.career-footer-inner a { color: #e9f0e3; overflow-wrap: anywhere; text-underline-offset: 3px; }
.career-skip { position: absolute; left: 20px; top: -70px; background: #fff; padding: 12px; z-index: 10; }
.career-skip:focus { top: 10px; }
@media (max-width: 760px) {
  .hiring-teaser { margin: 50px auto; padding: 28px; flex-direction: column; align-items: stretch; gap: 24px; }
  .hiring-teaser .hiring-link { width: 100%; }
  .career-main { padding: 38px 0 55px; }
  .career-layout { grid-template-columns: 1fr; gap: 20px; }
  .career-card { padding: 25px; }
  .career-header-inner { padding: 16px 0; }
  .career-brand .brand-logo { width: 250px; }
  .career-header nav { gap: 20px; }
  .career-pdf-preview iframe { height: 520px; }
}
@media (prefers-reduced-motion: reduce) { .career-page * { scroll-behavior: auto !important; } }
