.jobs-listings{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}
.jobs-card{background:#fff;border-radius:16px;box-shadow:0 14px 24px rgba(0,0,0,.18);padding:18px;transition:transform .15s ease,box-shadow .15s ease;cursor:pointer;display:flex;flex-direction:column;gap:8px}
.jobs-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.15)}
.jobs-type{color:#666;font-size:14px;margin-bottom:2px}
.jobs-title-link{display:block;font-weight:700;font-size:20px;margin-bottom:6px;text-decoration:none;color:#111}
.jobs-subtitle{color:#666;font-size:15px;margin-bottom:10px;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.jobs-points{margin-bottom:8px}
.jobs-points p{margin:6px 0;color:#333;line-height:1.45;word-break:break-word}
.jobs-apply-button{display:inline-flex;align-items:center;background:linear-gradient(135deg,#083327 0%,#0bab64 100%);color:#fff;border:none;border-radius:6px;padding:10px 16px;font-weight:600;cursor:pointer;text-decoration:none;box-shadow:0 6px 12px rgba(0,0,0,.25);gap:8px}
.jobs-apply-button::after{content:"\2192";display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:14px}
.jobs-apply-button:hover{filter:brightness(1.05)}
.jobs-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:9999}
.jobs-modal{background:#fff;border-radius:12px;max-width:520px;width:92%;padding:20px;box-shadow:0 10px 24px rgba(0,0,0,.2)}
.jobs-modal h3{margin:0 0 12px 0}
.jobs-modal form{display:grid;gap:10px}
.jobs-modal input,.jobs-modal textarea{width:100%;padding:10px;border:1px solid #ddd;border-radius:6px}
.jobs-modal-actions{display:flex;gap:10px;margin-top:8px}
.jobs-btn{padding:10px 16px;border-radius:6px;border:none;cursor:pointer}
.jobs-btn-primary{background:linear-gradient(90deg,#0b3b2f,#0bab64);color:#fff}
.jobs-btn-secondary{background:#eee}
.jobs-details{margin-top:18px}
.jobs-description{margin:10px 0 10px 0}
.jobs-description p{margin:8px 0}
.jobs-apply-section{margin-top:18px}
.jobs-hero-container{position:relative;display:block;margin:0 0 16px 0;width:100vw;max-width:100vw;left:50%;transform:translateX(-50%)}
.single-job .entry-content > .jobs-hero-container{margin-top:0!important}
.jobs-hero-image{display:block;width:100%;height:420px;object-fit:cover}
.jobs-hero-overlay{position:absolute;inset:0;background:rgba(0,0,0,.35);display:flex;align-items:center;justify-content:center}
.jobs-hero-content{max-width:1100px;margin:0 auto;padding:40px 16px;color:#fff;text-align:center}
.jobs-hero-title{font-size:40px;color:#fff;font-weight:700;line-height:1.2;margin:0}
.jobs-hero-subtitle{margin-top:8px;font-size:18px;color:#fff;opacity:.9}
.jobs-title{font-size:32px;margin-top:15px;font-weight:500;line-height:1.2;margin:0}

/* Hide theme-inserted featured image on job single pages */
.single-job .post-thumbnail, .single-job img.wp-post-image {display:none!important}
.single-job .entry-content{padding-top:0!important}
.single-job .entry-content > *:first-child{margin-top:0!important}
/* Make the detail content full-bleed */
.jobs-single{position:relative;width:100vw;max-width:100vw;left:50%;transform:translateX(-50%);}
.jobs-single .jobs-details{max-width:1100px;margin:0 auto;padding:0 16px}
