/* Jobs-page palette shared with the four discovery cards. */
[hidden]{display:none!important}
.preview-banner{display:flex;align-items:center;gap:12px;margin:16px 0 0;padding:12px 16px;border:1px solid #b5d985;border-radius:13px;background:#edfacf;color:#214325;font-size:12px;line-height:1.45}
.preview-banner strong{flex:none;font-weight:800;text-transform:uppercase;letter-spacing:.06em}
.banner-mobile,.metric-mobile{display:none}
.home-nav .submit-jobs-link{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;background:#c8f759;color:#122e1d;font-size:12px;font-weight:800;white-space:nowrap;text-decoration:none}
.search-secondary.without-arrangement{grid-template-columns:repeat(4,minmax(0,1fr))}
.search-secondary .unavailable{background:#f1f3ef;color:#59645b;opacity:.78;cursor:not-allowed}
.search-secondary .unavailable select,.search-secondary .unavailable input{cursor:not-allowed}
.field-availability{margin:5px 0 0;color:#536158;font-size:.74rem;line-height:1.45}
.active-filters.no-schedule:empty::before{content:'Search by role or place'}
.job-card{--card-bg:#9bd9a8;--ring-fill:#112f1d;--ring-track:rgba(17,47,29,.2);position:relative;overflow:hidden;border:1px solid #dfe6df;border-radius:22px;background:var(--card-bg);box-shadow:0 5px 18px rgba(18,46,29,.06)}
.job-card::before{display:none}
.job-card:nth-child(4n + 1){--card-bg:#112f1d;--ring-fill:#c8f759;--ring-track:rgba(200,247,89,.28);background:var(--card-bg);border-color:#112f1d;color:#f5f5eb}
.job-card:nth-child(4n + 2){--card-bg:#c8f759;background:var(--card-bg);border-color:#c8f759}
.job-card:nth-child(4n + 3){--card-bg:#fff;background:var(--card-bg);border-color:#dfe6df}
.job-card:nth-child(4n + 4){--card-bg:#9bd9a8;background:var(--card-bg);border-color:#9bd9a8}
.job-card .card-top{display:flex;flex-direction:column;align-items:stretch;gap:9px}
.card-signals{display:flex;align-items:center;justify-content:space-between;gap:10px}
.card-completeness{position:relative;isolation:isolate;display:grid;place-items:center;flex:none;width:43px;height:43px;border-radius:50%;background:conic-gradient(var(--ring-fill) var(--completion),var(--ring-track) 0);color:#112f1d;font-size:10px;font-weight:800;line-height:1}
.card-completeness{align-content:center;gap:1px}
.card-completeness small{font-size:7px;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.02em}
.card-completeness::before{content:"";position:absolute;inset:4px;z-index:-1;border-radius:50%;background:var(--card-bg)}
.job-card:nth-child(4n + 1) .card-completeness{color:#c8f759}
.card-metric-note{margin:-3px 0 11px;color:#536158;font-size:.72rem;line-height:1.4}
.job-card:hover{border-color:#2e7c48;box-shadow:0 9px 27px rgba(18,46,29,.16)}
.job-card:nth-child(4n + 1):hover{border-color:#c8f759}
.job-card .card-location{color:#217b43;font-weight:800}
.job-card:nth-child(4n + 1) .card-location{color:#a3e0ac}
.job-card:nth-child(4n + 2) .card-location,.job-card:nth-child(4n + 4) .card-location{color:#18492b}
.job-card .fact{background:rgba(255,255,255,.72);color:#18492b}
.job-card .fact.pay{background:#c8f759;color:#122e1d}
.job-card:nth-child(4n + 1) .fact:not(.pay){background:#2a5235;color:#f4f7e9}
.job-card:nth-child(4n + 2) .fact{background:#eefdbb}
.job-card .agency{color:#405d48}
.job-card:nth-child(4n + 1) .agency,.job-card:nth-child(4n + 1) .posted{color:#c5d9c5}
.job-card:nth-child(4n + 2) .posted,.job-card:nth-child(4n + 4) .posted{color:#31513a}
.card-data-note{margin:9px 0 0;color:#31513a;font-size:.69rem;font-weight:650;line-height:1.4}
.job-card:nth-child(4n + 1) .card-data-note{color:#c5d9c5}
.card-dates{display:flex;flex-wrap:wrap;gap:2px 12px;margin:9px 0 0;color:#536158;font-size:.69rem;line-height:1.4}
.job-card:nth-child(4n + 1) .card-dates{color:#c5d9c5}
.job-card:nth-child(4n + 2) .card-dates,.job-card:nth-child(4n + 4) .card-dates{color:#31513a}
.job-card .agency-mark{position:static;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#2e7c48;color:#fff;font-size:11px;font-weight:800}
.job-card:nth-child(4n + 1) .agency-mark{background:#c8f759;color:#122e1d}
.job-card .view-detail{color:#176e39;font-weight:800}
.job-card:nth-child(4n + 1) .view-detail{color:#c8f759}
.job-card:nth-child(4n + 2) .view-detail,.job-card:nth-child(4n + 4) .view-detail{color:#123e24}
.job-card:nth-child(4n + 2) .check-badge,.job-card:nth-child(4n + 4) .check-badge{background:#112f1d;color:#c8f759}
.job-card:nth-child(4n + 2) .check-badge-limited,.job-card:nth-child(4n + 4) .check-badge-limited{color:#ffe595}
.job-card:focus-visible{outline:3px solid #2e7c48;outline-offset:3px}
.job-card:nth-child(4n + 1):focus-visible{outline-color:#c8f759}
.naj-pin-letter{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#c8f759;color:#122e1d;font:800 25px/1 Manrope,Arial,sans-serif}
.naj-cluster .naj-pin-letter{width:53px;height:53px}
dialog{overflow:hidden;background:#fff;border:1px solid #a7d2a9;box-shadow:0 25px 90px rgba(9,38,20,.38)}
.dialog-inner{padding:0;max-height:90vh;overflow:auto}
.detail-hero{padding:27px 30px 28px;background:radial-gradient(circle at 84% 3%,#315e30 0,#1d4328 38%,#122e1d 82%);color:#f5f5eb}
.detail-hero h2{margin:20px 0 7px;color:#f5f5eb;font-size:clamp(28px,4vw,36px)}
.detail-hero .detail-loc{color:#b2ecac;font-size:14px}
.detail-hero .demo-pill{background:#c8f759;color:#122e1d}
.detail-hero .close{background:rgba(255,255,255,.15);color:#fff;border:1px solid rgba(255,255,255,.3)}
.detail-body{padding:22px 30px 27px}
.detail-agency{margin:0 0 15px;background:#d9f5d6;border-color:#a5daa9;color:#173d25}
.detail-facts div{background:#e7f5de;border:1px solid #c6dfbd;font-weight:700}
.detail-facts div:first-child{background:#c8f759;border-color:#b3e441;color:#122e1d}
.detail-facts div:nth-child(4){background:#183d26;border-color:#183d26;color:#f5f5eb}
.detail-facts div:nth-child(4) span{color:#b9d7b9}
.detail-facts span{color:#2e7c48}
.detail-copy h3{color:#183d26}
.detail-completeness{margin-top:12px;color:#536158;font-size:.78rem;line-height:1.5}
.sample-note{margin-top:18px;padding-top:13px;border-top:1px solid #dce8d8;color:#627368}
@media(max-width:680px){.detail-hero{padding:21px 20px 23px}.detail-body{padding:19px 20px 23px}}
@media(max-width:680px){.preview-banner{align-items:flex-start;flex-direction:column;gap:3px;margin-top:11px;padding:10px 12px;font-size:11px}}
@media(max-width:800px){.search-secondary.without-arrangement{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (hover:none) and (pointer:coarse){
  .search-tools .control input,.search-tools .control select{font-size:16px}
}
@media(max-width:680px){
  .home-nav .submit-jobs-link{padding:9px 11px;font-size:11px}
  .preview-banner{flex-direction:row;align-items:center;gap:9px;margin-top:8px;padding:8px 10px;font-size:.68rem;line-height:1.3}
  .preview-banner strong{max-width:95px;font-size:.59rem;line-height:1.2}
  .banner-detail,.metric-full{display:none}
  .banner-mobile,.metric-mobile{display:inline}
  .home-intro{padding:17px 18px 19px;margin-bottom:8px;border-radius:19px}
  .home-intro .eyebrow{margin-bottom:5px;font-size:.55rem}
  .home-intro h1{font-size:clamp(1.65rem,7vw,2rem);line-height:1.08}
  .home-intro p{margin-top:6px;line-height:1.35}
  .search-heading{margin-bottom:8px}
  .search-tools{margin-bottom:8px}
  .search-secondary .unavailable{display:none}
  .card-metric-note{margin:0 0 8px}
  /* iOS Safari does not enlarge a focused field when its text is at least 16px. */
  .search-tools .control input,.search-tools .control select{font-size:16px}
  .search-tools .control,.search-tools .pay-toggle{min-height:48px}
  .job-card{border-radius:22px;padding:18px 19px;margin-bottom:11px}
  .job-card .card-top{gap:9px}
  .job-card h3{font-size:1.15rem;line-height:1.3}
  .job-card .card-location{font-size:.88rem;line-height:1.35;margin:7px 0 11px}
  .job-card .card-foot{margin-top:12px}
  .job-card .agency,.job-card .view-detail{font-size:.78rem}
  .job-card .card-dates{font-size:.73rem;margin-top:10px}
  .job-card .card-data-note{font-size:.72rem}
  .job-card .check-badge{font-size:.63rem;padding:5px 8px}
  .job-card .check-badge-text{display:inline}
  .card-metric-note{font-size:.7rem;margin:0 0 11px}
  .field-availability{font-size:.71rem}
}
