:root{--grey:#5a5a5c;--ink:#3a3b3d;--green:#618a72;--green-d:#4e7560;--deep:#2c4438;--deep-2:#21342a;--sage:#a7c0b0;--sage-soft:#e7ede8;--paper:#f4f6f3;--line:#e2e6e0;--muted:#6e746f;--maxw:1180px;--r:14px;--sans:"Inter",system-ui,sans-serif;--serif:"Cormorant Garamond",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--sans);color:var(--ink);-webkit-font-smoothing:antialiased;background:#fff;margin:0;font-size:17px;line-height:1.65}h1,h2,h3,h4{font-family:var(--serif);letter-spacing:0;margin:0;font-weight:500;line-height:1.08}p{margin:0}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}.eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--green);font-size:12.5px;font-weight:600}.lead{font-family:var(--sans)}.btn{cursor:pointer;border:1px solid #0000;border-radius:999px;align-items:center;gap:.55em;padding:14px 26px;font-size:15px;font-weight:600;transition:all .2s;display:inline-flex}.btn:focus-visible{outline:3px solid var(--sage);outline-offset:2px}.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:var(--green-d);transform:translateY(-2px)}.btn-ghost{color:var(--deep);border-color:var(--line);background:0 0}.btn-ghost:hover{border-color:var(--green);color:var(--green-d)}.btn-light{color:var(--deep);background:#fff}.btn-light:hover{transform:translateY(-2px)}.btn-ol{color:#fff;background:0 0;border-color:#ffffff73}.btn-ol:hover{border-color:#fff}.topbar{background:var(--deep-2);color:#cdd8cf;font-size:13px}.topbar .wrap{flex-wrap:wrap;justify-content:space-between;gap:18px;padding:9px 28px;display:flex}.topbar a:hover{color:#fff}.head{z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);background:#fffffff0;position:sticky;top:0}.head .wrap{justify-content:space-between;align-items:center;padding:15px 28px;display:flex}.brand img{width:auto;height:75px}.nav{align-items:center;gap:30px;display:flex}.nav a{font-size:15px;font-weight:500;font-family:var(--sans);padding:4px 0;position:relative}.nav a:after{content:"";background:var(--green);width:0;height:2px;transition:width .25s;position:absolute;bottom:-2px;left:0}.nav a:hover:after,.nav a.active:after{width:100%}.nav a:hover,.nav a.active{color:var(--green-d)}.nav-cta{align-items:center;gap:14px;display:flex}.menu-btn{cursor:pointer;background:0 0;border:0;padding:8px;display:none}.menu-btn span{background:var(--ink);width:24px;height:2px;margin:5px 0;display:block}.hero{background:linear-gradient(160deg,var(--deep),var(--deep-2));color:#fff;position:relative;overflow:hidden}.hero:after{content:"";background:radial-gradient(circle,#a7c0b038,#0000 62%);width:620px;height:620px;position:absolute;top:-22%;right:-12%}.hero .wrap{z-index:2;max-width:900px;padding:104px 28px 112px;position:relative}.hero .eyebrow{color:var(--sage)}.hero h1{letter-spacing:-.01em;margin:18px 0 0;font-size:clamp(46px,7vw,84px)}.hero h1 em{color:var(--sage);font-style:italic}.hero .lead{color:#d7e0d8;max-width:620px;margin-top:22px;font-size:clamp(17px,2vw,20px)}.hero .actions{flex-wrap:wrap;gap:14px;margin-top:36px;display:flex}.hero-mark{opacity:.07;filter:brightness(0)invert();z-index:1;width:450px;position:absolute;bottom:-30px;right:5%}@media (max-width:760px){.hero-mark{display:none}}.banner{background:linear-gradient(160deg,var(--deep),var(--deep-2));color:#fff}.banner .wrap{max-width:880px;padding:72px 28px 64px}.banner .eyebrow{color:var(--sage)}.banner h1{margin-top:14px;font-size:clamp(38px,5.4vw,62px)}.banner p{color:#d7e0d8;font-family:var(--sans);max-width:620px;margin-top:16px}.crumb{font-family:var(--sans);color:#aebfb2;font-size:13px}.crumb a:hover{color:#fff}.section{padding:96px 0}.bg-paper{background:var(--paper)}.sh{max-width:680px}.sh h2{margin-top:10px;font-size:clamp(34px,5vw,56px)}.sh p{color:var(--muted);margin-top:14px}.about{grid-template-columns:1.05fr .95fr;align-items:start;gap:60px;display:grid}.about-lead{font-family:var(--serif);color:var(--deep);font-size:clamp(26px,3vw,34px);font-style:italic;line-height:1.32}.mv{gap:22px;display:grid}.mv-card{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:26px 28px}.mv-card h3{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--green);font-size:13px;font-weight:600}.mv-card p{margin-top:10px;font-size:15.5px}.svc-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.svc-grid.top{margin-top:52px}.svc{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:30px 28px;transition:all .22s;display:block}.svc:hover{border-color:var(--sage);transform:translateY(-4px);box-shadow:0 18px 40px -24px #2c443880}.svc .ic{background:var(--sage-soft);border-radius:10px;justify-content:center;align-items:center;width:46px;height:46px;margin-bottom:18px;display:flex}.svc .ic img{width:26px;height:26px}.svc h3{font-size:27px}.svc p{color:var(--muted);margin-top:8px;font-size:14.5px}.svc .more{font-family:var(--sans);color:var(--green-d);margin-top:16px;font-size:13.5px;font-weight:600;display:inline-block}.svc-foot{text-align:center;margin-top:40px}.values{background:var(--deep);color:#fff}.values .eyebrow{color:var(--sage)}.values h2{max-width:640px;margin-top:10px;font-size:clamp(30px,4vw,46px)}.val-list{grid-template-columns:repeat(4,1fr);gap:16px 26px;margin-top:38px;padding:0;display:grid}.val-list li{color:#e7ede8;font-size:16px;font-family:var(--sans);border-top:1px solid #ffffff24;align-items:center;gap:12px;padding:14px 0;list-style:none;display:flex}.val-list li:before{content:"";background:var(--sage);flex:none;width:9px;height:9px;transform:rotate(45deg)}.posts{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.posts.top{margin-top:50px}.post{border:1px solid var(--line);border-radius:var(--r);background:#fff;transition:all .22s;display:block;overflow:hidden}.post:hover{transform:translateY(-4px);box-shadow:0 18px 40px -26px #2c443873}.post .thumb{background:linear-gradient(135deg,var(--sage),var(--green));align-items:flex-end;height:168px;padding:16px;display:flex}.post .thumb span{color:var(--deep);font-size:12px;font-weight:600;font-family:var(--sans);background:#ffffffeb;border-radius:999px;padding:5px 12px}.post .body{padding:20px 24px 26px}.post h3{font-size:25px;line-height:1.18}.post .meta{color:var(--muted);font-size:13px;font-family:var(--sans);margin-top:8px}.jobs{grid-template-columns:1fr .9fr;align-items:start;gap:54px;display:grid}.jobs.top{margin-top:46px}.job-list{gap:16px;display:grid}.job{border:1px solid var(--line);border-radius:var(--r);background:#fff;justify-content:space-between;align-items:center;gap:18px;padding:22px 24px;transition:all .2s;display:flex}.job:hover{border-color:var(--sage)}.job h3{font-size:24px}.job .tags{flex-wrap:wrap;gap:8px;margin-top:6px;display:flex}.job .tag{font-family:var(--sans);color:var(--green-d);background:var(--sage-soft);border-radius:999px;padding:4px 11px;font-size:12px;font-weight:600}.applic{border:1px solid var(--line);border-radius:var(--r);background:#fff;padding:30px}.applic h3{font-size:30px}.applic .sub{color:var(--muted);font-size:14px;font-family:var(--sans);margin-top:6px}.field{margin-top:16px}.field label{font-family:var(--sans);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.field input,.field select,.field textarea{width:100%;font-family:var(--sans);border:1px solid var(--line);background:var(--paper);color:var(--ink);border-radius:10px;padding:12px 14px;font-size:15px}.field textarea{resize:vertical;min-height:120px}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--green);background:#fff;outline:none}.fdrop{border:1.5px dashed var(--sage);text-align:center;color:var(--muted);background:var(--paper);font-size:14px;font-family:var(--sans);border-radius:10px;padding:18px}.consent{color:var(--muted);font-size:13px;font-family:var(--sans);align-items:flex-start;gap:10px;margin-top:16px;display:flex}.consent input{margin-top:3px}.applic .btn{justify-content:center;width:100%;margin-top:20px}.note{color:var(--green-d);font-size:13px;font-family:var(--sans);margin-top:14px;display:none}.detail{grid-template-columns:1fr 300px;align-items:start;gap:60px;display:grid}.prose p{color:#42454a;margin-top:18px}.prose h2{margin-top:40px;font-size:32px}.prose ul{gap:12px;margin-top:18px;padding-left:0;list-style:none;display:grid}.prose ul li{color:#42454a;font-family:var(--sans);padding-left:28px;font-size:16px;position:relative}.prose ul li:before{content:"";background:var(--green);width:9px;height:9px;position:absolute;top:9px;left:0;transform:rotate(45deg)}.aside{background:var(--paper);border:1px solid var(--line);border-radius:var(--r);padding:28px;position:sticky;top:110px}.aside h4{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--green);font-size:13px;font-weight:600}.aside ul{font-family:var(--sans);gap:10px;margin:14px 0 0;padding:0;font-size:15px;list-style:none;display:grid}.aside ul a{color:var(--ink)}.aside ul a:hover{color:var(--green-d)}.aside .btn{justify-content:center;width:100%;margin-top:22px}.contact{grid-template-columns:1fr 1fr;gap:50px;display:grid}.cinfo dl{gap:20px;margin:24px 0 0;display:grid}.cinfo dt{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--green);font-size:12.5px;font-weight:600}.cinfo dd{font-size:16px;font-family:var(--sans);margin:4px 0 0}.map{border-radius:var(--r);border:1px solid var(--line);min-height:340px;position:relative;overflow:hidden}.map .ph{color:var(--green-d);background:repeating-linear-gradient(45deg,#e8efe9,#e8efe9 14px,#e2eae3 14px 28px);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:0}.map .ph strong{font-family:var(--serif);font-size:24px}.map .ph span{font-family:var(--sans);font-size:13px}.ctaband{background:var(--green);color:#fff;text-align:center}.ctaband .wrap{padding:80px 28px}.ctaband h2{font-size:clamp(30px,4vw,46px)}.ctaband p{color:#eaf1ec;max-width:540px;font-family:var(--sans);margin-top:14px;margin-left:auto;margin-right:auto}.ctaband .btn{margin-top:28px}.foot{background:var(--deep-2);color:#cdd8cf;padding:70px 0 34px}.foot-grid{grid-template-columns:1.4fr 1fr 1fr;gap:40px;display:grid}.foot img{width:auto;height:74px;margin-bottom:18px}.foot p{max-width:320px;font-size:14.5px}.foot h4{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--sage);margin:0 0 16px;font-size:13px}.foot ul{gap:10px;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.foot a:hover{color:#fff}.foot-b{color:#9fb0a3;border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:50px;padding-top:22px;font-size:13px;display:flex}.reveal{transition:opacity .7s,transform .7s}.js-reveal .reveal{opacity:0;transform:translateY(18px)}.js-reveal .reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.js-reveal .reveal{opacity:1;transform:none}*{scroll-behavior:auto!important}}@media (max-width:960px){.about,.jobs,.contact,.detail{grid-template-columns:1fr;gap:34px}.svc-grid,.posts,.val-list,.foot-grid{grid-template-columns:1fr 1fr}.aside{position:static}}@media (max-width:720px){.section{padding:72px 0}.nav,.nav-cta .btn{display:none}.menu-btn{display:block}.nav.open{border-bottom:1px solid var(--line);background:#fff;flex-direction:column;padding:8px 0;display:flex;position:absolute;top:96px;left:0;right:0}.nav.open a{padding:14px 28px}.nav.open a:after{display:none}.svc-grid,.posts,.val-list,.foot-grid{grid-template-columns:1fr}.brand img{height:60px}.topbar{display:none}}
