:root{
  --green:#147a43;
  --green-dark:#0b5c31;
  --green-soft:#eaf6ef;
  --red:#ed1c24;
  --ink:#17211b;
  --muted:#68736d;
  --line:#dfe7e2;
  --paper:#f7faf8;
  --white:#fff;
  --shadow:0 20px 60px rgba(14,45,28,.10);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,Arial,sans-serif;color:var(--ink);background:#fff;line-height:1.6}
a{text-decoration:none;color:inherit}
.container{width:min(1160px,calc(100% - 40px));margin:auto}
.topbar{background:#102018;color:#c8d3cc;font-size:10px;letter-spacing:.3px}.topbar-inner{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:20px}.topbar a:hover{color:#fff}.topbar-inner div{display:flex;gap:9px}.site-header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(14px);border-bottom:1px solid rgba(223,231,226,.8)}
.nav-wrap{height:82px;display:flex;align-items:center;justify-content:space-between}
.brand img{display:block;width:185px;height:auto}
.nav{display:flex;align-items:center;gap:31px;font-size:14px;font-weight:600;color:#344039}
.nav a{transition:.2s}
.nav a:hover{color:var(--green)}
.nav-cta{padding:11px 17px;border:1px solid var(--green);border-radius:7px;color:var(--green)}
.menu-toggle{display:none;background:none;border:0;font-size:27px;color:var(--green);cursor:pointer}

.hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#f6fbf8 0%,#fff 60%);padding:88px 0 78px}
.hero:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-180px;top:-150px;background:rgba(20,122,67,.06)}
.hero-pattern{position:absolute;inset:0;background-image:linear-gradient(rgba(20,122,67,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(20,122,67,.035) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to right,black,transparent 70%)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center}
.eyebrow,.section-tag{font-size:11px;letter-spacing:2px;font-weight:800;color:var(--green);text-transform:uppercase}
.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:20px}.eyebrow span{width:28px;height:2px;background:var(--red)}
h1,h2{font-family:"Playfair Display",Georgia,serif;line-height:1.05;letter-spacing:-1px}
h1{font-size:clamp(46px,6vw,76px);max-width:720px}
h1 em{font-style:normal;color:var(--green)}
.hero-text{font-size:18px;color:var(--muted);max-width:650px;margin:25px 0 30px}
.hero-actions{display:flex;gap:13px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:14px 20px;border-radius:7px;font-size:14px;font-weight:700;border:1px solid transparent;cursor:pointer;transition:.2s}
.btn-primary{background:var(--green);color:#fff}.btn-primary:hover{background:var(--green-dark);transform:translateY(-1px)}
.btn-light{background:#fff;border-color:var(--line);color:var(--ink)}.btn-light:hover{border-color:var(--green)}
.btn-white{background:#fff;color:var(--green)}.btn-white:hover{transform:translateY(-1px)}
.hero-trust{display:flex;gap:30px;margin-top:44px;padding-top:22px;border-top:1px solid var(--line)}
.hero-trust div{display:flex;flex-direction:column;gap:2px}.hero-trust strong{font-size:12px}.hero-trust span{font-size:11px;color:var(--muted)}

.hero-card{min-height:420px;background:var(--green);border-radius:18px;padding:34px;position:relative;overflow:hidden;box-shadow:var(--shadow);color:#fff}
.card-glow{position:absolute;width:320px;height:320px;border-radius:50%;background:rgba(255,255,255,.07);right:-130px;bottom:-120px}
.event-card-top{display:flex;justify-content:space-between;align-items:center;position:relative}.mini-label{font-size:10px;letter-spacing:2px;font-weight:800}.dot{width:9px;height:9px;background:var(--red);border-radius:50%;box-shadow:0 0 0 6px rgba(237,28,36,.12)}
.calendar{display:flex;gap:20px;align-items:center;margin-top:80px;position:relative}.calendar-icon{width:92px;height:100px;border:1px solid rgba(255,255,255,.35);border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.calendar-icon span{font-size:9px;letter-spacing:2px}.calendar-icon b{font-family:"Playfair Display";font-size:42px;line-height:1}.calendar-kicker{font-size:10px;letter-spacing:1.5px;opacity:.72}.calendar h3{font-family:"Playfair Display";font-size:25px;line-height:1.2;margin-top:8px}
.card-lines{display:flex;gap:8px;margin-top:80px}.card-lines span{height:3px;background:#fff;opacity:.22;border-radius:5px}.card-lines span:nth-child(1){width:100px}.card-lines span:nth-child(2){width:54px}.card-lines span:nth-child(3){width:20px}.card-footer{position:absolute;bottom:32px;left:34px;font-size:10px;letter-spacing:1px;opacity:.75}

.stats{background:#fff;border-bottom:1px solid var(--line)}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);border-left:1px solid var(--line)}
.stats-grid>div{padding:23px 24px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:4px}.stats-grid strong{color:var(--red);font-size:12px}.stats-grid span{font-size:12px;color:var(--muted)}

.section{padding:105px 0}.two-col{display:grid;grid-template-columns:.9fr 1.1fr;gap:100px}.section h2{font-size:clamp(39px,4.4vw,59px);margin-top:15px}.section h2 span{color:var(--green)}.section-copy{font-size:16px;color:var(--muted);max-width:680px}.section-copy p+p{margin-top:18px}.text-link{display:inline-flex;gap:10px;color:var(--green);font-weight:800;font-size:14px;margin-top:26px}.text-link span{color:var(--red)}
.services{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;gap:50px;align-items:end;margin-bottom:48px}.section-heading>p{max-width:410px;color:var(--muted);font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:#fff;border:1px solid var(--line);padding:29px;min-height:330px;position:relative;transition:.25s}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.service-card.featured{border-top:4px solid var(--green)}.service-number{position:absolute;right:22px;top:22px;font-size:10px;font-weight:800;color:#aab4ae}.icon{font-size:27px;color:var(--green);margin-bottom:25px}.service-card h3{font-family:"Playfair Display";font-size:25px;margin-bottom:10px}.service-card p{font-size:13px;color:var(--muted);min-height:63px}.service-card ul{list-style:none;margin-top:19px;border-top:1px solid var(--line);padding-top:14px}.service-card li{font-size:11px;color:#4f5b54;padding:3px 0}.service-card li:before{content:"✓";color:var(--red);margin-right:8px;font-weight:800}

.process{background:#fff}.centered{display:block;text-align:center}.centered>p{margin:20px auto 0}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;border-top:1px solid var(--line)}.process-item{padding:30px 25px;border-right:1px solid var(--line)}.process-item:last-child{border-right:0}.process-item>span{display:block;font-size:12px;color:var(--red);font-weight:800;margin-bottom:35px}.process-item h3{font-family:"Playfair Display";font-size:25px;margin-bottom:9px}.process-item p{font-size:13px;color:var(--muted)}

.cta-section{padding:0 0 105px}.cta-box{background:var(--green);color:#fff;padding:60px;display:flex;align-items:center;justify-content:space-between;gap:40px;position:relative;overflow:hidden}.cta-box:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;border:70px solid rgba(255,255,255,.06);right:-130px;top:-180px}.section-tag.light{color:#bfe8cf}.cta-box h2{font-size:clamp(35px,4vw,50px);max-width:650px;margin-top:13px}.cta-box p{max-width:620px;margin-top:14px;opacity:.8;font-size:14px}.cta-box .btn{position:relative;z-index:2;white-space:nowrap}

.contact{background:var(--paper)}.contact-grid{display:grid;grid-template-columns:1fr .85fr;gap:90px}.contact-intro{color:var(--muted);max-width:570px;margin-top:20px}.contact-list{margin-top:36px;display:grid;gap:18px}.contact-list>a,.contact-list>div{display:flex;gap:15px;align-items:flex-start}.contact-icon{width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--green);font-weight:800;flex:none}.contact-list small{display:block;font-size:9px;letter-spacing:1.6px;color:#89938d;font-weight:800;margin-bottom:2px}.contact-list strong{font-size:13px;line-height:1.5}.contact-form{background:#fff;border:1px solid var(--line);padding:34px;box-shadow:0 10px 35px rgba(20,40,25,.05)}.form-head span{font-size:10px;letter-spacing:2px;color:var(--green);font-weight:800}.form-head h3{font-family:"Playfair Display";font-size:30px;margin:7px 0 23px}.contact-form label{display:block;font-size:11px;font-weight:700;margin-bottom:14px;color:#4a554e}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:6px;padding:12px 13px;border:1px solid var(--line);background:#fbfcfb;font:inherit;font-size:13px;outline:none;border-radius:5px;color:var(--ink)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--green);background:#fff}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.full{width:100%;margin-top:3px}.form-note{font-size:10px;color:#9aa39e;text-align:center;margin-top:10px}

.footer{background:#102018;color:#fff}.footer-top{padding:55px 0 40px;display:flex;justify-content:space-between;gap:40px}.footer-logo{width:175px;background:#fff;padding:6px}.footer-top p{font-size:12px;color:#9eaaa3;margin-top:14px}.footer-links{display:flex;gap:28px;align-items:center;font-size:12px;color:#c2ccc6}.footer-links a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;display:flex;justify-content:space-between;font-size:10px;color:#8f9b94}

@media(max-width:900px){
  .nav{gap:16px}.hero-grid,.two-col,.contact-grid{grid-template-columns:1fr;gap:45px}.hero{padding:70px 0}.hero-card{max-width:650px}.stats-grid{grid-template-columns:repeat(2,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(2,1fr)}.process-item:nth-child(2){border-right:0}.process-item:nth-child(1),.process-item:nth-child(2){border-bottom:1px solid var(--line)}.cta-box{align-items:flex-start;flex-direction:column}
}
@media(max-width:680px){
  .container{width:min(100% - 28px,1160px)}.nav-wrap{height:72px}.brand img{width:155px}.menu-toggle{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:18px 20px;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.nav-cta{width:100%;text-align:center}.hero{padding:55px 0}.hero-text{font-size:16px}.hero-trust{gap:14px;flex-wrap:wrap}.hero-trust div{min-width:42%}.hero-card{min-height:370px;padding:25px}.calendar{margin-top:65px}.card-footer{left:25px;bottom:25px}.stats-grid{grid-template-columns:1fr}.section{padding:72px 0}.section-heading{display:block}.section-heading>p{margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.process-grid{grid-template-columns:1fr}.process-item{border-right:0!important;border-bottom:1px solid var(--line)!important}.process-item:last-child{border-bottom:0!important}.cta-section{padding-bottom:72px}.cta-box{padding:38px 27px}.contact-grid{gap:50px}.form-row{grid-template-columns:1fr}.footer-top{flex-direction:column}.footer-links{flex-wrap:wrap}.footer-bottom{gap:10px;flex-direction:column}
}

.impact-strip{background:#102018;color:#fff;padding:0}.impact-grid{display:grid;grid-template-columns:repeat(3,1fr);border-left:1px solid rgba(255,255,255,.08)}.impact-grid>div{padding:24px 25px;border-right:1px solid rgba(255,255,255,.08);display:flex;gap:15px;align-items:center}.impact-icon{width:34px;height:34px;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;color:#8ed2aa;font-size:13px}.impact-grid strong{display:block;font-size:12px}.impact-grid small{display:block;color:#8f9c95;font-size:10px;margin-top:3px}

.showcase{background:#fff}.showcase-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:16px}.showcase-card{min-height:330px;padding:31px;position:relative;overflow:hidden;border:1px solid var(--line);display:flex;flex-direction:column;justify-content:flex-end}.showcase-card:after{content:"";position:absolute;width:180px;height:180px;border:38px solid rgba(255,255,255,.08);border-radius:50%;right:-90px;top:-90px}.showcase-card span{position:absolute;top:28px;left:30px;font-size:9px;letter-spacing:2px;font-weight:800}.showcase-card h3{font-family:"Playfair Display";font-size:29px;line-height:1.15;max-width:330px;position:relative;z-index:1}.showcase-card p{font-size:12px;line-height:1.7;margin-top:11px;max-width:340px;position:relative;z-index:1}.showcase-card b{position:absolute;bottom:25px;right:28px;font-size:12px;opacity:.35}.showcase-green{background:#147a43;color:#fff;border-color:#147a43}.showcase-green p{color:#d4ecde}.showcase-green span{color:#aee0c2}.showcase-dark{background:#102018;color:#fff;border-color:#102018}.showcase-dark p{color:#b4c0b9}.showcase-dark span{color:#93d2ac}.showcase-light{background:#f1f6f3}.showcase-light span{color:var(--red)}.showcase-light p{color:var(--muted)}

.design-credit{color:#9aa69f}.design-credit:hover{color:#fff}

@media(max-width:900px){.showcase-grid{grid-template-columns:1fr 1fr}.showcase-card:first-child{grid-column:span 2}}
@media(max-width:680px){.topbar{display:none}.impact-grid{grid-template-columns:1fr}.impact-grid>div{border-bottom:1px solid rgba(255,255,255,.08)}.showcase-grid{grid-template-columns:1fr}.showcase-card:first-child{grid-column:auto}.design-credit{margin-top:4px}}
