:root{--navy:#0B1F3A;--slate:#3E5C76;--teal:#0F8B8D;--gold:#D6A84F;--cream:#F7F9FC;--ink:#17202A;--muted:#3E5C76;--line:#D8E2EC;--positive:#2E8B57;--warning:#D98E04;--error:#C94C4C}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
button,input{font:inherit}
.site-header{height:82px;padding:0 max(5vw,28px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce4e7}
.brand{display:flex;align-items:center;gap:12px;font:700 23px Georgia;color:var(--navy)}
.brand i{font-style:normal;color:var(--teal)}
.brand small{font:13px Arial;color:var(--slate)}
.mark{position:relative;display:inline-block;width:35px;height:35px;border-radius:8px;background:var(--gold);flex:none}
.mark:before,.mark:after{content:"";position:absolute;background:#fff;border-radius:2px}
.mark:before{width:19px;height:5px;left:8px;top:15px}
.mark:after{height:19px;width:5px;left:15px;top:8px}
.site-header nav{display:flex;align-items:center;gap:clamp(16px,1.8vw,29px);font-size:14px;font-weight:700;white-space:nowrap}
.nav-cta{padding:12px 17px;background:var(--navy);color:#fff}
.hero{display:grid;grid-template-columns:1.55fr .85fr;min-height:555px;background:linear-gradient(120deg,var(--cream) 0%,#EFF3F8 65%,#E2EAF2 65%)}
.hero-copy{padding:86px 7vw 70px}
.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:12px;font-weight:800;color:var(--teal);margin:0 0 17px}
.hero h1{max-width:760px;margin:0;font:700 clamp(48px,5.3vw,76px)/.99 Georgia;color:var(--navy);letter-spacing:-2.5px}
.hero h1 em{font-style:normal;color:var(--teal)}
.lede{max-width:690px;font-size:19px;line-height:1.6;color:var(--slate);margin:28px 0 32px}
.search{display:grid;grid-template-columns:1fr 1fr auto;max-width:900px;background:#fff;box-shadow:0 14px 35px #173b4c1a;border:1px solid #dbe5e5}
.search label{padding:14px 20px;border-right:1px solid #dce4e7}
.search label span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:1px;font-weight:800;color:#667784;margin-bottom:7px}
.search input{border:0;outline:0;width:100%;font-size:15px}
.search button,.job-layout aside button{border:0;background:var(--teal);color:#fff;font-weight:800;padding:0 26px}
.search .clear-search{grid-column:3;justify-self:center;display:flex;align-items:center;justify-content:center;min-width:140px;margin:10px auto;padding:9px 20px;border:1px solid var(--teal);background:#fff;color:var(--teal);font-weight:800;text-transform:uppercase;letter-spacing:1px}
.search .clear-search:hover{background:var(--navy);border-color:var(--navy);color:#fff}
.trust{display:flex;gap:27px;margin-top:25px;color:#667682;font-size:12px}
.trust b:before{content:"✓";color:var(--teal);margin-right:7px}
.hero-panel{background:var(--navy);color:#fff;padding:90px 50px;display:flex;flex-direction:column;justify-content:center;clip-path:polygon(13% 0,100% 0,100% 100%,0 100%)}
.hero-panel>p{text-transform:uppercase;font-size:11px;letter-spacing:2px;color:#F0D49A;margin:28px 0 15px}
.hero-panel h2{font:700 36px/1.15 Georgia;margin:0 0 35px}
.pulse{height:42px;background:linear-gradient(135deg,transparent 46%,var(--gold) 47%,var(--gold) 51%,transparent 52%) 0 12px/55px 26px repeat-x}
.focus{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--slate);border-left:1px solid var(--slate)}
.focus span{padding:13px;border-right:1px solid var(--slate);border-bottom:1px solid var(--slate);font-size:13px}
.jobs-section{padding:88px 7vw}
.section-heading{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:40px}
.section-heading h2,.values h2{font:700 42px/1.1 Georgia;color:var(--navy);margin:0}
.section-heading>p{max-width:460px;color:var(--muted);line-height:1.6}
.job-layout{display:grid;grid-template-columns:250px 1fr;gap:30px}
.job-layout aside{background:var(--cream);padding:25px;height:max-content}
.job-layout aside h3{font:700 21px Georgia;margin:0 0 23px}
.job-layout aside label{display:block;font-size:12px;font-weight:800;margin:15px 0}
.job-layout aside input{display:block;width:100%;margin-top:7px;padding:11px;border:1px solid #ccd6da}
.job-layout aside button{width:100%;padding:12px}
.job-list{display:grid;gap:13px}
.job-card{border:1px solid var(--line);padding:25px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:20px}
.job-card:hover{border-color:var(--teal);box-shadow:0 8px 24px #173b4c12}
.job-card .mark{width:42px;height:42px}
.job-card .mark:before{width:22px;left:10px;top:18px}
.job-card .mark:after{height:22px;left:18px;top:10px}
.job-label{color:var(--teal)!important;text-transform:uppercase;letter-spacing:1px;font-size:10px!important;font-weight:800}
.job-card h3{font:700 22px Georgia;color:var(--navy);margin:5px 0}
.job-card p{margin:0;color:var(--muted);font-size:14px}
.job-card>a{font-size:13px;font-weight:800;color:#0b6286}
.values{padding:85px 7vw;background:var(--cream);display:grid;grid-template-columns:.8fr 1.4fr;gap:70px}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}
.value-grid strong{font-size:11px;color:var(--teal)}
.value-grid h3{font:700 21px Georgia;color:var(--navy)}
.value-grid p{color:var(--muted);line-height:1.65;font-size:14px}
.employer-band{padding:65px 7vw;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between}
.employer-band .eyebrow{color:#F0D49A}
.employer-band h2{font:700 39px Georgia;margin:0}
.employer-band p{max-width:700;line-height:1.6}
.employer-band>a{border:1px solid #fff;padding:15px 20px;font-weight:800;font-size:13px}
footer{padding:35px 7vw;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:35px;background:var(--navy);color:#D8E2EC}
footer .brand{color:#fff}
footer>div{display:flex;gap:23px;font-size:13px}
footer>p{font-size:12px;color:#7f96a4}

@media(max-width:900px){.site-header nav a:not(.nav-cta){display:none}
.hero{grid-template-columns:1fr}
.hero-copy{padding:65px 6vw}
.hero-panel{clip-path:none;padding:55px 8vw}
.search{grid-template-columns:1fr}
.search .clear-search{grid-column:1}
.search label{border-right:0;border-bottom:1px solid #dce4e7}
.search button{padding:16px}
.job-layout,.values{grid-template-columns:1fr}
.value-grid{gap:20px}
.section-heading{display:block}
}

@media(max-width:650px){.site-header{height:70px}
.brand{font-size:19px}
.nav-cta{display:none}
.hero h1{font-size:45px}
.hero-copy,.jobs-section,.values{padding:55px 22px}
.value-grid{grid-template-columns:1fr}
.job-card{grid-template-columns:auto 1fr}
.job-card>a{grid-column:2}
.employer-band{padding:50px 22px;display:block}
.employer-band>a{display:inline-block;margin-top:15px}
footer{grid-template-columns:1fr;padding:35px 22px}
footer>div{flex-wrap:wrap}
}


.jobs-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:30px;align-items:start}

.state-filter{position:sticky;top:20px;padding:24px;border:1px solid var(--line);background:var(--cream)}

.state-filter h3{margin:0 0 18px;font:700 24px/1.15 Georgia,serif;color:var(--navy)}

.state-filter label{display:block;margin-bottom:7px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:1px;color:var(--muted)}

.state-filter select{width:100%;padding:12px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:15px}

.state-filter .clear-state{display:block;margin-top:15px;text-align:center;color:var(--teal);font-weight:800}

@media(max-width:900px){.jobs-layout{grid-template-columns:1fr}
.state-filter{position:static}
}

.active-total{margin:22px 0 24px;color:#fff;font:700 18px Arial,sans-serif;letter-spacing:.04em}
.active-total strong{display:block;color:#8fdfd3;font:700 42px/1 Georgia,serif;margin-bottom:5px}

@media(max-width:650px){.job-card{grid-template-columns:42px minmax(0,1fr);max-width:100%;gap:20px}
.job-card>div{min-width:0}
.job-card h3{overflow-wrap:anywhere;word-break:normal}
.job-card>a{grid-column:2}
}

/* Search-optimized job detail pages */
.pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:24px;padding:16px;border:1px solid var(--line);background:var(--cream);font-size:14px;font-weight:800}.pagination a{padding:10px 14px;background:var(--navy);color:#fff}.pagination span{color:var(--muted)}
.job-detail{max-width:1120px;margin:0 auto;padding:42px 24px 72px}.job-back{margin:0 0 18px}.job-back a{color:var(--navy);font-weight:800}.job-detail-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:clamp(26px,5vw,58px);box-shadow:0 18px 50px rgba(12,38,57,.08)}.job-detail-card h1{max-width:900px;margin:8px 0 16px;color:var(--navy);font:700 clamp(36px,4vw,58px)/1.04 Georgia,serif;letter-spacing:-1.5px}.job-detail-meta{color:var(--muted);font-size:18px;font-weight:700}.job-detail-meta span{margin:0 7px;color:var(--teal)}.job-description{max-width:850px;margin-top:34px;color:var(--ink);font-size:17px;line-height:1.75}.job-apply{display:flex;align-items:center;gap:22px;margin-top:38px;padding-top:28px;border-top:1px solid var(--line)}.job-apply .nav-cta{display:inline-block;text-decoration:none}.job-apply p{margin:0;color:var(--muted);font-size:14px}@media(max-width:700px){.job-detail{padding:24px 16px 48px}.job-detail-card{border-radius:16px;padding:24px 20px}.job-apply{align-items:flex-start;flex-direction:column}.job-detail-card h1{font-size:34px}}
