#jobs.section{background:#fff;padding:88px 6%;color:#173d29}#jobs .section-head{display:block;max-width:900px;margin-bottom:32px}#jobs .section-head h2{font-size:clamp(36px,4.2vw,64px);line-height:1.08;letter-spacing:-.045em;margin:0 0 16px}#jobs .section-head p{font-size:19px;max-width:740px;margin:0;color:#405047}#jobs .search{background:#fff;border:1px solid #a7bdb0;border-radius:12px;box-shadow:none;margin-bottom:24px;overflow:hidden}#jobs .search label{font-size:13px;color:#405047}#jobs .search input{color:#173d29;font-size:16px;background:white}#jobs .search .button{border-radius:8px;background:#bd4508;color:white;font-size:16px}#jobs .jobs-toolbar{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin:24px 0 18px}#jobs button.jobs-tool{background:white;color:#173d29;border:1px solid #a7bdb0;border-radius:7px;padding:10px 14px;min-height:44px;font:500 14px Inter,Arial;cursor:pointer}#jobs button.jobs-tool[aria-pressed=true]{background:#e7eee6;border-color:#173d29}#jobs #jobs-status{font-size:14px;line-height:1.5;max-width:85ch;margin:0 0 20px;color:#465a4e}#job-results{display:grid;grid-template-columns:minmax(0,1fr);gap:18px;margin:0 0 28px}#jobs .listing-card{display:grid;grid-template-columns:104px minmax(0,1fr);gap:26px;padding:26px;background:#fff;border:1px solid #c7d6cb;border-left:6px solid #245b3a;border-radius:12px;box-shadow:0 3px 16px #173d2904;transition:box-shadow .18s,border-color .18s}#jobs .listing-card:hover,#jobs .listing-card:focus-within{border-color:#376747;box-shadow:0 8px 24px #173d290d}#jobs .listing-logo{position:relative;background:#fff;border:1px solid #e2e8e3;border-radius:8px;width:104px;height:104px;display:grid;place-items:center;color:#245b3a;font-size:30px;font-weight:700;overflow:hidden}#jobs .listing-logo img{position:absolute;inset:8px;width:88px;height:88px;object-fit:contain}#jobs .listing-logo span[hidden]{display:none}#jobs .listing-content{min-width:0}#jobs .listing-header{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:12px 26px}#jobs .listing-source{display:block;width:max-content;max-width:100%;background:#e8eee5;color:#245b3a;border-radius:7px;padding:5px 10px;font-size:13px;line-height:1.4}#jobs .listing-location{grid-column:2;grid-row:1/3;color:#526457;line-height:1.45;font-size:15px;margin:5px 0 0}#jobs .listing-header h3{font-size:clamp(21px,2vw,28px);line-height:1.22;letter-spacing:-.025em;margin:0;overflow-wrap:anywhere}#jobs .listing-employer{font-size:18px;font-weight:500;color:#245b3a;margin:12px 0 3px}#jobs .listing-type{font-size:14px;color:#526457;margin:0 0 14px}#jobs .listing-description{font-size:16px;line-height:1.55;color:#57675e;margin:0 0 12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}#jobs .job-source-note{font-size:13px;color:#536b5c;margin:0 0 18px;line-height:1.5}#jobs .job-actions,.job-detail-dialog .job-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.job-primary,.job-secondary,.job-external{font:500 15px/1.3 Inter,Arial,sans-serif;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:10px 17px;text-decoration:none;border-radius:7px;cursor:pointer}.job-primary{color:white;background:#bd4508;border:1px solid #bd4508}.job-primary:hover{background:#a73c05}.job-secondary{color:#245b3a;background:white;border:1px solid #a7bdb0}.job-secondary[aria-pressed=true]{background:#e8eee5}.job-external{color:#245b3a;border:0;background:none;padding-inline:6px}.job-external:hover{text-decoration:underline}.job-primary:focus-visible,.job-secondary:focus-visible,.job-external:focus-visible,#jobs .jobs-tool:focus-visible,.job-detail-close:focus-visible{outline:3px solid #c55e16;outline-offset:4px}#jobs .listing-action-status{font-size:12px;line-height:1.5;color:#465a4e;margin:10px 0 0}#jobs .listing-action-status:empty{display:none}#jobs .job-copy-link{display:block;font:inherit;color:#173d29;max-width:100%;width:100%;padding:8px;border:1px solid #a7bdb0;border-radius:5px}#jobs .jobs-empty{padding:32px;border:1px solid #d9e3da;border-radius:10px;font-size:17px;color:#465a4e}#jobs .jobs-bottom{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;align-items:center}#jobs .jobs-saves-note{font-size:12px;line-height:1.5;color:#526457;margin-top:22px;max-width:80ch}#jobs [hidden]{display:none!important}.job-detail-dialog{background:white;color:#173d29;max-width:820px;width:calc(100% - 40px);max-height:85vh;padding:36px;border:1px solid #c7d6cb;border-radius:14px;overflow:auto}.job-detail-dialog::backdrop{background:#06170ece}.job-detail-dialog h2{font-size:30px;line-height:1.2;letter-spacing:-.02em;padding-right:34px}.job-detail-close{position:absolute;right:16px;top:14px;border:1px solid #b9c9bf;background:white;color:#173d29;font:24px Inter;width:44px;height:44px;border-radius:8px;cursor:pointer}.job-detail-dialog .detail-employer{font-size:17px;color:#465a4e}.job-detail-dialog .job-source-note{font-size:14px;color:#596e60;background:#f2f5ef;padding:14px;border-radius:8px}.job-detail-dialog .detail-description{white-space:pre-line;font-size:16px;line-height:1.65;overflow-wrap:anywhere}.job-detail-dialog .job-actions{margin-top:25px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:760px){#jobs.section{padding:60px 6%}#jobs .listing-card{grid-template-columns:64px minmax(0,1fr);padding:20px 16px;gap:16px}#jobs .listing-logo{width:64px;height:64px;font-size:22px}#jobs .listing-logo img{inset:5px;width:54px;height:54px}#jobs .listing-header{display:flex;flex-direction:column;gap:10px}#jobs .listing-location{order:3;font-size:14px;margin:0}#jobs .listing-header h3{font-size:22px}#jobs .job-actions{gap:8px}.job-external{width:100%;justify-content:flex-start}.job-detail-dialog{padding:24px}.job-detail-dialog h2{font-size:24px}}
@media(max-width:480px){#jobs .listing-card{grid-template-columns:minmax(0,1fr);gap:16px}#jobs .listing-logo{display:none}#jobs .section-head p{font-size:17px}.job-primary,.job-secondary{flex:1;padding:10px 12px;font-size:14px}#jobs .listing-employer{font-size:17px}#jobs .listing-description{font-size:15px}.job-detail-dialog{width:calc(100% - 24px);padding:22px}}
@media(prefers-reduced-motion:reduce){#jobs .listing-card{transition:none}}
