.public-jobs-page{background:#f6f3eb}.public-jobs-page [hidden]{display:none!important}.main-nav a.active{color:var(--gold)}.jobs-hero{background:var(--green);color:white;padding:80px max(7vw,35px);display:grid;grid-template-columns:1fr 240px;gap:8vw;align-items:center;position:relative;overflow:hidden}.jobs-hero:after{content:"";position:absolute;width:400px;height:400px;border:1px solid rgba(255,255,255,.07);transform:rotate(45deg);right:-260px;top:-250px}.jobs-hero h1{font-size:57px;max-width:730px}.jobs-hero>div>p:not(.eyebrow){color:#bfd0c9;font-size:14px}.jobs-hero form{background:white;padding:8px;display:grid;grid-template-columns:1fr 1fr auto;margin-top:27px}.jobs-hero form label{display:flex;align-items:center;gap:8px;padding:0 13px;border-right:1px solid var(--line);color:var(--green)}.jobs-hero form input{border:0;outline:0;width:100%;font-size:10px}.jobs-hero form button{font-size:9px}.jobs-hero>aside{text-align:center;border:1px solid rgba(255,255,255,.2);padding:28px;position:relative}.jobs-hero>aside>span{color:var(--gold);font-size:24px}.jobs-hero aside strong{display:block;font:40px var(--font-display)}.jobs-hero aside p{font-size:9px;color:#bfd0c9}.jobs-directory{padding:55px max(7vw,35px);display:grid;grid-template-columns:235px 1fr;gap:28px}.job-filters{background:var(--paper);border:1px solid var(--line);padding:20px;height:max-content}.filter-heading{display:flex;justify-content:space-between}.filter-heading h2{font-size:20px}.filter-heading button{border:0;background:none;color:var(--green);font-size:8px;text-decoration:underline}.job-filters>label{display:flex;flex-direction:column;gap:7px;margin-top:19px}.job-filters>label>span{font-size:8px;font-weight:700}.job-filters select{height:39px;border:1px solid var(--line);background:white;padding:0 9px;font-size:9px}.filter-note{display:flex;gap:8px;background:var(--green-3);color:var(--green);padding:11px;margin-top:23px}.filter-note p{display:flex;flex-direction:column;margin:0}.filter-note strong{font-size:8px}.filter-note small{font-size:7px;line-height:1.4;margin-top:3px}.job-results>header{display:flex;justify-content:space-between;align-items:end;margin-bottom:16px}.job-results h2{font-size:27px}.job-results header p{font-size:8px;color:var(--muted);margin:4px 0}.job-results header select{height:35px;border:1px solid var(--line);background:white;padding:0 9px;font-size:8px}.public-job-card{background:var(--paper);border:1px solid var(--line);padding:20px;margin-bottom:11px;display:grid;grid-template-columns:1fr auto;gap:18px;transition:.2s}.public-job-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.job-card-main{display:flex;gap:13px}.company-initials{width:47px;height:47px;background:var(--green);color:white;display:grid;place-items:center;font:18px var(--font-display);flex:none}.job-copy h3{font:20px var(--font-display);margin:0}.job-copy>p{font-size:8px;color:var(--muted);margin:5px 0}.public-job-tags{display:flex;gap:5px;flex-wrap:wrap;margin-top:10px}.public-job-tags span{background:#edf0ee;color:var(--green);padding:5px 7px;font-size:7px}.public-job-tags span.masjid-tag{background:#f5ecd7;color:#89611e}.job-card-side{display:flex;flex-direction:column;align-items:end;justify-content:space-between}.job-card-side small{font-size:7px;color:var(--muted)}.job-card-side button{border:0;background:none;color:var(--green);font-size:9px;font-weight:700}.public-job-empty{text-align:center;background:var(--paper);border:1px solid var(--line);padding:55px}.public-job-empty>span{font-size:25px;color:var(--gold)}.public-job-empty h3{font:20px var(--font-display)}.public-job-empty p{font-size:9px;color:var(--muted)}.public-job-backdrop{position:fixed;inset:0;background:rgba(10,36,30,.45);z-index:39}.public-job-drawer{position:fixed;right:0;top:0;bottom:0;width:min(570px,100%);background:var(--paper);z-index:40;transform:translateX(105%);transition:.3s;display:flex;flex-direction:column}.public-job-drawer.open{transform:none}.public-job-drawer>header{background:var(--green);color:white;padding:30px}.public-job-drawer>header>button{float:right;border:0;background:none;color:white;font-size:24px}.drawer-company{width:52px;height:52px;background:var(--gold);color:var(--green);display:grid;place-items:center;font:20px var(--font-display);margin-bottom:17px}.public-job-drawer h2{font-size:31px}.public-job-drawer header>p:not(.step-kicker){font-size:9px;color:#bfd0c9}.public-job-drawer header .public-job-tags span{background:rgba(255,255,255,.12);color:white}.public-job-body{padding:25px 30px;overflow:auto;flex:1}.public-job-body section{border-bottom:1px solid var(--line);padding-bottom:19px;margin-bottom:19px}.public-job-body h3{font:18px var(--font-display)}.public-job-body section>p{font-size:10px;color:var(--muted);line-height:1.7;white-space:pre-line}.public-job-body dl{display:grid;grid-template-columns:1fr 1fr;gap:14px}.public-job-body dl div{display:flex;flex-direction:column}.public-job-body dt{font-size:7px;text-transform:uppercase;color:var(--muted)}.public-job-body dd{font-size:9px;margin:4px 0}.job-trust{background:var(--green-3);color:var(--green);padding:12px;display:flex;gap:9px}.job-trust p{display:flex;flex-direction:column;margin:0}.job-trust strong{font-size:9px}.job-trust small{font-size:7px}.public-job-drawer>footer{padding:18px 30px;border-top:1px solid var(--line);text-align:center}.public-job-drawer>footer .button{width:100%}.public-job-drawer>footer small{font-size:7px;color:var(--muted)}
@media(max-width:800px){.jobs-hero{grid-template-columns:1fr}.jobs-hero>aside{display:none}.jobs-directory{grid-template-columns:1fr}.job-filters{display:grid;grid-template-columns:1fr 1fr;gap:10px}.filter-heading,.filter-note{grid-column:1/-1}.job-filters>label{margin-top:5px}}@media(max-width:550px){.jobs-hero{padding:55px 22px}.jobs-hero h1{font-size:42px}.jobs-hero form{grid-template-columns:1fr}.jobs-hero form label{height:45px;border-right:0;border-bottom:1px solid var(--line)}.jobs-directory{padding:35px 20px}.job-filters{grid-template-columns:1fr}.filter-heading,.filter-note{grid-column:auto}.public-job-card{grid-template-columns:1fr}.job-card-side{align-items:start;gap:12px}.public-job-body dl{grid-template-columns:1fr}}
.public-job-card.already-applied{border-color:#b6d3c3;background:#fbfdfc}
.applied-flag{display:inline-block;margin-top:8px;padding:4px 10px;background:#e5efe9;color:#174d40;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}
.drawer-applied{display:grid;gap:4px;padding:16px 18px;background:#e7f1eb;border:1px solid #b6d3c3;margin-bottom:12px}
.drawer-applied strong{color:#15503f;font-size:14px}
.drawer-applied small{color:#4a6c5e;font-size:11px}
.drawer-applied a{margin-top:6px;color:#15503f;font-weight:700;font-size:12px;text-decoration:underline}
#apply-job.already-applied{background:#e3f1e8;border-color:#2f8a5c;color:#1f6b4f;pointer-events:auto}
#already-applied-note{margin:8px 0 0;font-size:9px;color:#6f7f79;text-align:center}

/* The page was short enough that the footer floated mid-screen with empty space beneath it.
   A column layout pins it to the bottom without stretching the content. */
body{display:flex;flex-direction:column;min-height:100vh}
body>footer{margin-top:auto}

/* Job list polish */
.public-job-card{background:#fffdf8;border:1px solid rgba(18,63,53,.11);border-radius:12px;box-shadow:0 2px 10px rgba(18,63,53,.05);transition:transform .18s,box-shadow .18s,border-color .18s}
.public-job-card:hover{transform:translateY(-3px);box-shadow:0 16px 32px rgba(18,63,53,.13);border-color:rgba(18,63,53,.22)}
.public-job-card h3{letter-spacing:-.2px}
.public-job-card.already-applied{border-color:rgba(47,138,92,.4);background:linear-gradient(180deg,#f4faf6 0%,#fffdf8 60%)}
.applied-flag{display:inline-flex;align-items:center;gap:5px;margin-top:9px;padding:5px 10px;border-radius:999px;background:#e3f1e8;color:#1f6b4f;border:1px solid rgba(47,138,92,.3);font-size:8px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}
.job-filters,.jobs-filter-panel{background:#fffdf8;border:1px solid rgba(18,63,53,.11);border-radius:12px;box-shadow:0 2px 10px rgba(18,63,53,.05)}
.job-filters select,.jobs-filter-panel select{border-radius:8px;border:1px solid rgba(18,63,53,.18);background:#fff;padding:11px 12px;font-size:11px}
.job-filters select:focus,.jobs-filter-panel select:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px rgba(29,89,74,.12)}
@media(min-width:900px){.job-filters,.jobs-filter-panel{position:sticky;top:22px}}
