.careers-page .desktop-nav a[aria-current="page"] { color: var(--green); }
.careers-hero { position:relative; overflow:hidden; color:#fff; background:radial-gradient(ellipse at 78% 46%,#17543a 0%,#0d3023 36%,#071a15 75%); }
.careers-hero::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.22; background-image:linear-gradient(#aaf4c414 1px,transparent 1px),linear-gradient(90deg,#aaf4c414 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(90deg,transparent,#000); }
.careers-hero-inner { min-height:680px; padding-top:115px; display:grid; grid-template-columns:1fr .84fr; align-items:center; gap:6%; position:relative; }
.careers-hero-copy { position:relative; z-index:2; padding:45px 0 60px; }
.careers-hero h1 { font:600 clamp(70px,7.3vw,118px)/1.04 var(--font); letter-spacing:-.08em; margin:35px 0 29px; }
.careers-hero h1 em,.career-outro h2 em { color:#baf3cf; font-family:Georgia,serif; font-weight:400; letter-spacing:-.07em; }
.careers-hero-copy p { max-width:520px; color:#cfdfd4; font-size:18px; line-height:1.7; margin:0 0 34px; }
.career-finder { position:relative; z-index:2; width:100%; padding:26px; border:1px solid #b9f1ce50; background:linear-gradient(145deg,#12382c,#09251c 75%); box-shadow:0 25px 70px #00120d75,inset 0 1px #b6efd021; }
.career-finder::before { content:""; position:absolute; top:0; right:0; width:120px; height:120px; pointer-events:none; background:radial-gradient(circle at top right,#1ddd8550,transparent 72%); }
.career-finder-top,.career-finder-section { display:flex; align-items:center; justify-content:space-between; gap:12px; color:#b4dfc1; font-size:9px; font-weight:800; letter-spacing:.13em; }
.career-finder-top span { display:inline-flex; align-items:center; gap:10px; }
.career-finder-top i { display:block; width:7px; height:7px; border-radius:50%; background:#36e394; box-shadow:0 0 0 4px #36e39424; }
.career-finder-top strong { color:#c8f9d4; font-size:9px; white-space:nowrap; }
.career-finder-top strong span { color:#30e18d; font-size:14px; letter-spacing:0; margin-right:4px; }
.career-finder h2 { margin:30px 0 26px; font:600 clamp(28px,2.7vw,39px)/1.1 var(--font); letter-spacing:-.065em; }
.career-finder h2 em { font-family:Georgia,serif; font-weight:400; color:#a9ebbf; }
#career-hero-search-form label { display:block; margin-bottom:8px; color:#9fceb1; font-size:9px; font-weight:800; letter-spacing:.14em; }
.career-finder-search { display:flex; min-height:49px; background:#e9f1e8; border:1px solid #a9eac4; }
.career-finder-search:focus-within { outline:2px solid #4ce794; outline-offset:2px; }
.career-finder-search input { flex:1; min-width:0; padding:0 14px; border:0; outline:0; background:transparent; color:#0a291d; font:600 12px var(--body); }
.career-finder-search input::placeholder { color:#769783; }
.career-finder-search button { width:51px; flex:none; border:0; background:#18ce7c; color:#062117; font-size:24px; line-height:1; }
.career-finder-search button:hover { background:#8bedb4; }
.career-finder-section { margin-top:25px; padding-bottom:10px; border-bottom:1px solid #c1f1cc33; color:#9bcfae; }
.career-finder-section span:last-child { color:#6fba8a; font-size:8px; }
.career-featured-list { min-height:171px; }
.career-featured-role { display:flex; align-items:center; gap:12px; min-height:57px; padding:11px 0; border-bottom:1px solid #c1f1cc22; transition:padding .2s,color .2s; }
.career-featured-role:hover,.career-featured-role:focus-visible { padding-left:6px; color:#94efb5; }
.career-featured-role .career-flag { width:23px; height:16px; }
.career-featured-role-copy { min-width:0; flex:1; display:flex; flex-direction:column; gap:3px; }
.career-featured-role-copy strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#fff; font:700 12px var(--font); }
.career-featured-role-copy small { color:#9dcab0; font-size:10px; }
.career-featured-role-arrow { color:#34dc86; font-size:18px; }
.career-finder-all { display:flex; align-items:center; justify-content:space-between; gap:15px; padding-top:17px; color:#aaf4c4; font-size:11px; font-weight:800; }
.career-finder-all span { font-size:18px; }
.career-finder-all:hover { color:#fff; }
.careers-hero-foot { position:relative; display:flex; justify-content:space-between; gap:20px; padding:18px 0 30px; border-top:1px solid #dcf5e130; color:#a6c6b1; font-size:10px; font-weight:800; letter-spacing:.15em; }
.careers-hero-foot strong { color:#39dd8b; font-size:19px; letter-spacing:-.04em; margin-right:6px; }
.careers-open { padding:115px 0 130px; background:var(--paper); }
.careers-intro { display:flex; justify-content:space-between; gap:60px; align-items:end; }
.careers-intro .display-title { margin-bottom:0; }
.careers-intro p { max-width:320px; color:#617168; font-size:15px; line-height:1.75; margin:0 0 9px; }
.career-controls { display:grid; grid-template-columns:1.6fr 1fr 1fr auto; gap:12px; align-items:end; margin-top:58px; }
.career-controls label,.career-location-field { display:flex; flex-direction:column; gap:9px; color:#357754; font-size:10px; font-weight:800; letter-spacing:.14em; }
.career-controls input,.career-controls select { width:100%; min-height:53px; padding:0 15px; border:1px solid #c7d8ca; border-radius:0; background:#fff; color:var(--ink); font:600 13px var(--body); letter-spacing:0; outline-offset:2px; }
.career-controls input::placeholder { color:#8b9d90; }
.career-controls select { cursor:pointer; }
.career-location-picker { position:relative; }
.career-location-picker>button { display:flex; align-items:center; justify-content:space-between; gap:10px; width:100%; min-height:53px; padding:0 15px; border:1px solid #c7d8ca; background:#fff; color:var(--ink); font:600 13px var(--body); letter-spacing:0; text-align:left; }
.career-location-picker>button:hover,.career-location-picker>button[aria-expanded="true"] { border-color:#2d8b58; }
#career-location-current { display:inline-flex; align-items:center; gap:9px; min-width:0; }
.career-chevron { font-size:20px; line-height:1; }
.career-location-options { position:absolute; z-index:30; top:calc(100% + 5px); left:0; right:0; max-height:300px; overflow-y:auto; padding:5px; background:#fff; border:1px solid #bdd3c2; box-shadow:0 18px 35px #0b2d1c2e; }
.career-location-options button { display:flex; align-items:center; gap:10px; width:100%; min-height:40px; padding:8px 10px; border:0; background:#fff; color:var(--ink); font:600 12px var(--body); text-align:left; }
.career-location-options button:hover,.career-location-options button:focus-visible,.career-location-options button[aria-pressed="true"] { background:#e6f3e9; }
#career-clear { min-height:53px; padding:0 18px; border:1px solid #387754; background:transparent; color:#176341; font-size:12px; font-weight:800; white-space:nowrap; }
#career-clear:hover { background:#e4f0e5; }
.career-flag { display:block; width:20px; height:14px; flex:none; object-fit:cover; box-shadow:0 1px 3px #0002; }
.career-results-head { display:flex; justify-content:space-between; gap:16px; padding:23px 0 17px; border-bottom:1px solid #cad8cb; color:#367e58; font-size:10px; font-weight:800; letter-spacing:.12em; }
.career-results-head span:first-child { color:#193f2c; font-size:12px; letter-spacing:0; }
.career-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding-top:12px; }
.career-card { display:flex; flex-direction:column; min-height:210px; padding:27px; border:1px solid #d6dfd4; background:#eef2eb; transition:transform .2s,background .2s,border-color .2s; }
.career-card:hover,.career-card:focus-visible { transform:translateY(-3px); background:#e4f0e5; border-color:#7fc898; }
.career-card-top { display:flex; justify-content:space-between; align-items:start; gap:15px; color:#367a53; font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.career-card-top b { font-size:18px; font-weight:500; line-height:1; }
.career-card h3 { max-width:500px; margin:28px 0 auto; color:var(--ink); font:700 clamp(21px,2vw,28px)/1.18 var(--font); letter-spacing:-.05em; }
.career-card-meta { display:flex; flex-direction:column; align-items:flex-start; gap:9px; padding-top:26px; color:#5f7063; font-size:12px; font-weight:700; }
.career-countries { display:flex; align-items:center; flex-wrap:wrap; gap:8px 14px; }
.career-card-meta span { display:inline-flex; align-items:center; gap:7px; }
.career-card-meta span::before { content:""; width:5px; height:5px; flex:none; border-radius:50%; background:#28bb70; }
.career-card-meta .career-country::before { content:none; }
.career-empty,.career-error { border:1px solid #d6dfd4; background:#eef2eb; padding:42px; margin-top:12px; }
.career-empty h3,.career-error h3 { margin:0 0 8px; font:700 26px var(--font); letter-spacing:-.04em; }
.career-empty p,.career-error p { color:#5f7063; margin:0 0 20px; line-height:1.6; }
.career-outro { color:#fff; background:#0d3b29; overflow:hidden; }
.career-outro-inner { min-height:335px; display:flex; align-items:center; justify-content:space-between; gap:40px; padding-block:65px; }
.career-outro h2 { font:600 clamp(45px,5.1vw,72px)/1.1 var(--font); letter-spacing:-.075em; margin:26px 0 0; }
@media(max-width:900px) { .careers-hero-inner { min-height:0; grid-template-columns:1fr; gap:0; padding-bottom:30px; } .careers-hero-copy { padding-bottom:30px; } .career-finder { width:min(100%,610px); justify-self:center; } .careers-intro { align-items:start; flex-direction:column; gap:20px; } .career-controls { grid-template-columns:1fr 1fr; } #career-clear { width:max-content; } }
@media(max-width:620px) { .careers-hero-inner { display:block; padding-top:135px; padding-bottom:30px; } .careers-hero-copy { padding:20px 0 36px; } .careers-hero h1 { font-size:clamp(60px,14vw,78px); } .careers-hero-copy p { max-width:340px; font-size:15px; } .career-finder { padding:20px; } .career-finder h2 { font-size:32px; margin:25px 0 23px; } .career-finder-top { font-size:8px; } .careers-hero-foot { font-size:8px; } .careers-open { padding:80px 0 95px; } .career-controls { grid-template-columns:1fr; gap:16px; margin-top:38px; } #career-clear { width:100%; } .career-results-head span:last-child { display:none; } .career-grid { grid-template-columns:1fr; } .career-card { min-height:185px; padding:23px; } .career-card h3 { font-size:23px; } .career-outro-inner { flex-direction:column; align-items:start; gap:26px; } }
