.talents-page{font:400 16px/1.65 'DM Sans',Arial,sans-serif;background:#f7f8fa;color:#202a27}
.talents-page .site-header{background:#fbfcf8;gap:24px}
.talents-page .header-cta{display:inline-flex;font-size:.875rem;font-weight:600;margin-left:auto;text-align:right;line-height:1.4}
.jobs{padding:64px 0 88px;max-width:1200px}
.jobs .eyebrow{font-size:.875rem;letter-spacing:.12em;color:#317e23;margin:0 0 14px;font-weight:700}
.jobs h1{font:600 clamp(2.25rem,4.5vw,3.75rem)/1.12 'Outfit','DM Sans',sans-serif;letter-spacing:-.035em;margin:0 0 18px}
.jobs>p:not(.eyebrow){color:#65716c;font-size:1.0625rem;margin:0;max-width:620px}
.job-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:40px;align-items:start}
.job{min-width:0;padding:28px;background:#fff;border:1px solid #e1e7e3;border-radius:18px;box-shadow:0 4px 18px #16261c05;transition:border-color .2s,box-shadow .2s}
.job:hover{border-color:#b4cbb0;box-shadow:0 10px 28px #16261c09}
.job h2{font:600 1.375rem/1.3 'Outfit','DM Sans',sans-serif;letter-spacing:-.02em;margin:0 0 6px;overflow-wrap:anywhere}
.company{font-size:.9375rem;font-weight:500;color:#77827c}
.meta{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin:22px 0;font-size:.875rem;color:#546159;font-weight:500}
.location{display:inline-flex;align-items:center;gap:7px}
.location svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.work-model{padding:4px 10px;border-radius:6px;color:#306e23;background:#edf8e9}
.job-description{font-size:1rem;line-height:1.7;color:#526158;margin:0 0 24px;white-space:pre-line;overflow-wrap:anywhere}
.job-benefits{margin:0 0 26px}
.job-benefits h3{font:600 .875rem/1.5 'DM Sans',Arial,sans-serif;margin:0 0 10px;color:#35473b;letter-spacing:0}
.job-benefits ul{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.job-benefits li{font-size:.875rem;line-height:1.5;color:#5c6961;padding:5px 10px;border:1px solid #e4eae5;border-radius:7px;background:#fafcfb}
.talents-page .button{font:600 .9375rem/1.4 'DM Sans',Arial,sans-serif;min-height:46px;padding:12px 20px;border-radius:9px;background:#48b829;color:#10250a;cursor:pointer;justify-content:center}
.talents-page .button:hover{background:#3da523}
.empty{grid-column:1/-1;padding:40px;border:1px solid #e1e7e3;border-radius:18px;background:#fff;color:#65716c}
.apply-dialog{border:1px solid #e1e7e3;border-radius:20px;padding:0;max-width:560px;width:calc(100% - 32px);max-height:90dvh;overflow:auto;box-shadow:0 24px 80px #16211a33;color:#202a27}
.apply-dialog::backdrop{background:#13221988;backdrop-filter:blur(3px)}
.apply-form{padding:30px;font-family:'DM Sans',Arial,sans-serif}
.apply-form h2{font:600 1.5rem/1.3 'Outfit','DM Sans',sans-serif;letter-spacing:-.02em;margin:16px 0 24px}
.apply-form label{display:block;font-size:.875rem;font-weight:600;margin:16px 0 5px}
.apply-form input{display:block;width:100%;box-sizing:border-box;font:400 1rem/1.4 'DM Sans',Arial,sans-serif;padding:12px;border:1px solid #d4ddd5;border-radius:9px;margin-top:6px;background:#fff}
.form-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:26px}
#form-message{font-size:.875rem}
.cancel{background:none;border:0;color:#516158;cursor:pointer;font:500 .875rem 'DM Sans',Arial,sans-serif;padding:6px 0}
.talents-page :is(input,button,a):focus-visible{outline:3px solid #48b829;outline-offset:3px}
@media(max-width:720px){.job-grid{grid-template-columns:1fr;gap:18px;margin-top:28px}.jobs{padding:36px 0 56px}.job{padding:22px}.jobs h1{font-size:2.5rem}.apply-form{padding:22px}.talents-page .site-header{padding:16px 20px;gap:16px}.talents-page .header-logo-frame{max-width:160px}.talents-page .header-cta{font-size:.875rem}.empty{padding:24px}}
@media(prefers-reduced-motion:reduce){.job{transition:none}}

/* Careers search, compact cards and full vacancy view */
.jobs{max-width:1400px;padding-top:44px}.jobs h1{font-size:clamp(2rem,4vw,3.2rem)}
.job-search{display:grid;grid-template-columns:1fr 1fr 170px 52px;gap:18px;align-items:end;margin-top:30px;padding:24px;border:1px solid #e1e7e3;border-radius:12px;background:#fff}.job-search label{font-size:14px;font-weight:600}.job-search input{display:block;width:100%;margin-top:9px;height:52px;border:1px solid #d7dfd9;border-radius:7px;padding:0 16px;font:400 16px 'DM Sans',sans-serif;background:#fff}.job-search .button{height:52px;border:0}.filter-toggle{height:52px;border:1px solid #d7dfd9;border-radius:7px;background:white;font-size:26px;cursor:pointer}.job-filters{padding:20px;background:white;border:1px solid #e1e7e3;border-top:0}.job-filters select{padding:8px;margin-left:10px;border:1px solid #d7dfd9;border-radius:5px;font:inherit}.job-filters button{background:transparent;border:0;color:#317e23;margin-left:20px;font:inherit;cursor:pointer}.jobs-summary h2{font:600 18px 'DM Sans',sans-serif;margin:28px 0 18px}.jobs-summary span{display:inline-block;margin-left:8px;font-size:13px;padding:4px 9px;background:#e9f4e5;border-radius:5px;color:#317e23}.job-grid{margin-top:0;gap:20px}.job-card{display:block;text-decoration:none;color:inherit;border-radius:10px;padding:24px}.job-heading{display:flex;gap:16px;align-items:center}.job-heading img{width:45px;height:45px;object-fit:contain;flex:none}.job-card h2{font-size:20px}.job-card .meta{margin:18px 0 14px}.excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:18px;white-space:normal;line-height:1.6}.job-view{display:block;font-size:14px;font-weight:600;color:#317e23;border-top:1px solid #edf1ed;padding-top:14px}.job-detail-layout{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.65fr);gap:24px;align-items:start}.job-sidebar{display:flex;flex-direction:column;gap:16px}.job-sidebar .job-card{padding:20px}.job-sidebar h2{font-size:18px}.job-sidebar .excerpt{-webkit-line-clamp:2;font-size:14px}.job-sidebar .job-view{display:none}.job-card.selected{border:2px solid #317e23;background:#fcfefb}.back-jobs{font-size:14px;font-weight:600;color:#317e23;padding:0 0 5px}.job-detail{border-radius:12px;padding:30px;position:sticky;top:110px}.job-detail h2{font-size:26px}.job-detail-body{max-height:60vh;overflow:auto;padding-right:12px}.job-detail-body section{margin:0 0 28px}.job-detail-body h3{font:600 17px 'DM Sans',sans-serif;margin:0 0 14px}.job-description{line-height:1.8}.job-apply-bar{padding-top:20px;border-top:1px solid #e1e7e3}.job-apply-bar .button{width:100%;border:0}.button:disabled{opacity:.6;cursor:wait}
@media(max-width:950px){.job-search{grid-template-columns:1fr 1fr}.filter-toggle{width:52px}.job-detail-layout{grid-template-columns:300px minmax(0,1fr)}.job-detail{padding:24px}}
@media(max-width:720px){.job-search{grid-template-columns:1fr 52px;padding:18px;gap:14px}.job-search label{grid-column:1/-1}.job-detail-layout{grid-template-columns:1fr}.job-sidebar .job-card{display:none}.job-detail{position:static}.job-detail-body{max-height:none;overflow:visible}.job-detail h2{font-size:23px}.job-card h2{font-size:19px}.job-filters select{margin:10px 0}.job-filters button{margin-left:0}}

/* Compact application dialog: paired fields and full-width attachment. */
.apply-dialog{width:min(760px,calc(100% - 32px));max-width:760px;max-height:calc(100dvh - 32px);overflow-x:hidden;overflow-y:auto}
.apply-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;padding:26px 30px;line-height:1.4}
.apply-form .cancel{grid-column:1/-1;justify-self:end;padding:5px 0;margin:0}
.apply-form h2{grid-column:1/-1;margin:0 0 4px;font-size:1.5rem;line-height:1.25;overflow-wrap:anywhere}
.apply-form label{min-width:0;margin:0;font-size:.875rem;line-height:1.4}
.apply-form input{min-width:0;height:46px;padding:10px 12px;margin-top:6px}
.apply-form .resume-field{grid-column:1/-1}
.apply-form input[type=file]{height:auto;min-height:46px;font-size:.875rem;padding:9px 12px}
.apply-form input::file-selector-button{font:inherit;border:0;border-radius:5px;background:#edf5e9;color:#315c26;padding:5px 10px;margin-right:10px;cursor:pointer}
.apply-form .form-actions{grid-column:1/-1;margin:4px 0 0;padding-top:16px;border-top:1px solid #e1e7e3;gap:10px}
@media(max-width:480px){.apply-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:14px}.apply-form{padding:16px;gap:12px}.apply-form h2{font-size:1.25rem}.apply-form label{font-size:.875rem}.apply-form input{padding:8px;min-width:0}.apply-form .form-actions{padding-top:12px}.apply-form .button{width:100%}}
@media(max-height:560px) and (min-width:481px){.apply-form{padding:16px 24px;gap:10px 18px}.apply-form h2{font-size:1.25rem}.apply-form .form-actions{padding-top:10px;margin:0}}@media(max-height:560px) and (min-width:481px){.apply-form{position:relative;padding:14px 22px;gap:8px 18px}.apply-form .cancel{position:absolute;top:14px;right:22px}.apply-form h2{padding-right:70px;margin:0}.apply-form input{height:40px;padding:7px 10px;margin-top:4px}.apply-form input[type=file]{min-height:40px;height:auto;padding:6px 10px}.apply-form .form-actions{padding-top:8px}.apply-form .button{min-height:40px;padding:9px 16px}}