:root{--ink:#14281D;--ink2:#1f3a2b;--text:#2b2f2c;--mute:#5f6b63;--line:#e4e8e3;--bg:#fbfaf6;--alt:#f1f4ee;--g:#5A9642;--gd:#3F7030;--gl:#e7f2df;--gold:#d9b45a;--r:18px}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font:16px/1.65 Inter,system-ui,sans-serif;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}a{color:inherit}h1,h2,h3,h4{font-family:Fraunces,Georgia,serif;color:var(--ink);line-height:1.12;letter-spacing:-.015em;font-weight:600}
h1{font-size:clamp(2.3rem,5vw,4rem)}h2{font-size:clamp(1.8rem,3.4vw,2.7rem);margin-bottom:1rem}h3{font-size:1.35rem}h4{font-size:1.1rem;margin-bottom:.35rem}h1 i,h2 i{color:var(--g);font-style:normal}
p+p{margin-top:1rem}.wrap{max-width:1200px;margin:0 auto;padding:0 1.5rem}
.eyebrow{display:inline-block;font:600 .75rem Inter;letter-spacing:.16em;text-transform:uppercase;color:var(--g);margin-bottom:1rem}.eyebrow.light{color:var(--gold)}
.btn{display:inline-flex;gap:.5rem;align-items:center;justify-content:center;background:var(--g);color:#fff;text-decoration:none;font-weight:600;padding:.85rem 1.4rem;border-radius:999px;border:2px solid var(--g);cursor:pointer;font-size:.95rem;transition:.2s}.btn:hover{background:var(--gd);border-color:var(--gd);transform:translateY(-1px)}
.btn-lg{padding:1rem 1.7rem;font-size:1rem}.btn-sm{padding:.55rem 1.1rem;font-size:.85rem}.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-ghost:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.btn-full{width:100%}
.cta{display:flex;gap:.8rem;flex-wrap:wrap;margin-top:2rem}.more{color:var(--g);font-weight:600;text-decoration:none}
.nav{position:sticky;top:0;z-index:50;background:rgba(251,250,246,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.nav-in{display:flex;align-items:center;gap:2rem;height:72px}
.logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;font:600 1.25rem Fraunces;color:var(--ink)}.logo em{font-style:normal;color:var(--g);margin-left:.2rem}.logo.light{color:#fff}
.mark{width:36px;height:36px;border-radius:10px;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:1.1rem;box-shadow:inset 0 -4px 0 var(--g)}
.links{display:flex;gap:1.8rem;margin-left:auto}.links a{text-decoration:none;font-weight:500;font-size:.92rem;color:var(--mute)}.links a:hover,.links a.active{color:var(--ink)}
.burger,.mobile-menu{display:none}
.hero{padding:5rem 0 4rem;background:radial-gradient(1000px 500px at 85% 0,var(--gl),transparent 60%)}.hero-in{display:grid;grid-template-columns:1.15fr .85fr;gap:4rem;align-items:center}
.lead{font-size:1.18rem;color:var(--mute);margin-top:1.3rem;max-width:620px}
.trust{display:flex;gap:2rem;list-style:none;margin-top:2.5rem;color:var(--mute);font-size:.9rem;flex-wrap:wrap}.trust b{display:block;font:600 1.6rem Fraunces;color:var(--ink)}
.hero-art{position:relative}.hero-art img{border-radius:28px;aspect-ratio:3/4;object-fit:cover;width:100%;box-shadow:0 30px 60px -20px rgba(20,40,29,.35)}
.float{position:absolute;background:#fff;border-radius:14px;padding:.85rem 1.1rem;box-shadow:0 14px 40px -10px rgba(0,0,0,.25);font-weight:600;font-size:.9rem;color:var(--ink);max-width:260px}.float small{display:block;font-weight:400;color:var(--mute);font-size:.8rem}
.f1{top:2rem;left:-2.5rem}.f2{bottom:2.5rem;right:-1.5rem;font-family:Fraunces;font-style:normal}.dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--g);margin-right:.5rem;box-shadow:0 0 0 4px var(--gl)}
.strip{background:var(--ink);color:#cfe0c6;padding:1.1rem 0;overflow:hidden}.strip-in{display:flex;gap:2.5rem;white-space:nowrap;font:500 1rem Fraunces;justify-content:center;flex-wrap:wrap}.strip span:before{content:"✦";color:var(--gold);margin-right:.8rem;font-size:.7rem}
.sec{padding:5.5rem 0}.sec.slim{padding:3rem 0}.sec.alt{background:var(--alt)}.sec.dark{background:var(--ink);color:#c9d6ce}.sec.dark h2,.sec.dark h4{color:#fff}
.sec-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:2.5rem;gap:1rem;flex-wrap:wrap}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:1.3rem}
.job{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.6rem;text-decoration:none;display:flex;flex-direction:column;transition:.25s}.job:hover{border-color:var(--g);transform:translateY(-4px);box-shadow:0 20px 40px -20px rgba(20,40,29,.3)}
.job-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.tag{background:var(--gl);color:var(--gd);font-size:.72rem;font-weight:600;padding:.3rem .7rem;border-radius:999px;letter-spacing:.04em}.sal{font-weight:700;color:var(--ink)}
.meta{display:flex;align-items:center;gap:.4rem;color:var(--mute);font-size:.88rem;margin:.5rem 0 .8rem}.meta svg{color:var(--g)}.ex{font-size:.9rem;color:var(--mute);flex:1}.go{margin-top:1.2rem;color:var(--g);font-weight:600;font-size:.9rem}
.split{display:grid;grid-template-columns:1fr 1fr;gap:4.5rem;align-items:center}
.checks{list-style:none;margin:1.5rem 0 2rem;display:grid;gap:1rem}.checks li{padding-left:2rem;position:relative}.checks li:before{content:"✓";position:absolute;left:0;top:0;width:1.35rem;height:1.35rem;border-radius:50%;background:var(--g);color:#fff;font-size:.75rem;display:grid;place-items:center;font-weight:700}
.steps{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.step{background:#fff;border-radius:var(--r);padding:1.5rem;border:1px solid var(--line)}.step b{font:600 1.8rem Fraunces;color:var(--g)}
.tech{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.tile{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.04);border-radius:var(--r);padding:1.5rem}.tile p{font-size:.9rem}
.about-photos{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.about-photos img{border-radius:var(--r);aspect-ratio:3/4;object-fit:cover}.about-photos img:last-child{margin-top:3rem}
.card-form{background:#fff;border-radius:22px;padding:2rem;box-shadow:0 30px 60px -30px rgba(20,40,29,.35);display:grid;gap:1rem;border:1px solid var(--line)}.card-form.plain{box-shadow:none;padding:0;border:0}
.card-form label{display:grid;gap:.35rem;font-size:.82rem;font-weight:600;color:var(--ink)}.row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
input,select,textarea{font:inherit;font-weight:400;padding:.75rem .9rem;border:1.5px solid var(--line);border-radius:12px;background:#fff;width:100%;color:var(--text)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--g);box-shadow:0 0 0 4px var(--gl)}
.note{font-size:.78rem;color:var(--mute);text-align:center}.hp{display:none}
.employer-band{display:flex;justify-content:space-between;align-items:center;gap:2rem;background:#fff;border:1px solid var(--line);border-radius:22px;padding:2rem 2.5rem;flex-wrap:wrap}.employer-band .cta{margin:0}
.alerts{background:linear-gradient(135deg,var(--ink),var(--ink2));color:#c9d6ce;padding:4rem 0}.alerts h2{color:#fff;font-size:clamp(1.6rem,3vw,2.2rem)}.alerts-in{display:grid;grid-template-columns:1.1fr 1fr;gap:3rem;align-items:center}
.alert-form{display:flex;gap:.6rem;flex-wrap:wrap}.alert-form input{flex:2;min-width:200px}.alert-form select{flex:1;min-width:150px}
.foot{background:#0d1c14;color:#9fb0a5;padding:4rem 0 2rem;font-size:.92rem}.foot-in{display:grid;grid-template-columns:2fr 1fr 1fr;gap:2rem}.foot h4{color:#fff;font-family:Inter;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;margin-bottom:1rem}.foot a{display:block;text-decoration:none;margin-bottom:.5rem}.foot a:hover{color:#fff}.foot p{margin-top:1rem}.legal{border-top:1px solid #22362a;margin-top:3rem;padding-top:1.5rem;font-size:.8rem}
.page-hero{padding:4.5rem 0 3.5rem;background:radial-gradient(900px 400px at 90% 0,var(--gl),transparent 60%);border-bottom:1px solid var(--line)}.page-hero h1{max-width:900px}.page-hero.center{text-align:center}.page-hero.center .lead,.page-hero.center .cta{margin-left:auto;margin-right:auto;justify-content:center}
.search{display:flex;gap:.7rem;margin-top:2rem;max-width:700px}.search input{border-radius:999px;padding:.9rem 1.3rem}.empty{text-align:center;padding:2rem;color:var(--mute)}
.specs,.values{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem}.specs>div,.values>div{background:#fff;border:1px solid var(--line);border-radius:var(--r);padding:1.6rem}.values h4{color:var(--g);font-size:1.5rem}
.faq{max-width:800px}.faq details{background:#fff;border-radius:14px;padding:1.2rem 1.5rem;margin-bottom:.8rem;border:1px solid var(--line)}.faq summary{font-weight:600;cursor:pointer;color:var(--ink)}.faq p{margin-top:.7rem;color:var(--mute)}
.portrait{border-radius:28px;aspect-ratio:4/5;object-fit:cover;width:100%}
.life{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}.life img{border-radius:var(--r);aspect-ratio:3/4;object-fit:cover;width:100%}.life figcaption{font-size:.9rem;color:var(--mute);margin-top:.8rem}.life b{display:block;color:var(--ink);font-family:Fraunces;font-size:1.05rem}
.prose h2{font-size:1.6rem;margin:2rem 0 .8rem}.prose h2:first-child{margin-top:0}.prose h3{font-size:1.15rem;margin:1.5rem 0 .6rem}.prose ul{padding-left:1.2rem;display:grid;gap:.45rem;margin:.6rem 0}.prose li::marker{color:var(--g)}
.back{display:inline-block;text-decoration:none;color:var(--mute);font-size:.9rem;margin-bottom:1.2rem}.chips{display:flex;gap:.6rem;flex-wrap:wrap;margin:1.3rem 0 1.8rem}.chips span{display:inline-flex;gap:.35rem;align-items:center;background:#fff;border:1px solid var(--line);padding:.45rem .9rem;border-radius:999px;font-size:.88rem}.chips .hl{background:var(--ink);color:#fff;border-color:var(--ink);font-weight:600}
.job-layout{display:grid;grid-template-columns:1fr 380px;gap:3.5rem;align-items:start}.apply{position:sticky;top:96px;background:#fff;border:1px solid var(--line);border-radius:22px;padding:1.8rem;box-shadow:0 30px 60px -30px rgba(20,40,29,.3)}.apply h3{margin-bottom:.3rem}.apply>.note{text-align:left;margin-bottom:1.2rem}
.share{margin-top:1rem;width:100%;background:none;border:1.5px solid var(--line);border-radius:999px;padding:.7rem;font:600 .88rem Inter;cursor:pointer;color:var(--ink)}
.sticky-apply{display:none}
.reveal{opacity:0;transform:translateY(18px);transition:.7s ease}.reveal.in{opacity:1;transform:none}
@media(max-width:960px){.hero-in,.split,.alerts-in,.job-layout,.foot-in{grid-template-columns:1fr;gap:2.5rem}.split.rev>:first-child{order:2}.links,.nav .btn-sm{display:none}
.burger{display:grid;gap:5px;margin-left:auto;background:none;border:0;padding:.5rem;cursor:pointer}.burger span{width:24px;height:2px;background:var(--ink)}.menu .mobile-menu{display:grid;padding:1rem 1.5rem 1.5rem;gap:.9rem;border-top:1px solid var(--line)}.mobile-menu a{text-decoration:none;font-weight:600;color:var(--ink)}
.f1{left:.5rem}.f2{right:.5rem}.hero{padding-top:3rem}.specs,.values{grid-template-columns:1fr}.life{grid-template-columns:1fr 1fr}.apply{position:static}
.sticky-apply{display:block;position:fixed;bottom:1rem;left:1rem;right:1rem;text-align:center;background:var(--g);color:#fff;padding:1rem;border-radius:999px;font-weight:700;text-decoration:none;z-index:40;box-shadow:0 10px 30px rgba(0,0,0,.25)}}
@media(max-width:560px){.row,.steps,.tech{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.search{flex-direction:column}}
@media print,(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}
.logo img{height:40px;width:auto}.wm{display:flex;flex-direction:column;line-height:1}.wm b{font:500 1.45rem 'Playfair Display',Fraunces,Georgia,serif;letter-spacing:-.01em}.wm small{font:500 .58rem Inter;letter-spacing:.42em;margin-top:4px;padding-left:2px}.logo.light .wm{color:#fff}
