.careers-listing{padding-top:5.5rem;background:radial-gradient(1200px 700px at 110% -10%,rgba(183,224,106,.35),transparent 55%),linear-gradient(180deg,#f7f5ef,#f2eadc);min-height:100vh}.listing-hero{background:linear-gradient(135deg,#1a3a2a,#2e5a42);color:#fff;padding:3rem 1.25rem;text-align:center}.hero-container{max-width:72rem;margin:0 auto}h1{font:400 clamp(2.2rem,5vw,3rem)/1.1 "DM Serif Display",serif;margin:0 0 .75rem}.hero-subtitle{font:400 1.1rem/1.5 DM Sans,sans-serif;color:#d0ead4;max-width:600px;margin:0 auto}.listing-content{max-width:72rem;margin:0 auto;padding:2rem 1.25rem 3rem}.content-container{display:grid;grid-template-columns:280px 1fr;gap:2rem;align-items:start}.filters-card{background:#fff;border-radius:1rem;border:1px solid #e4e8de;padding:1.5rem;position:sticky;top:6.5rem;display:grid;gap:1.25rem}.search-box input{width:100%;border:1px solid #cfd8c7;border-radius:.7rem;padding:.7rem .8rem;font:400 .95rem/1.4 DM Sans,sans-serif;color:#18271f}.search-box input:focus{outline:2px solid rgba(76,175,115,.36);outline-offset:1px;border-color:#4caf73}.filter-group{display:grid;gap:.4rem}.filter-group label{font:600 .75rem/1.2 DM Sans,sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#60826a}.filter-group select{width:100%;border:1px solid #cfd8c7;border-radius:.7rem;padding:.6rem .7rem;font:400 .9rem/1.3 DM Sans,sans-serif;color:#18271f;background:#fff}.filter-group select:focus{outline:2px solid rgba(76,175,115,.36);outline-offset:1px;border-color:#4caf73}.clear-btn{border:1px solid #cfd8c7;border-radius:.7rem;background:#fff;color:#466150;padding:.6rem .8rem;font:500 .85rem/1.2 DM Sans,sans-serif;cursor:pointer;transition:all .15s ease}.clear-btn:hover{border-color:#4caf73;background:#f7fdf9;color:#2e7d4f}.jobs-section{min-height:400px}.loading-state,.empty-state,.no-results{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center}.spinner{width:48px;height:48px;border:4px solid #e4e8de;border-top-color:#4caf73;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-state p,.no-results p{margin:1rem 0 0;font:400 1rem/1.5 DM Sans,sans-serif;color:#60826a}.empty-state h2{font:400 1.8rem/1.2 "DM Serif Display",serif;color:#1a3a2a;margin:1.5rem 0 .5rem}.empty-state p{font:400 1rem/1.6 DM Sans,sans-serif;color:#466150;margin:0 0 1.5rem;max-width:400px}.contact-cta{display:inline-block;border-radius:.75rem;background:#2e7d4f;color:#fff;padding:.82rem 1.5rem;font:600 .93rem/1.1 DM Sans,sans-serif;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease}.contact-cta:hover{transform:translateY(-1px);box-shadow:0 12px 22px #2e7d4f38}.jobs-grid{display:grid;gap:1.25rem}.job-card{background:#fff;border-radius:1rem;border:1px solid #e4e8de;padding:1.5rem;transition:all .2s ease;display:flex;flex-direction:column;gap:1rem}.job-card:hover{border-color:#b7e06a;box-shadow:0 8px 20px #2e7d4f1f;transform:translateY(-2px)}.job-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem}.job-department{font:600 .68rem/1.2 DM Sans,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#60826a;margin:0 0 .5rem}.job-card h3{margin:0;font:400 1.5rem/1.2 "DM Serif Display",serif;color:#1a3a2a}.job-card h3 a{color:inherit;text-decoration:none;transition:color .15s ease}.job-card h3 a:hover{color:#2e7d4f}.job-summary{margin:0;font:400 .95rem/1.6 DM Sans,sans-serif;color:#466150;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.job-footer{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:auto;padding-top:1rem;border-top:1px solid #f0f4ec}.job-meta{display:flex;flex-wrap:wrap;gap:1rem}.meta-item{display:inline-flex;align-items:center;gap:.4rem;font:500 .85rem/1.2 DM Sans,sans-serif;color:#60826a}.meta-item svg{flex-shrink:0;opacity:.7}.apply-btn{display:inline-flex;align-items:center;gap:.4rem;background:#2e7d4f;color:#fff;font:600 .88rem/1.1 DM Sans,sans-serif;padding:.65rem 1.1rem;border-radius:.6rem;text-decoration:none;transition:all .18s ease;white-space:nowrap}.apply-btn:hover{background:#246a42;transform:translate(2px);gap:.6rem}.apply-btn svg{flex-shrink:0}@media(max-width:960px){.content-container{grid-template-columns:1fr}.filters-card{position:static}.job-footer{flex-direction:column;align-items:stretch}.job-meta{justify-content:flex-start}.apply-btn{justify-content:center}}
