/* Jobs overview: page-scoped; shared header, footer and detail pages are untouched. */
.jobs-page-v8{--jp-ink:#173b3e;--jp-teal:#0e646d;--jp-muted:#47686b;--jp-line:#c1dada;--jp-mint:#ecf7f6;color:var(--jp-ink)}
.jobs-page-v8 *{box-sizing:border-box}
.jobs-page-v8 [hidden]{display:none!important}
.jobs-page-v8 .wrap{width:min(1220px,calc(100% - 64px))}
.jobs-page-v8 :is(h1,h2,h3,p,figure,dl,dd){margin:0}
.jobs-page-v8 :is(h1,h2,h3){letter-spacing:0;line-height:1.55;font-weight:700;color:inherit}
.jobs-page-v8 p{line-height:1.9}
.jobs-page-v8 svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex:none}
.jobs-page-v8 a{color:inherit;text-underline-offset:.3em}
.jobs-page-v8 ::selection{background:#b8dfd9;color:#12393d}
.jobs-page-v8 :focus-visible{outline:3px solid #ab5000;outline-offset:5px}
.jp-hero{background:var(--jp-mint);padding:26px 0 0}
.jp-hero .crumb{margin-bottom:42px;font-size:13px}
.jp-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center;padding-bottom:48px}
.jobs-page-v8 .jp-hero h1{font-size:clamp(34px,3.7vw,52px);line-height:1.6;letter-spacing:-.025em}
.jp-hero-copy>p{margin-top:24px;font-size:17px;color:var(--jp-muted)}
.jp-main-link{display:inline-flex;align-items:center;gap:30px;margin-top:28px;font-size:16px;font-weight:700;border-bottom:1px solid currentColor;padding:9px 0;text-decoration:none}
.jp-main-link svg{transform:rotate(90deg)}
.jp-hero-photo{min-width:0}
.jp-hero-photo img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.jp-hero-photo figcaption{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;padding:14px 0;color:var(--jp-teal);font-weight:700;font-size:15px;letter-spacing:.08em}
.jp-intro-links{display:flex;align-items:center;flex-wrap:wrap;gap:16px 32px;border-top:1px solid var(--jp-line);padding:22px 0;font-size:14px}
.jp-intro-links p{margin-right:auto;color:var(--jp-muted)}
.jp-intro-links a{display:inline-flex;align-items:center;gap:10px;font-weight:700;text-decoration:none}
.jp-intro-links svg{width:18px;height:18px}
.jp-list{padding:76px 0 80px}
.jp-list-heading{display:flex;align-items:baseline;gap:24px;justify-content:space-between;margin-bottom:28px}
.jobs-page-v8 .jp-list-heading h2{font-size:30px}
.jp-list-heading p{font-size:14px;color:var(--jp-muted)}
.jp-filters{padding:28px 32px;background:#f5f9f8}
.jp-fields{border:0;padding:0;margin:0;min-width:0}
.jp-fields legend,.jp-selects label>span{font-size:13px;display:block;margin-bottom:10px;font-weight:700}
.jp-choices{display:flex;gap:10px;flex-wrap:wrap}
.jp-choice{position:relative;cursor:pointer}
.jp-choice input{position:absolute;inset:0;opacity:0;margin:0;width:100%;height:100%;cursor:pointer}
.jp-choice>span{display:flex;gap:10px;align-items:center;justify-content:center;padding:12px 22px;border:1px solid #86a8aa;color:var(--jp-ink);background:white;font-size:15px;font-weight:700;min-height:48px;transition:background .18s ease,color .18s ease}
.jp-choice svg{width:22px;height:22px}
.jp-choice input:checked+span{background:var(--jp-teal);color:white;border-color:var(--jp-teal)}
.jp-choice input:focus-visible+span{outline:3px solid #ab5000;outline-offset:4px}
.jp-choice input:hover+span{box-shadow:inset 0 0 0 1px var(--jp-teal)}
.jp-selects{display:grid;grid-template-columns:1fr 1fr auto;gap:16px 24px;align-items:end;margin-top:22px}
.jp-selects label{min-width:0}
.jp-selects select{display:block;font:inherit;font-size:15px;color:var(--jp-ink);background:white;width:100%;max-width:100%;height:48px;padding:0 12px;border:1px solid #86a8aa;border-radius:2px;cursor:pointer}
.jp-reset{min-height:48px;display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:14px;font-weight:700;padding:10px 2px;cursor:pointer;background:none;border:0;color:var(--jp-teal);text-decoration:underline;text-underline-offset:5px}
.jp-count{padding:22px 0 16px;font-size:14px;color:var(--jp-muted);font-variant-numeric:tabular-nums}
.jp-feature{display:grid;grid-template-columns:.83fr 1.17fr;background:var(--jp-mint)}
.jp-feature-photo{position:relative;min-width:0}
.jp-feature-photo img{width:100%;height:100%;display:block;object-fit:cover;min-height:520px;object-position:50% 50%}
.jp-feature-photo figcaption{position:absolute;left:20px;right:20px;bottom:20px;color:var(--jp-ink);background:#fff;padding:12px 16px;font-size:14px;font-weight:700;line-height:1.7}
.jp-feature-body{padding:34px}
.jp-feature-meta,.jp-card-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}
.jp-sector{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--jp-teal)}
.jp-state{font-size:11px;display:inline-flex;align-items:center;padding:5px 10px;background:#f3efe5;color:#665636;line-height:1.5;font-weight:500}
.jp-state--open{background:var(--jp-teal);color:white;font-size:13px;padding:7px 12px;font-weight:700}
.jp-location{color:var(--jp-teal);font-weight:700;font-size:14px;margin-top:24px!important}
.jobs-page-v8 .jp-feature h3{font-size:30px;line-height:1.5;margin:9px 0 16px}
.jp-feature-description{font-size:14px;color:var(--jp-muted)}
.jp-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:26px!important;padding:22px 0;border-block:1px solid var(--jp-line)}
.jp-facts dt{font-size:12px;color:var(--jp-muted);margin-bottom:10px}
.jp-facts dd{font-size:18px;font-weight:700;line-height:1.6}
.jp-facts dd strong{font-family:var(--f-num);font-size:32px;line-height:1;font-weight:600;vertical-align:-1px}
.jp-facts small{display:block;font-size:11px;font-weight:500;color:var(--jp-muted);margin-top:5px;line-height:1.7}
.jp-contract{font-size:12px;color:var(--jp-muted);margin-top:18px!important}
.jp-feature-actions{display:grid;grid-template-columns:1.2fr 1fr;gap:10px;margin-top:24px}
.jp-feature-actions .btn{min-height:50px;width:100%;font-size:13px;padding:12px 10px;white-space:normal;text-align:center}
.jp-feature-actions .apply-slot{display:block}
.jp-more{margin-top:60px}
.jp-more-heading{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:32px;margin-bottom:24px}
.jobs-page-v8 .jp-more-heading h3{font-size:25px}
.jp-more-heading p{font-size:13px;color:var(--jp-muted)}
.jp-card-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 36px}
.jp-card{border-top:1px solid var(--jp-line);padding:26px 0;display:flex;flex-direction:column;min-width:0}
.jp-card .jp-location{margin-top:18px!important;font-size:13px}
.jobs-page-v8 .jp-card h3{font-size:23px;line-height:1.6;margin:6px 0 10px}
.jp-description{font-size:14px;color:var(--jp-muted)}
.jp-detail{font-size:12px;color:var(--jp-muted);margin-top:8px!important}
.jp-card-actions{margin-top:auto;padding-top:24px;display:flex;align-items:center;flex-wrap:wrap;gap:12px 24px}
.jp-detail-link{display:inline-flex;align-items:center;gap:20px;font-size:14px;font-weight:700;text-decoration:none;min-height:44px}
.jp-detail-link svg{width:20px;height:20px;transition:transform .2s ease}
.jp-detail-link:hover svg{transform:translateX(4px)}
.jp-consult{font-size:12px;color:var(--jp-muted)!important;min-height:44px;display:inline-flex;align-items:center}
.jp-status-note{font-size:12px;color:var(--jp-muted);border-top:1px solid var(--jp-line);padding-top:20px;margin-top:28px!important}
.jp-empty{padding:40px;background:var(--jp-mint)}
.jobs-page-v8 .jp-empty h3{font-size:24px}
.jp-empty p{margin-top:12px;color:var(--jp-muted);font-size:14px}
.jp-empty a{margin-left:24px;display:inline-flex;gap:12px;align-items:center;font-size:14px;font-weight:700;min-height:48px}
.jp-support{background:#f5f9f8;padding:64px 0}
.jp-support-heading{display:grid;grid-template-columns:1fr 1fr;gap:36px;align-items:center}
.jobs-page-v8 .jp-support h2{font-size:32px;line-height:1.65}
.jp-support-heading p{font-size:15px;color:var(--jp-muted)}
.jp-support-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:36px}
.jp-support-links>a{display:grid;grid-template-columns:40px 1fr;column-gap:16px;text-decoration:none;padding:24px 0 0;border-top:1px solid var(--jp-line);align-items:start}
.jp-support-links>a>svg:first-child{width:36px;height:36px;color:var(--jp-teal);margin-top:3px}
.jobs-page-v8 .jp-support-links h3{font-size:19px;margin-bottom:10px}
.jp-support-links p{font-size:13px;color:var(--jp-muted)}
.jp-support-links>a>svg:last-child{grid-column:2;width:20px;height:20px;margin-top:16px}
.jp-next{padding:64px 0;background:#174d52;color:#fff}
.jp-next>.wrap{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}
.jobs-page-v8 .jp-next h2{font-size:34px;line-height:1.65;color:white}
.jp-next p{margin-top:18px;color:#d4e8e8;font-size:15px}
.jp-next-actions{display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.jp-next-actions .btn{gap:18px;font-size:15px;white-space:normal;text-align:center;min-height:58px}
.jp-tel{display:flex;flex-direction:column;gap:4px;text-decoration:none}
.jp-tel span{font-size:12px;color:#d4e8e8}
.jp-tel b{font-family:var(--f-num);font-size:32px;letter-spacing:.03em}
@media(prefers-reduced-motion:no-preference){
 html:not([data-motion="off"]) .jp-hero-photo img{animation:jp-photo-in .8s cubic-bezier(.16,1,.3,1) both}
 @keyframes jp-photo-in{from{clip-path:inset(0 12% 0 0)}to{clip-path:inset(0 0 0 0)}}
}
@media(max-width:1000px){
 .jp-hero-grid{gap:24px}.jobs-page-v8 .jp-hero h1{font-size:35px}.jp-hero-copy>p{font-size:15px}.jp-feature-body{padding:26px}.jobs-page-v8 .jp-feature h3{font-size:26px}.jp-feature{grid-template-columns:.8fr 1.2fr}.jp-feature-description br{display:none}.jp-feature-actions{grid-template-columns:1fr}.jp-feature-photo img{min-height:590px}.jp-facts{gap:6px}.jp-facts dd{font-size:16px}.jp-support-links{gap:22px}.jp-support-links>a{grid-template-columns:1fr}.jp-support-links>a>svg:first-child{margin-bottom:16px}.jp-support-links>a>svg:last-child{grid-column:1}.jp-intro-links p{flex-basis:100%}.jp-list-heading{display:block}.jp-list-heading p{margin-top:8px}
}
@media(max-width:700px){
 .jobs-page-v8 .wrap{width:calc(100% - 40px)}.jp-hero{padding-top:20px}.jp-hero .crumb{margin-bottom:26px}.jp-hero-grid{grid-template-columns:1fr;gap:28px;padding-bottom:26px}.jobs-page-v8 .jp-hero h1{font-size:clamp(29px,7.5vw,40px)}.jp-hero-copy>p{margin-top:16px}.jp-main-link{margin-top:18px}.jp-hero-photo img{aspect-ratio:3/2}.jp-hero-photo figcaption{padding:10px 0;font-size:13px}.jp-intro-links{gap:12px 22px;padding:20px 0;font-size:12px}.jp-intro-links p{margin-bottom:0}.jp-list{padding:48px 0}.jobs-page-v8 .jp-list-heading h2{font-size:25px}.jp-filters{padding:22px 18px}.jp-choices{gap:8px}.jp-choice>span{padding:10px 13px;font-size:13px;gap:7px}.jp-choice svg{width:18px;height:18px}.jp-selects{grid-template-columns:1fr;gap:16px}.jp-selects label>span{margin-bottom:7px}.jp-selects select{font-size:16px}.jp-reset{justify-self:start}.jp-feature{grid-template-columns:1fr}.jp-feature-photo img{height:auto;aspect-ratio:4/3;min-height:0}.jp-feature-photo figcaption{left:16px;right:16px;bottom:16px;font-size:12px;padding:10px 12px}.jp-feature-body{padding:24px 20px}.jobs-page-v8 .jp-feature h3{font-size:clamp(23px,6vw,30px)}.jp-facts{margin-top:22px!important;gap:8px}.jp-facts dd{font-size:17px}.jp-feature-actions{grid-template-columns:1fr}.jp-feature-actions .btn{font-size:14px}.jp-more{margin-top:42px}.jp-more-heading{grid-template-columns:1fr;gap:12px}.jobs-page-v8 .jp-more-heading h3{font-size:23px}.jp-card-grid{grid-template-columns:1fr}.jp-card{padding:24px 0}.jobs-page-v8 .jp-card h3{font-size:23px}.jp-card-actions{padding-top:16px;gap:12px 20px}.jp-description{font-size:14px}.jp-support{padding:44px 0}.jp-support-heading{grid-template-columns:1fr;gap:18px}.jobs-page-v8 .jp-support h2{font-size:27px}.jp-support-heading p{font-size:14px}.jp-support-links{grid-template-columns:1fr;gap:0;margin-top:28px}.jp-support-links>a{grid-template-columns:40px 1fr 20px;gap:14px;padding:22px 0}.jp-support-links>a>svg:last-child{grid-column:3;margin-top:5px}.jp-support-links>a>svg:first-child{margin:3px 0 0}.jobs-page-v8 .jp-support-links h3{font-size:18px}.jp-next{padding:44px 0}.jp-next>.wrap{grid-template-columns:1fr;gap:28px}.jobs-page-v8 .jp-next h2{font-size:28px}.jp-next-actions{align-items:stretch}.jp-next-actions .btn{font-size:14px}.jp-tel{align-items:center}.jp-empty{padding:24px 20px}.jobs-page-v8 .jp-empty h3{font-size:22px}.jp-empty a{margin-left:0;display:flex}
}
@media(max-width:360px){.jobs-page-v8 .wrap{width:calc(100% - 32px)}.jp-filters{padding:18px 14px}.jp-choice>span{padding:10px 12px}.jp-feature-body{padding:22px 16px}.jp-facts dd{font-size:15px}.jp-facts small{font-size:11px}.jp-feature-meta{gap:8px}.jp-state{font-size:10px}.jp-state--open{font-size:12px}.jp-intro-links{gap:12px 18px}.jp-card-actions{gap:8px 18px}.jp-support-links>a{grid-template-columns:30px 1fr 18px;gap:10px}.jp-support-links>a>svg:first-child{width:28px;height:28px}}
