/* Native WP markup uses the saved jobs design; no client-side router. */
.jobs-archive-wp.site-main,.jobs-single.site-main{width:min(1600px,calc(100% - 40px));max-width:none;margin:0 auto;padding:26px 0 0}
.jobs-archive-wp>.jd-page,.jobs-single>.jd-page{width:100%;margin:0;max-width:none}
.jd-wp-discovery{margin:0 0 20px}
.jd-wp-toolbar{position:relative;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--jd-line);margin-top:10px}
.jd-filter-buttons{flex-wrap:wrap}
.jd-wp-filter{position:relative}
.jd-wp-filter>summary{list-style:none;cursor:pointer;user-select:none}
.jd-wp-filter>summary::-webkit-details-marker{display:none}
.jd-wp-filter[open]>summary{border-color:var(--jd-blue);color:var(--jd-blue);background:var(--jd-pale)}
.jd-wp-popover{position:absolute;top:calc(100% + 8px);left:0;z-index:15;width:300px;max-width:calc(100vw - 28px);display:grid;gap:18px;padding:22px;border:1px solid #e5e5e5;border-radius:19px;background:white;box-shadow:0 18px 60px #17171720}
.jd-wp-popover label{display:grid;gap:8px;font-size:13px}
.jd-wp-popover input,.jd-wp-popover select{width:100%;min-width:0;min-height:44px;padding:10px;border:1px solid #d8d8d8;border-radius:10px;background:white;color:#171717;font-size:14px}
.jd-native-salary{display:flex;gap:10px;align-items:end}
.jd-native-salary label{flex:1;min-width:0}
.jd-native-salary>span{font-size:12px;padding-bottom:14px;color:#737373}
.jd-wp-sort label{font-size:0}
.jd-wp-sort select{font-size:13px;color:#646464;background:transparent;border:0;padding:12px 24px 12px 8px;max-width:260px;cursor:pointer}
.jd-result-note{margin:18px 0;font-size:13px;color:#737373}
.jd-wp-reset{display:inline-flex;margin-top:14px;color:#0075d4!important;font-size:13px}
.jd-card-heading{min-width:0}.jd-card-name h2{overflow-wrap:anywhere}.jd-card-name{min-width:0}
.jd-avatar img{border-radius:inherit}
.jd-save{cursor:pointer}
.jd-pagination{margin:34px 0 14px}
.jd-pagination ul{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}
.jd-pagination li{margin:0}.jd-pagination a,.jd-pagination span{display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 14px;border:1px solid #e5e5e5;border-radius:12px;font-size:14px;color:#5c5c5c}
.jd-pagination .current{color:#005eb5;background:#eff9ff;border-color:#b6e5ff;font-weight:700}
.jd-pagination a:hover{color:#005eb5;border-color:#b6e5ff}
.jd-pagination .dots{border-color:transparent}
.jobs-single .jd-full-card{max-width:960px;margin:26px auto;padding:clamp(22px,4vw,48px);border:1px solid #e5e5e5;border-radius:24px;background:#fff}
.jobs-single .jd-full-card h1{font-size:clamp(28px,3.5vw,44px);line-height:1.2;letter-spacing:-.035em;margin:16px 0 24px}
.jobs-single .jd-company-logo{width:72px;height:72px;object-fit:contain;border-radius:16px}
.jobs-single .jd-company-name{color:#737373;font-size:15px}
.jobs-single .jd-salary{text-align:left;padding:0;margin:20px 0}
.jobs-single .jd-conditions{padding:0}
.jobs-single .jd-description{font-size:16px;line-height:1.8;margin:28px 0;color:#353c43}
@media(max-width:760px){.jobs-archive-wp.site-main,.jobs-single.site-main{width:calc(100% - 28px);padding-top:20px}.jd-wp-toolbar{align-items:flex-start;flex-direction:column;gap:8px;padding:16px 0}.jd-wp-filter{position:static}.jd-wp-popover{top:62px;left:0;width:min(340px,100%)}.jd-wp-sort{align-self:flex-end}.jd-wp-sort select{max-width:100%;padding-right:0}.jd-filter-button{font-size:12px;min-height:44px;padding:9px 11px;gap:5px}.jd-filter-buttons{gap:6px}.jd-wp-filter:last-child .jd-wp-popover{right:0;left:auto}.jd-pagination ul{gap:5px}.jd-pagination a,.jd-pagination span{min-width:38px;padding:0 10px}.jd-crumb{flex-wrap:wrap}.jobs-single .jd-full-card{padding:22px}}
@media(max-width:420px){.jd-heading{align-items:flex-start}.jd-heading .jd-post{font-size:11px;padding:10px 12px}.jd-page .jd-heading h1{font-size:30px}.jd-heading p{font-size:14px}}
/* Save controls sit outside the card grid, as in the original card markup. */
.jobs-archive-wp .jd-card>.jd-save{position:absolute;right:19px;top:20px;z-index:2}
.jobs-archive-wp .jd-card-heading{grid-column:1;grid-row:1}
.jobs-archive-wp .jd-card>.jd-salary{grid-column:2;grid-row:1}
@media(max-width:760px){.jobs-archive-wp .jd-card>.jd-save{right:12px;top:12px}.jobs-archive-wp .jd-card>.jd-salary{grid-column:1;grid-row:auto}.jobs-archive-wp .jd-heading{display:flex;flex-wrap:wrap;gap:14px}.jobs-archive-wp .jd-heading>div{width:100%;min-width:0}.jobs-archive-wp .jd-heading .jd-post{width:auto;height:auto;min-height:40px;border-radius:999px;padding:10px 15px;font-size:12px}.jobs-archive-wp .jd-heading h1{white-space:normal}}
.jd-wp-filter.has-value>summary{background:var(--jd-pale);border-color:#b6e5ff;color:#005eb5}
body:is(.post-type-archive-job,.tax-job_sector,.single-job) .refined-header .desktop-nav a[aria-current=page]{border-color:#171717;color:#171717;font-weight:700}
@media(max-width:760px){.jobs-archive-wp .jd-sectors{width:calc(100% + 28px);max-width:calc(100% + 28px);margin-left:-14px;margin-right:-14px;padding-left:14px;padding-right:14px}}
/* Full vacancy follows the original detail hierarchy, without a preview pane. */
.jobs-single .jd-back{display:inline-flex;align-items:center;min-height:40px;margin:0 0 26px;color:#646464;font-size:14px;text-decoration:none}
.jobs-single .jd-back:hover{color:#0075d4}
.jobs-single .jd-vacancy{max-width:960px;margin:0 auto 30px;border:1px solid #e5e5e5;border-radius:24px;padding:40px;background:#fff}
.jobs-single .jd-detail-company{margin-bottom:24px;font-size:15px;gap:14px}
.jobs-single .jd-detail-company .jd-avatar{width:56px;height:56px;border:1px solid #f2f2f2;border-radius:14px}
.jobs-single .jd-vacancy h1{font-size:clamp(30px,3vw,44px);line-height:1.18;letter-spacing:-.04em;font-weight:750;margin:0 0 24px;overflow-wrap:anywhere}
.jobs-single .jd-vacancy-salary{display:grid;gap:6px;margin-bottom:26px}
.jobs-single .jd-vacancy-salary strong{font-size:28px;line-height:1.3;letter-spacing:-.03em}
.jobs-single .jd-vacancy-salary>span{font-size:13px;color:#737373}
.jobs-single .jd-vacancy-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:32px}
.jobs-single .jd-vacancy-actions .jd-primary{min-width:240px;min-height:48px}
.jobs-single .jd-vacancy-actions button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 15px;min-height:48px;border:1px solid #ddd;border-radius:12px;background:#fff;color:#5c5c5c;font-size:14px;cursor:pointer}
.jobs-single .jd-vacancy-actions button:hover{border-color:#b6e5ff;color:#005eb5;background:#eff9ff}
.jobs-single .jd-vacancy-save[aria-pressed=true]{background:#eff9ff;color:#005eb5;border-color:#b6e5ff}
.jobs-single .jd-vacancy-save[aria-pressed=true] svg{fill:#dcf2ff}
.jobs-single .jd-facts{margin:0 0 32px;padding:26px 0;gap:22px 36px}
.jobs-single .jd-facts dt{font-size:13px;margin-bottom:7px}
.jobs-single .jd-facts dd{font-size:15px;line-height:1.6}
.jobs-single .jd-description{margin:0 0 32px;max-width:75ch}
.jobs-single .jd-description h2{font-size:25px;line-height:1.3;margin:0 0 22px;letter-spacing:-.03em}
.jobs-single .jd-description h3{font-size:18px;line-height:1.4;margin:24px 0 10px;letter-spacing:-.02em}
.jobs-single .jd-description p,.jobs-single .jd-description li{font-size:16px;line-height:1.8;color:#414141}
.jobs-single .jd-description ul{padding-left:22px}
.jobs-single .jd-vacancy-footer{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;border-top:1px solid #e5e5e5;padding-top:22px;font-size:13px;color:#737373}
.jobs-single .jd-vacancy-footer p{margin:0;line-height:1.8}
.jobs-single .jd-vacancy-footer p span{display:block}
.jobs-single .jd-vacancy-footer a{color:#005eb5}
@media(max-width:700px){.jobs-single .jd-vacancy{padding:24px 20px;border-radius:20px}.jobs-single .jd-vacancy h1{font-size:30px}.jobs-single .jd-vacancy-salary strong{font-size:25px}.jobs-single .jd-vacancy-actions .jd-primary{width:100%}.jobs-single .jd-vacancy-actions button{flex:1}.jobs-single .jd-facts{grid-template-columns:1fr;gap:18px}.jobs-single .jd-back{margin-bottom:16px}.jobs-single .jd-vacancy-footer{align-items:flex-start;flex-direction:column;gap:14px}.jobs-single .jd-description p,.jobs-single .jd-description li{font-size:15px}}

/* Native vacancy recommendations and restrained employer marks. */
.jobs-single .jd-vacancy-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start;max-width:1360px;margin:0 auto}
.jobs-single .jd-vacancy{max-width:none;width:100%;box-sizing:border-box;margin:0}
.jobs-single .jd-related{position:sticky;top:100px;border:1px solid #e5e5e5;border-radius:24px;padding:24px;background:#fafafa;min-width:0}
.jobs-single .jd-related h2{font-size:22px;line-height:1.3;margin:0 0 8px}
.jobs-single .jd-related-intro{font-size:13px;color:#777;margin:0 0 22px}
.jobs-single .jd-related-card{display:block;color:inherit;text-decoration:none;padding:20px 0;border-top:1px solid #e3e3e3}
.jobs-single .jd-related-company{font-size:12px;color:#777}
.jobs-single .jd-related-card h3{font-size:16px;line-height:1.45;margin:8px 0 10px}
.jobs-single .jd-related-card strong{font-size:15px;display:block}
.jobs-single .jd-related-link{display:flex;justify-content:space-between;color:#0075d5;font-size:13px;margin-top:14px}
.jobs-single .jd-related-card:hover h3{color:#0075d5}
.jobs-single .jd-related-all{display:block;font-size:14px;padding-top:8px}
.jobs-single .jd-detail-company .jd-avatar{width:44px;height:44px;flex:0 0 44px;border:0;background:transparent;border-radius:10px}
.jobs-single .jd-detail-company .jd-avatar img{width:44px;height:44px;object-fit:contain}
@media(max-width:1000px){.jobs-single .jd-vacancy-layout{grid-template-columns:minmax(0,1fr)}.jobs-single .jd-related{position:static}.jobs-single .jd-related-card{padding:18px 0}}

.jd-seo-copy{max-width:900px;margin:56px auto 24px;padding:32px 36px;border:1px solid #e7e9ec;border-radius:20px;background:#fff;color:#454b52}
.jd-seo-copy h2{margin:0 0 20px;color:#20252a;font-size:clamp(23px,2.5vw,30px);line-height:1.3;letter-spacing:-.025em}
.jd-seo-copy h3{margin:28px 0 10px;color:#252a30;font-size:19px;line-height:1.4}
.jd-seo-copy h4{margin:20px 0 6px;color:#333941;font-size:16px;line-height:1.45}
.jd-seo-copy p{margin:0 0 14px;font-size:15px;line-height:1.8}
.jd-seo-copy p:last-child{margin-bottom:0}
@media(max-width:760px){.jd-seo-copy{margin:38px 0 20px;padding:23px 20px;border-radius:16px}.jd-seo-copy p{font-size:14px;line-height:1.75}.jd-seo-copy h3{font-size:18px}}
