:root {
  --jobs-ink: #17243d;
  --jobs-muted: #56657c;
  --jobs-line: #dfe7f1;
  --jobs-soft: #f6f8ff;
  --jobs-brand: #3e2fa4;
  --jobs-brand-dark: #302282;
  --jobs-blue: #3b63d9;
  --jobs-teal: #34b6a4;
  --jobs-teal-dark: #137e72;
  --jobs-accent: #eef3ff;
  --jobs-green: #137e72;
  --jobs-warn: #b64f3b;
  --jobs-danger: #a33a3a;
  --jobs-radius: 18px;
  --jobs-shadow: 0 12px 34px rgba(23, 36, 61, .09);
}

html:has(body.jobs-body), body.jobs-body { width:100% !important; max-width:100%; overflow-x:clip; }
body.jobs-body .top-menu { width:100% !important; max-width:100%; box-sizing:border-box; }

.jobs-page { background:#fff; color:var(--jobs-ink); min-height:70vh; padding-top:77px; font-family:inherit; }
.jobs-page *, .jobs-page *::before, .jobs-page *::after { box-sizing:border-box; }
.jobs-page nav a { background:transparent; font-size:inherit !important; }
.jobs-page button { font-family:inherit; font-size:.9rem; }
.jobs-page input, .jobs-page select, .jobs-page textarea { font-size:16px !important; }
.jobs-page input, .jobs-page textarea { text-align:left; }
.jobs-shell { width:min(1180px, calc(100% - 36px)); margin:0 auto; }
.jobs-hero { background:linear-gradient(135deg,#f7f9ff 0%,#eef3ff 54%,#eaf9f5 100%); border-bottom:1px solid var(--jobs-line); padding:68px 0 48px; }
.jobs-hero h1 { max-width:800px; margin:6px 0 10px; font-size:clamp(2.25rem,5vw,4.5rem); letter-spacing:-.055em; line-height:.98; }
.jobs-hero > .jobs-shell > p:not(.jobs-eyebrow) { max-width:700px; margin:0 0 28px; color:var(--jobs-muted); font-size:1.15rem; line-height:1.65; }
.jobs-eyebrow { margin:0; color:var(--jobs-brand-dark); font-size:.77rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.jobs-hero-search { display:grid; grid-template-columns:minmax(260px,1.7fr) minmax(150px,.8fr) 95px auto; gap:10px; align-items:end; padding:12px; background:#fff; border:1px solid var(--jobs-line); border-radius:20px; box-shadow:var(--jobs-shadow); }
.jobs-hero-search label, .jobs-alert-card label, .job-report label { display:grid; gap:6px; color:var(--jobs-muted); font-size:.78rem; font-weight:750; }
.jobs-hero-search input, .jobs-alert-card input, .jobs-alert-card select, .jobs-filters select, .jobs-filters input, .job-report input, .job-report select, .job-report textarea { width:100%; min-height:44px; border:1px solid var(--jobs-line); border-radius:10px; padding:10px 12px; background:#fff; color:var(--jobs-ink); font:inherit; }
.jobs-location-warning { max-width:1180px; margin:10px auto 0; padding:11px 14px; border:1px solid #e3b860; border-radius:8px; background:#fff8e8; color:#5b4314; font-size:.9rem; }
.jobs-hero-search input { border:0; padding:3px 2px; min-height:34px; }
.jobs-button { display:inline-flex; min-height:44px; align-items:center; justify-content:center; border:1px solid transparent; border-radius:11px; padding:10px 16px; font-size:.92rem !important; font-weight:800; line-height:1.2; text-decoration:none; cursor:pointer; transform:none; transition:background-color .12s ease,border-color .12s ease,color .12s ease; }
.jobs-button:hover,.jobs-button:active { transform:none; }
.jobs-button:focus-visible, .jobs-page button:focus-visible, .jobs-page a:focus-visible, .jobs-page input:focus-visible, .jobs-page select:focus-visible, .jobs-page textarea:focus-visible { outline:3px solid rgba(59,99,217,.35); outline-offset:2px; }
.jobs-button--primary { border-color:var(--jobs-brand); background:var(--jobs-brand); color:#fff !important; box-shadow:none; }
.jobs-button--primary:hover { border-color:var(--jobs-brand-dark); background:var(--jobs-brand-dark); box-shadow:none; }
.jobs-button--secondary { background:#fff; color:var(--jobs-brand-dark) !important; border-color:var(--jobs-line); }
.jobs-button--secondary:hover { border-color:#aebad0; background:#f4f6ff; box-shadow:none; }
.jobs-layout { display:grid; grid-template-columns:250px minmax(0,1fr); gap:28px; padding:40px 0 80px; align-items:start; }
.jobs-filters { position:sticky; top:101px; padding:20px; border:1px solid var(--jobs-line); border-radius:var(--jobs-radius); background:#fff; }
.jobs-active-filters { display:flex; width:min(1228px,100%); align-items:center; justify-content:center; gap:10px; margin:10px auto 0; padding:0 2px; color:var(--jobs-muted); font-size:.78rem; }
.jobs-active-filters > span { flex:0 0 auto; font-weight:800; color:var(--jobs-ink); }
.jobs-active-filters > div { display:flex; min-width:0; flex-wrap:wrap; gap:7px; }
.jobs-active-filters > div button { display:inline-flex; align-items:center; gap:7px; min-height:44px; padding:6px 10px; border:1px solid #b9d9d3; border-radius:999px; background:#f2faf8; color:var(--jobs-brand-dark); font:inherit; font-weight:750; text-decoration:none; cursor:pointer; }
.jobs-active-filters > div button:hover { border-color:var(--jobs-green); background:#e6f5f2; }
.jobs-active-filters > div b { font-size:1rem; line-height:1; }
.jobs-active-filters__clear { flex:0 0 auto; color:var(--jobs-brand-dark); font-weight:800; }
.jobs-filters form { display:grid; gap:16px; }
.jobs-filters fieldset { border:0; padding:0; margin:0; display:grid; gap:8px; }
.jobs-filters legend { margin-bottom:7px; font-size:.84rem; font-weight:850; }
.jobs-filters label { color:var(--jobs-muted); font-size:.82rem; }
.jobs-checks label { display:flex; gap:8px; align-items:flex-start; line-height:1.35; }
.jobs-checks input { width:17px; min-height:17px; margin-top:1px; }
.jobs-filter-clear { text-align:center; color:var(--jobs-muted); font-size:.85rem; }
.jobs-results { min-width:0; }
.jobs-results__head { display:flex; justify-content:space-between; gap:20px; align-items:end; margin-bottom:18px; }
.jobs-results__head h2 { margin:4px 0 0; font-size:1.65rem; }
.jobs-view-tools { display:flex; gap:12px; align-items:center; }
.jobs-view-tools label { display:flex; align-items:center; gap:6px; color:var(--jobs-muted); font-size:.82rem; }
.jobs-view-tools select { min-height:38px; border:1px solid var(--jobs-line); border-radius:8px; }
.jobs-toggle { display:flex; padding:3px; border:1px solid var(--jobs-line); border-radius:9px; }
.jobs-toggle button { border:0; border-radius:6px; background:transparent; padding:7px 11px; cursor:pointer; }
.jobs-toggle button.is-active { background:var(--jobs-ink); color:#fff; }
.jobs-section-label { margin:0 0 9px; color:var(--jobs-warn); font-size:.76rem; font-weight:850; text-transform:uppercase; letter-spacing:.12em; }
.jobs-featured { margin-bottom:26px; padding:16px; border:1px solid #eadca9; border-radius:var(--jobs-radius); background:#fffdf5; }
.job-card { position:relative; margin-bottom:14px; padding:22px; border:1px solid var(--jobs-line); border-radius:var(--jobs-radius); background:#fff; box-shadow:0 5px 20px rgba(23,38,58,.045); }
.job-card[hidden] { display:none; }
.job-card--highlighted { border-color:#aebcf4; box-shadow:0 7px 24px rgba(62,47,164,.12); }
.job-card--featured { margin-bottom:12px; }
.job-card__topline, .job-card__actions, .job-detail__toolbar { display:flex; gap:10px; justify-content:space-between; align-items:center; flex-wrap:wrap; }
.job-card__badges { display:flex; gap:6px; flex-wrap:wrap; }
.jobs-badge { display:inline-flex; align-items:center; border-radius:999px; padding:5px 9px; background:var(--jobs-accent); color:var(--jobs-green); font-size:.7rem; font-weight:850; }
.jobs-badge--sponsored { background:#fff1c9; color:#7a5100; }
.jobs-badge--quiet { background:var(--jobs-soft); color:var(--jobs-muted); }
.job-card__tools { display:flex; gap:4px; }
.job-card__tools button, .job-detail__toolbar button { border:0; border-radius:7px; background:transparent; color:var(--jobs-muted); padding:6px 8px; cursor:pointer; font-size:.78rem; }
.job-card__tools button.is-active, .job-detail__toolbar button.is-active { color:var(--jobs-brand-dark); background:var(--jobs-accent); }
.job-card__identity { display:flex; gap:14px; align-items:center; margin:17px 0; }
.job-card__identity img, .job-card__monogram { width:52px; height:52px; border-radius:12px; object-fit:contain; border:1px solid var(--jobs-line); background:#fff; }
.job-card__monogram { display:grid; place-items:center; background:var(--jobs-soft); font-weight:900; }
.job-card h2 { margin:0 0 4px; font-size:1.22rem; line-height:1.2; }
.job-card h2 a { color:var(--jobs-ink); text-decoration:none; }
.job-card h2 a:hover { color:var(--jobs-brand-dark); }
.job-card__employer { color:var(--jobs-muted); font-size:.91rem; }
.job-card__facts, .job-detail__facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.jobs-fact { display:flex; min-width:0; gap:8px; align-items:flex-start; padding:10px 11px; border-radius:10px; background:var(--jobs-soft); }
.jobs-fact__icon { color:var(--jobs-brand); font-weight:900; }
.jobs-fact span:last-child { display:grid; min-width:0; gap:2px; }
.jobs-fact small { color:var(--jobs-muted); font-size:.68rem; text-transform:uppercase; letter-spacing:.06em; }
.jobs-fact strong { overflow-wrap:anywhere; font-size:.84rem; line-height:1.25; }
.job-card__actions { margin-top:17px; justify-content:flex-start; }
.job-card__report { margin-left:auto; color:var(--jobs-muted); font-size:.76rem; }
.jobs-empty, .jobs-not-found, .jobs-setup { padding:40px; border:1px dashed var(--jobs-line); border-radius:var(--jobs-radius); text-align:center; background:var(--jobs-soft); }
.job-card--new { border-color:#9ddacb; box-shadow:0 7px 24px rgba(14,116,94,.1); }
.jobs-market-insights { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0 0 20px; }
.jobs-market-insights > div { display:grid; gap:3px; padding:15px; border:1px solid var(--jobs-line); border-radius:13px; background:var(--jobs-soft); }
.jobs-market-insights small, .jobs-market-insights span { color:var(--jobs-muted); }
.jobs-market-insights strong { font-size:1.05rem; }
.jobs-pagination { display:flex; align-items:center; justify-content:center; gap:12px; margin:24px 0; }
.jobs-pagination__form { margin:0; }
.jobs-local-library { display:grid; grid-template-columns:minmax(180px,.7fr) minmax(0,1.3fr); gap:24px; margin-top:28px; padding:24px; border:1px solid var(--jobs-line); border-radius:var(--jobs-radius); background:#fbfcfe; }
.jobs-local-library h2 { margin:5px 0 8px; font-size:1.35rem !important; }
.jobs-local-library p { margin:0; color:var(--jobs-muted); line-height:1.5; }
.jobs-local-library__groups { display:grid; gap:8px; }
.jobs-local-library details { border:1px solid var(--jobs-line); border-radius:11px; background:#fff; }
.jobs-local-library summary { display:flex; justify-content:space-between; gap:10px; padding:12px 14px; cursor:pointer; font-weight:800; }
.jobs-local-library summary span { display:grid; place-items:center; min-width:25px; min-height:25px; border-radius:999px; background:var(--jobs-soft); font-size:.75rem; }
.jobs-local-list { display:grid; gap:7px; padding:0 14px 14px; }
.jobs-local-list > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:3px 10px; align-items:center; padding:9px 0; border-top:1px solid var(--jobs-line); }
.jobs-local-list a, .jobs-local-list strong { overflow-wrap:anywhere; color:var(--jobs-ink); font-size:.88rem !important; }
.jobs-local-list span { color:var(--jobs-muted); font-size:.75rem; }
.jobs-local-list button { grid-column:2; grid-row:1/3; min-height:40px; border:1px solid var(--jobs-line); border-radius:8px; background:#fff; color:var(--jobs-brand-dark); cursor:pointer; }
.jobs-setup { margin-bottom:18px; }
.jobs-alert-card { display:grid; grid-template-columns:1fr; gap:18px; margin-top:28px; padding:24px; border:1px solid #d7def4; border-radius:14px; background:linear-gradient(145deg,#fff 0%,#f4f6ff 100%); box-shadow:0 10px 28px rgba(46,38,111,.08); color:var(--jobs-ink); }
.jobs-alert-card__intro { display:grid; grid-template-columns:42px minmax(0,1fr); align-items:start; gap:13px; }
.jobs-alert-card__icon { display:grid; width:42px; height:42px; place-items:center; border-radius:12px; background:var(--jobs-accent); color:var(--jobs-brand); }
.jobs-alert-card__icon svg { width:22px; height:22px; }
.jobs-alert-card .jobs-eyebrow { margin:1px 0 4px; color:var(--jobs-brand-dark); font-size:.7rem; }
.jobs-alert-card h2 { margin:0 0 5px; color:var(--jobs-ink); font-size:1.2rem; line-height:1.25; letter-spacing:-.025em; }
.jobs-alert-card p { margin:0; color:var(--jobs-muted); line-height:1.5; }
.jobs-alert-card form { display:grid; grid-template-columns:minmax(0,1fr) 124px; gap:12px; align-items:end; }
.jobs-alert-card form > .jobs-button { grid-column:1/-1; width:100%; min-height:48px; border-color:var(--jobs-brand); border-radius:9px; background:var(--jobs-brand) !important; box-shadow:none; transform:none; }
.jobs-alert-card form > .jobs-button:hover { border-color:var(--jobs-brand-dark); background:var(--jobs-brand-dark) !important; transform:none; }
.jobs-alert-card .jobs-form-status,.jobs-alert-card__fine-print { grid-column:1/-1; }
.jobs-alert-card .jobs-form-status:empty { display:none; }
.jobs-alert-card .jobs-alert-card__fine-print { color:var(--jobs-muted) !important; font-size:.75rem; }
.jobs-form-status { grid-column:1/-1; min-height:1.2em; margin:4px 0 0; font-size:.82rem; }
.jobs-map { min-height:620px; border:1px solid var(--jobs-line); border-radius:var(--jobs-radius); overflow:hidden; }
#jobsMap { min-height:620px; display:grid; place-items:center; background:var(--jobs-soft); color:var(--jobs-muted); }
.jobs-compare { position:fixed; z-index:5000; left:50%; bottom:18px; transform:translateX(-50%); width:min(760px,calc(100% - 28px)); display:flex; align-items:center; gap:15px; padding:12px 14px; border:1px solid var(--jobs-line); border-radius:14px; background:#fff; box-shadow:0 18px 60px rgba(0,0,0,.2); }
.jobs-compare[hidden] { display:none; }
.jobs-compare > div:first-child { display:grid; min-width:120px; }
.jobs-compare > div:first-child span { color:var(--jobs-muted); font-size:.75rem; }
.jobs-compare [data-compare-items] { display:flex; gap:6px; flex:1; overflow:auto; }
.jobs-compare [data-compare-items] span { white-space:nowrap; padding:7px 9px; border-radius:8px; background:var(--jobs-soft); font-size:.76rem; }
.jobs-breadcrumb { display:flex; flex-wrap:wrap; gap:8px; padding:24px 0; color:var(--jobs-muted); font-size:.8rem; }
.jobs-breadcrumb a { display:inline !important; width:auto !important; height:auto !important; margin:0 !important; padding:0 !important; background:transparent !important; color:var(--jobs-brand-dark); font-size:.8rem !important; line-height:inherit !important; }
.jobs-breadcrumb a::before { display:none !important; }
.job-detail { padding-bottom:70px; }
.job-detail__header { display:flex; justify-content:space-between; gap:24px; align-items:flex-end; padding:26px 0; }
.job-detail__identity { display:flex; gap:18px; align-items:center; }
.job-detail__logo { width:78px; height:78px; object-fit:contain; border:1px solid var(--jobs-line); border-radius:16px; }
.job-detail h1 { max-width:850px; margin:8px 0 4px; font-size:clamp(2rem,4vw,3.7rem); line-height:1.02; letter-spacing:-.045em; }
.job-detail__employer { color:var(--jobs-muted); font-size:1.05rem; }
.job-detail__facts { grid-template-columns:repeat(auto-fit,minmax(145px,1fr)); margin:10px 0 28px; }
.job-detail__grid { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:28px; align-items:start; }
.job-detail__main { grid-column:1; grid-row:1; }
.job-detail__aside { position:sticky; top:101px; grid-column:2; grid-row:1; }
.job-apply-card { padding:22px; border:1px solid var(--jobs-line); border-radius:var(--jobs-radius); box-shadow:var(--jobs-shadow); }
.job-apply-card > strong { font-size:1.12rem; }
.job-apply-card p { color:var(--jobs-muted); line-height:1.5; }
.job-apply-card .jobs-button { width:100%; }
.job-apply-card small { display:block; margin-top:12px; color:var(--jobs-muted); line-height:1.4; }
.job-section { margin-bottom:22px; padding:28px; border:1px solid var(--jobs-line); border-radius:var(--jobs-radius); }
.job-section h2 { margin:0 0 16px; font-size:1.45rem; }
.job-section__heading { display:flex; justify-content:space-between; gap:20px; align-items:start; }
.job-section__heading h2 { margin:4px 0 16px; }
.jobs-provenance { color:var(--jobs-muted); font-size:.72rem; }
.job-attributes { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.job-attribute { display:grid; gap:4px; padding:13px; border-radius:11px; background:var(--jobs-soft); }
.job-attribute small { color:var(--jobs-muted); font-size:.7rem; text-transform:uppercase; letter-spacing:.05em; }
.job-attribute strong { font-size:.88rem; line-height:1.4; }
.job-attribute--missing strong { color:var(--jobs-muted); font-weight:550; }
.job-description { font-size:1rem; line-height:1.75; }
.job-description h2, .job-description h3 { margin-top:1.6em; }
.job-description a { color:var(--jobs-brand-dark); }
.job-source-card dl { display:grid; gap:10px; }
.job-source-card dl > div { display:grid; grid-template-columns:140px 1fr; gap:14px; }
.job-source-card dt { color:var(--jobs-muted); }
.jobs-claim-link { display:inline-block; margin-top:12px; color:var(--jobs-brand-dark); font-weight:800; }
.job-report form { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.job-report label:nth-of-type(2), .job-report .jobs-form-status { grid-column:1/-1; }
.jobs-expired { display:flex; justify-content:center; gap:8px; padding:12px; border-radius:10px; background:#fff0ef; color:var(--jobs-danger); }
.jobs-preview-stage { margin:0 auto 40px; padding:12px; background:#dcefeb; border-radius:18px; }
.jobs-preview-stage iframe { display:block; width:100%; min-height:900px; border:0; border-radius:12px; background:#fff; }
.jobs-preview-stage--mobile { max-width:414px; }
.jobs-similar { margin-top:45px; }
.jobs-similar h2 { margin:6px 0 18px; }
.jobs-similar__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.jobs-similar__grid .job-card__facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
.jobs-similar__grid .job-card__actions .jobs-button--primary { width:100%; }
.job-mobile-apply { display:none; }
.employer-profile { padding-bottom:80px; }
.employer-profile__header { display:flex; gap:20px; align-items:center; padding:32px; border-radius:var(--jobs-radius); background:linear-gradient(135deg,#f7f9ff,#eef3ff 58%,#eaf9f5); }
.employer-profile__header h1 { margin:5px 0; font-size:clamp(2rem,4vw,3.5rem); }
.employer-profile__header .jobs-button { margin-left:auto; }
.employer-profile__logo, .employer-profile__monogram { width:90px; height:90px; border-radius:18px; border:1px solid var(--jobs-line); background:#fff; object-fit:contain; }
.employer-profile__monogram { display:grid; place-items:center; font-size:2.4rem; font-weight:900; }
.employer-profile__stats { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:20px 0; }
.employer-profile__stats div { display:grid; gap:3px; padding:18px; border:1px solid var(--jobs-line); border-radius:13px; }
.employer-profile__stats strong { font-size:1.4rem; }
.employer-profile__stats span { color:var(--jobs-muted); font-size:.8rem; }
.jobs-claim-banner { margin-top:30px; padding:28px; border-radius:var(--jobs-radius); background:var(--jobs-ink); color:#fff; }
.jobs-claim-banner h2 { margin-top:0; }

@media (max-width:980px) {
  .jobs-hero-search { grid-template-columns:1fr 1fr; }
  .jobs-layout { grid-template-columns:1fr; }
  .jobs-filters { position:static; }
  .jobs-filters form { grid-template-columns:repeat(2,1fr); }
  .jobs-filters .jobs-button, .jobs-filters .jobs-filter-clear { align-self:end; }
  .job-detail__facts { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .job-detail__grid { grid-template-columns:1fr; }
  .job-detail__main { grid-column:1; grid-row:auto; }
  .job-detail__aside { position:static; grid-column:1; grid-row:auto; }
  .job-apply-card { display:none; }
  .job-mobile-apply { display:block; position:fixed; z-index:4000; bottom:0; left:0; right:0; padding:10px 16px; background:#fff; border-top:1px solid var(--jobs-line); }
  .job-mobile-apply .jobs-button { width:100%; }
}

@media (max-width:680px) {
  .jobs-page { padding-top:65px; }
  .jobs-shell { width:min(100% - 22px,1180px); }
  .jobs-hero { padding:42px 0 28px; }
  .jobs-hero-search { grid-template-columns:1fr; }
  .jobs-hero-search .jobs-button { width:100%; }
  .jobs-active-filters { align-items:flex-start; flex-wrap:wrap; }
  .jobs-active-filters > div { order:3; width:100%; flex-wrap:nowrap; overflow-x:auto; padding-bottom:4px; }
  .jobs-active-filters > div button { flex:0 0 auto; }
  .jobs-layout { padding-top:24px; }
  .jobs-filters form { grid-template-columns:1fr; }
  .jobs-results__head, .job-detail__header { align-items:flex-start; flex-direction:column; }
  .job-detail__toolbar { width:100%; flex-wrap:nowrap; gap:6px; justify-content:flex-start; }
  .job-detail__toolbar button { flex:1 1 0; min-width:0; padding:10px 5px; }
  .job-detail__toolbar > .jobs-share { flex:1 1 0; min-width:0; }
  .job-detail__toolbar > .jobs-share > .jobs-share__trigger { width:100%; min-height:38px; }
  .jobs-view-tools { width:100%; justify-content:space-between; }
  .job-card { padding:17px; }
  .job-card__topline { align-items:flex-start; }
  .job-card__facts, .job-detail__facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .job-card__actions .jobs-button { width:100%; }
  .job-card__report { margin:4px auto 0; }
  .jobs-alert-card { grid-template-columns:1fr; padding:20px; }
  .jobs-alert-card form { grid-template-columns:1fr; }
  .job-detail__identity { align-items:flex-start; }
  .job-detail__logo { width:58px; height:58px; }
  .job-section { padding:20px; }
  .job-section__heading { display:block; }
  .job-attributes, .jobs-similar__grid, .employer-profile__stats { grid-template-columns:1fr; }
  .job-report form { grid-template-columns:1fr; }
  .job-report label { grid-column:1 !important; }
  .employer-profile__header { align-items:flex-start; flex-wrap:wrap; padding:22px; }
  .employer-profile__header .jobs-button { width:100%; margin-left:0; }
  .jobs-market-insights, .jobs-local-library { grid-template-columns:1fr; }
  .jobs-compare { align-items:stretch; flex-direction:column; }
}

@media (prefers-reduced-motion:reduce) {
  .jobs-page *, .jobs-page *::before, .jobs-page *::after { scroll-behavior:auto !important; transition:none !important; }
}

.jobs-featured-employers { padding:24px; border-bottom:1px solid var(--jobs-line-new); background:#fff; }
.jobs-featured-employers__heading { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:14px; }
.jobs-featured-employers__heading p { margin:0 0 4px; color:var(--jobs-brand); font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
.jobs-featured-employers__heading h2 { margin:0; font-size:20px; letter-spacing:-.02em; }
.jobs-featured-employers__heading > span { color:var(--jobs-muted-new); font-size:11px; }
.jobs-featured-employers__rail { display:grid; grid-auto-columns:minmax(230px,1fr); grid-auto-flow:column; overflow-x:auto; border-top:1px solid var(--jobs-line-new); border-bottom:1px solid var(--jobs-line-new); scrollbar-width:thin; }
.jobs-featured-employers__rail a { display:grid; grid-template-columns:auto 1fr auto; min-height:78px; align-items:center; gap:12px; padding:14px 18px; border-right:1px solid var(--jobs-line-new); color:var(--jobs-ink-new); text-decoration:none; }
.jobs-featured-employers__rail a:hover strong { color:var(--jobs-brand); text-decoration:underline; text-underline-offset:3px; }
.jobs-featured-employers__rail img { width:38px; height:38px; object-fit:contain; }
.jobs-featured-employers__rail span { display:grid; min-width:0; gap:3px; }
.jobs-featured-employers__rail strong { overflow:hidden; font-size:14px; text-overflow:ellipsis; white-space:nowrap; }
.jobs-featured-employers__rail small { color:var(--jobs-muted-new); font-size:11px; }
.jobs-featured-employers__rail b { font-weight:500; }
.company-profile__sponsored { margin:0 0 10px; color:#6e7789; font-size:10px; font-weight:600; letter-spacing:.1em; text-transform:uppercase; }
.jobs-credit-ledger { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); margin:20px 0 0; border-top:1px solid var(--jobs-line); border-bottom:1px solid var(--jobs-line); }
.jobs-credit-ledger > div { display:grid; grid-template-columns:1fr auto; gap:3px 18px; padding:18px; border-right:1px solid var(--jobs-line); }
.jobs-credit-ledger > div:last-child { border-right:0; }
.jobs-credit-ledger dt { color:var(--jobs-muted); font-size:13px; }
.jobs-credit-ledger dd { grid-row:1 / span 2; grid-column:2; margin:0; color:var(--jobs-ink); font-size:28px; font-weight:800; }
.jobs-credit-ledger small { color:var(--jobs-muted); font-size:11px; }

@media (max-width:680px) {
  .jobs-featured-employers { padding:20px 14px; }
  .jobs-featured-employers__heading { align-items:start; flex-direction:column; gap:5px; }
  .jobs-credit-ledger { grid-template-columns:1fr; }
  .jobs-credit-ledger > div { border-right:0; border-bottom:1px solid var(--jobs-line); }
  .jobs-credit-ledger > div:last-child { border-bottom:0; }
}

/* Employer workspace */
.jobs-hero--split,.jobs-portal-title,.jobs-portal-bar .jobs-shell,.jobs-panel__heading{display:flex;justify-content:space-between;gap:2rem;align-items:center}.jobs-hero--split>div{max-width:720px}.jobs-callout{max-width:360px;background:#fff;border:1px solid var(--jobs-line);border-radius:20px;padding:1.4rem;box-shadow:var(--jobs-shadow)}.jobs-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1.5rem}.jobs-feature-grid,.jobs-pricing-grid,.jobs-metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:2rem 0}.jobs-feature-grid>article,.jobs-pricing-grid>article,.jobs-metric-grid>article,.jobs-panel{background:#fff;border:1px solid var(--jobs-line);border-radius:18px;padding:1.25rem}.jobs-pricing-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.jobs-price{font-size:2rem;font-weight:800;color:var(--jobs-ink);margin:.5rem 0}.jobs-price small{font-size:.9rem;font-weight:600;color:var(--jobs-muted)}.jobs-auth-shell{max-width:720px;padding-top:3rem;padding-bottom:4rem}.jobs-form{display:grid;gap:1rem}.jobs-form--card{background:#fff;border:1px solid var(--jobs-line);border-radius:20px;padding:1.5rem;box-shadow:var(--jobs-shadow);margin:1.25rem 0}.jobs-form label,.jobs-form fieldset{display:grid;gap:.4rem;font-weight:700;color:var(--jobs-ink)}.jobs-form input,.jobs-form select,.jobs-form textarea,.jobs-portal-title select{width:100%;border:1px solid #b9c8c2;border-radius:10px;padding:.72rem .8rem;background:#fff;color:var(--jobs-ink);font:inherit}.jobs-form input:focus,.jobs-form select:focus,.jobs-form textarea:focus{outline:3px solid rgba(26,125,108,.2);border-color:var(--jobs-green)}.jobs-form label small{font-weight:400;color:var(--jobs-muted)}.jobs-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.jobs-form-wide{grid-column:1/-1}.jobs-notice{border-left:5px solid var(--jobs-green);background:#edf8f5;border-radius:12px;padding:1rem;margin:1rem 0}.jobs-notice--success{border-color:#188057;background:#effaf4}.jobs-notice--error{border-color:#b93f3f;background:#fff3f2}.jobs-portal-bar{background:#143e37;color:#fff}.jobs-portal-bar .jobs-shell{min-height:68px}.jobs-portal-bar .jobs-shell>div{display:grid}.jobs-portal-bar span{font-size:.8rem;opacity:.75}.jobs-portal-bar nav{display:flex;gap:.25rem;flex-wrap:wrap}.jobs-portal-bar a{color:#fff;text-decoration:none;padding:.55rem .7rem;border-radius:8px}.jobs-portal-bar a:hover,.jobs-portal-bar a[aria-current=page]{background:rgba(255,255,255,.14)}.jobs-portal>.jobs-shell{padding-top:2rem;padding-bottom:4rem}.jobs-portal-title{margin-bottom:1.5rem}.jobs-portal-title h1{margin:.2rem 0}.jobs-portal-narrow{max-width:900px}.jobs-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.jobs-metric-grid article{display:grid;gap:.4rem}.jobs-metric-grid strong{font-size:2rem;color:var(--jobs-ink)}.jobs-metric-grid span{color:var(--jobs-muted);font-weight:700}.jobs-panel{margin:1rem 0}.jobs-table-wrap{overflow-x:auto}.jobs-table{width:100%;border-collapse:collapse}.jobs-table th,.jobs-table td{text-align:left;padding:.85rem;border-bottom:1px solid var(--jobs-line);vertical-align:top}.jobs-table th{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--jobs-muted)}.jobs-table td small{display:block;color:var(--jobs-muted)}.jobs-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.jobs-stat-list,.jobs-order-list{list-style:none;margin:0;padding:0}.jobs-stat-list li,.jobs-order-list li{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 0;border-bottom:1px solid var(--jobs-line)}.jobs-role-list{display:grid;grid-template-columns:max-content 1fr;gap:.6rem 1rem}.jobs-role-list dt{font-weight:800}.jobs-role-list dd{margin:0;color:var(--jobs-muted)}.jobs-job-wizard{max-width:980px;margin:auto}.jobs-check-grid,.jobs-check-stack{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;border:0;padding:0}.jobs-check-grid label,.jobs-check-stack label{display:flex;grid-template-columns:auto 1fr;align-items:center;font-weight:500}.jobs-check-grid input,.jobs-check-stack input{width:auto}.jobs-live-preview{margin-top:1rem;padding:1rem;border:1px dashed var(--jobs-green);border-radius:14px;background:#f7fbfa}.jobs-form-actions{position:sticky;bottom:0;z-index:5;display:flex;justify-content:flex-end;gap:.75rem;background:rgba(248,250,249,.95);backdrop-filter:blur(8px);padding:1rem;border-top:1px solid var(--jobs-line)}

@media (max-width:800px){.jobs-hero--split,.jobs-portal-title,.jobs-portal-bar .jobs-shell,.jobs-panel__heading{align-items:flex-start;flex-direction:column}.jobs-callout{max-width:none}.jobs-feature-grid,.jobs-metric-grid,.jobs-two-column{grid-template-columns:1fr}.jobs-form-grid,.jobs-check-grid,.jobs-check-stack{grid-template-columns:1fr}.jobs-form-wide{grid-column:auto}.jobs-portal-bar{padding:.75rem 0}.jobs-portal-bar nav{overflow-x:auto;flex-wrap:nowrap;width:100%}.jobs-portal-bar a{white-space:nowrap}.jobs-form-actions .jobs-button{flex:1}}

/* OT Bestie Jobs search experience — matched to the current Indeed results layout. */
body.jobs-body {
  --jobs-jade:var(--jobs-brand);
  --jobs-jade-dark:var(--jobs-brand-dark);
  --jobs-coral:var(--jobs-teal);
  --jobs-coral-dark:var(--jobs-teal-dark);
  --jobs-cream:#f7f9ff;
  --jobs-mint:#eaf9f5;
  --jobs-ink-new:var(--jobs-ink);
  --jobs-muted-new:var(--jobs-muted);
  --jobs-line-new:var(--jobs-line);
  --jobs-soft-new:var(--jobs-soft);
  margin:0;
  background:#fbfcff;
  color:var(--jobs-ink-new);
  font-family:Arial,"Helvetica Neue",sans-serif !important;
}
body.jobs-body .topowner,
body.jobs-body #topnavCont,
body.jobs-body .hamburger,
body.jobs-body > .ot-trademark-disclaimer--floating,
body.jobs-body > .site-footer { display:none !important; }
body.jobs-body .jobs-page { min-height:100vh; padding:0; background:#fbfcff; color:var(--jobs-ink-new); font-family:Arial,"Helvetica Neue",sans-serif !important; }
body.jobs-body .jobs-page * { box-sizing:border-box; }
body.jobs-body .jobs-page *:not(svg):not(path) { font-family:Arial,"Helvetica Neue",sans-serif !important; }
body.jobs-body .jobs-page a { color:var(--jobs-jade); }
.jobs-sr-only,.jobs-page .jobs-sr-only { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }

.jobs-site-header { height:72px; border-bottom:1px solid var(--jobs-line-new); background:#fff; }
.jobs-site-nav { width:100%; height:100%; display:flex; align-items:stretch; padding:0 28px; }
.jobs-wordmark { display:flex !important; align-items:center; gap:10px; width:auto !important; margin-right:27px; padding:0 !important; color:var(--jobs-ink-new) !important; line-height:1; text-decoration:none; }
body.jobs-body .jobs-page a.jobs-wordmark { font-size:inherit !important; }
.jobs-brand-mark { display:block; flex:0 0 40px; width:40px; height:40px; border-radius:10px; background:#3e2fa4; box-shadow:0 5px 14px rgba(62,47,164,.2); object-fit:contain; }
.jobs-brand-name { display:inline-flex; align-items:baseline; color:#25252b; font-family:"OT Bestie Poppins","Segoe UI",sans-serif !important; font-size:18px !important; font-weight:600; letter-spacing:-.035em; white-space:nowrap; }
.jobs-brand-ot { color:#1f2a44; font-weight:400; }
.jobs-brand-bestie { color:var(--jobs-brand); font-weight:600; }
.jobs-brand-product { padding-left:11px; border-left:1px solid #d9d8de; color:#65656d; font-family:"OT Bestie Poppins","Segoe UI",sans-serif !important; font-size:12px !important; font-weight:500; letter-spacing:-.015em; white-space:nowrap; }
.jobs-wordmark:hover .jobs-brand-mark,.jobs-wordmark:focus-visible .jobs-brand-mark { box-shadow:0 0 0 3px rgba(52,182,164,.25),0 6px 16px rgba(62,47,164,.22); transform:translateY(-1px); }
.jobs-site-nav__primary,.jobs-site-nav__utility { display:flex; align-items:stretch; }
.jobs-site-nav__primary a,.jobs-site-nav__utility a { position:relative; display:flex !important; width:auto !important; height:72px !important; align-items:center; margin:0 !important; padding:0 14px !important; color:#2d2d2d !important; background:transparent !important; font-size:14px !important; font-weight:400; line-height:1.2 !important; text-decoration:none; }
body.jobs-body .jobs-page .jobs-site-nav__primary a,body.jobs-body .jobs-page .jobs-site-nav__utility a { font-size:14px !important; }
.jobs-site-nav__primary a::before,.jobs-site-nav__utility a::before { display:none !important; }
.jobs-site-nav__primary a.is-active::after { content:""; position:absolute; left:14px; right:14px; bottom:0; height:3px; border-radius:3px 3px 0 0; background:var(--jobs-coral); }
.jobs-site-nav__utility { margin-left:auto; }
.jobs-site-nav__utility .jobs-sign-in { color:var(--jobs-jade) !important; font-weight:700; }
.jobs-site-nav__utility > span { width:1px; height:24px; align-self:center; margin:0 10px; background:#d4d2d0; }

.jobs-search-region { position:relative; z-index:40; padding:19px 24px 17px; border-bottom:1px solid var(--jobs-line-new); background:linear-gradient(180deg,#fff 0%,var(--jobs-cream) 100%); }
.jobs-hero-search { display:grid; grid-template-columns:minmax(300px,1.12fr) minmax(250px,.88fr) auto; width:min(894px,100%); min-height:64px; align-items:center; gap:0; margin:0 auto; padding:7px; border:1px solid #767676; border-radius:16px; background:#fff; box-shadow:0 3px 8px rgba(45,45,45,.15); }
.jobs-search-field { position:relative; display:flex !important; min-width:0; min-height:48px; align-items:center; gap:12px; padding:0 18px; color:#2d2d2d; }
.jobs-search-field--keyword { border-right:1px solid #e4e2e0; }
.jobs-search-field svg { flex:0 0 22px; width:22px; height:22px; }
.jobs-search-field input { width:100%; min-width:0; min-height:44px; padding:0; border:0; outline:0; background:transparent; color:#2d2d2d; font:16px/1.3 Arial,"Helvetica Neue",sans-serif !important; }
.jobs-search-field input::placeholder { color:#5f5f5f; opacity:1; }
.jobs-location-combobox { position:relative; min-width:0; min-height:48px; }
.jobs-location-combobox > .jobs-search-field { width:100%; min-height:48px; border:2px solid transparent; border-radius:12px; padding-right:44px; transition:border-color .12s ease,box-shadow .12s ease; }
.jobs-location-combobox:focus-within > .jobs-search-field { border-color:var(--jobs-blue); box-shadow:0 0 0 1px var(--jobs-blue); color:var(--jobs-brand); }
.jobs-location-combobox .jobs-search-field input:focus-visible { border:0; box-shadow:none; }
.jobs-location-clear { position:absolute; z-index:2; top:6px; right:7px; display:grid; width:36px; height:36px; place-items:center; padding:0; border:0; border-radius:50%; background:transparent; color:#6a6a6a; cursor:pointer; font:26px/1 Arial,"Helvetica Neue",sans-serif; }
.jobs-location-clear:hover,.jobs-location-clear:focus-visible { background:#f0f2f8; color:#2d2d2d; }
.jobs-location-clear[hidden] { display:none; }
.jobs-location-suggestions { position:absolute; z-index:300; top:calc(100% + 9px); left:0; width:min(400px,calc(100vw - 28px)); max-height:min(520px,calc(100vh - 170px)); overflow-y:auto; overscroll-behavior:contain; padding:12px 0; border:1px solid #dedede; border-radius:14px; background:#fff; box-shadow:0 14px 32px rgba(23,36,61,.18); scrollbar-color:#aeb7c5 transparent; }
.jobs-location-suggestions[hidden] { display:none; }
.jobs-location-option { display:grid; width:100%; min-height:61px; grid-template-columns:26px minmax(0,1fr); align-items:center; gap:13px; padding:9px 20px; border:0; background:#fff; color:#2d2d2d; cursor:pointer; text-align:left; }
.jobs-location-option:hover,.jobs-location-option.is-active { background:#f3f5fb; }
.jobs-location-option:focus-visible { outline:0; background:#edf1ff; box-shadow:inset 3px 0 0 var(--jobs-blue); }
.jobs-location-option svg { width:21px; height:21px; align-self:center; }
.jobs-location-option > span { display:grid; min-width:0; gap:3px; }
.jobs-location-option strong { overflow:hidden; font-size:15px; font-weight:500; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.jobs-location-option small { overflow:hidden; color:#666; font-size:12px; font-weight:400; line-height:1.3; text-overflow:ellipsis; white-space:nowrap; }
.jobs-location-suggestions__status { margin:0; padding:12px 20px 8px 59px; color:#666; font-size:13px; line-height:1.4; }
.jobs-location-suggestions__status[hidden] { display:none; }
.jobs-search-submit.jobs-button { min-width:95px; min-height:48px; border:0; border-radius:10px; padding:0 20px; background:var(--jobs-brand) !important; box-shadow:none; color:#fff !important; font-size:15px !important; font-weight:700; transform:none; transition:background-color .15s ease; }
.jobs-search-submit.jobs-button:hover { background:var(--jobs-brand-dark) !important; transform:none; }
.jobs-search-submit.jobs-button:active { background:#281d71 !important; transform:none; }

.jobs-filter-bar { position:relative; display:flex; width:min(1228px,100%); align-items:center; justify-content:center; gap:8px; margin:18px auto 0; }
.jobs-filter-menu { position:relative; z-index:1; flex:0 0 auto; }
.jobs-filter-menu[open] { z-index:100; }
.jobs-filter-menu > summary { display:flex; min-height:44px; align-items:center; justify-content:center; gap:7px; padding:0 16px; border:1px solid #e4e2e0; border-radius:999px; background:#fff; color:#2d2d2d; cursor:pointer; font-size:13px; font-weight:600; list-style:none; white-space:nowrap; }
.jobs-filter-menu > summary::-webkit-details-marker { display:none; }
.jobs-filter-menu > summary::after { content:""; width:6px; height:6px; margin-top:-3px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); }
.jobs-filter-menu.is-active > summary { border-color:#2d2d2d; box-shadow:inset 0 0 0 1px #2d2d2d; }
.jobs-filter-menu.is-active > summary { border-color:var(--jobs-jade); background:var(--jobs-mint); color:var(--jobs-jade-dark); box-shadow:inset 0 0 0 1px var(--jobs-jade); }
.jobs-filter-menu[open] > summary { border-color:var(--jobs-jade); box-shadow:0 0 0 1px var(--jobs-jade); }
.jobs-filter-menu > div { position:absolute; z-index:90; top:50px; left:0; display:grid; width:288px; max-height:min(520px,calc(100vh - 190px)); gap:12px; padding:12px; border:1px solid var(--jobs-line); border-radius:12px; background:#fff; box-shadow:0 16px 40px rgba(23,36,61,.16); }
.jobs-filter-menu:nth-last-child(-n+3) > div { right:0; left:auto; }
.jobs-filter-menu > div label { display:grid; gap:7px; color:#2d2d2d; font-size:13px; font-weight:700; }
.jobs-filter-menu select,.jobs-filter-menu input:not([type="checkbox"]):not([type="radio"]) { width:100%; min-height:44px; border:1px solid #8b97a8; border-radius:8px; padding:8px 10px; background:#fff; color:#2d2d2d; font:14px Arial,"Helvetica Neue",sans-serif !important; }
.jobs-filter-menu input::placeholder { color:#a8b0bd; opacity:1; }
.jobs-filter-menu label > small { color:#6f7887; font-size:12px; font-weight:500; line-height:1.45; }
.jobs-filter-menu > div > button,.jobs-filter-menu__actions button { min-height:44px; border:0; border-radius:9px; background:var(--jobs-brand); color:#fff; cursor:pointer; font-weight:700; transition:background-color .15s ease; }
.jobs-filter-menu > div > button:hover,.jobs-filter-menu__actions button:hover { background:var(--jobs-brand-dark); }
.jobs-filter-menu > div > button:disabled,.jobs-filter-menu__actions button:disabled { background:#e3e6ec; color:#8a92a0; cursor:not-allowed; }
.jobs-filter-choices { display:grid; min-width:0; max-height:min(390px,calc(100vh - 280px)); gap:3px; margin:0; padding:0 3px 2px; overflow-y:auto; border:0; scrollbar-color:#b7c2d1 transparent; overscroll-behavior:contain; }
.jobs-filter-choices legend { width:100%; margin:0 0 6px; padding:2px 7px 7px; border-bottom:1px solid var(--jobs-line); color:var(--jobs-ink); font-size:13px; font-weight:800; }
.jobs-filter-menu .jobs-filter-choices label { display:flex; min-height:42px; align-items:center; gap:10px; padding:8px 9px; border-radius:8px; color:#344056; cursor:pointer; font-size:14px; font-weight:600; line-height:1.25; }
.jobs-filter-menu .jobs-filter-choices label:hover { background:#f6f8ff; }
.jobs-filter-choices input[type="radio"] { appearance:none; flex:0 0 18px; width:18px; height:18px; min-height:18px; margin:0; padding:0; border:1.5px solid #8b97a8; border-radius:50%; background:#fff; cursor:pointer; }
.jobs-filter-choices input[type="radio"]:checked { border:5px solid var(--jobs-brand); }
.jobs-filter-choices input[type="radio"]:focus-visible { outline:3px solid rgba(59,99,217,.3); outline-offset:2px; }
.jobs-filter-choices label:has(input:checked) { background:var(--jobs-accent); color:var(--jobs-brand-dark); }
.jobs-filter-menu--more > div.jobs-filter-menu__wide { right:0; left:auto; grid-template-columns:1fr 1fr; width:520px; }
.jobs-filter-menu__wide fieldset { grid-row:span 3; display:grid; gap:10px; margin:0; padding:0; border:0; }
.jobs-filter-menu__wide legend { margin-bottom:8px; font-size:13px; font-weight:700; }
.jobs-filter-menu__wide fieldset label { display:flex; grid-template-columns:auto 1fr; align-items:flex-start; gap:8px; font-weight:400; }
.jobs-filter-menu__wide input[type="checkbox"] { width:18px; height:18px; margin:0; accent-color:var(--jobs-jade); }
.jobs-filter-menu__actions { grid-column:1/-1; display:flex; align-items:center; justify-content:flex-end; gap:14px; padding-top:8px; border-top:1px solid #e4e2e0; }
.jobs-filter-menu__actions a { margin-right:auto; font-size:13px; }
.jobs-filter-menu__actions button { padding:0 16px; }
.jobs-location-status { margin:0; color:#5b676d; font-size:12px; line-height:1.45; }
.jobs-distance-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.jobs-distance-actions button { min-height:44px; border:1px solid var(--jobs-brand); border-radius:8px; padding:0 10px; cursor:pointer; font-weight:700; }
.jobs-distance-actions button[type="submit"] { background:var(--jobs-brand); color:#fff; }
.jobs-distance-actions .jobs-location-button { background:#fff; color:var(--jobs-brand-dark); }
.jobs-distance-actions button:disabled { cursor:wait; opacity:.65; }

.jobs-filter-loading { position:fixed; z-index:6000; top:88px; left:50%; display:flex; min-height:48px; align-items:center; gap:10px; padding:10px 16px; border:1px solid #c9d5fa; border-radius:999px; background:#fff; box-shadow:0 12px 34px rgba(23,36,61,.2); color:var(--jobs-ink); font-size:14px; font-weight:750; transform:translateX(-50%); }
.jobs-filter-loading[hidden] { display:none; }
.jobs-filter-loading__spinner { width:20px; height:20px; flex:0 0 20px; border:3px solid #dfe7f1; border-top-color:var(--jobs-brand); border-radius:50%; animation:jobs-filter-spin .7s linear infinite; }
.jobs-filter-loading.is-error { border-color:#e0ad9f; border-radius:10px; background:#fff5f2; color:#713226; }
.jobs-filter-loading.is-error .jobs-filter-loading__spinner { display:none; }
.jobs-page.is-filtering .jobs-board-shell { opacity:.58; transition:opacity .15s ease; }
.jobs-page.is-filtering .jobs-search-form button[type="submit"] { cursor:wait; }
@keyframes jobs-filter-spin { to { transform:rotate(360deg); } }

.jobs-board-shell { display:grid; grid-template-columns:466px minmax(0,780px); width:min(1300px,calc(100% - 40px)); align-items:start; gap:24px; margin:0 auto; padding:16px 0 40px; }
.jobs-list-column { min-width:0; }
.jobs-resume-prompt { min-height:47px; padding:16px 16px 14px; border-bottom:1px solid #e4e2e0; color:#2d2d2d; font-size:14px; }
.jobs-resume-prompt a { font-weight:700; }
.jobs-results__head { display:block; margin:0; padding:19px 16px 16px; }
.jobs-results__head > div { position:relative; }
.jobs-results__head h1 { display:inline; margin:0; color:#595959; font-size:14px; font-weight:700; line-height:1.4; }
.jobs-results__head h1:focus { outline:3px solid rgba(59,99,217,.35); outline-offset:4px; border-radius:3px; }
.jobs-info-dot { display:inline-grid; width:17px; height:17px; place-items:center; margin-left:5px; border-radius:50%; background:#767676; color:#fff; font-size:11px; font-weight:700; }
.jobs-results__head p { margin:5px 0 0; color:#2d2d2d; font-size:14px; }
.jobs-results__head p strong { font-weight:700; }
.jobs-results__head p button { min-height:0; margin:0; padding:0; border:0; background:transparent !important; color:var(--jobs-jade); cursor:pointer; font:14px Arial,"Helvetica Neue",sans-serif !important; text-decoration:underline; }

.jobs-search-list { display:grid; gap:12px; }
.job-card.job-card--search { margin:0; padding:17px 16px 16px; border:1px solid var(--jobs-line-new); border-radius:9px; background:#fff; box-shadow:none; color:var(--jobs-ink-new); cursor:pointer; overflow:hidden; }
.job-card.job-card--search.is-selected { border-color:var(--jobs-blue); box-shadow:0 0 0 1px var(--jobs-blue),0 8px 24px rgba(62,47,164,.1); }
.job-card.job-card--search.job-card--featured { border-color:#f2b7a9; background:#fffdfb; }
.job-card__search-top { display:flex; min-height:25px; align-items:flex-start; justify-content:space-between; gap:12px; }
.job-card__status-row { display:flex; flex-wrap:wrap; gap:6px; }
.jobs-easy-badge { display:inline-flex; min-height:24px; align-items:center; padding:3px 8px; border-radius:999px; background:var(--jobs-mint); color:var(--jobs-jade-dark); font-size:12px; font-weight:700; }
.jobs-easy-badge--new,.jobs-badge--new { background:#e7f6ed; color:#17633f; }
.jobs-easy-badge--older,.jobs-badge--older { background:#fff4df; color:#805215; }
.jobs-easy-badge--aging,.jobs-badge--aging { background:#fff7e8; color:#78521b; }
.jobs-easy-badge--stale,.jobs-badge--stale { background:#fdecea; color:#8b2f24; }
.jobs-easy-badge--expiring,.jobs-badge--expiring { background:#fff0ed; color:#9b3f32; }
.jobs-easy-badge--verified,.jobs-badge--verified { background:var(--jobs-mint); color:var(--jobs-jade-dark); }
.job-card--featured .jobs-easy-badge:first-child { background:#fff0eb; color:var(--jobs-coral-dark); }
.jobs-icon-button { display:inline-grid; flex:0 0 44px; width:44px; height:44px; place-items:center; margin:-7px -7px 0 0; padding:0; border:0; border-radius:8px; background:transparent !important; color:#2d2d2d; cursor:pointer; }
.jobs-icon-button:hover { background:#f3f2f1 !important; }
.jobs-icon-button svg { width:24px; height:24px; }
.job-card__quick-tools { display:flex; flex:0 0 auto; align-items:center; gap:2px; }
.job-card__quick-tools .jobs-icon-button { margin:-7px 0 0; }
.job-card__quick-tools .jobs-icon-button:last-child { margin-right:-7px; }
.job-card__quick-tools .jobs-icon-button.is-active { background:var(--jobs-accent) !important; color:var(--jobs-brand) !important; }
.jobs-icon-button.is-active svg path,.jobs-icon-button[aria-pressed="true"] svg path { fill:var(--jobs-coral); stroke:var(--jobs-coral); }
.jobs-share { position:relative; display:inline-flex; flex:0 0 auto; }
.jobs-share__trigger { display:inline-flex; align-items:center; justify-content:center; gap:6px; }
.jobs-share__trigger > svg { flex:0 0 18px; width:18px; height:18px; }
.jobs-share__menu { position:absolute; z-index:120; top:calc(100% + 8px); right:0; display:grid; width:max-content; min-width:188px; padding:6px; border:1px solid var(--jobs-line-new,var(--jobs-line)); border-radius:10px; background:#fff; box-shadow:0 14px 36px rgba(23,38,58,.18); }
.jobs-share__menu[hidden] { display:none !important; }
.jobs-share__menu button,.job-detail__toolbar .jobs-share__menu button { display:flex; width:100%; min-height:44px; align-items:center; gap:11px; justify-content:flex-start; padding:10px 12px; border:0; border-radius:7px; background:transparent; color:var(--jobs-ink-new,var(--jobs-ink)); font-size:.88rem; font-weight:700; text-align:left; white-space:nowrap; cursor:pointer; }
.jobs-share__menu button:hover { background:var(--jobs-soft-new,var(--jobs-soft)); }
.jobs-share__menu button:focus-visible { outline:3px solid rgba(59,99,217,.35); outline-offset:-1px; }
.jobs-share__menu svg { flex:0 0 20px; width:20px; height:20px; color:var(--jobs-brand); }
.job-card__search-title { margin:5px 40px 8px 0 !important; font-size:18px !important; line-height:1.28 !important; }
.job-card__search-title a { display:block; width:100%; margin:0; padding:0; color:#2d2d2d; cursor:pointer; font:700 18px/1.28 Arial,"Helvetica Neue",sans-serif !important; text-align:left; text-decoration:none; }
.job-card__search-title a:hover { text-decoration:underline; }
.job-card__search-employer,.job-card__search-location { margin:0 0 5px; color:#595959; font-size:14px; line-height:1.3; }
.job-card__tag-list { display:flex; flex-wrap:wrap; gap:5px; margin:13px 0 12px; padding:0; list-style:none; }
.job-card__tag-list li { max-width:100%; padding:5px 8px; border-radius:5px; background:var(--jobs-soft-new); color:var(--jobs-muted-new); font-size:12px; font-weight:700; line-height:1.15; }
.job-card__snippet { margin:0; padding:0 0 0 18px; color:#595959; font-size:13px; line-height:1.42; }
.job-card__snippet li { padding-left:2px; }

.jobs-preview-column { position:sticky; top:16px; align-self:start; min-width:0; height:calc(100vh - 272px); height:calc(100dvh - 272px); min-height:0; max-height:calc(100dvh - 32px); border:1px solid var(--jobs-line-new); border-radius:9px; background:#fff; box-shadow:0 8px 30px rgba(36,51,59,.055); overflow:hidden; }
.job-preview { height:100%; overflow-y:auto; scrollbar-color:#767676 transparent; }
.job-preview[hidden] { display:none !important; }
.job-preview--loading { color:inherit; }
.job-preview__header { padding:36px 22px 24px; border-bottom:1px solid #e4e2e0; }
.job-preview__header h2 { max-width:680px; margin:0 0 9px; color:#2d2d2d; font-size:25px !important; font-weight:700; line-height:1.25 !important; letter-spacing:0 !important; }
.job-preview__employer { display:inline-block; margin:0 0 8px; color:#2d2d2d !important; font-size:15px; text-decoration:underline; }
.job-preview__employer-name { margin:0 0 8px !important; color:#2d2d2d !important; font-size:15px !important; }
.job-preview__header > p { margin:0 0 8px; color:#595959; font-size:15px; line-height:1.35; }
.job-preview__actions { display:flex; align-items:center; gap:14px; margin-top:20px; }
.job-preview__actions .jobs-button { min-height:48px; border-radius:9px; padding:0 18px; background:linear-gradient(135deg,var(--jobs-brand),var(--jobs-blue)); box-shadow:0 4px 12px rgba(62,47,164,.2); font-size:16px !important; }
.job-preview__actions .jobs-button:hover { background:var(--jobs-jade-dark); transform:none; }
.jobs-icon-button--filled { flex-basis:48px; width:48px; height:48px; margin:0; background:#f3f2f1 !important; }
.job-preview__section { padding:28px 22px; border-bottom:1px solid #e4e2e0; }
.job-preview__section h3 { margin:0 0 3px; color:#2d2d2d; font-size:20px; line-height:1.3; }
.job-preview__intro { margin:0 0 24px; color:#767676; font-size:13px; }
.job-preview__fact { display:grid; grid-template-columns:28px minmax(0,1fr); gap:13px; margin:0 0 25px; color:#595959; }
.job-preview__fact > span { display:grid; width:24px; height:24px; place-items:center; color:#767676; font-size:17px; font-weight:700; }
.job-preview__fact strong { display:block; margin-bottom:10px; color:#2d2d2d; font-size:14px; }
.job-preview__fact p { display:inline-block; margin:0; padding:9px 12px; border-radius:6px; background:var(--jobs-soft-new); color:var(--jobs-muted-new); font-size:13px; font-weight:700; line-height:1.3; }
.job-preview__description { color:#595959; font-size:14px; line-height:1.65; }
.job-preview__description > :first-child { margin-top:0; }
.job-preview__description > :last-child { margin-bottom:0; }
.job-preview__description h2,.job-preview__description h3,.job-preview__description h4 { margin:1.5em 0 .55em; color:#2d2d2d; font-size:16px; line-height:1.35; }
.job-preview__description p { margin:.8em 0; }
.job-preview__description ul,.job-preview__description ol { margin:.8em 0; padding-left:1.4rem; }
.job-preview__description li + li { margin-top:.35em; }
.job-preview__description a { color:var(--jobs-jade-dark); font-weight:700; }
.job-preview__section--loading { min-height:280px; }
.job-preview__loading-excerpt { margin:14px 0 20px; color:#595959; font-size:14px; line-height:1.65; }
.job-preview__loading-state { display:flex; align-items:center; gap:10px; min-height:44px; color:#595959; font-size:14px; font-weight:700; }
.job-preview__header .job-preview__loading-state { min-height:48px; margin-top:20px; }
.job-preview__loading-spinner { flex:0 0 20px; width:20px; height:20px; border:3px solid #dfe7f1; border-top-color:var(--jobs-brand); border-radius:50%; animation:jobs-filter-spin .7s linear infinite; }
.job-preview__details-placeholder { min-height:230px; }
.job-preview__details-placeholder > span { display:block; width:min(360px,85%); height:42px; margin-top:18px; border-radius:6px; background:var(--jobs-soft-new); }
.job-preview__details-placeholder > span:nth-of-type(2) { width:min(290px,70%); }
.job-preview__details-placeholder > span:nth-of-type(3) { width:min(330px,78%); }
.job-preview__load-error { display:grid; justify-items:start; gap:14px; margin-top:16px; color:#595959; }
.job-preview__load-error p { margin:0; line-height:1.5; }
.job-preview--empty { display:grid; height:100%; place-content:center; padding:48px; text-align:center; }
.job-preview--empty h2 { margin:0 0 10px; color:#2d2d2d !important; font-size:24px !important; line-height:1.3 !important; letter-spacing:0 !important; }
.job-preview--empty p { max-width:480px; margin:0; color:#595959 !important; font-size:16px !important; line-height:1.6 !important; }

.jobs-setup,.jobs-empty { margin:0 0 12px; padding:28px 20px; border:1px dashed #d4d2d0; border-radius:8px; background:#faf9f8; color:#595959; text-align:center; }
.jobs-empty h2 { margin:0 0 8px; color:#2d2d2d !important; font-size:20px !important; line-height:1.3 !important; letter-spacing:0 !important; }
.jobs-empty p { margin:0; color:#595959 !important; font-size:14px !important; line-height:1.5 !important; }
.jobs-empty__actions { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-top:18px; }
.jobs-setup code { font-size:12px; }
.jobs-pagination { display:flex; align-items:center; justify-content:center; gap:12px; margin:24px 0; font-size:13px; }
.jobs-pagination .jobs-button { border-color:var(--jobs-line-new); border-radius:8px; color:var(--jobs-jade) !important; }
.jobs-local-library { display:block; margin:24px 0 0; padding:18px; border:1px solid #d4d2d0; border-radius:8px; background:#fff; }
.jobs-local-library h2 { margin:0 0 4px; font-size:18px !important; }
.jobs-local-library p { margin:0 0 12px; color:#595959; font-size:13px; }
.jobs-local-library__groups { display:grid; gap:7px; }
.jobs-local-library details { border:1px solid #e4e2e0; border-radius:6px; }
.jobs-local-library summary { padding:10px 12px; font-size:13px; }
.jobs-local-list { padding:0 12px 12px; }
.jobs-alert-card { display:block; margin:16px 0 0; padding:20px; border:1px solid #cfe9e2; border-radius:8px; background:linear-gradient(135deg,var(--jobs-mint),var(--jobs-cream)); color:var(--jobs-ink-new); }
.jobs-alert-card h2 { margin:0 0 6px; font-size:18px; }
.jobs-alert-card p { margin:0 0 14px; color:#595959; font-size:13px; }
.jobs-alert-card form { grid-template-columns:minmax(0,1fr) 120px auto; gap:8px; }
.jobs-alert-card label { color:#595959; font-size:12px; }
.jobs-alert-card input,.jobs-alert-card select { min-height:44px; border:1px solid #767676; border-radius:5px; }
.jobs-alert-card .jobs-button { min-height:44px; border-radius:7px; box-shadow:none; }

.jobs-footer { margin-top:20px; padding:20px 24px 32px; border-top:1px solid #d4d2d0; color:#595959; font-size:13px; }
.jobs-footer nav { display:flex; flex-wrap:wrap; gap:18px; }
.jobs-footer nav a { color:#595959 !important; text-decoration:none; }
.jobs-footer nav a:hover { text-decoration:underline; }
.jobs-footer p { margin:18px 0 0; }

@media (max-width:1120px) {
  .jobs-filter-bar { flex-wrap:wrap; justify-content:center; overflow:visible; padding-bottom:0; }
  .jobs-board-shell { grid-template-columns:420px minmax(0,1fr); }
}

@media (max-width:900px) {
  .jobs-site-header { height:60px; }
  .jobs-site-nav { padding:0 16px; }
  .jobs-wordmark { height:60px !important; margin-right:auto; }
  .jobs-brand-mark { flex-basis:35px; width:35px; height:35px; background-size:27px; }
  .jobs-brand-name { font-size:16px !important; }
  .jobs-brand-product { padding-left:8px; font-size:11px !important; }
  .jobs-site-nav__primary,.jobs-site-nav__utility > span,.jobs-site-nav__utility a:not(.jobs-sign-in) { display:none !important; }
  .jobs-site-nav__utility { margin-left:auto; }
  body.jobs-body .jobs-page .jobs-site-nav__utility a.jobs-sign-in { display:flex !important; min-width:50px; height:60px !important; padding:0 4px !important; font-size:14px !important; white-space:nowrap; }
  .jobs-search-region { padding:14px 14px 10px; }
  .jobs-hero-search { grid-template-columns:minmax(0,1fr) auto; width:100%; border-radius:14px; }
  .jobs-search-field { min-height:45px; padding:0 12px; }
  .jobs-search-field--keyword { grid-column:1/-1; border-right:0; border-bottom:1px solid #e4e2e0; }
  .jobs-location-combobox,.jobs-search-field--location { min-width:0; }
  .jobs-location-combobox > .jobs-search-field { padding-right:42px; }
  .jobs-location-suggestions { left:-1px; width:min(420px,calc(100vw - 28px)); }
  .jobs-search-submit.jobs-button { width:auto; min-width:88px; }
  .jobs-filter-bar { flex-wrap:nowrap; justify-content:flex-start; margin-top:12px; overflow-x:auto; padding-bottom:4px; scrollbar-width:none; }
  .jobs-filter-bar::-webkit-scrollbar { display:none; }
  .jobs-filter-menu > summary { min-height:44px; padding:0 13px; }
  .jobs-filter-menu > div,.jobs-filter-menu:nth-last-child(-n+3) > div { position:fixed; top:auto; right:14px; bottom:14px; left:14px; width:auto; max-height:70vh; overflow:auto; }
  .jobs-filter-menu--more > div.jobs-filter-menu__wide { right:14px; left:14px; grid-template-columns:1fr; width:auto; }
  .jobs-filter-menu__wide fieldset { grid-row:auto; }
  .jobs-board-shell { display:block; width:min(600px,calc(100% - 24px)); padding-top:8px; }
  .jobs-preview-column { display:none; }
  .jobs-resume-prompt { padding-left:4px; padding-right:4px; }
  .jobs-results__head { padding-left:4px; padding-right:4px; }
  .jobs-search-list { gap:10px; }
  .jobs-filter-loading { top:12px; max-width:calc(100% - 24px); }
}

@media (max-width:520px) {
  .jobs-wordmark { gap:8px; }
  .jobs-search-region { padding-left:10px; padding-right:10px; }
  .jobs-search-field input { font-size:15px !important; }
  .jobs-location-option { padding-right:15px; padding-left:15px; }
  .jobs-board-shell { width:calc(100% - 20px); }
  .job-card.job-card--search { padding:15px 14px; }
  .job-card__search-title,.job-card__search-title a { font-size:17px !important; }
  .jobs-alert-card form { grid-template-columns:1fr; }
}

/* Jobs-only SEO, editorial, and directory surfaces. */
.jobs-skip-link { position:fixed; z-index:1000; top:8px; left:8px; padding:10px 14px; border-radius:8px; background:#fff; color:var(--jobs-brand-dark); font-weight:800; opacity:0; pointer-events:none; transform:translateY(-160%); }
.jobs-skip-link:focus { opacity:1; pointer-events:auto; transform:translateY(0); }
.jobs-site-header--product { position:relative; z-index:100; }
.jobs-site-header--product *,.jobs-product-footer *,.jobs-seo-main *,.jobs-resource-main * { box-sizing:border-box; }
.jobs-site-header--product .jobs-site-nav__primary a[aria-current="page"]::after { content:""; position:absolute; right:14px; bottom:0; left:14px; height:3px; border-radius:3px 3px 0 0; background:var(--jobs-coral); }
.jobs-seo-main,.jobs-resource-main { width:min(1160px,calc(100% - 36px)); margin:0 auto; padding:30px 0 80px; color:var(--jobs-ink); }
.jobs-breadcrumbs ol { display:flex; flex-wrap:wrap; gap:8px; align-items:center; margin:0; padding:0; color:var(--jobs-muted); font-size:.84rem; list-style:none; }
.jobs-breadcrumbs li:not(:last-child)::after { content:"/"; margin-left:8px; color:#a29d96; }
.jobs-breadcrumbs a { color:var(--jobs-brand-dark); }
.jobs-seo-hero { margin-top:24px; padding:clamp(34px,6vw,70px); border:1px solid #dfe7f1; border-radius:28px; background:radial-gradient(circle at 88% 18%,rgba(52,182,164,.14),transparent 28%),linear-gradient(135deg,#f7f9ff,#eef3ff); }
.jobs-seo-eyebrow { margin:0 0 9px; color:var(--jobs-brand-dark); font-size:.74rem; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.jobs-seo-hero h1,.jobs-resource-article > header h1 { max-width:900px; margin:0; color:var(--jobs-ink); font-size:clamp(2.25rem,5.4vw,4.7rem); line-height:.98; letter-spacing:-.055em; }
.jobs-seo-hero > p:not(.jobs-seo-eyebrow):not(.jobs-seo-checked) { max-width:760px; margin:20px 0 0; color:#45555d; font-size:clamp(1.05rem,2vw,1.28rem); line-height:1.65; }
.jobs-seo-stats { display:flex; flex-wrap:wrap; gap:12px; margin:30px 0 0; }
.jobs-seo-stats div { min-width:145px; padding:15px 18px; border:1px solid rgba(62,47,164,.18); border-radius:14px; background:rgba(255,255,255,.82); }
.jobs-seo-stats dt { color:var(--jobs-muted); font-size:.78rem; font-weight:750; }
.jobs-seo-stats dd { margin:3px 0 0; font-size:1.5rem; font-weight:850; }
.jobs-seo-checked { margin:18px 0 0; color:var(--jobs-muted); font-size:.78rem; line-height:1.5; }
.jobs-directory,.jobs-seo-results,.jobs-salary-method,.jobs-near-me,.jobs-related,.jobs-editorial-note { margin-top:42px; }
.jobs-directory h2,.jobs-seo-results h2,.jobs-salary-method h2,.jobs-near-me h2,.jobs-related h2,.jobs-editorial-note h2 { margin:0 0 18px; font-size:clamp(1.45rem,3vw,2.1rem); letter-spacing:-.035em; }
.jobs-directory-grid,.jobs-decision-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.jobs-directory-grid a,.jobs-decision-grid a { display:grid; gap:5px; min-height:96px; align-content:center; padding:18px; border:1px solid var(--jobs-line); border-radius:14px; background:#fff; color:var(--jobs-ink); text-decoration:none; box-shadow:0 5px 16px rgba(23,38,58,.04); }
.jobs-directory-grid a:hover,.jobs-decision-grid a:hover { border-color:#8fcfc5; transform:translateY(-1px); }
.jobs-directory-grid span,.jobs-decision-grid span { color:var(--jobs-muted); font-size:.84rem; line-height:1.4; }
.jobs-employer-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.jobs-employer-grid > a { display:flex; gap:14px; align-items:center; padding:18px; border:1px solid var(--jobs-line); border-radius:14px; color:var(--jobs-ink); text-decoration:none; }
.jobs-employer-grid > a > span:last-child { display:grid; gap:4px; }
.jobs-employer-grid small { color:var(--jobs-muted); }
.jobs-employer-mark { display:grid; flex:0 0 48px; width:48px; height:48px; place-items:center; overflow:hidden; border-radius:12px; background:var(--jobs-accent); color:var(--jobs-brand-dark); font-weight:850; }
.jobs-employer-mark img { width:100%; height:100%; object-fit:contain; }
.jobs-location-search { max-width:760px; padding:24px; border:1px solid var(--jobs-line); border-radius:18px; background:var(--jobs-soft); }
.jobs-location-search > label { display:block; margin-bottom:8px; font-weight:800; }
.jobs-location-search > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:9px; }
.jobs-location-search input { min-height:48px; padding:10px 13px; border:1px solid #888; border-radius:10px; font-size:16px; }
.jobs-location-search > .jobs-location-button { margin-top:12px; padding:0; border:0; background:transparent; color:var(--jobs-brand-dark); font-weight:800; text-decoration:underline; cursor:pointer; }
.jobs-salary-method { max-width:900px; padding:30px; border-left:5px solid var(--jobs-brand); border-radius:0 18px 18px 0; background:var(--jobs-accent); }
.jobs-salary-method p { color:#405158; line-height:1.7; }
.jobs-salary-number { font-size:1.25rem; }
.jobs-section-heading { display:flex; justify-content:space-between; gap:20px; align-items:end; margin-bottom:18px; }
.jobs-section-heading h2 { margin:0; }
.jobs-seo-card-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.jobs-seo-card-list .job-card { margin:0; }
.jobs-index-note { margin:0 0 18px; padding:16px; border:1px solid #e8cfa8; border-radius:12px; background:#fff9ef; }
.jobs-index-note p { margin:5px 0 0; color:var(--jobs-muted); }
.jobs-related { padding-top:30px; border-top:1px solid var(--jobs-line); }
.jobs-related ul { display:flex; flex-wrap:wrap; gap:10px; margin:0; padding:0; list-style:none; }
.jobs-related li a { display:inline-flex; padding:10px 14px; border:1px solid var(--jobs-line); border-radius:999px; color:var(--jobs-brand-dark); text-decoration:none; }
.jobs-related li span { color:var(--jobs-muted); font-size:.8rem; }
.jobs-alert-band { display:flex; justify-content:space-between; gap:28px; align-items:center; margin-top:55px; padding:30px; border-radius:22px; background:#182b30; color:#fff; }
.jobs-alert-band h2 { margin:0 0 7px; font-size:clamp(1.5rem,3vw,2.25rem); }
.jobs-alert-band p:not(.jobs-seo-eyebrow) { max-width:640px; margin:0; color:#d6e3e3; line-height:1.6; }
.jobs-alert-band .jobs-seo-eyebrow { color:#8fe0d0; }
.jobs-product-footer { padding:50px 24px 28px; border-top:1px solid var(--jobs-line); background:#f6f8ff; color:var(--jobs-ink); }
.jobs-product-footer__inner { display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:35px; width:min(1160px,100%); margin:0 auto; }
.jobs-product-footer__brand { color:var(--jobs-ink); font-size:1.15rem; font-weight:850; text-decoration:none; }
.jobs-product-footer__inner p { max-width:360px; color:var(--jobs-muted); line-height:1.6; }
.jobs-product-footer nav { display:grid; align-content:start; gap:10px; }
.jobs-product-footer nav a { color:#3f5057; text-decoration:none; }
.jobs-product-footer nav a:hover { text-decoration:underline; }
.jobs-product-footer__legal { width:min(1160px,100%); margin:35px auto 0; padding-top:20px; border-top:1px solid #d8d3cc; color:var(--jobs-muted); font-size:.78rem; }
.jobs-seo-empty { min-height:55vh; padding-top:80px; text-align:center; }

.jobs-resource-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:15px; margin-top:40px; }
.jobs-resource-grid article { display:flex; min-height:245px; flex-direction:column; padding:24px; border:1px solid var(--jobs-line); border-radius:18px; background:#fff; }
.jobs-resource-grid article > p:first-child { margin:0 0 10px; color:var(--jobs-brand-dark); font-size:.73rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.jobs-resource-grid h2 { margin:0; font-size:1.25rem; line-height:1.25; }
.jobs-resource-grid h2 a { color:var(--jobs-ink); text-decoration:none; }
.jobs-resource-grid article > p:not(:first-child) { color:var(--jobs-muted); line-height:1.6; }
.jobs-resource-grid article > a { margin-top:auto; color:var(--jobs-brand-dark); font-weight:800; }
.jobs-editorial-note { max-width:850px; padding:24px; border:1px solid #d8ebe6; border-radius:18px; background:var(--jobs-accent); }
.jobs-resource-main { max-width:1160px; }
.jobs-resource-article > header { max-width:1000px; margin:35px 0 45px; }
.jobs-resource-deck { max-width:820px; color:#485960; font-size:1.2rem; line-height:1.65; }
.jobs-resource-byline { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:20px; color:var(--jobs-muted); font-size:.82rem; }
.jobs-review-pending { color:#89543f; font-weight:750; }
.jobs-resource-summary { max-width:775px; margin:-18px 0 42px 285px; padding:22px 26px; border:1px solid #cfe5df; border-radius:18px; background:var(--jobs-accent); }
.jobs-resource-summary h2 { margin:0 0 12px; font-size:1.2rem; letter-spacing:-.02em; }
.jobs-resource-summary ul { display:grid; gap:8px; margin:0; padding-left:20px; }
.jobs-resource-summary li { color:#344b50; line-height:1.55; }
.jobs-resource-layout { display:grid; grid-template-columns:230px minmax(0,720px); gap:55px; align-items:start; }
.jobs-resource-toc { position:sticky; top:24px; padding:18px; border:1px solid var(--jobs-line); border-radius:14px; background:var(--jobs-soft); }
.jobs-resource-toc ol { display:grid; gap:9px; margin:12px 0 0; padding-left:20px; }
.jobs-resource-toc a { color:var(--jobs-brand-dark); font-size:.84rem; line-height:1.4; }
.jobs-resource-content section { margin-bottom:46px; scroll-margin-top:25px; }
.jobs-resource-content h2 { margin:0 0 15px; font-size:clamp(1.5rem,3vw,2rem); letter-spacing:-.035em; }
.jobs-resource-content p,.jobs-resource-content li { color:#3f4e55; font-size:1.04rem; line-height:1.78; }
.jobs-resource-content li { margin-bottom:8px; }
.jobs-resource-sources { padding:26px; border-radius:18px; background:var(--jobs-soft); }

/* Salary analytics dashboard. */
.jobs-visually-hidden { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }
.jobs-salary-dashboard { width:min(1360px,calc(100% - 36px)); color:#16283c; }
.jobs-salary-toolbar { display:flex; justify-content:space-between; gap:20px; align-items:center; margin:22px 0 24px; }
.jobs-salary-search { display:flex; width:min(390px,100%); min-height:44px; align-items:center; overflow:hidden; border:1px solid #d8e0e7; border-radius:9px; background:#fff; box-shadow:0 2px 8px rgba(31,58,87,.04); }
.jobs-salary-search > span { padding-left:13px; color:#64758a; font-size:1.2rem; }
.jobs-salary-search input { min-width:0; flex:1; padding:11px 10px; border:0; outline:0; color:#22364b; font:inherit; }
.jobs-salary-search button { min-height:44px; padding:0 15px; border:0; border-left:1px solid #e2e7ec; background:#f7f9fb; color:#185f65; font-weight:800; cursor:pointer; }
.jobs-salary-toolbar__actions { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.jobs-salary-freshness,.jobs-salary-export { display:inline-flex; min-height:42px; align-items:center; gap:8px; padding:0 14px; border:1px solid #d8e0e7; border-radius:8px; background:#fff; color:#3a4e63; font-size:.82rem; font-weight:750; text-decoration:none; }
.jobs-salary-export:hover { border-color:#5eb7ad; color:#0b6a61; }
.jobs-salary-heading { display:flex; justify-content:space-between; gap:35px; align-items:end; margin:0 4px 20px; }
.jobs-salary-heading h1 { margin:0; color:#142a48; font-size:clamp(2rem,3.8vw,3.35rem); line-height:1.03; letter-spacing:-.05em; }
.jobs-salary-heading > div > p:last-child { max-width:780px; margin:10px 0 0; color:#5b6b7b; line-height:1.55; }
.jobs-salary-heading > a { flex:0 0 auto; margin-bottom:4px; color:#166c67; font-size:.86rem; font-weight:800; }
.jobs-salary-filters { display:grid; grid-template-columns:1.05fr .9fr 1.15fr 1.1fr 1fr auto auto; gap:10px; align-items:end; margin-bottom:18px; }
.jobs-salary-filters label { display:grid; gap:6px; }
.jobs-salary-filters label > span { color:#5a6a7c; font-size:.7rem; font-weight:800; letter-spacing:.025em; }
.jobs-salary-filters select { width:100%; min-height:48px; padding:7px 34px 7px 12px; border:1px solid #d9e1e8; border-radius:9px; background-color:#fff; color:#1b3047; font:inherit; font-size:.82rem; font-weight:700; }
.jobs-salary-filter-submit,.jobs-salary-clear { display:inline-flex; min-height:48px; align-items:center; justify-content:center; padding:0 15px; border-radius:9px; font-size:.8rem; font-weight:850; white-space:nowrap; }
.jobs-salary-filter-submit { border:1px solid #176f68; background:#176f68; color:#fff; cursor:pointer; }
.jobs-salary-filter-submit:hover { background:#105c56; }
.jobs-salary-clear { gap:6px; border:1px solid #d9e1e8; background:#fff; color:#395066; text-decoration:none; }
.jobs-salary-clear:not(.is-disabled):hover { border-color:#6fbcb4; color:#0b6a61; }
.jobs-salary-clear.is-disabled { color:#96a0aa; pointer-events:none; }
.jobs-salary-filters select:focus-visible,.jobs-salary-filter-submit:focus-visible,.jobs-salary-clear:focus-visible,.jobs-salary-search input:focus-visible,.jobs-salary-search button:focus-visible,.jobs-salary-export:focus-visible { outline:3px solid rgba(24,118,110,.26); outline-offset:2px; }
.jobs-salary-loading { display:grid; grid-template-columns:28px auto; grid-template-areas:"spinner title" "spinner detail"; gap:1px 10px; align-items:center; margin:0 0 14px; padding:13px 16px; border:1px solid #cce5e0; border-radius:10px; background:#f2faf8; color:#244b50; }
.jobs-salary-loading[hidden] { display:none; }
.jobs-salary-loading > span { grid-area:spinner; width:22px; height:22px; border:3px solid #b9ddd7; border-top-color:#17766d; border-radius:50%; animation:jobs-salary-spin .72s linear infinite; }
.jobs-salary-loading strong { grid-area:title; font-size:.8rem; }
.jobs-salary-loading small { grid-area:detail; color:#61797b; font-size:.67rem; }
.jobs-salary-loading.is-error { border-color:#ead2cc; background:#fff7f5; color:#713d35; }
.jobs-salary-loading.is-error > span { border:0; animation:none; }
.jobs-salary-loading.is-error > span::after { content:"!"; display:grid; width:22px; height:22px; place-items:center; border-radius:50%; background:#a84d3f; color:#fff; font-weight:900; }
.jobs-salary-results[aria-busy="true"] { opacity:.58; transition:opacity .16s ease; }
.jobs-salary-filter-submit:disabled { cursor:wait; opacity:.72; }
@keyframes jobs-salary-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) { .jobs-salary-loading > span { animation-duration:1.5s; } }
.jobs-salary-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; margin-bottom:12px; }
.jobs-salary-kpi { position:relative; display:grid; grid-template-columns:42px minmax(0,1fr); gap:11px; min-height:150px; padding:18px; overflow:hidden; border:1px solid #dfe6eb; border-radius:13px; background:#fff; box-shadow:0 5px 18px rgba(26,54,82,.055); }
.jobs-salary-kpi__icon { display:grid; width:38px; height:38px; place-items:center; border-radius:50%; background:currentColor; color:inherit; font-size:0; }
.jobs-salary-kpi__icon::after { color:#fff; font-size:1rem; font-weight:900; }
.jobs-salary-kpi--green { color:#1da874; }.jobs-salary-kpi--green .jobs-salary-kpi__icon::after { content:"$"; }
.jobs-salary-kpi--blue { color:#377ae8; }.jobs-salary-kpi--blue .jobs-salary-kpi__icon::after { content:"◎"; }
.jobs-salary-kpi--purple { color:#7c4ce1; }.jobs-salary-kpi--purple .jobs-salary-kpi__icon::after { content:"⌖"; }
.jobs-salary-kpi--teal { color:#22a79a; }.jobs-salary-kpi--teal .jobs-salary-kpi__icon::after { content:"%"; }
.jobs-salary-kpi > div { min-width:0; color:#15283d; }
.jobs-salary-kpi p { margin:1px 0 5px; color:#4d6074; font-size:.76rem; font-weight:800; }
.jobs-salary-kpi strong { display:block; max-width:calc(100% - 42px); color:#14253a; font-size:clamp(1.25rem,2vw,1.75rem); line-height:1.12; letter-spacing:-.035em; }
.jobs-salary-kpi small { display:block; margin-top:6px; color:#69798a; font-size:.68rem; line-height:1.35; }
.jobs-salary-kpi svg { position:absolute; right:15px; top:61px; width:50px; }
.jobs-salary-kpi > a { grid-column:2; align-self:end; color:#176c67; font-size:.72rem; font-weight:800; }
.jobs-salary-kpi__change { grid-column:2; align-self:end; color:#5a6e7d; font-size:.7rem; font-weight:750; }
.jobs-salary-info { display:inline-grid; width:14px; height:14px; place-items:center; border:1px solid #9cabb9; border-radius:50%; color:#718192; font-size:.56rem; font-style:normal; cursor:help; }
.jobs-salary-primary-grid { display:grid; grid-template-columns:1.04fr .96fr; gap:12px; margin-bottom:12px; }
.jobs-salary-secondary-grid { display:grid; grid-template-columns:1.12fr .9fr .84fr .98fr; gap:12px; }
.jobs-salary-panel { min-width:0; padding:18px; border:1px solid #dfe6eb; border-radius:13px; background:#fff; box-shadow:0 5px 18px rgba(26,54,82,.05); }
.jobs-salary-panel__heading { display:flex; justify-content:space-between; gap:16px; align-items:start; margin-bottom:18px; }
.jobs-salary-panel__heading h2 { margin:0; color:#21364e; font-size:.9rem; line-height:1.25; letter-spacing:-.015em; }
.jobs-salary-panel__heading p { margin:4px 0 0; color:#8190a0; font-size:.66rem; line-height:1.4; }
.jobs-salary-panel__heading > span { padding:5px 8px; border:1px solid #e0e6eb; border-radius:6px; color:#5e7184; font-size:.66rem; }
.jobs-salary-histogram { display:grid; grid-template-columns:48px minmax(0,1fr); min-height:250px; }
.jobs-salary-y-labels { display:flex; flex-direction:column; justify-content:space-between; padding:4px 8px 29px 0; color:#8c98a4; font-size:.58rem; text-align:right; }
.jobs-salary-histogram__plot { display:grid; grid-template-columns:repeat(6,minmax(42px,1fr)); gap:10px; align-items:end; padding:18px 4px 0; border-bottom:1px solid #dfe6eb; background:repeating-linear-gradient(to bottom,#edf1f4 0,#edf1f4 1px,transparent 1px,transparent 25%); }
.jobs-salary-histogram__column { display:grid; height:215px; grid-template-rows:22px minmax(0,1fr) 28px; align-items:end; justify-items:center; }
.jobs-salary-histogram__column i { width:min(54px,82%); min-height:5px; border-radius:7px 7px 0 0; background:linear-gradient(180deg,#38b6a4,#347fce); box-shadow:inset 0 1px rgba(255,255,255,.35); }
.jobs-salary-histogram__value { color:#56697b; font-size:.62rem; font-weight:800; }
.jobs-salary-histogram__column small { align-self:center; color:#68798b; font-size:.6rem; white-space:nowrap; }
.jobs-salary-chart-note { display:flex; justify-content:space-between; gap:15px; margin:13px 4px 0 52px; color:#617487; font-size:.65rem; }
.jobs-salary-chart-note span { display:flex; align-items:center; gap:6px; }
.jobs-salary-chart-note i { display:inline-block; width:18px; height:3px; background:#2e9ba4; }
.jobs-salary-bars { display:grid; gap:12px; }
.jobs-salary-bar { display:grid; grid-template-columns:126px minmax(100px,1fr) 68px 44px; gap:9px; align-items:center; }
.jobs-salary-bar > span { overflow:hidden; color:#43576b; font-size:.7rem; font-weight:750; text-overflow:ellipsis; white-space:nowrap; }
.jobs-salary-bar > div { height:9px; overflow:hidden; border-radius:5px; background:#edf2f4; }
.jobs-salary-bar i { display:block; height:100%; border-radius:5px; background:linear-gradient(90deg,#22a99c,#347ecb); }
.jobs-salary-bar strong { color:#2e4358; font-size:.7rem; text-align:right; }
.jobs-salary-bar small { color:#8b97a3; font-size:.57rem; text-align:right; }
.jobs-salary-state-tiles { display:grid; grid-template-columns:repeat(4,1fr); gap:5px; max-width:190px; margin:0 auto 14px; transform:skewX(-7deg); }
.jobs-salary-state-tiles span { display:grid; min-height:30px; place-items:center; border-radius:5px; background:rgba(37,129,187,var(--state-strength)); color:#fff; font-size:.62rem; font-weight:900; transform:skewX(7deg); }
.jobs-salary-state-list { display:grid; gap:8px; margin:0; padding:0; list-style:none; counter-reset:salary-state; }
.jobs-salary-state-list li { display:grid; grid-template-columns:82px minmax(45px,1fr) 60px; gap:8px; align-items:center; counter-increment:salary-state; }
.jobs-salary-state-list li > span { overflow:hidden; color:#4a5c70; font-size:.66rem; font-weight:750; text-overflow:ellipsis; white-space:nowrap; }
.jobs-salary-state-list li > span::before { content:counter(salary-state) ". "; color:#9aa6b2; }
.jobs-salary-state-list div { height:5px; overflow:hidden; border-radius:4px; background:#edf1f4; }
.jobs-salary-state-list i { display:block; height:100%; background:#3385c3; }
.jobs-salary-state-list strong { color:#263c53; font-size:.66rem; text-align:right; }
.jobs-salary-states > a,.jobs-salary-insights > a { display:inline-flex; margin-top:15px; color:#176f68; font-size:.7rem; font-weight:850; }
.jobs-salary-column-chart { display:flex; height:196px; gap:12px; align-items:end; justify-content:center; padding:25px 8px 0; border-bottom:1px solid #dfe6eb; background:linear-gradient(to bottom,transparent 49.5%,#edf1f4 50%,transparent 50.5%); }
.jobs-salary-column-chart > div { display:grid; width:min(82px,45%); height:100%; grid-template-rows:24px minmax(0,1fr) 30px 20px; align-items:end; justify-items:center; }
.jobs-salary-column-chart i { width:100%; min-height:12px; border-radius:7px 7px 0 0; background:linear-gradient(180deg,#42bdb3,#70d0c5); }
.jobs-salary-column-chart > div:nth-child(even) i { background:linear-gradient(180deg,#377fe1,#70a7ee); }
.jobs-salary-column-chart strong { color:#253b50; font-size:.68rem; }
.jobs-salary-column-chart span { align-self:center; color:#40556a; font-size:.62rem; font-weight:800; text-align:center; }
.jobs-salary-column-chart small { align-self:center; color:#8c99a5; font-size:.55rem; }
.jobs-salary-mini-comparison { display:flex; flex-wrap:wrap; gap:6px 10px; margin-top:12px; color:#597084; font-size:.61rem; }
.jobs-salary-mini-comparison > strong { width:100%; color:#3d5368; }
.jobs-salary-mini-comparison b { color:#174d68; }
.jobs-salary-percentiles { padding-right:0; padding-left:0; }
.jobs-salary-percentiles .jobs-salary-panel__heading { padding:0 18px; }
.jobs-salary-percentiles table { width:100%; border-collapse:collapse; font-size:.66rem; }
.jobs-salary-percentiles th,.jobs-salary-percentiles td { padding:10px 18px; border-top:1px solid #edf0f3; text-align:left; }
.jobs-salary-percentiles thead th { color:#7a8998; font-size:.57rem; text-transform:uppercase; }
.jobs-salary-percentiles tbody th { color:#53677a; font-weight:750; }
.jobs-salary-percentiles td { color:#20364d; font-weight:850; }
.jobs-salary-percentiles tr.is-median { background:#eff8f6; }
.jobs-salary-insights ul { display:grid; gap:13px; margin:0; padding:0; list-style:none; }
.jobs-salary-insights li { display:grid; grid-template-columns:30px 1fr; gap:9px; }
.jobs-salary-insights li > span { display:grid; width:28px; height:28px; place-items:center; border-radius:50%; color:#fff; font-size:.7rem; font-weight:900; }
.jobs-salary-insights .is-green { background:#2aaa79; }.jobs-salary-insights .is-blue { background:#377ce2; }.jobs-salary-insights .is-purple { background:#8052df; }.jobs-salary-insights .is-teal { background:#25a79a; }
.jobs-salary-insights p { margin:0; color:#647588; font-size:.63rem; line-height:1.42; }
.jobs-salary-insights p strong { display:block; margin-bottom:2px; color:#1d865f; font-size:.68rem; }
.jobs-salary-empty { display:flex; gap:18px; align-items:center; margin:22px 0; padding:26px; border:1px solid #dce5e9; border-radius:14px; background:#f7faf9; }
.jobs-salary-empty > span { display:grid; flex:0 0 46px; width:46px; height:46px; place-items:center; border-radius:50%; background:#1d9f7a; color:#fff; font-size:1.35rem; font-weight:900; }
.jobs-salary-empty h2 { margin:0 0 5px; font-size:1.15rem; }.jobs-salary-empty p { margin:0; color:#5f7180; line-height:1.5; }.jobs-salary-empty > a { margin-left:auto; color:#176f68; font-weight:850; white-space:nowrap; }
.jobs-salary-methodology { margin-top:42px; padding:clamp(28px,4vw,48px); border:1px solid #d4e8e4; border-radius:22px; background:linear-gradient(135deg,#f9fbfa,#eaf7f3); }
.jobs-salary-methodology > div:first-child { display:flex; justify-content:space-between; gap:30px; align-items:end; }
.jobs-salary-methodology h2,.jobs-salary-seo h2 { max-width:780px; margin:0; font-size:clamp(1.75rem,3.2vw,2.7rem); line-height:1.08; letter-spacing:-.045em; }
.jobs-salary-methodology__grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin-top:28px; }
.jobs-salary-methodology article { padding-top:17px; border-top:2px solid #70bbb0; }
.jobs-salary-methodology h3 { margin:0 0 8px; font-size:1rem; }
.jobs-salary-methodology p,.jobs-salary-seo p { color:#4f626c; line-height:1.7; }
.jobs-salary-methodology__source { margin:26px 0 0; padding-top:20px; border-top:1px solid #d4e3df; font-size:.82rem; }
.jobs-salary-methodology a,.jobs-salary-seo a { color:#116b64; font-weight:800; }
.jobs-salary-seo { display:grid; grid-template-columns:.82fr 1.18fr; gap:65px; align-items:start; margin-top:50px; }
.jobs-salary-seo__intro > p:not(.jobs-seo-eyebrow) { font-size:1.02rem; }
.jobs-salary-seo__intro > div { display:flex; flex-wrap:wrap; gap:12px; align-items:center; margin-top:24px; }
.jobs-salary-faq { display:grid; border-top:1px solid #dce2e4; }
.jobs-salary-faq details { border-bottom:1px solid #dce2e4; }
.jobs-salary-faq summary { padding:18px 32px 18px 0; color:#24394d; font-weight:850; cursor:pointer; }
.jobs-salary-faq p { margin:0; padding:0 24px 18px 0; font-size:.92rem; }

@media (max-width:900px) {
  .jobs-site-header--product .jobs-site-nav__utility { display:flex; }
  .jobs-site-header--product .jobs-site-nav__utility a { display:flex !important; height:60px !important; }
  .jobs-directory-grid,.jobs-resource-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .jobs-seo-card-list { grid-template-columns:1fr; }
  .jobs-resource-layout { grid-template-columns:1fr; gap:25px; }
  .jobs-resource-toc { position:static; }
  .jobs-resource-summary { margin-left:0; }
  .jobs-salary-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .jobs-salary-filter-submit,.jobs-salary-clear { width:100%; }
  .jobs-salary-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .jobs-salary-primary-grid { grid-template-columns:1fr; }
  .jobs-salary-secondary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .jobs-salary-seo { grid-template-columns:1fr; gap:30px; }
}
@media (max-width:620px) {
  .jobs-seo-main,.jobs-resource-main { width:min(100% - 24px,1160px); padding-top:20px; }
  .jobs-seo-hero { padding:34px 24px; border-radius:20px; }
  .jobs-directory-grid,.jobs-employer-grid,.jobs-resource-grid,.jobs-decision-grid { grid-template-columns:1fr; }
  .jobs-location-search > div { grid-template-columns:1fr; }
  .jobs-alert-band { align-items:flex-start; flex-direction:column; padding:24px; }
  .jobs-product-footer__inner { grid-template-columns:1fr; gap:24px; }
  .jobs-resource-article > header h1 { font-size:2.5rem; }
  .jobs-salary-dashboard { width:calc(100% - 24px); }
  .jobs-salary-toolbar,.jobs-salary-heading { align-items:stretch; flex-direction:column; }
  .jobs-salary-search { width:100%; }
  .jobs-salary-toolbar__actions { display:grid; grid-template-columns:1fr auto; }
  .jobs-salary-freshness { padding:0 10px; font-size:.72rem; }
  .jobs-salary-heading { gap:12px; }
  .jobs-salary-heading h1 { font-size:2.35rem; }
  .jobs-salary-heading > a { align-self:flex-start; }
  .jobs-salary-filters,.jobs-salary-kpis,.jobs-salary-secondary-grid,.jobs-salary-methodology__grid { grid-template-columns:1fr; }
  .jobs-salary-kpi { grid-template-columns:42px minmax(0,1fr); }
  .jobs-salary-histogram { grid-template-columns:1fr; min-height:225px; }
  .jobs-salary-y-labels { display:none; }
  .jobs-salary-histogram__plot { gap:4px; overflow:hidden; }
  .jobs-salary-histogram__column { min-width:0; height:190px; }
  .jobs-salary-histogram__column small { font-size:.51rem; transform:rotate(-23deg); white-space:nowrap; }
  .jobs-salary-chart-note { margin-left:0; }
  .jobs-salary-bar { grid-template-columns:96px minmax(60px,1fr) 59px; }
  .jobs-salary-bar small { display:none; }
  .jobs-salary-methodology { padding:28px 22px; }
  .jobs-salary-empty { align-items:flex-start; flex-wrap:wrap; }
  .jobs-salary-empty > a { width:100%; margin-left:64px; }
}

/* Salary analytics dashboard: OT Bestie study-platform visual system. */
.jobs-salary-body {
  --salary-ink:#0a2540;
  --salary-muted:#5d7087;
  --salary-purple:#3e2fa4;
  --salary-indigo:#3b63d9;
  --salary-blue:#176ae5;
  --salary-cyan:#00a6d6;
  --salary-pink:#ff5c93;
  --salary-soft:#f5f7ff;
  --salary-soft-strong:#eef1ff;
  --salary-line:#dfe3f6;
  --salary-line-strong:#cfd5f2;
  --salary-shadow:0 16px 42px rgba(28,38,92,.08);
  background:
    radial-gradient(circle at 9% 5%,rgba(62,47,164,.08),transparent 24rem),
    radial-gradient(circle at 94% 16%,rgba(23,106,229,.07),transparent 27rem),
    #f8f9fd;
}
.jobs-salary-dashboard { width:min(1280px,calc(100% - 40px)); color:var(--salary-ink); }
.jobs-salary-dashboard .jobs-seo-eyebrow,.jobs-salary-section-kicker { color:var(--salary-purple); }
.jobs-salary-dashboard a { text-underline-offset:3px; }
.jobs-salary-toolbar { margin:22px 0 30px; }
.jobs-salary-search { min-height:48px; border-color:var(--salary-line); border-radius:12px; box-shadow:0 4px 14px rgba(23,37,71,.045); }
.jobs-salary-search > span { color:var(--salary-indigo); }
.jobs-salary-search input { color:var(--salary-ink); }
.jobs-salary-search button { min-height:48px; border-left-color:var(--salary-line); background:var(--salary-soft); color:var(--salary-purple); }
.jobs-salary-search button:hover { background:var(--salary-soft-strong); }
.jobs-salary-freshness { min-height:44px; border-color:var(--salary-line); border-radius:999px; background:rgba(255,255,255,.86); color:#455773; }
.jobs-salary-freshness > span { color:var(--salary-indigo); }
.jobs-salary-heading { align-items:center; margin:0 0 28px; }
.jobs-salary-heading h1 { color:var(--salary-ink); font-size:clamp(2.35rem,4.4vw,4rem); }
.jobs-salary-heading > div > p:last-child { max-width:820px; color:var(--salary-muted); font-size:1.03rem; }
.jobs-salary-heading > a { color:var(--salary-purple); }
.jobs-salary-view-switcher { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0 0 20px; padding:7px; border:1px solid var(--salary-line); border-radius:18px; background:rgba(255,255,255,.9); box-shadow:0 8px 24px rgba(28,38,92,.055); }
.jobs-salary-view-tab { display:grid; grid-template-columns:38px minmax(0,1fr); gap:12px; align-items:center; min-height:72px; padding:12px 16px; border:1px solid transparent; border-radius:13px; background:transparent; color:#5d6a82; font:inherit; text-align:left; cursor:pointer; }
.jobs-salary-view-tab > span:first-child { display:grid; width:36px; height:36px; place-items:center; border-radius:10px; background:#eff1fa; color:#6b7690; font-size:.68rem; font-weight:900; letter-spacing:.045em; }
.jobs-salary-view-tab > span:last-child { display:grid; gap:2px; }
.jobs-salary-view-tab strong { color:#34445d; font-size:.92rem; }
.jobs-salary-view-tab small { color:#78839a; font-size:.68rem; line-height:1.35; }
.jobs-salary-view-tab:hover { border-color:#d6d9ef; background:#fafaff; }
.jobs-salary-view-tab.is-active { border-color:#cac9ef; background:linear-gradient(135deg,#f7f5ff,#edf3ff); box-shadow:0 5px 16px rgba(62,47,164,.09); }
.jobs-salary-view-tab.is-active > span:first-child { background:linear-gradient(135deg,var(--salary-purple),var(--salary-indigo)); color:#fff; box-shadow:0 5px 13px rgba(62,47,164,.2); }
.jobs-salary-view-tab.is-active strong { color:var(--salary-purple); }
.jobs-salary-view-tab:focus-visible { outline:3px solid rgba(59,99,217,.27); outline-offset:2px; }
.jobs-salary-view-panel:focus { outline:none; }
.jobs-salary-view-panel[hidden] { display:none; }
.jobs-salary-filter-shell { margin-bottom:20px; padding:20px; border:1px solid var(--salary-line); border-radius:18px; background:rgba(255,255,255,.92); box-shadow:var(--salary-shadow); }
.jobs-salary-filter-shell__heading { display:flex; justify-content:space-between; gap:28px; align-items:center; margin-bottom:17px; }
.jobs-salary-filter-shell__heading h2 { margin:0; color:var(--salary-ink); font-size:1.12rem; letter-spacing:-.025em; }
.jobs-salary-section-kicker { margin:0; font-size:.68rem; font-weight:900; letter-spacing:.085em; text-transform:uppercase; }
.jobs-salary-account-state { display:inline-flex; align-items:center; gap:7px; padding:8px 12px; border:1px solid #d8dcf7; border-radius:999px; background:#f5f4ff; color:var(--salary-purple); font-size:.74rem; font-weight:850; }
.jobs-salary-account-state > span { display:grid; width:18px; height:18px; place-items:center; border-radius:50%; background:var(--salary-purple); color:#fff; font-size:.65rem; }
.jobs-salary-account-note { display:flex; max-width:510px; gap:10px; align-items:center; margin:0; color:var(--salary-muted); font-size:.76rem; line-height:1.45; }
.jobs-salary-account-note > span:first-child { display:grid; flex:0 0 32px; width:32px; height:32px; place-items:center; border-radius:10px; background:linear-gradient(135deg,var(--salary-purple),var(--salary-indigo)); color:#fff; font-weight:900; }
.jobs-salary-account-note strong { color:var(--salary-ink); }
.jobs-salary-account-note a { color:var(--salary-purple); font-weight:850; }
.jobs-salary-filters { grid-template-columns:1.02fr .9fr 1.15fr 1.1fr 1fr auto auto; gap:10px; margin:0; }
.jobs-salary-select-field { position:relative; }
.jobs-salary-filters label > span,.jobs-salary-offer-form label > span:first-child { color:#55657d; font-size:.69rem; font-weight:850; letter-spacing:.02em; }
.jobs-salary-select-field::after { content:""; position:absolute; right:16px; bottom:20px; width:7px; height:7px; border-right:2px solid #687794; border-bottom:2px solid #687794; pointer-events:none; transform:rotate(45deg); }
.jobs-salary-filters select,.jobs-salary-offer-form select { appearance:none; -webkit-appearance:none; width:100%; min-height:52px; padding:8px 38px 8px 14px; border:1px solid var(--salary-line); border-radius:12px; background:linear-gradient(180deg,#fff,#fafbff); color:var(--salary-ink); box-shadow:0 2px 8px rgba(23,37,71,.035); font:inherit; font-size:.82rem; font-weight:760; cursor:pointer; }
.jobs-salary-select-field:hover select { border-color:#bfc7ed; box-shadow:0 5px 15px rgba(49,55,140,.08); }
.jobs-salary-select-field.is-active select { border-color:#aaa9e6; background:#f7f6ff; color:var(--salary-purple); }
.jobs-salary-filter-submit,.jobs-salary-clear { min-height:52px; border-radius:12px; }
.jobs-salary-filter-submit { gap:7px; border-color:var(--salary-purple); background:linear-gradient(135deg,var(--salary-purple),var(--salary-indigo)); box-shadow:0 8px 20px rgba(62,47,164,.2); }
.jobs-salary-filter-submit:hover { background:linear-gradient(135deg,#302282,#3156bf); box-shadow:0 10px 24px rgba(62,47,164,.25); transform:translateY(-1px); }
.jobs-salary-filter-submit > span { font-size:.95rem; }
.jobs-salary-clear { border-color:var(--salary-line); background:#fff; color:#455773; }
.jobs-salary-clear:not(.is-disabled):hover { border-color:#b7bce5; color:var(--salary-purple); }
.jobs-salary-clear.is-disabled { color:#9aa3b3; }
.jobs-salary-filter-summary { margin:14px 0 0; padding-top:12px; border-top:1px solid #eceef9; color:#65748a; font-size:.73rem; }
.jobs-salary-filter-summary strong { color:var(--salary-ink); }
.jobs-salary-filters select:focus-visible,.jobs-salary-filter-submit:focus-visible,.jobs-salary-clear:focus-visible,.jobs-salary-search input:focus-visible,.jobs-salary-search button:focus-visible,.jobs-salary-offer-form input:focus-visible,.jobs-salary-offer-form select:focus-visible,.jobs-salary-offer-form button:focus-visible,.jobs-salary-offer-market button:focus-visible,.jobs-salary-offer-extras summary:focus-visible,.jobs-salary-offer-breakdown summary:focus-visible,.jobs-salary-info:focus-visible { outline:3px solid rgba(59,99,217,.27); outline-offset:2px; }
.jobs-salary-loading { border-color:#d8dcf7; background:#f7f7ff; color:#293361; }
.jobs-salary-loading > span { border-color:#d1d5f5; border-top-color:var(--salary-purple); }
.jobs-salary-loading small { color:#67708c; }
.jobs-salary-kpis { grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; margin-bottom:14px; }
.jobs-salary-kpi { min-height:166px; padding:20px; border-color:var(--salary-line); border-radius:17px; box-shadow:0 10px 28px rgba(28,38,92,.065); color:var(--salary-purple); }
.jobs-salary-kpi::before { content:""; position:absolute; inset:0 auto 0 0; width:3px; background:linear-gradient(180deg,var(--salary-purple),var(--salary-indigo),var(--salary-cyan)); }
.jobs-salary-kpi__icon { width:40px; height:40px; background:linear-gradient(135deg,var(--salary-purple),var(--salary-indigo)); color:#fff; font-size:.9rem; font-weight:900; box-shadow:0 7px 17px rgba(62,47,164,.22); }
.jobs-salary-kpi__icon::after { content:none !important; }
.jobs-salary-kpi > div { color:var(--salary-ink); }
.jobs-salary-kpi p { color:#52627a; }
.jobs-salary-kpi strong { color:var(--salary-ink); }
.jobs-salary-kpi small,.jobs-salary-kpi__change { color:#6c7890; }
.jobs-salary-kpi > a { color:var(--salary-purple); }
.jobs-salary-kpi svg { color:var(--salary-indigo); }
.jobs-salary-info { border-color:#aab4ce; color:#697896; }
.jobs-salary-pulse { margin:0 0 14px; padding:20px; border:1px solid var(--salary-line); border-radius:17px; background:linear-gradient(135deg,#171735 0%,#24204f 58%,#263b72 100%); box-shadow:var(--salary-shadow); color:#fff; }
.jobs-salary-pulse > header,.jobs-salary-whole-offer > header { display:flex; justify-content:space-between; gap:32px; align-items:end; }
.jobs-salary-pulse h2,.jobs-salary-whole-offer h2 { margin:2px 0 0; font-size:1.3rem; letter-spacing:-.03em; }
.jobs-salary-pulse .jobs-salary-section-kicker { color:#9eb5ff; }
.jobs-salary-pulse > header > p { max-width:600px; margin:0; color:#cbd2ee; font-size:.78rem; line-height:1.5; }
.jobs-salary-pulse dl { display:grid; grid-template-columns:repeat(5,1fr); margin:18px 0 0; border-top:1px solid rgba(255,255,255,.13); }
.jobs-salary-pulse dl > div { min-width:0; padding:17px 18px 2px; border-left:1px solid rgba(255,255,255,.12); }
.jobs-salary-pulse dl > div:first-child { padding-left:0; border-left:0; }
.jobs-salary-pulse dt { color:#bdc7e5; font-size:.66rem; font-weight:800; }
.jobs-salary-pulse dd { margin:5px 0 3px; color:#fff; font-size:1.5rem; font-weight:900; letter-spacing:-.04em; }
.jobs-salary-pulse small { color:#9faacb; font-size:.59rem; line-height:1.35; }
.jobs-salary-offer-lab { margin:0 0 20px; overflow:hidden; border:1px solid var(--salary-line); border-radius:20px; background:#fff; box-shadow:var(--salary-shadow); }
.jobs-salary-offer-lab > header { display:flex; justify-content:space-between; gap:28px; align-items:center; padding:28px 30px; border-bottom:1px solid var(--salary-line); background:linear-gradient(135deg,#f8f7ff,#f0f5ff); }
.jobs-salary-offer-lab h2 { margin:3px 0 5px; color:var(--salary-ink); font-size:1.55rem; letter-spacing:-.035em; }
.jobs-salary-offer-lab header p:last-child { max-width:720px; margin:0; color:var(--salary-muted); font-size:.84rem; line-height:1.55; }
.jobs-salary-offer-market { display:grid; flex:0 0 min(310px,32%); gap:3px; padding:11px 13px; border:1px solid #d9ddf7; border-radius:12px; background:#fff; color:#66708b; font-size:.65rem; line-height:1.4; }
.jobs-salary-offer-market strong { overflow-wrap:anywhere; color:var(--salary-purple); font-size:.72rem; }
.jobs-salary-offer-market small { color:#747f96; font-size:.59rem; }
.jobs-salary-offer-market button { width:max-content; margin:3px 0 0; padding:0; border:0; background:transparent; color:var(--salary-indigo); font:inherit; font-weight:850; text-decoration:underline; text-underline-offset:2px; cursor:pointer; }
.jobs-salary-offer-lab__grid { display:grid; grid-template-columns:1.08fr .92fr; }
.jobs-salary-offer-form { display:flex; flex-direction:column; gap:16px; padding:26px; }
.jobs-salary-offer-fields { min-width:0; margin:0; padding:0; border:0; }
.jobs-salary-offer-fields legend { width:100%; margin:0 0 13px; padding:0; color:var(--salary-ink); font-size:.78rem; font-weight:900; }
.jobs-salary-offer-fields__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:15px; }
.jobs-salary-offer-form label { position:relative; display:grid; gap:7px; }
.jobs-salary-offer-form [hidden] { display:none; }
.jobs-salary-offer-form input { width:100%; min-height:50px; padding:10px 13px; border:1px solid var(--salary-line); border-radius:12px; background:#fff; color:var(--salary-ink); font:inherit; font-size:1rem; font-weight:750; }
.jobs-salary-money-input,.jobs-salary-percent-input { position:relative; display:block; }
.jobs-salary-money-input > span { position:absolute; z-index:1; left:14px; top:50%; color:var(--salary-purple); font-weight:900; transform:translateY(-50%); }
.jobs-salary-money-input input { padding-left:30px; }
.jobs-salary-percent-input > span { position:absolute; right:14px; top:50%; color:#67738d; font-weight:850; transform:translateY(-50%); }
.jobs-salary-percent-input input { padding-right:34px; }
.jobs-salary-offer-form label:has(select)::after { content:""; position:absolute; right:16px; bottom:20px; width:7px; height:7px; border-right:2px solid #687794; border-bottom:2px solid #687794; pointer-events:none; transform:rotate(45deg); }
.jobs-salary-offer-form button { display:flex; min-height:50px; align-items:center; justify-content:center; gap:9px; align-self:end; border:1px solid var(--salary-purple); border-radius:12px; background:linear-gradient(135deg,var(--salary-purple),var(--salary-indigo)); color:#fff; box-shadow:0 8px 20px rgba(62,47,164,.18); font:inherit; font-size:.82rem; font-weight:850; cursor:pointer; }
.jobs-salary-offer-form button:hover { background:linear-gradient(135deg,#302282,#3156bf); }
.jobs-salary-offer-form > button { width:100%; align-self:stretch; }
.jobs-salary-offer-form > p { margin:0; color:#768098; font-size:.67rem; line-height:1.45; }
.jobs-salary-offer-extras { overflow:hidden; border:1px solid #e1e3f2; border-radius:13px; background:#fbfbfe; }
.jobs-salary-offer-extras summary { display:flex; min-height:48px; align-items:center; justify-content:space-between; gap:12px; padding:11px 14px; color:var(--salary-ink); font-size:.76rem; font-weight:850; cursor:pointer; list-style:none; }
.jobs-salary-offer-extras summary::-webkit-details-marker { display:none; }
.jobs-salary-offer-extras summary::after { content:"+"; order:3; color:var(--salary-purple); font-size:1.2rem; line-height:1; }
.jobs-salary-offer-extras[open] summary::after { content:"−"; }
.jobs-salary-offer-extras summary small { margin-left:auto; padding:3px 7px; border-radius:999px; background:#eeeffa; color:#6d7690; font-size:.58rem; }
.jobs-salary-offer-extras > p { margin:0; padding:0 14px 12px; color:#727d94; font-size:.66rem; }
.jobs-salary-offer-extras .jobs-salary-offer-fields__grid { padding:0 14px 14px; }
.jobs-salary-offer-result { display:flex; min-width:0; flex-direction:column; justify-content:center; padding:26px; border-left:1px solid var(--salary-line); background:#fafbff; }
.jobs-salary-offer-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.jobs-salary-offer-metrics article { min-width:0; padding:14px; border:1px solid #e0e3f3; border-radius:13px; background:#fff; box-shadow:0 5px 15px rgba(31,42,98,.045); }
.jobs-salary-offer-metrics span { display:block; margin-bottom:6px; color:#6b7690; font-size:.62rem; font-weight:850; }
.jobs-salary-offer-metrics strong { display:block; overflow-wrap:anywhere; color:var(--salary-ink); font-size:clamp(.92rem,1.6vw,1.28rem); line-height:1.1; letter-spacing:-.04em; }
.jobs-salary-offer-equivalents { display:flex; flex-wrap:wrap; gap:5px 13px; margin:12px 2px 0; color:#65718a; font-size:.66rem; line-height:1.4; }
.jobs-salary-offer-equivalents span { display:inline-flex; gap:4px; }
.jobs-salary-offer-equivalents strong { color:#3f4e68; }
.jobs-salary-offer-position { margin:27px 0 19px; }
.jobs-salary-offer-position > div:first-child { display:flex; justify-content:space-between; margin-bottom:7px; color:#7b8499; font-size:.58rem; font-weight:750; }
.jobs-salary-offer-track { position:relative; height:8px; border-radius:999px; background:linear-gradient(90deg,#e3e7ff,#968ef0 48%,#3b63d9); }
.jobs-salary-offer-track i { position:absolute; top:50%; width:18px; height:18px; border:4px solid #fff; border-radius:50%; background:var(--salary-purple); box-shadow:0 2px 9px rgba(22,30,77,.3); transform:translate(-50%,-50%); transition:left .25s ease; }
.jobs-salary-offer-summary { padding:14px 16px; border:1px solid #dedff1; border-radius:13px; background:#fff; }
.jobs-salary-offer-result h3 { margin:0 0 6px; color:var(--salary-purple); font-size:1rem; }
.jobs-salary-offer-summary p { margin:0; color:#69748b; font-size:.71rem; line-height:1.5; }
.jobs-salary-offer-breakdown { margin-top:11px; border-top:1px solid #e1e3f0; }
.jobs-salary-offer-breakdown summary { padding:12px 2px 4px; color:var(--salary-purple); font-size:.67rem; font-weight:850; cursor:pointer; }
.jobs-salary-offer-breakdown dl { display:grid; gap:7px; margin:9px 0 0; padding:12px 14px; border:1px solid #e0e3f1; border-radius:12px; background:#fff; }
.jobs-salary-offer-breakdown dl > div { display:flex; justify-content:space-between; gap:16px; color:#69748b; font-size:.66rem; }
.jobs-salary-offer-breakdown dt,.jobs-salary-offer-breakdown dd { margin:0; }
.jobs-salary-offer-breakdown dd { color:var(--salary-ink); font-weight:800; }
.jobs-salary-primary-grid,.jobs-salary-secondary-grid { gap:14px; margin-bottom:14px; }
.jobs-salary-secondary-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.jobs-salary-panel { padding:21px; border-color:var(--salary-line); border-radius:17px; box-shadow:0 10px 28px rgba(28,38,92,.055); }
.jobs-salary-panel__heading h2 { color:var(--salary-ink); font-size:.96rem; }
.jobs-salary-panel__heading p { color:#7a8498; }
.jobs-salary-panel__heading > span { border-color:var(--salary-line); color:#606d87; }
.jobs-salary-histogram__plot { border-bottom-color:var(--salary-line); background:repeating-linear-gradient(to bottom,#eceef8 0,#eceef8 1px,transparent 1px,transparent 25%); }
.jobs-salary-histogram__column { grid-template-rows:minmax(0,1fr) 28px; }
.jobs-salary-histogram__column i { background:linear-gradient(180deg,var(--salary-indigo),var(--salary-purple)); }
.jobs-salary-chart-note i { background:linear-gradient(90deg,var(--salary-purple),var(--salary-indigo)); }
.jobs-salary-bar > div,.jobs-salary-state-list div { background:#eef0f8; }
.jobs-salary-bar i,.jobs-salary-state-list i { background:linear-gradient(90deg,var(--salary-purple),var(--salary-indigo)); }
.jobs-salary-bar { grid-template-columns:126px minmax(100px,1fr) 72px; }
.jobs-salary-state-tiles { transform:none; }
.jobs-salary-state-tiles span { background:rgba(62,47,164,var(--state-strength)); transform:none; }
.jobs-salary-states > a,.jobs-salary-insights > a { color:var(--salary-purple); }
.jobs-salary-column-chart { border-bottom-color:var(--salary-line); background:linear-gradient(to bottom,transparent 49.5%,#eceef8 50%,transparent 50.5%); }
.jobs-salary-column-chart > div { grid-template-rows:24px minmax(0,1fr) 32px; }
.jobs-salary-column-chart i,.jobs-salary-column-chart > div:nth-child(even) i { background:linear-gradient(180deg,var(--salary-indigo),#8ea2ff); }
.jobs-salary-mini-comparison b { color:var(--salary-purple); }
.jobs-salary-percentiles tr.is-median { background:#f0f1ff; }
.jobs-salary-insights li > span { background:linear-gradient(135deg,var(--salary-purple),var(--salary-indigo)); box-shadow:0 5px 12px rgba(62,47,164,.17); }
.jobs-salary-insights p strong { color:var(--salary-purple); }
.jobs-salary-panel-empty { margin:8px 0; padding:15px; border-radius:11px; background:var(--salary-soft); color:#68748c; font-size:.73rem; line-height:1.5; }
.jobs-salary-whole-offer { margin:0 0 16px; padding:26px; border:1px solid var(--salary-line); border-radius:20px; background:#fff; box-shadow:var(--salary-shadow); }
.jobs-salary-whole-offer > header > p { max-width:630px; margin:0; color:var(--salary-muted); font-size:.82rem; line-height:1.5; }
.jobs-salary-question-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:11px; margin-top:22px; }
.jobs-salary-question-grid article { min-width:0; padding:18px; border:1px solid var(--salary-line); border-radius:14px; background:linear-gradient(180deg,#fff,#fafbff); }
.jobs-salary-question-grid article > span { display:inline-flex; margin-bottom:11px; color:var(--salary-indigo); font-size:.65rem; font-weight:900; letter-spacing:.08em; }
.jobs-salary-question-grid h3 { margin:0 0 10px; color:var(--salary-ink); font-size:.88rem; }
.jobs-salary-question-grid ul { display:grid; gap:8px; margin:0; padding-left:16px; }
.jobs-salary-question-grid li { color:#66728a; font-size:.68rem; line-height:1.45; }
.jobs-salary-question-grid li::marker { color:var(--salary-indigo); }
.jobs-salary-evidence-limit { margin:18px 0 0; padding:14px 16px; border-radius:12px; background:var(--salary-soft); color:#637089; font-size:.73rem; line-height:1.5; }
.jobs-salary-evidence-limit strong { color:var(--salary-ink); }
.jobs-salary-empty { border-color:var(--salary-line); background:#f7f7ff; }
.jobs-salary-empty > span { background:linear-gradient(135deg,var(--salary-purple),var(--salary-indigo)); }
.jobs-salary-empty > a { color:var(--salary-purple); }
.jobs-salary-methodology { border-color:var(--salary-line); background:linear-gradient(135deg,#fafaff,#eff2ff); }
.jobs-salary-methodology article { border-top-color:var(--salary-indigo); }
.jobs-salary-methodology p,.jobs-salary-seo p { color:#53637a; }
.jobs-salary-methodology__source { border-top-color:var(--salary-line); }
.jobs-salary-methodology a,.jobs-salary-seo a { color:var(--salary-purple); }
.jobs-salary-dashboard .jobs-button--primary { border-color:var(--salary-purple); background:linear-gradient(135deg,var(--salary-purple),var(--salary-indigo)); color:#fff; }
.jobs-salary-faq { border-top-color:var(--salary-line); }
.jobs-salary-faq details { border-bottom-color:var(--salary-line); }
.jobs-salary-faq summary { color:var(--salary-ink); }
@media (max-width:1120px) {
  .jobs-salary-filters { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .jobs-salary-filter-submit,.jobs-salary-clear { width:100%; }
  .jobs-salary-pulse dl { grid-template-columns:repeat(3,1fr); }
  .jobs-salary-pulse dl > div:nth-child(4) { padding-left:0; border-left:0; }
  .jobs-salary-question-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:900px) {
  .jobs-salary-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .jobs-salary-offer-lab__grid { grid-template-columns:1fr; }
  .jobs-salary-offer-result { border-top:1px solid var(--salary-line); border-left:0; }
  .jobs-salary-primary-grid,.jobs-salary-secondary-grid { grid-template-columns:1fr; }
  .jobs-salary-question-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:680px) {
  .jobs-salary-dashboard { width:calc(100% - 24px); }
  .jobs-salary-toolbar,.jobs-salary-heading,.jobs-salary-filter-shell__heading,.jobs-salary-pulse > header,.jobs-salary-whole-offer > header,.jobs-salary-offer-lab > header { align-items:stretch; flex-direction:column; }
  .jobs-salary-toolbar { gap:12px; }
  .jobs-salary-heading h1 { font-size:2.55rem; }
  .jobs-salary-heading > div > p:last-child { font-size:.94rem; }
  .jobs-salary-view-switcher { grid-template-columns:1fr; padding:6px; }
  .jobs-salary-view-tab { min-height:64px; }
  .jobs-salary-filter-shell { padding:16px; }
  .jobs-salary-account-note { max-width:none; }
  .jobs-salary-filters,.jobs-salary-kpis,.jobs-salary-pulse dl,.jobs-salary-offer-fields__grid,.jobs-salary-question-grid,.jobs-salary-offer-metrics { grid-template-columns:1fr; }
  .jobs-salary-filters select,.jobs-salary-offer-form select { font-size:16px; }
  .jobs-salary-pulse dl > div { padding:14px 0; border-top:1px solid rgba(255,255,255,.1); border-left:0; }
  .jobs-salary-pulse dl > div:first-child { border-top:0; }
  .jobs-salary-offer-lab > header { padding:21px; }
  .jobs-salary-offer-market { flex-basis:auto; max-width:none; }
  .jobs-salary-offer-form,.jobs-salary-offer-result { padding:21px; }
  .jobs-salary-offer-form > p { grid-column:auto; }
  .jobs-salary-whole-offer { padding:21px; }
}
@media (prefers-reduced-motion:reduce) {
  .jobs-salary-filter-submit,.jobs-salary-offer-track i { transition:none; }
}

/* Salary analytics reference redesign. */
.jobs-salary-body {
  --salary-purple:#4a35db;
  --salary-indigo:#4d58ed;
  --salary-soft:#f7f7ff;
  --salary-soft-strong:#efefff;
  --salary-line:#e3e5f4;
  --salary-line-strong:#d3d6ee;
  --salary-shadow:0 8px 28px rgba(35,43,94,.065);
  background:
    radial-gradient(circle at 8% 2%,rgba(94,78,232,.055),transparent 23rem),
    radial-gradient(circle at 94% 4%,rgba(116,147,255,.06),transparent 24rem),
    #fafbff;
}
.jobs-salary-dashboard { width:min(1098px,calc(100% - 40px)); padding-top:12px; }
.jobs-salary-heading { position:relative; display:grid; min-height:136px; grid-template-columns:minmax(0,.98fr) minmax(420px,1.02fr); gap:32px; align-items:center; margin:0 0 10px; }
.jobs-salary-heading__copy { position:relative; z-index:2; }
.jobs-salary-heading h1 { max-width:520px; margin:0; color:#102440; font-size:clamp(2.35rem,3.65vw,2.9rem); line-height:1.03; letter-spacing:-.045em; }
.jobs-salary-heading h1 > span { display:block; }
.jobs-salary-heading h1 small { display:inline-grid; height:24px; place-items:center; margin-left:8px; padding:0 8px; border-radius:999px; background:linear-gradient(135deg,#5841e8,#4456e9); color:#fff; font-size:.62rem; font-weight:900; letter-spacing:0; vertical-align:.3em; }
.jobs-salary-heading__copy > p { max-width:535px; margin:9px 0 7px; color:#5f6f86; font-size:.96rem; line-height:1.5; }
.jobs-salary-heading__copy > a { display:inline-flex; gap:7px; align-items:center; color:#3f32d1; font-size:.84rem; font-weight:850; }
.jobs-salary-heading__copy > a span { transition:transform .18s ease; }
.jobs-salary-heading__copy > a:hover span { transform:translateX(3px); }
.jobs-salary-hero-visual { position:relative; align-self:stretch; min-height:136px; overflow:visible; border-radius:20px; background:linear-gradient(135deg,rgba(255,255,255,0),rgba(255,255,255,.92) 38%,rgba(255,255,255,.72)); box-shadow:24px 18px 50px rgba(55,62,133,.035); }
.jobs-salary-hero-visual > svg { position:absolute; z-index:2; inset:7px 0 0 0; width:100%; height:129px; filter:drop-shadow(0 12px 18px rgba(75,61,226,.08)); }
.jobs-salary-hero-bars { position:absolute; z-index:1; right:8px; bottom:2px; display:flex; height:108px; gap:18px; align-items:end; opacity:.55; }
.jobs-salary-hero-bars i { display:block; width:15px; border-radius:4px 4px 0 0; background:linear-gradient(180deg,#b0aaff,#ebeaff); }
.jobs-salary-hero-bars i:nth-child(1) { height:48%; }.jobs-salary-hero-bars i:nth-child(2) { height:73%; }.jobs-salary-hero-bars i:nth-child(3) { height:45%; }.jobs-salary-hero-bars i:nth-child(4) { height:82%; }.jobs-salary-hero-bars i:nth-child(5) { height:64%; }.jobs-salary-hero-bars i:nth-child(6) { height:91%; }
.jobs-salary-position-card { position:absolute; z-index:3; top:0; right:124px; display:grid; width:112px; min-height:86px; align-content:center; padding:11px 13px; border:1px solid #e7e8f3; border-radius:12px; background:rgba(255,255,255,.96); box-shadow:0 12px 32px rgba(45,52,102,.1); color:#617089; }
.jobs-salary-position-card > span { font-size:.57rem; line-height:1.25; }
.jobs-salary-position-card strong { margin-top:3px; color:#4c3ee1; font-size:1.75rem; line-height:1; letter-spacing:-.045em; }
.jobs-salary-position-card sup { font-size:.52em; vertical-align:.62em; }
.jobs-salary-position-card small { margin:-15px 0 0 42px; color:#2d3f5c; font-size:.55rem; }

.jobs-salary-view-switcher { gap:10px; min-height:70px; margin-bottom:10px; padding:6px; border-radius:10px; background:#fff; box-shadow:0 5px 18px rgba(37,45,93,.055); }
.jobs-salary-view-tab { grid-template-columns:40px minmax(0,1fr); min-height:58px; padding:8px 12px; border-radius:8px; }
.jobs-salary-view-tab > .jobs-salary-view-icon { display:grid; width:38px; height:38px; place-items:center; border-radius:10px; background:#efefff; color:#4a3dde; }
.jobs-salary-view-tab .jobs-salary-view-icon svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.jobs-salary-view-tab strong { font-size:.95rem; }.jobs-salary-view-tab small { font-size:.78rem; }
.jobs-salary-view-tab.is-active { border-color:#cfcff5; background:linear-gradient(135deg,#faf9ff,#eff2ff); box-shadow:none; }
.jobs-salary-view-tab.is-active > .jobs-salary-view-icon { background:linear-gradient(135deg,#523ae3,#4c59ed); color:#fff; box-shadow:0 6px 15px rgba(73,54,215,.22); }

.jobs-salary-filter-shell { position:relative; min-height:122px; margin-bottom:16px; padding:17px 18px 16px; border-radius:11px; background:#fff; box-shadow:0 7px 22px rgba(35,43,94,.06); }
.jobs-salary-filter-shell__heading { min-height:24px; margin:0 0 2px; padding-right:180px; }
.jobs-salary-filter-shell__heading h2 { display:flex; gap:9px; align-items:center; font-size:1.05rem; letter-spacing:-.015em; }
.jobs-salary-filter-shell__heading h2 > span { display:grid; width:19px; height:19px; place-items:center; color:#4b3ee0; }
.jobs-salary-filter-shell__heading h2 svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; }
.jobs-salary-account-state { display:none; }
.jobs-salary-account-note { position:absolute; top:17px; right:210px; max-width:290px; margin:0; color:#617087; font-size:.74rem; line-height:1.35; text-align:right; }
.jobs-salary-account-note > span:first-child { display:none; }
.jobs-salary-filters { position:static; display:grid; grid-template-columns:1fr 1.2fr 1.25fr 1.2fr 1.25fr auto; gap:9px; align-items:end; }
.jobs-salary-filters label > span { font-size:.75rem; }
.jobs-salary-filters select { min-height:42px; padding:6px 32px 6px 11px; border-radius:8px; font-size:.86rem; }
.jobs-salary-select-field::after { right:13px; bottom:17px; width:6px; height:6px; }
.jobs-salary-filter-submit { position:absolute; top:17px; right:18px; min-height:40px; padding:0 16px; border-radius:8px; font-size:.8rem; }
.jobs-salary-filter-submit > span { display:grid; width:18px; height:18px; place-items:center; }
.jobs-salary-filter-submit svg { width:17px; height:17px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.jobs-salary-clear { min-height:42px; padding:0 11px; border-radius:7px; font-size:.76rem; white-space:nowrap; }
.jobs-salary-filter-summary { margin:10px 0 -4px; padding-top:9px; font-size:.78rem; }

.jobs-salary-kpis { gap:8px; margin-bottom:8px; }
.jobs-salary-kpi { grid-template-columns:48px minmax(0,1fr); gap:14px; min-height:90px; padding:12px 15px; border-radius:10px; box-shadow:0 6px 21px rgba(35,43,94,.055); }
.jobs-salary-kpi::before { display:none; }
.jobs-salary-kpi:nth-child(-n+3) { min-height:114px; }
.jobs-salary-kpi:nth-child(n+4) { height:90px; min-height:90px; padding-top:9px; padding-bottom:9px; }
.jobs-salary-kpi:nth-child(n+4) p { margin-bottom:1px; font-size:.61rem; line-height:1.1; }
.jobs-salary-kpi:nth-child(n+4) strong { font-size:1.22rem; line-height:1; }
.jobs-salary-kpi:nth-child(n+4) small { margin-top:2px; font-size:.52rem; line-height:1.05; }
.jobs-salary-kpi__icon { width:42px; height:42px; border-radius:10px; font-size:1rem; }
.jobs-salary-kpi p { margin:0 0 3px; font-size:.67rem; }
.jobs-salary-kpi strong { max-width:none; font-size:1.36rem; }
.jobs-salary-kpi small { margin-top:4px; font-size:.6rem; }
.jobs-salary-kpi > a { display:inline-flex; width:max-content; min-height:22px; align-items:center; align-self:end; margin-top:3px; padding:0 11px; border-radius:6px; background:#f0efff; color:#4435d5; font-size:.57rem; text-decoration:none; }
.jobs-salary-kpi:nth-child(n+4) > a { position:absolute; bottom:7px; left:63px; min-height:17px; margin:0; }
.jobs-salary-kpi-range { position:relative; height:29px; margin-top:4px; padding-top:5px; }
.jobs-salary-kpi-range > i { display:block; height:4px; border-radius:999px; background:#eceefe; }
.jobs-salary-kpi-range > i::before,.jobs-salary-kpi-range > i::after,.jobs-salary-kpi-range > b { content:""; position:absolute; top:2px; width:7px; height:7px; border-radius:50%; background:#dde1f7; }
.jobs-salary-kpi-range > i::before { left:0; }.jobs-salary-kpi-range > i::after { right:0; }
.jobs-salary-kpi-range > b { left:50%; background:#4b3ee1; box-shadow:0 0 0 2px #fff; transform:translateX(-50%); }
.jobs-salary-kpi-range > span { display:flex; justify-content:space-between; margin-top:4px; color:#69768d; font-size:.49rem; font-style:normal; text-align:center; }
.jobs-salary-kpi-range em { font-style:normal; line-height:1.15; }

.jobs-salary-primary-grid { gap:14px; margin-bottom:22px; }
.jobs-salary-primary-grid { grid-template-columns:1fr 1.08fr; }
.jobs-salary-panel { padding:22px; border-radius:14px; box-shadow:0 6px 21px rgba(35,43,94,.05); }
.jobs-salary-panel__heading { margin-bottom:16px; }
.jobs-salary-panel__heading h2 { font-size:1.12rem; }.jobs-salary-panel__heading p { margin-top:4px; font-size:.8rem; }
.jobs-salary-distribution-chart { min-height:205px; }
.jobs-salary-distribution-legend { display:flex; gap:6px; align-items:center; margin:0 0 -6px 7px; color:#63708a; font-size:.7rem; font-weight:750; }
.jobs-salary-distribution-legend i { display:block; width:7px; height:7px; border-radius:2px; background:#4d3edc; }
.jobs-salary-distribution-plot { position:relative; }
.jobs-salary-distribution-plot svg { display:block; width:100%; height:170px; overflow:visible; }
.jobs-salary-distribution-grid line { stroke:#eceef8; stroke-width:1; }
.jobs-salary-distribution-median { stroke:#776bef; stroke-width:1.1; stroke-dasharray:3 3; }
.jobs-salary-distribution-plot text { fill:#33425b; font-size:9px; font-weight:800; }
.jobs-salary-distribution-labels { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:3px; margin:-12px 5px 0; color:#68758b; font-size:.61rem; text-align:center; }
.jobs-salary-bars { gap:11px; padding-top:2px; }
.jobs-salary-bar { grid-template-columns:120px minmax(72px,1fr) 72px 116px; gap:9px; }
.jobs-salary-bar > span,.jobs-salary-bar strong { font-size:.76rem; }.jobs-salary-bar > div { height:9px; }
.jobs-salary-bar small { color:#768198; font-size:.65rem; line-height:1.25; text-align:right; }
.jobs-salary-bar.is-benchmark i { background:linear-gradient(90deg,#8b94b7,#5f6b99); }

.jobs-salary-overview { display:grid; grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr); gap:22px 36px; margin:0 0 20px; padding:24px 4px; border-top:1px solid var(--salary-line-strong); border-bottom:1px solid var(--salary-line-strong); }
.jobs-salary-overview p,.jobs-salary-overview dt { margin:0 0 7px; color:#56657b; font-size:.82rem; font-weight:850; }
.jobs-salary-overview__lead > strong { display:block; color:#102440; font-size:clamp(2.4rem,5vw,3.65rem); line-height:1; letter-spacing:-.055em; }
.jobs-salary-overview__range > strong { display:block; color:#3026a7; font-size:clamp(1.65rem,3vw,2.25rem); line-height:1.1; letter-spacing:-.04em; }
.jobs-salary-overview__lead small,.jobs-salary-overview__range small { display:block; margin-top:8px; color:#68768c; font-size:.78rem; line-height:1.45; }
.jobs-salary-overview__facts { display:grid; grid-column:1/-1; grid-template-columns:repeat(3,minmax(0,1fr)); margin:0; padding-top:20px; border-top:1px solid #eceefa; }
.jobs-salary-overview__facts > div { min-width:0; padding:0 22px; border-left:1px solid #e6e8f4; }
.jobs-salary-overview__facts > div:first-child { padding-left:0; border-left:0; }
.jobs-salary-overview__facts dd { display:grid; gap:4px; margin:0; }
.jobs-salary-overview__facts dd strong { overflow-wrap:anywhere; color:#172b47; font-size:1.15rem; line-height:1.2; }
.jobs-salary-overview__facts dd span { color:#5f6e84; font-size:.77rem; line-height:1.4; }
.jobs-salary-overview__facts dd small { color:#778297; font-size:.7rem; line-height:1.4; }
.jobs-salary-overview__facts a { width:max-content; margin-top:3px; color:#4435d5; font-size:.74rem; font-weight:850; }

.jobs-salary-setting-label { margin:0 0 12px; color:#233752; font-size:.8rem; }
.jobs-salary-setting-benchmark { margin-top:20px; padding-top:18px; border-top:1px dashed #cfd3e8; }
.jobs-salary-setting-benchmark > div:first-child { display:flex; justify-content:space-between; gap:14px; align-items:start; margin-bottom:13px; }
.jobs-salary-setting-benchmark h3 { margin:0; color:#2f3e59; font-size:.85rem; }
.jobs-salary-setting-benchmark p { max-width:310px; margin:0; color:#6c7890; font-size:.72rem; line-height:1.4; text-align:right; }

.jobs-salary-secondary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:34px 30px; margin:8px 0 26px; }
.jobs-salary-detail { min-width:0; padding-top:20px; border-top:2px solid #d8dcf1; }
.jobs-salary-detail .jobs-salary-panel__heading { margin-bottom:14px; }
.jobs-salary-detail .jobs-salary-panel__heading h2 { font-size:1rem; }
.jobs-salary-detail .jobs-salary-panel__heading p { font-size:.76rem; }
.jobs-salary-state-list li { grid-template-columns:100px minmax(55px,1fr) 70px; gap:10px; }
.jobs-salary-state-list li > span,.jobs-salary-state-list strong { font-size:.77rem; }
.jobs-salary-states > a { font-size:.8rem; }
.jobs-salary-column-chart strong { font-size:.76rem; }
.jobs-salary-column-chart span { font-size:.7rem; }
.jobs-salary-mini-comparison { font-size:.72rem; }
.jobs-salary-percentiles .jobs-salary-panel__heading { padding:0; }
.jobs-salary-percentiles table { font-size:.78rem; }
.jobs-salary-percentiles th,.jobs-salary-percentiles td { padding:11px 10px; }
.jobs-salary-percentiles thead th { font-size:.68rem; }
.jobs-salary-history-chart { min-height:174px; }
.jobs-salary-history-chart svg { display:block; width:100%; height:150px; overflow:visible; }
.jobs-salary-history-chart line { stroke:#e4e7f4; stroke-width:1; }
.jobs-salary-history-chart text { fill:#7a8598; font-size:9px; font-weight:750; }
.jobs-salary-history-chart path { fill:none; stroke-width:3; stroke-linecap:round; stroke-linejoin:round; }
.jobs-salary-history-chart path.is-ot { stroke:#4d43e8; }
.jobs-salary-history-chart path.is-ota { stroke:#168ca8; }
.jobs-salary-history-chart circle { stroke:#fff; stroke-width:2; }
.jobs-salary-history-chart circle.is-ot { fill:#4d43e8; }
.jobs-salary-history-chart circle.is-ota { fill:#168ca8; }
.jobs-salary-history-years { display:grid; grid-template-columns:repeat(5,1fr); margin:-4px 8px 0 34px; color:#6c7890; font-size:.68rem; text-align:center; }
.jobs-salary-history-legend { display:flex; flex-wrap:wrap; gap:8px 18px; margin-top:8px; }
.jobs-salary-history-legend span { display:grid; grid-template-columns:9px auto; gap:1px 7px; align-items:center; color:#40516a; font-size:.75rem; font-weight:800; }
.jobs-salary-history-legend i { display:block; width:8px; height:8px; border-radius:50%; background:#4d43e8; }
.jobs-salary-history-legend .is-ota i { background:#168ca8; }
.jobs-salary-history-legend strong { grid-column:2; color:#6b7890; font-size:.68rem; font-weight:750; }
.jobs-salary-history-note { margin:13px 0 7px; color:#69768c; font-size:.72rem; line-height:1.5; }
.jobs-salary-history > a { color:#4435d5; font-size:.78rem; font-weight:850; }

.jobs-salary-offer-lab > header { padding:30px; }
.jobs-salary-offer-lab h2 { font-size:1.75rem; }
.jobs-salary-offer-lab header p:last-child { font-size:.94rem; }
.jobs-salary-offer-market { font-size:.77rem; }
.jobs-salary-offer-market strong { font-size:.85rem; }
.jobs-salary-offer-market small { font-size:.72rem; }
.jobs-salary-offer-form { gap:20px; padding:30px; }
.jobs-salary-offer-fields legend { font-size:.95rem; }
.jobs-salary-filters label > span,.jobs-salary-offer-form label > span:first-child { font-size:.79rem; }
.jobs-salary-offer-form button { font-size:.9rem; }
.jobs-salary-offer-form > p { font-size:.78rem; }
.jobs-salary-offer-extras summary { font-size:.86rem; }
.jobs-salary-offer-extras summary small { font-size:.7rem; }
.jobs-salary-offer-extras > p { font-size:.76rem; }
.jobs-salary-offer-result { justify-content:flex-start; padding:30px; }
.jobs-salary-offer-primary { padding-bottom:20px; border-bottom:1px solid #e1e4f2; }
.jobs-salary-offer-primary > span { color:#65718a; font-size:.8rem; font-weight:850; }
.jobs-salary-offer-primary > strong { display:block; margin:6px 0; color:#102440; font-size:clamp(2.2rem,4vw,3.3rem); line-height:1; letter-spacing:-.055em; }
.jobs-salary-offer-primary > p { margin:0; color:#69758c; font-size:.78rem; line-height:1.5; }
.jobs-salary-offer-value-stack { display:grid; margin-top:8px; }
.jobs-salary-offer-value-stack > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:3px 14px; padding:14px 0; border-bottom:1px solid #e7e9f4; }
.jobs-salary-offer-value-stack span { color:#526078; font-size:.83rem; font-weight:850; }
.jobs-salary-offer-value-stack strong { color:#182c48; font-size:1.15rem; }
.jobs-salary-offer-value-stack small { grid-column:1/-1; color:#748096; font-size:.73rem; line-height:1.4; }
.jobs-salary-offer-match-note { margin:14px 0 0; padding:11px 13px; border-left:3px solid #6a5ce7; background:#f0f1ff; color:#4f5c75; font-size:.76rem; line-height:1.5; }
.jobs-salary-offer-match-note[hidden] { display:none; }
.jobs-salary-offer-equivalents { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 16px; margin-top:16px; font-size:.75rem; }
.jobs-salary-offer-equivalents span { justify-content:space-between; }
.jobs-salary-offer-position > div:first-child { font-size:.7rem; }
.jobs-salary-offer-summary p { font-size:.79rem; }
.jobs-salary-offer-breakdown summary { font-size:.78rem; }
.jobs-salary-offer-breakdown dl > div { font-size:.76rem; }

@media (max-width:1120px) {
  .jobs-salary-dashboard { width:min(100% - 32px,1098px); }
  .jobs-salary-heading { grid-template-columns:minmax(0,1fr) minmax(350px,.9fr); }
  .jobs-salary-filters { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .jobs-salary-filter-submit { position:absolute; width:auto; }
  .jobs-salary-clear { width:100%; }
}
@media (max-width:900px) {
  .jobs-salary-heading { grid-template-columns:1fr; min-height:auto; padding:18px 0 22px; }
  .jobs-salary-hero-visual { display:none; }
  .jobs-salary-filter-shell__heading { padding-right:0; }
  .jobs-salary-filter-submit { position:static; width:100%; min-height:46px; }
  .jobs-salary-account-note { position:static; max-width:none; margin:0; text-align:left; }
  .jobs-salary-primary-grid { grid-template-columns:1fr; }
  .jobs-salary-overview__facts { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 0; }
  .jobs-salary-overview__facts > div:nth-child(3) { grid-column:1/-1; padding:18px 0 0; border-top:1px solid #e6e8f4; border-left:0; }
}
@media (max-width:680px) {
  .jobs-salary-dashboard { width:calc(100% - 24px); padding-top:10px; }
  .jobs-salary-heading { display:grid; gap:0; padding:10px 2px 18px; }
  .jobs-salary-heading h1 { font-size:2.25rem; }
  .jobs-salary-heading h1 small { height:21px; font-size:.54rem; }
  .jobs-salary-heading__copy > p { font-size:.84rem; }
  .jobs-salary-view-switcher { gap:5px; border-radius:12px; }
  .jobs-salary-view-tab { min-height:60px; }
  .jobs-salary-filter-shell { padding:16px; border-radius:12px; }
  .jobs-salary-filter-shell__heading { min-height:auto; margin-bottom:14px; }
  .jobs-salary-filter-shell__heading h2 { font-size:.9rem; }
  .jobs-salary-filters { grid-template-columns:1fr; }
  .jobs-salary-filters select { min-height:48px; font-size:16px; }
  .jobs-salary-select-field::after { bottom:20px; }
  .jobs-salary-filter-submit,.jobs-salary-clear { min-height:48px; }
  .jobs-salary-overview { grid-template-columns:1fr; gap:18px; padding:22px 0; }
  .jobs-salary-overview__facts { grid-template-columns:1fr; gap:0; padding-top:5px; }
  .jobs-salary-overview__facts > div,.jobs-salary-overview__facts > div:first-child,.jobs-salary-overview__facts > div:nth-child(3) { grid-column:auto; padding:17px 0; border-top:1px solid #e6e8f4; border-left:0; }
  .jobs-salary-kpis { grid-template-columns:1fr; }
  .jobs-salary-kpi,.jobs-salary-kpi:nth-child(-n+3),.jobs-salary-kpi:nth-child(n+4) { height:auto; min-height:106px; }
  .jobs-salary-kpi:nth-child(n+4) > a { position:static; }
  .jobs-salary-kpi-range { max-width:260px; }
  .jobs-salary-distribution-chart { min-height:190px; }
  .jobs-salary-distribution-plot svg { height:150px; }
  .jobs-salary-distribution-labels { overflow:hidden; font-size:.45rem; }
  .jobs-salary-panel { padding:19px 16px; }
  .jobs-salary-bar { grid-template-columns:96px minmax(55px,1fr) 66px; gap:7px; }
  .jobs-salary-bar small { display:none; }
  .jobs-salary-setting-benchmark > div:first-child { flex-direction:column; }
  .jobs-salary-setting-benchmark p { max-width:none; text-align:left; }
  .jobs-salary-secondary-grid { grid-template-columns:1fr; gap:24px; }
  .jobs-salary-offer-equivalents { grid-template-columns:1fr; }
  .jobs-salary-offer-primary > strong { font-size:2.35rem; }
}

/* Shared OT Bestie candidate account and application tracker. */
.jobs-site-nav__utility a.is-active::after { content:""; position:absolute; right:14px; bottom:0; left:14px; height:3px; border-radius:3px 3px 0 0; background:var(--jobs-coral); }
.jobs-account-live { position:fixed; z-index:10000; right:20px; bottom:20px; max-width:360px; padding:13px 16px; border:1px solid #b9d9d3; border-radius:10px; background:#f2faf8; color:#173f3b; box-shadow:0 12px 32px rgba(23,38,58,.16); font-size:.9rem; font-weight:700; }
.jobs-account-live:empty { display:none; }

body.jobs-account-body { min-height:100vh; margin:0; background:#f4f6fb; }
.jobs-account-page { display:flex; box-sizing:border-box; width:min(100% - 28px,650px); min-height:100vh; flex-direction:column; align-items:center; justify-content:center; gap:24px; margin:0 auto; padding:48px 0; color:var(--jobs-ink); font-family:Arial,"Helvetica Neue",sans-serif; }
.jobs-account-page * { box-sizing:border-box; }
.jobs-account-brand { display:flex; align-items:center; gap:11px; color:var(--jobs-ink) !important; text-decoration:none; }
.jobs-account-brand > span:last-child { display:grid; gap:1px; }
.jobs-account-brand strong { font-size:1.22rem; letter-spacing:-.03em; }
.jobs-account-brand small { color:var(--jobs-muted); font-size:.72rem; font-weight:700; }
.jobs-auth-card { width:min(100%,560px); overflow:hidden; border:1px solid #d9d5cf; border-radius:16px; background:#fff; box-shadow:0 16px 48px rgba(35,48,55,.09); }
.jobs-auth-card__header { padding:32px 34px 18px; text-align:center; }
.jobs-auth-card__header h1 { margin:0 auto 9px; max-width:470px; color:var(--jobs-ink); font-size:clamp(1.55rem,4vw,2.05rem); line-height:1.18; letter-spacing:-.035em; }
.jobs-auth-card__header > p:last-child { max-width:430px; margin:0 auto; color:var(--jobs-muted); font-size:.94rem; line-height:1.55; }
.jobs-auth-job { display:grid; gap:3px; padding:16px 22px; border-bottom:1px solid #d7e9e5; background:var(--jobs-mint); text-align:left; }
.jobs-auth-job span { color:var(--jobs-brand-dark); font-size:.72rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
.jobs-auth-job strong { font-size:1rem; line-height:1.35; }
.jobs-auth-job small { color:var(--jobs-muted); }
.jobs-google-entry { display:grid; justify-items:center; gap:14px; padding:4px 34px 22px; }
.jobs-google-entry.is-busy { opacity:.65; pointer-events:none; }
.jobs-google-button { display:flex; width:min(100%,400px); min-height:44px; align-items:center; justify-content:center; overflow:hidden; border-radius:999px; background:transparent; box-shadow:0 8px 20px rgba(66,133,244,.24); font-size:14px !important; transition:transform .15s ease,box-shadow .15s ease; }
.jobs-google-button:hover { box-shadow:0 8px 20px rgba(66,133,244,.24); transform:none; }
.jobs-google-button:focus-within { outline:3px solid rgba(59,99,217,.3); outline-offset:3px; }
.jobs-google-button > div,.jobs-google-button iframe { width:100% !important; max-width:100% !important; }
.jobs-google-button [role="button"],.jobs-google-button [role="button"] span { font-size:14px !important; }
.jobs-google-status { width:100%; margin:0; color:var(--jobs-muted); font-size:.79rem; line-height:1.4; text-align:center; }
.jobs-google-status:empty { display:none; }
.jobs-google-status.is-error { color:#a33a2b; }
.jobs-auth-divider { display:flex; width:100%; align-items:center; gap:12px; color:var(--jobs-muted); font-size:.73rem; font-weight:750; text-transform:uppercase; }
.jobs-auth-divider::before,.jobs-auth-divider::after { content:""; height:1px; flex:1 1 auto; background:var(--jobs-line); }
.jobs-google-registration { display:grid; gap:18px; padding:0 34px 30px; }
.jobs-google-registration[hidden],.jobs-google-entry[hidden],#jobsEmailAuth[hidden] { display:none !important; }
.jobs-google-registration header { display:grid; gap:7px; text-align:center; }
.jobs-google-registration h2 { margin:0; color:var(--jobs-ink); font-size:1.45rem; line-height:1.25; letter-spacing:-.025em; }
.jobs-google-registration header p { margin:0; color:var(--jobs-muted); font-size:.9rem; line-height:1.5; }
.jobs-google-registration header strong { overflow-wrap:anywhere; color:var(--jobs-brand-dark); font-size:.84rem; }
.jobs-google-registration .jobs-auth-role { padding:15px; border:1px solid var(--jobs-line); border-radius:10px; background:#fafbfa; }
.jobs-google-terms { display:grid; grid-template-columns:20px 1fr; align-items:start; gap:10px; color:var(--jobs-muted); font-size:.8rem; line-height:1.5; }
.jobs-google-terms input { width:18px; height:18px; margin:2px 0 0; accent-color:var(--jobs-brand); }
.jobs-google-terms a { color:var(--jobs-brand-dark); font-weight:750; }
.jobs-google-registration-error { margin:0; color:#a33a2b; font-size:.82rem; line-height:1.4; text-align:center; }
.jobs-google-registration-error:empty { display:none; }
.jobs-google-back { min-height:42px; border:0; background:transparent; color:var(--jobs-brand-dark); font:inherit; font-size:.84rem; font-weight:750; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.jobs-google-back:focus-visible { outline:3px solid rgba(59,99,217,.3); outline-offset:2px; border-radius:5px; }
.jobs-auth-tabs { display:grid; grid-template-columns:1fr 1fr; margin:0 34px; border-bottom:1px solid var(--jobs-line); }
.jobs-auth-tabs a { position:relative; padding:12px 10px; color:var(--jobs-muted) !important; text-align:center; text-decoration:none; font-size:.9rem; font-weight:750; }
.jobs-auth-tabs a[aria-current="page"] { color:var(--jobs-brand-dark) !important; }
.jobs-auth-tabs a[aria-current="page"]::after { content:""; position:absolute; right:12px; bottom:-1px; left:12px; height:3px; border-radius:3px 3px 0 0; background:var(--jobs-brand); }
.jobs-auth-message { margin:18px 34px 0; padding:12px 14px; border:1px solid #e0ad9f; border-radius:9px; background:#fff5f2; color:#713226; font-size:.86rem; line-height:1.45; }
.jobs-auth-form { display:grid; gap:15px; padding:24px 34px 30px; }
.jobs-auth-form > label,.jobs-auth-name-row label { display:grid; gap:7px; color:var(--jobs-ink); font-size:.87rem; font-weight:750; }
.jobs-auth-form input[type="email"],.jobs-auth-form input[type="password"],.jobs-auth-form input[type="text"] { width:100%; min-height:48px; border:1px solid #8a8782; border-radius:8px; padding:10px 12px; background:#fff; color:var(--jobs-ink); font-size:16px; }
.jobs-auth-form input:focus-visible { outline:3px solid rgba(59,99,217,.3); outline-offset:1px; border-color:var(--jobs-brand); }
.jobs-auth-name-row { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.jobs-auth-role { display:flex; flex-wrap:wrap; gap:10px 20px; margin:0; padding:0; border:0; }
.jobs-auth-role legend { width:100%; margin-bottom:2px; font-size:.87rem; font-weight:750; }
.jobs-auth-role label { display:flex; align-items:center; gap:7px; color:var(--jobs-muted); font-size:.87rem; }
.jobs-auth-role input { width:18px; height:18px; accent-color:var(--jobs-brand); }
.jobs-auth-form .jobs-button { width:100%; min-height:50px; margin-top:3px; }
.jobs-auth-help { margin:-8px 0 0; color:var(--jobs-muted); font-size:.77rem; line-height:1.45; }
.jobs-auth-forgot { justify-self:end; margin-top:-7px; color:var(--jobs-brand-dark) !important; font-size:.82rem; font-weight:700; }
.jobs-auth-privacy { margin:0; padding:0 34px 28px; color:var(--jobs-muted); font-size:.74rem; line-height:1.5; text-align:center; }
.jobs-auth-privacy a,.jobs-account-back a { color:var(--jobs-brand-dark); }
.jobs-account-back { margin:0; font-size:.86rem; }

.jobs-account-shortcut { display:flex; min-height:62px; align-items:center; justify-content:space-between; gap:14px; padding:10px 12px; border:1px solid #b9d9d3; border-radius:7px; background:#f2faf8; color:var(--jobs-ink) !important; text-decoration:none; }
.jobs-account-shortcut > span { display:grid; gap:3px; }
.jobs-account-shortcut strong { font-size:.85rem; }
.jobs-account-shortcut small { color:var(--jobs-muted); font-size:.75rem; }
.jobs-account-shortcut b { display:grid; min-width:29px; height:29px; place-items:center; border-radius:999px; background:var(--jobs-brand); color:#fff; font-size:.78rem; }

.jobs-my-jobs { padding:0 0 80px !important; background:#fbfaf8 !important; }
.jobs-my-jobs__shell { padding-top:46px; }
.jobs-my-jobs__hero { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; padding-bottom:28px; }
.jobs-my-jobs__hero h1 { margin:7px 0 10px; font-size:clamp(2.2rem,5vw,4rem); line-height:1; letter-spacing:-.055em; }
.jobs-my-jobs__hero p:not(.jobs-eyebrow) { max-width:700px; margin:0; color:var(--jobs-muted); font-size:1.03rem; line-height:1.6; }
.jobs-account-notice { margin-bottom:20px; padding:13px 16px; border-radius:9px; font-size:.9rem; font-weight:700; }
.jobs-account-notice--success { border:1px solid #a8d8cc; background:#eaf8f4; color:#174b43; }
.jobs-account-notice--error { border:1px solid #e0ad9f; background:#fff5f2; color:#713226; }
.jobs-account-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin:0 0 34px; border-top:1px solid var(--jobs-line); border-bottom:1px solid var(--jobs-line); }
.jobs-account-summary > div { display:grid; gap:5px; padding:18px 22px; border-left:1px solid var(--jobs-line); }
.jobs-account-summary > div:first-child { border-left:0; padding-left:0; }
.jobs-account-summary dt { color:var(--jobs-muted); font-size:.78rem; font-weight:750; }
.jobs-account-summary dd { margin:0; font-size:1.8rem; font-weight:850; line-height:1; }
.jobs-account-summary p { margin:0; color:var(--jobs-muted); font-size:.75rem; }
.jobs-my-jobs__layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:24px; align-items:start; }
.jobs-my-jobs__main { display:grid; gap:44px; }
.jobs-account-section { min-width:0; }
.jobs-account-section > header { padding:0 0 16px; border-bottom:2px solid var(--jobs-ink); }
.jobs-account-section h2 { margin:0 0 5px; font-size:1.35rem; letter-spacing:-.025em; }
.jobs-account-section header p { margin:0; color:var(--jobs-muted); font-size:.86rem; line-height:1.5; }
.jobs-account-list { display:grid; }
.jobs-account-job { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px; align-items:center; padding:20px 0; border-bottom:1px solid var(--jobs-line); }
.jobs-account-job:last-child { border-bottom:0; }
.jobs-account-job[aria-busy="true"] { opacity:.58; }
.jobs-account-job__body { min-width:0; }
.jobs-account-job h3 { margin:6px 0 4px; font-size:1.03rem; line-height:1.35; }
.jobs-account-job h3 a { color:var(--jobs-ink) !important; text-decoration:none; }
.jobs-account-job h3 a:hover { color:var(--jobs-brand-dark) !important; text-decoration:underline; }
.jobs-account-job p { margin:0 0 6px; color:var(--jobs-muted); font-size:.86rem; }
.jobs-account-job small { color:#74716c; font-size:.75rem; }
.jobs-account-status { display:inline-flex; width:max-content; align-items:center; border-radius:999px; padding:5px 9px; font-size:.7rem; font-weight:850; }
.jobs-account-status--applied { background:#e4f5ed; color:#17613f; }
.jobs-account-status--started { background:#fff1d6; color:#7a5200; }
.jobs-account-job__actions { display:flex; max-width:330px; flex-wrap:wrap; align-items:center; justify-content:flex-end; gap:8px; }
.jobs-account-job__actions form { margin:0; }
.jobs-account-text-button { min-height:40px; border:0; padding:5px 7px; background:transparent; color:var(--jobs-muted); cursor:pointer; font-size:.78rem !important; text-decoration:underline; }
.jobs-account-empty { padding:30px 0 8px; text-align:left; }
.jobs-account-empty h3 { margin:0 0 7px; }
.jobs-account-empty p { margin:0 0 12px; color:var(--jobs-muted); }
.jobs-account-empty a { color:var(--jobs-brand-dark); font-weight:800; }
.jobs-account-profile { position:sticky; top:24px; display:grid; gap:10px; padding:2px 0 2px 24px; border-left:1px solid var(--jobs-line); }
.jobs-account-profile > nav { display:grid; gap:10px; margin-top:8px; padding-top:16px; border-top:1px solid var(--jobs-line); }
.jobs-account-section [hidden],.jobs-account-job__actions [hidden] { display:none !important; }

/* Unified OT Bestie product theme: indigo drives actions, teal signals progress. */
.jobs-site-header { border-bottom-color:var(--jobs-line); background:rgba(255,255,255,.97); backdrop-filter:blur(16px); }
.jobs-brand-name { color:var(--jobs-ink); }
.jobs-brand-product { border-left-color:var(--jobs-line); color:var(--jobs-muted); }
.jobs-site-nav__primary a,.jobs-site-nav__utility a { color:#263149 !important; }
.jobs-site-nav__primary a:hover,.jobs-site-nav__utility a:hover { color:var(--jobs-brand) !important; }
.jobs-search-region { border-bottom-color:var(--jobs-line); background:radial-gradient(circle at 75% 0,rgba(52,182,164,.08),transparent 30%),linear-gradient(180deg,#fff 0%,#f7f9ff 100%); }
.jobs-hero-search { border-color:#8b97a8; box-shadow:0 8px 24px rgba(23,36,61,.09); }
.jobs-filter-menu.is-active > summary { border-color:var(--jobs-blue); background:var(--jobs-accent); color:var(--jobs-brand-dark); box-shadow:inset 0 0 0 1px var(--jobs-blue); }
.jobs-filter-menu[open] > summary { border-color:var(--jobs-blue); box-shadow:0 0 0 1px var(--jobs-blue); }
.jobs-active-filters > div button { border-color:#c9d5fa; background:var(--jobs-accent); color:var(--jobs-brand-dark); }
.job-card.job-card--search { border-color:var(--jobs-line); }
.job-card__search-title a { color:var(--jobs-ink) !important; }
.job-card__search-title a:hover { color:var(--jobs-brand) !important; }
.jobs-easy-badge { background:var(--jobs-accent); color:var(--jobs-brand-dark); }
.jobs-easy-badge--verified,.jobs-badge--verified { background:#eaf9f5; color:var(--jobs-teal-dark); }
.jobs-icon-button.is-active svg path,.jobs-icon-button[aria-pressed="true"] svg path { fill:var(--jobs-brand); stroke:var(--jobs-brand); }
.job-preview__employer,.job-preview__description a { color:var(--jobs-brand-dark) !important; }
.jobs-portal-bar { background:linear-gradient(135deg,#17243d,#302282); }
.jobs-notice { border-left-color:var(--jobs-brand); background:var(--jobs-accent); }
.jobs-account-page { background:transparent !important; }
.jobs-my-jobs { background:#fff !important; }
.jobs-compare-page { padding:42px 0 80px; }
.jobs-compare-page > h1 { max-width:780px; margin:8px 0 10px; color:var(--jobs-ink); font-size:clamp(2.15rem,5vw,4rem); line-height:1.02; letter-spacing:-.05em; }
.jobs-compare-page > p:not(.jobs-eyebrow):not(.jobs-compare-page__back) { max-width:720px; margin:0 0 28px; color:var(--jobs-muted); font-size:1.04rem; line-height:1.6; }
.jobs-compare-page .jobs-table-wrap { overflow-x:auto; border:1px solid var(--jobs-line); border-radius:16px; background:#fff; box-shadow:var(--jobs-shadow); }
.jobs-comparison { min-width:920px; border-collapse:separate; border-spacing:0; }
.jobs-comparison th,.jobs-comparison td { min-width:210px; padding:16px 18px; border-bottom:1px solid var(--jobs-line); }
.jobs-comparison tr:last-child th,.jobs-comparison tr:last-child td { border-bottom:0; }
.jobs-comparison thead th { background:linear-gradient(180deg,#eef3ff,#f7f9ff); color:var(--jobs-ink); font-size:.88rem; letter-spacing:0; text-transform:none; }
.jobs-comparison thead th:first-child,.jobs-comparison tbody th { min-width:165px; color:var(--jobs-muted); font-size:.76rem; letter-spacing:.06em; text-transform:uppercase; }
.jobs-comparison thead a { color:var(--jobs-brand-dark); font-size:1rem; line-height:1.35; }
.jobs-comparison thead small { display:block; margin-top:6px; color:var(--jobs-muted); font-size:.76rem; font-weight:650; }
.jobs-comparison tbody tr:nth-child(even) td,.jobs-comparison tbody tr:nth-child(even) th { background:#fbfcff; }
.jobs-comparison td { color:#263149; font-size:.88rem; line-height:1.45; }
.jobs-comparison td .jobs-button { width:100%; }
.jobs-comparison td .jobs-button,.jobs-compare [data-open-compare] { border-color:var(--jobs-brand); border-radius:9px; background:var(--jobs-brand) !important; box-shadow:none; transform:none; transition:background .15s ease,border-color .15s ease; }
.jobs-comparison td .jobs-button:hover,.jobs-compare [data-open-compare]:hover { border-color:var(--jobs-brand-dark); background:var(--jobs-brand-dark) !important; box-shadow:none; transform:none; }
.jobs-comparison td .jobs-button:active,.jobs-compare [data-open-compare]:active { background:#281d71 !important; transform:none; }
.jobs-compare-page__back { margin:20px 0 0; }

@media (max-width:680px) {
  .job-card__quick-tools { gap:0; }
  .jobs-compare-page { width:calc(100% - 24px); padding-top:28px; }
}
.jobs-account-profile h2 { margin:2px 0 4px; font-size:1.2rem; }
.jobs-account-profile p:not(.jobs-eyebrow) { margin:0 0 8px; color:var(--jobs-muted); font-size:.86rem; line-height:1.55; overflow-wrap:anywhere; }
.jobs-account-profile a { color:var(--jobs-brand-dark); font-size:.86rem; font-weight:750; }
.job-apply-card > .jobs-account-status { margin-bottom:12px; }
.job-apply-card > .jobs-account-status + strong { display:block; }
.job-apply-card small a { color:var(--jobs-brand-dark); font-weight:750; }

@media (max-width:900px) {
  .jobs-my-jobs__layout { grid-template-columns:1fr; }
  .jobs-account-profile { position:static; padding:24px 0 0; border-top:1px solid var(--jobs-line); border-left:0; }
  .jobs-site-nav__utility > span { display:none; }
}
@media (max-width:680px) {
  .jobs-account-page { justify-content:flex-start; padding-top:28px; }
  .jobs-auth-card { border-radius:12px; }
  .jobs-auth-card__header { padding:24px 20px 18px; }
  .jobs-google-entry { padding-right:20px; padding-left:20px; }
  .jobs-google-registration { padding-right:20px; padding-left:20px; }
  .jobs-auth-tabs { margin:0 20px; }
  .jobs-auth-message { margin-right:20px; margin-left:20px; }
  .jobs-auth-form { padding:22px 20px 24px; }
  .jobs-auth-privacy { padding-right:20px; padding-left:20px; }
  .jobs-auth-name-row { grid-template-columns:1fr; }
  .jobs-my-jobs__shell { width:calc(100% - 24px); padding-top:28px; }
  .jobs-my-jobs__hero { align-items:flex-start; flex-direction:column; }
  .jobs-account-summary { grid-template-columns:1fr; }
  .jobs-account-summary > div,.jobs-account-summary > div:first-child { padding:14px 0; border-top:1px solid var(--jobs-line); border-left:0; }
  .jobs-account-summary > div:first-child { border-top:0; }
  .jobs-account-job { grid-template-columns:1fr; padding:18px 0; }
  .jobs-account-job__actions { max-width:none; justify-content:flex-start; }
  .jobs-account-section > header { padding:0 0 14px; }
  .jobs-account-live { right:12px; bottom:12px; left:12px; max-width:none; }
}

@media (prefers-reduced-motion:reduce) {
  .jobs-google-button { transition:none; }
  .jobs-google-button:hover { transform:none; }
  .jobs-filter-loading__spinner { animation:none; }
}

/* Candidate profile and private resume workspace. */
.jobs-candidate-profile { padding:0 0 90px !important; background:#fff !important; }
.jobs-candidate-shell { width:min(1080px,calc(100% - 36px)); padding-top:42px; }
.jobs-profile-identity { display:grid; grid-template-columns:auto minmax(0,1fr) auto; gap:20px; align-items:center; padding:0 0 28px; border-bottom:1px solid var(--jobs-line); }
.jobs-profile-avatar { display:grid; width:82px; height:82px; place-items:center; border:5px solid #fff; border-radius:50%; background:#dfe7fb; color:var(--jobs-brand); box-shadow:0 0 0 1px #c8d4ef; font-size:1.65rem; font-weight:900; }
.jobs-profile-identity__copy { min-width:0; }
.jobs-profile-identity h1 { margin:5px 0 4px; font-size:clamp(1.9rem,4vw,2.7rem); line-height:1; letter-spacing:-.045em; }
.jobs-profile-identity__copy > p:not(.jobs-eyebrow) { margin:0; color:var(--jobs-muted); line-height:1.5; }
.jobs-profile-visibility-pill { display:inline-flex; min-height:38px; align-items:center; gap:8px; margin-top:12px; border:1px solid #d7def4; border-radius:999px; padding:7px 12px; background:#fff; color:var(--jobs-muted) !important; font-size:.78rem; font-weight:800; text-decoration:none; }
.jobs-profile-visibility-pill > span { display:grid; width:20px; height:20px; place-items:center; border-radius:50%; background:#e7eaf1; color:#5f6877; }
.jobs-profile-visibility-pill.is-visible { border-color:#a8d8cc; background:#effaf7; color:#175f55 !important; }
.jobs-profile-visibility-pill.is-visible > span { background:var(--jobs-teal-dark); color:#fff; }
.jobs-profile-completion { display:grid; min-width:150px; justify-items:end; gap:3px; }
.jobs-profile-completion strong { color:var(--jobs-brand); font-size:1.6rem; }
.jobs-profile-completion > span:not(.jobs-profile-completion__track) { color:var(--jobs-muted); font-size:.75rem; font-weight:750; }
.jobs-profile-completion__track { display:block; width:150px; height:7px; overflow:hidden; margin-top:5px; border-radius:99px; background:#dfe4ef; }
.jobs-profile-completion__track i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--jobs-brand),var(--jobs-teal)); }
.jobs-candidate-tabs { display:flex; gap:6px; margin:18px 0 24px; border-bottom:1px solid var(--jobs-line); }
.jobs-candidate-tabs a { position:relative; min-height:46px; padding:13px 18px 12px; color:var(--jobs-muted) !important; font-size:.88rem !important; font-weight:800; text-decoration:none; }
.jobs-candidate-tabs a[aria-current="page"] { color:var(--jobs-ink) !important; }
.jobs-candidate-tabs a[aria-current="page"]::after { content:""; position:absolute; right:8px; bottom:-1px; left:8px; height:3px; border-radius:3px 3px 0 0; background:var(--jobs-brand); }
.jobs-candidate-profile__layout { display:grid; grid-template-columns:minmax(0,1fr) 275px; gap:24px; align-items:start; }
.jobs-candidate-profile__main,.jobs-profile-form { display:grid; gap:34px; }
.jobs-profile-section { min-width:0; padding-top:28px; border-top:1px solid var(--jobs-line); }
.jobs-candidate-profile__main > .jobs-profile-section:first-child { padding-top:0; border-top:0; }
.jobs-profile-section__heading { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:0 0 20px; }
.jobs-profile-section__heading h2,.jobs-profile-visibility h2 { margin:4px 0 6px; font-size:1.35rem; letter-spacing:-.03em; }
.jobs-profile-section__heading p:not(.jobs-eyebrow),.jobs-profile-visibility p:not(.jobs-eyebrow) { max-width:650px; margin:0; color:var(--jobs-muted); font-size:.85rem; line-height:1.55; }
.jobs-private-badge { flex:0 0 auto; border-radius:999px; padding:6px 9px; background:#eef1f6; color:#596477; font-size:.69rem; font-weight:850; }
.jobs-profile-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; padding:0; }
.jobs-profile-form-grid > label { display:grid; align-content:start; gap:7px; color:var(--jobs-ink); font-size:.82rem; font-weight:800; }
.jobs-profile-form-grid > label > span { margin-top:-3px; color:var(--jobs-muted); font-size:.71rem; font-weight:500; line-height:1.4; }
.jobs-profile-form-grid input,.jobs-profile-form-grid select,.jobs-profile-form-grid textarea { width:100%; min-height:46px; border:1px solid #cfd8e7; border-radius:10px; padding:10px 12px; background:#fff; color:var(--jobs-ink); font:inherit; font-weight:500; }
.jobs-profile-form-grid textarea { resize:vertical; line-height:1.55; }
.jobs-profile-wide { grid-column:1/-1; }
.jobs-profile-options { min-width:0; margin:0; border:0; padding:0; }
.jobs-profile-options legend { margin-bottom:10px; font-size:.82rem; font-weight:850; }
.jobs-profile-options > div { display:flex; flex-wrap:wrap; gap:9px; }
.jobs-profile-options label { position:relative; cursor:pointer; }
.jobs-profile-options input { position:absolute; width:1px; height:1px; opacity:0; }
.jobs-profile-options span { display:inline-flex; min-height:42px; align-items:center; border:1px solid #ced7e6; border-radius:999px; padding:8px 13px; background:#fff; color:var(--jobs-muted); font-size:.78rem; font-weight:750; }
.jobs-profile-options input:checked + span { border-color:#8fa0e6; background:var(--jobs-accent); color:var(--jobs-brand-dark); box-shadow:inset 0 0 0 1px #8fa0e6; }
.jobs-profile-options input:focus-visible + span { outline:3px solid rgba(59,99,217,.35); outline-offset:2px; }
.jobs-profile-pay { max-width:310px; }
.jobs-profile-pay input { background-image:linear-gradient(90deg,transparent 0); }
.jobs-resume-file { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; gap:13px; align-items:center; margin:0; padding:15px 0; border-top:1px solid var(--jobs-line); border-bottom:1px solid var(--jobs-line); }
.jobs-resume-file__icon { display:grid; width:48px; height:48px; place-items:center; border-radius:10px; background:#e9edff; color:var(--jobs-brand); font-size:.68rem; font-weight:900; letter-spacing:.04em; }
.jobs-resume-file > div { display:grid; min-width:0; gap:4px; }
.jobs-resume-file strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.88rem; }
.jobs-resume-file small { color:var(--jobs-muted); font-size:.72rem; }
.jobs-resume-scan { display:inline-flex; min-height:40px; align-items:center; border-radius:999px; padding:7px 10px; background:#fff4d8; color:#72520a; font-size:.72rem; font-weight:800; text-align:center; }
.jobs-resume-scan--failed { background:#fff0ed; color:#8a362b; }
.jobs-profile-text-button { min-height:42px; border:0; padding:8px; background:transparent; color:var(--jobs-danger); cursor:pointer; font-size:.76rem !important; font-weight:750; text-decoration:underline; }
.jobs-resume-empty { display:flex; gap:13px; align-items:center; margin:0; padding:18px; border:1px dashed #b8c4d9; border-radius:10px; background:#fafbff; }
.jobs-resume-empty > span { display:grid; flex:0 0 44px; width:44px; height:44px; place-items:center; border-radius:50%; background:var(--jobs-accent); color:var(--jobs-brand); font-size:1.3rem; }
.jobs-resume-empty p { margin:4px 0 0; color:var(--jobs-muted); font-size:.78rem; }
.jobs-resume-upload { display:grid; gap:8px; padding:18px 0 0; }
.jobs-resume-upload > label { font-size:.78rem; font-weight:800; }
.jobs-resume-upload > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; }
.jobs-resume-upload input[type="file"] { min-width:0; min-height:46px; border:1px solid #cfd8e7; border-radius:10px; padding:9px; background:#fff; color:var(--jobs-muted); font-size:.78rem !important; }
.jobs-resume-upload input[type="file"]::file-selector-button { height:28px; margin-right:10px; border:0; border-radius:6px; padding:0 10px; background:var(--jobs-accent); color:var(--jobs-brand-dark); font-weight:800; cursor:pointer; }
.jobs-resume-upload small { color:var(--jobs-muted); font-size:.72rem; }
.jobs-resume-upload button:disabled,.jobs-profile-savebar button:disabled { cursor:not-allowed; opacity:.55; transform:none; }
.jobs-profile-visibility { scroll-margin-top:100px; display:grid; grid-template-columns:auto minmax(0,1fr); gap:16px; padding:24px; border:1px solid #cfd9f5; border-radius:12px; background:#f5f7ff; }
.jobs-profile-visibility__icon { display:grid; width:44px; height:44px; place-items:center; border-radius:12px; background:var(--jobs-brand); color:#fff; font-size:1.15rem; font-weight:900; }
.jobs-profile-switch { display:flex; width:max-content; max-width:100%; align-items:center; gap:10px; margin-top:16px; cursor:pointer; }
.jobs-profile-switch input { position:absolute; width:1px; height:1px; opacity:0; }
.jobs-profile-switch > span { position:relative; flex:0 0 46px; width:46px; height:26px; border-radius:999px; background:#aab3c2; transition:background .15s ease; }
.jobs-profile-switch > span::after { content:""; position:absolute; top:3px; left:3px; width:20px; height:20px; border-radius:50%; background:#fff; box-shadow:0 1px 4px rgba(0,0,0,.2); transition:transform .15s ease; }
.jobs-profile-switch input:checked + span { background:var(--jobs-teal-dark); }
.jobs-profile-switch input:checked + span::after { transform:translateX(20px); }
.jobs-profile-switch input:focus-visible + span { outline:3px solid rgba(59,99,217,.35); outline-offset:2px; }
.jobs-profile-switch b { font-size:.82rem; }
.jobs-profile-savebar { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 0 0; border-top:1px solid var(--jobs-line); }
.jobs-profile-savebar p { margin:0; color:var(--jobs-muted); font-size:.78rem; }
.jobs-profile-sidebar { position:sticky; top:100px; display:grid; gap:20px; padding-left:24px; border-left:1px solid var(--jobs-line); }
.jobs-profile-sidebar section { padding:0 0 20px; border-bottom:1px solid var(--jobs-line); }
.jobs-profile-sidebar h2 { margin:4px 0 8px; font-size:1.05rem; letter-spacing:-.02em; }
.jobs-profile-sidebar p { margin:0 0 14px; color:var(--jobs-muted); font-size:.79rem; line-height:1.55; }
.jobs-profile-sidebar .jobs-button { width:100%; }
.jobs-profile-sidebar ul { display:grid; gap:8px; margin:0 0 14px; padding-left:19px; color:var(--jobs-muted); font-size:.77rem; line-height:1.4; }
.jobs-profile-sidebar__private { margin:0 !important; padding-top:13px; border-top:1px solid var(--jobs-line); }
.jobs-profile-signout { justify-self:start; padding:5px; color:var(--jobs-muted) !important; font-size:.78rem; font-weight:750; }

@media (max-width:900px) {
  .jobs-candidate-profile__layout { grid-template-columns:1fr; }
  .jobs-profile-sidebar { position:static; grid-template-columns:repeat(2,minmax(0,1fr)); padding:24px 0 0; border-top:1px solid var(--jobs-line); border-left:0; }
  .jobs-profile-signout { grid-column:1/-1; }
}
@media (max-width:680px) {
  .jobs-candidate-shell { width:calc(100% - 24px); padding-top:24px; }
  .jobs-profile-identity { grid-template-columns:auto minmax(0,1fr); gap:14px; padding:0 0 22px; }
  .jobs-profile-avatar { width:62px; height:62px; border-width:4px; font-size:1.2rem; }
  .jobs-profile-identity h1 { font-size:1.8rem; }
  .jobs-profile-completion { grid-column:1/-1; width:100%; justify-items:start; padding-top:3px; }
  .jobs-profile-completion__track { width:100%; }
  .jobs-candidate-tabs a { flex:1; text-align:center; }
  .jobs-profile-section__heading { align-items:flex-start; flex-direction:column; padding:0 0 18px; }
  .jobs-profile-form-grid { grid-template-columns:1fr; gap:17px; padding:0; }
  .jobs-profile-wide { grid-column:auto; }
  .jobs-profile-pay { max-width:none; }
  .jobs-resume-file { grid-template-columns:auto minmax(0,1fr); margin:0; }
  .jobs-resume-file > .jobs-button { grid-column:1/2; width:100%; }
  .jobs-resume-file > form { grid-column:2/3; }
  .jobs-resume-upload { padding:17px 0 0; }
  .jobs-resume-upload > div { grid-template-columns:1fr; }
  .jobs-resume-upload .jobs-button { width:100%; }
  .jobs-resume-empty { margin:0; }
  .jobs-profile-visibility { grid-template-columns:1fr; padding:20px 18px; }
  .jobs-profile-switch { align-items:flex-start; }
  .jobs-profile-savebar p { display:none; }
  .jobs-profile-savebar .jobs-button { width:100%; }
  .jobs-profile-sidebar { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion:reduce) {
  .jobs-profile-switch > span,.jobs-profile-switch > span::after { transition:none; }
}

/* Verified-employer view of candidate-approved profiles. */
.jobs-talent-directory { padding-bottom:90px; background:#f7f9ff; }
.jobs-talent-directory > .jobs-shell { padding-top:42px; }
.jobs-talent-heading { margin-bottom:24px; }
.jobs-talent-heading h1 { max-width:800px; margin:6px 0 10px; font-size:clamp(2.15rem,5vw,3.25rem) !important; line-height:1.03; letter-spacing:-.045em; }
.jobs-talent-heading p:not(.jobs-eyebrow) { max-width:760px; margin:0; color:var(--jobs-muted); font-size:1rem !important; line-height:1.6; }
.jobs-talent-gate { display:grid; grid-template-columns:auto minmax(0,1fr); gap:18px; max-width:800px; padding:28px; border:1px solid #cfd9f5; border-radius:18px; background:linear-gradient(140deg,#fff,#f0f4ff); }
.jobs-talent-gate > span { display:grid; width:48px; height:48px; place-items:center; border-radius:14px; background:var(--jobs-brand); color:#fff; font-size:1.2rem; font-weight:900; }
.jobs-talent-gate h2 { margin:5px 0 8px; font-size:1.45rem; letter-spacing:-.03em; }
.jobs-talent-gate p:not(.jobs-eyebrow) { margin:0 0 18px; color:var(--jobs-muted); line-height:1.55; }
.jobs-talent-filters { display:grid; grid-template-columns:minmax(230px,1.5fr) minmax(170px,.8fr) 90px minmax(170px,.9fr) auto; gap:10px; align-items:end; padding:17px; border:1px solid var(--jobs-line); border-radius:16px; background:#fff; box-shadow:0 8px 25px rgba(23,36,61,.06); }
.jobs-talent-filters label { display:grid; gap:6px; color:var(--jobs-muted); font-size:.74rem; font-weight:800; }
.jobs-talent-filters input,.jobs-talent-filters select { width:100%; min-height:44px; border:1px solid #cfd8e7; border-radius:9px; padding:9px 11px; background:#fff; color:var(--jobs-ink); }
.jobs-talent-filters > a { grid-column:1/-1; justify-self:end; color:var(--jobs-muted); font-size:.76rem; font-weight:750; }
.jobs-talent-results-head { display:flex; align-items:end; justify-content:space-between; gap:25px; margin:30px 0 14px; }
.jobs-talent-results-head h2 { margin:4px 0 0; font-size:1.55rem; letter-spacing:-.03em; }
.jobs-talent-results-head > p { max-width:360px; margin:0; color:var(--jobs-muted); font-size:.78rem; line-height:1.45; text-align:right; }
.jobs-talent-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.jobs-talent-card { display:grid; align-content:start; gap:17px; min-width:0; padding:22px; border:1px solid var(--jobs-line); border-radius:17px; background:#fff; box-shadow:0 5px 18px rgba(23,36,61,.04); }
.jobs-talent-card > header { display:grid; grid-template-columns:auto minmax(0,1fr); gap:13px; align-items:start; }
.jobs-talent-avatar { display:grid; width:55px; height:55px; place-items:center; border-radius:50%; background:#e7ecfb; color:var(--jobs-brand); font-weight:900; }
.jobs-talent-card h3 { margin:7px 0 3px; font-size:1.12rem; letter-spacing:-.02em; }
.jobs-talent-card header p { margin:0; color:var(--jobs-muted); font-size:.82rem; line-height:1.4; }
.jobs-talent-card dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin:0; }
.jobs-talent-card dl > div { min-width:0; padding:10px; border-radius:10px; background:var(--jobs-soft); }
.jobs-talent-card dt { color:var(--jobs-muted); font-size:.65rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.jobs-talent-card dd { overflow-wrap:anywhere; margin:3px 0 0; color:var(--jobs-ink); font-size:.79rem; font-weight:750; }
.jobs-talent-summary { display:-webkit-box; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:4; margin:0; color:var(--jobs-muted); font-size:.82rem; line-height:1.55; }
.jobs-talent-tags { display:flex; flex-wrap:wrap; gap:7px; margin:0; padding:0; list-style:none; }
.jobs-talent-tags li { border-radius:999px; padding:6px 9px; background:var(--jobs-accent); color:var(--jobs-brand-dark); font-size:.68rem; font-weight:800; }
.jobs-talent-card footer { display:flex; align-items:flex-end; justify-content:space-between; gap:14px; padding-top:14px; border-top:1px solid var(--jobs-line); }
.jobs-talent-card footer span { max-width:260px; color:#175f55; font-size:.68rem; font-weight:800; line-height:1.35; }
.jobs-talent-card footer small { flex:0 0 auto; color:var(--jobs-muted); font-size:.66rem; }
.jobs-talent-empty { padding:42px 25px; border:1px dashed #b8c4d9; border-radius:16px; background:#fff; text-align:center; }
.jobs-talent-empty h2 { margin:0 0 7px; }
.jobs-talent-empty p { max-width:590px; margin:0 auto 13px; color:var(--jobs-muted); line-height:1.5; }
.jobs-talent-empty a { color:var(--jobs-brand-dark); font-weight:800; }
.jobs-account-profile .jobs-profile-completion__track { width:100%; margin:1px 0 7px; }
.jobs-account-profile .jobs-button { margin-bottom:2px; }

@media (max-width:1050px) {
  .jobs-talent-filters { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .jobs-talent-filter-wide { grid-column:1/-1; }
  .jobs-talent-filters .jobs-button { width:100%; }
}
@media (max-width:760px) {
  .jobs-talent-directory > .jobs-shell { width:calc(100% - 24px); padding-top:28px; }
  .jobs-talent-grid { grid-template-columns:1fr; }
  .jobs-talent-results-head { align-items:flex-start; flex-direction:column; gap:7px; }
  .jobs-talent-results-head > p { text-align:left; }
}
@media (max-width:560px) {
  .jobs-portal-bar .jobs-shell { gap:.6rem; }
  .jobs-portal-bar nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); overflow:visible; gap:.25rem; }
  .jobs-portal-bar nav a { min-width:0; padding:.55rem .45rem; text-align:center; }
  .jobs-talent-filters { grid-template-columns:1fr; padding:14px; }
  .jobs-talent-filter-wide { grid-column:auto; }
  .jobs-talent-gate { grid-template-columns:1fr; padding:22px 18px; }
  .jobs-talent-card { padding:18px; }
  .jobs-talent-card dl { grid-template-columns:1fr; }
  .jobs-talent-card footer { align-items:flex-start; flex-direction:column; }
}

/* Keep focus visible without drawing enclosing rectangles around controls. */
body.jobs-body :is(a,button,input,select,textarea,summary):focus,
.jobs-page :is(a,button,input,select,textarea,summary):focus {
  outline:none;
}

body.jobs-body :is(a,button,summary):focus-visible,
.jobs-page :is(a,button,summary):focus-visible {
  text-decoration:underline;
  text-decoration-thickness:2px;
  text-underline-offset:4px;
}

body.jobs-body :is(button,summary):focus-visible,
.jobs-page :is(button,summary):focus-visible {
  border-color:var(--jobs-blue);
}

body.jobs-body :is(input,select,textarea):focus-visible,
.jobs-page :is(input,select,textarea):focus-visible {
  border-color:var(--jobs-blue);
  box-shadow:inset 0 -3px 0 rgba(59,99,217,.7);
}

.jobs-search-field:focus-within {
  color:var(--jobs-brand);
}

.jobs-results__head h1:focus {
  outline:none;
  text-decoration:underline;
  text-decoration-color:rgba(59,99,217,.7);
  text-decoration-thickness:2px;
  text-underline-offset:4px;
}

.jobs-google-button:focus-within {
  outline:none;
  box-shadow:0 8px 20px rgba(66,133,244,.24),inset 0 -3px 0 rgba(59,99,217,.7);
}

.jobs-wordmark:focus-visible .jobs-brand-mark {
  box-shadow:0 6px 16px rgba(62,47,164,.22);
}

.jobs-profile-options input:focus-visible + span,
.jobs-profile-switch input:focus-visible + span {
  outline:none;
  border-color:var(--jobs-blue);
  box-shadow:inset 0 -3px 0 rgba(59,99,217,.7);
}

/* Editorial company profiles. Deliberately flat: structure comes from type, rules, and space. */
@font-face {
  font-family:"OT Bestie Poppins";
  src:url("/jobs/assets/fonts/Poppins-Regular.ttf") format("truetype");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}
@font-face {
  font-family:"OT Bestie Poppins";
  src:url("/jobs/assets/fonts/Poppins-SemiBold.ttf") format("truetype");
  font-style:normal;
  font-weight:600;
  font-display:swap;
}

body.company-profile-body,
body.company-profile-body .jobs-site-header *,
body.company-profile-body .company-profile,
body.company-profile-body .company-profile *:not(svg):not(path) {
  font-family:"OT Bestie Poppins","Segoe UI",sans-serif !important;
}

.company-profile {
  --company-ink:#111b35;
  --company-muted:#5c6577;
  --company-line:#dfe3ec;
  --company-soft:#f6f7fb;
  --company-accent:#3e2fa4;
  --company-accent-dark:#302282;
  --company-mint:#eaf7f4;
  padding-bottom:0;
  background:#fff !important;
  color:var(--company-ink);
}
.company-profile .jobs-shell { width:min(1180px,calc(100% - 48px)); }
.company-profile__breadcrumb { padding:28px 0 8px; color:#778092; }
.company-profile__breadcrumb a { color:#4f46a8 !important; font-weight:600; }

.company-profile__hero {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);
  gap:clamp(60px,8vw,120px);
  align-items:end;
  min-height:520px;
  padding:48px 0 72px;
}
.company-profile__identity { display:flex; min-width:0; align-items:flex-start; gap:24px; }
.company-profile__logo { flex:0 0 auto; width:74px; height:74px; object-fit:contain; }
.company-profile__title { min-width:0; }
.company-profile__verified {
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 19px;
  color:#23695f;
  font-size:12px;
  font-weight:600;
  letter-spacing:.04em;
}
.company-profile__verified span { display:grid; width:22px; height:22px; place-items:center; border-radius:50%; background:var(--company-mint); font-size:11px; }
.company-profile__hero h1 {
  max-width:760px;
  margin:0;
  color:var(--company-ink);
  font-size:clamp(44px,6.2vw,76px) !important;
  font-weight:600;
  letter-spacing:-.055em;
  line-height:.98;
  overflow-wrap:anywhere;
}
.company-profile__location { margin:18px 0 0; color:#3d4659; font-size:15px; font-weight:600; }
.company-profile__lead { max-width:670px; margin:24px 0 0; color:var(--company-muted); font-size:17px; line-height:1.65; }
.company-profile__actions { display:flex; flex-wrap:wrap; align-items:center; gap:22px; margin-top:31px; }
.company-profile__actions .jobs-button { min-height:48px; border-radius:8px; padding:0 20px; }
.company-profile__website { color:var(--company-accent-dark) !important; font-size:14px !important; font-weight:600; text-decoration:none; }
.company-profile__website:hover { text-decoration:underline; text-underline-offset:4px; }

.company-profile__metrics { margin:0; border-top:1px solid var(--company-line); }
.company-profile__metrics > div { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px; align-items:baseline; padding:20px 0; border-bottom:1px solid var(--company-line); }
.company-profile__metrics dt { color:var(--company-muted); font-size:12px; font-weight:600; line-height:1.4; }
.company-profile__metrics dd { margin:0; color:var(--company-ink); font-size:clamp(20px,2vw,28px); font-weight:600; letter-spacing:-.035em; text-align:right; }

.company-profile__openings { scroll-margin-top:82px; padding:78px 0 54px; border-top:1px solid var(--company-line); border-bottom:1px solid var(--company-line); background:var(--company-soft); }
.company-profile__section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:32px; margin-bottom:34px; }
.company-profile__eyebrow { margin:0 0 12px; color:var(--company-accent); font-size:11px; font-weight:600; letter-spacing:.12em; text-transform:uppercase; }
.company-profile__section-head h2,
.company-profile__story h2,
.company-profile__follow h2,
.company-profile__claim h2 { margin:0; color:var(--company-ink); font-size:clamp(31px,4vw,48px) !important; font-weight:600; letter-spacing:-.045em; line-height:1.08; }
.company-profile__section-head > div > p:last-child { max-width:610px; margin:14px 0 0; color:var(--company-muted); font-size:14px; line-height:1.6; }
.company-profile__rail-controls { display:flex; flex:0 0 auto; gap:8px; }
.company-profile__rail-controls button { display:grid; width:46px; height:46px; place-items:center; border:1px solid #cfd4df; border-radius:50%; background:#fff; color:var(--company-ink); cursor:pointer; font-size:18px !important; transition:border-color .15s ease,background-color .15s ease,color .15s ease; }
.company-profile__rail-controls button:hover:not(:disabled) { border-color:var(--company-accent); color:var(--company-accent); }
.company-profile__rail-controls button:disabled { cursor:default; opacity:.35; }
.company-profile__rail {
  display:grid;
  grid-auto-columns:minmax(330px,34%);
  grid-auto-flow:column;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scroll-snap-type:inline mandatory;
  scrollbar-color:#9ca5b7 transparent;
  scrollbar-width:thin;
  border-top:1px solid #cfd4df;
  border-bottom:1px solid #cfd4df;
}
.company-profile__rail:focus-visible { border-color:var(--company-accent); box-shadow:inset 0 -3px 0 rgba(62,47,164,.45); outline:0; }
.company-profile__rail-note { margin:12px 0 0; color:#778092; font-size:11px; }

.company-opening { display:flex; min-height:450px; flex-direction:column; scroll-snap-align:start; padding:27px 30px 30px; border-right:1px solid #cfd4df; background:transparent; }
.company-opening:first-child { border-left:1px solid #cfd4df; }
.company-opening__topline { display:flex; min-height:44px; align-items:flex-start; justify-content:space-between; gap:16px; color:#6e7789; font-size:11px; font-weight:600; }
.company-opening__save { flex:0 0 40px; width:40px; height:40px; margin:-9px -9px 0 0; color:#465065; }
.company-opening h3 { margin:24px 0 10px; color:var(--company-ink); font-size:23px; font-weight:600; letter-spacing:-.035em; line-height:1.23; }
.company-opening h3 a { color:inherit; text-decoration:none; }
.company-opening h3 a:hover { color:var(--company-accent); text-decoration:underline; text-underline-offset:4px; }
.company-opening__location { margin:0; color:var(--company-muted); font-size:13px; line-height:1.45; }
.company-opening__facts { display:grid; gap:0; margin:27px 0 30px; }
.company-opening__facts > div { display:grid; grid-template-columns:82px minmax(0,1fr); gap:14px; padding:12px 0; border-top:1px solid #dfe3ea; }
.company-opening__facts > div:last-child { border-bottom:1px solid #dfe3ea; }
.company-opening__facts dt { color:#747d8f; font-size:10px; font-weight:600; letter-spacing:.08em; text-transform:uppercase; }
.company-opening__facts dd { margin:0; color:#273149; font-size:12px; font-weight:600; line-height:1.4; overflow-wrap:anywhere; }
.company-opening__actions { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:auto; }
.company-opening__actions a { color:var(--company-accent-dark) !important; font-size:13px !important; font-weight:600; text-decoration:none; }
.company-opening__actions a:hover { text-decoration:underline; text-underline-offset:4px; }
.company-opening__actions .company-opening__apply { display:inline-flex; min-height:40px; align-items:center; border:1px solid var(--company-accent); border-radius:7px; padding:0 15px; background:var(--company-accent); color:#fff !important; }
.company-opening__actions .company-opening__apply:hover { border-color:var(--company-accent-dark); background:var(--company-accent-dark); text-decoration:none; }

.company-profile__story { padding:96px 0; background:#fff; }
.company-profile__story-grid { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(330px,.9fr); gap:clamp(64px,9vw,130px); align-items:start; }
.company-profile__about > p:last-child { max-width:700px; margin:28px 0 0; color:#424c60; font-size:16px; line-height:1.8; }
.company-profile__workplace { padding-left:42px; border-left:1px solid var(--company-line); }
.company-profile__workplace h2 { font-size:clamp(27px,3vw,38px) !important; }
.company-profile__workplace dl { margin:28px 0 0; border-top:1px solid var(--company-line); }
.company-profile__workplace dl > div { padding:17px 0; border-bottom:1px solid var(--company-line); }
.company-profile__workplace dt { margin-bottom:5px; color:#747d8f; font-size:10px; font-weight:600; letter-spacing:.09em; text-transform:uppercase; }
.company-profile__workplace dd { margin:0; color:#303a50; font-size:13px; font-weight:600; line-height:1.5; }

.company-profile__follow { padding:70px 0; border-top:1px solid #ddd9f0; border-bottom:1px solid #ddd9f0; background:#f3f1fb; }
.company-profile__follow-grid { display:grid; grid-template-columns:minmax(0,.85fr) minmax(540px,1.15fr); gap:clamp(48px,8vw,110px); align-items:end; }
.company-profile__follow h2 { max-width:540px; font-size:clamp(29px,3.5vw,43px) !important; }
.company-profile__follow-grid > div > p:last-child { max-width:520px; margin:18px 0 0; color:var(--company-muted); font-size:13px; line-height:1.6; }
.company-profile__follow form { display:grid; grid-template-columns:minmax(220px,1fr) 130px auto; gap:10px; align-items:end; }
.company-profile__follow label { display:grid; gap:7px; color:#414b60; font-size:11px; font-weight:600; }
.company-profile__follow input,
.company-profile__follow select { width:100%; min-height:48px; border:1px solid #bfc4d0; border-radius:7px; padding:9px 12px; background:#fff; color:var(--company-ink); font:inherit; }
.company-profile__follow .jobs-button { min-height:48px; border-radius:7px; white-space:nowrap; }
.company-profile__follow .jobs-form-status { grid-column:1/-1; margin:3px 0 0; }
.company-profile__follow .jobs-form-status:empty { display:none; }

.company-profile__claim { padding:62px 0; background:#17243d; color:#fff; }
.company-profile__claim .jobs-shell { display:flex; align-items:center; justify-content:space-between; gap:48px; }
.company-profile__claim .company-profile__eyebrow { color:#8ed9cf; }
.company-profile__claim h2 { max-width:720px; color:#fff; font-size:clamp(29px,3.5vw,43px) !important; }
.company-profile__claim p:last-child { margin:14px 0 0; color:#c6ccda; font-size:13px; line-height:1.6; }
.company-profile__claim .jobs-button { flex:0 0 auto; min-height:48px; border-color:#fff; border-radius:7px; background:#fff; color:#17243d !important; }
.company-profile__claim .jobs-button:hover { background:#eef1f6; }

@media (max-width:900px) {
  .company-profile__hero { grid-template-columns:1fr; min-height:0; gap:48px; padding:42px 0 58px; }
  .company-profile__metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
  .company-profile__metrics > div { display:flex; min-width:0; flex-direction:column; gap:7px; align-items:flex-start; padding:18px 16px; border-right:1px solid var(--company-line); }
  .company-profile__metrics > div:first-child { padding-left:0; }
  .company-profile__metrics > div:last-child { border-right:0; }
  .company-profile__metrics dd { text-align:left; }
  .company-profile__rail { grid-auto-columns:minmax(320px,52%); }
  .company-profile__story-grid { grid-template-columns:1fr; gap:62px; }
  .company-profile__workplace { padding:0; border-left:0; }
  .company-profile__follow-grid { grid-template-columns:1fr; gap:38px; }
}

@media (max-width:680px) {
  .company-profile .jobs-shell { width:calc(100% - 28px); }
  .company-profile__breadcrumb { padding-top:20px; }
  .company-profile__identity { display:block; }
  .company-profile__logo { width:60px; height:60px; margin-bottom:24px; }
  .company-profile__hero h1 { font-size:clamp(38px,13vw,54px) !important; }
  .company-profile__lead { font-size:15px; }
  .company-profile__actions { align-items:flex-start; flex-direction:column; gap:18px; }
  .company-profile__actions .jobs-button { width:auto; }
  .company-profile__metrics { grid-template-columns:1fr; }
  .company-profile__metrics > div { display:grid; grid-template-columns:1fr auto; align-items:baseline; padding:16px 0; border-right:0; }
  .company-profile__section-head { align-items:flex-start; }
  .company-profile__section-head h2 { font-size:32px !important; }
  .company-profile__rail-controls { display:none; }
  .company-profile__openings { padding:60px 0 42px; }
  .company-profile__rail { grid-auto-columns:88%; }
  .company-opening { min-height:430px; padding:24px 22px 27px; }
  .company-profile__story { padding:72px 0; }
  .company-profile__about > p:last-child { font-size:15px; }
  .company-profile__follow { padding:60px 0; }
  .company-profile__follow form { grid-template-columns:1fr; }
  .company-profile__follow .jobs-form-status { grid-column:auto; }
  .company-profile__claim .jobs-shell { align-items:flex-start; flex-direction:column; gap:26px; }
  .company-profile__claim .jobs-button { width:100%; }
}

@media (prefers-reduced-motion:reduce) {
  .company-profile__rail { scroll-behavior:auto; }
  .company-profile__rail-controls button { transition:none; }
}
