:root{color-scheme:light;--ink:#1b2220;--muted:#58635e;--green:#124e40;--accent:#c2ed9e;--line:#dce2df;--wash:#f2f5f3;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:white;font-synthesis:none}
*{box-sizing:border-box;letter-spacing:0}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #78aa4f;outline-offset:5px}button,a{-webkit-tap-highlight-color:transparent}.wrap{max-width:1240px;margin:auto;padding-left:48px;padding-right:48px}.skip{position:absolute;top:-80px;left:16px;background:white;padding:14px;z-index:10}.skip:focus{top:10px}.header{max-width:1440px;margin:auto;min-height:104px;display:flex;align-items:center;justify-content:space-between;padding:24px 48px;gap:28px}.brand{display:flex;align-items:center;gap:14px;font-size:17px;font-weight:700;line-height:1.15}.brand-small{display:block;font-size:12px;margin-top:6px;font-weight:500}.mark{width:44px;height:44px;display:grid;place-items:center;background:var(--green);color:white;font-size:21px;font-weight:700}.header nav{display:flex;align-items:center;gap:30px;font-size:14px}.header nav a:not(.nav-contact):hover,.text-link:hover{text-decoration:underline;text-underline-offset:6px}.nav-contact{border:1px solid var(--green);padding:12px 20px}.nav-contact:hover{background:var(--green);color:white}.hero{position:relative;isolation:isolate;background:#202524;color:white;min-height:580px;display:flex;align-items:center;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}.hero-content{width:100%;padding-top:62px;padding-bottom:54px}.eyebrow{font-size:12px;line-height:1.6;font-weight:700;text-transform:uppercase;margin:0 0 24px;color:var(--green)}.eyebrow.light{color:var(--accent)}h1{font-size:66px;font-weight:500;line-height:1.03;margin:0 0 25px;max-width:620px}.period{color:var(--accent)}.hero-lead{font-size:24px;line-height:1.35;margin:0 0 16px}.hero-copy{font-size:16px;line-height:1.7;color:#e0e6e2;max-width:405px;margin:0 0 28px}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:15px 23px;font-size:14px;font-weight:700;border-radius:2px;transition:background .18s,color .18s}.primary{background:var(--accent);color:#17221c}.primary:hover{background:white}.hero-note{font-size:12px;color:#cbd3ce;margin:25px 0 0}.scope-strip{border-bottom:1px solid var(--line);background:var(--wash)}.scope-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:14px}.scope-inner>span{color:var(--muted)}.scope-inner ul{display:flex;gap:34px;padding:0;margin:0;list-style:none;font-size:17px;font-weight:700}.section{padding-top:96px;padding-bottom:96px}.section-head{display:grid;grid-template-columns:1fr 2fr;gap:36px;margin-bottom:52px}.section-head .eyebrow{padding-top:10px}h2{font-size:42px;line-height:1.15;font-weight:500;margin:0 0 24px}.section-head p:not(.eyebrow){font-size:17px;line-height:1.75;color:var(--muted);max-width:570px;margin-bottom:0}.services{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:34px}.service{border-top:2px solid var(--green);padding-top:22px}.service-no{display:block;color:var(--green);font-size:13px;margin-bottom:26px}h3{font-size:21px;line-height:1.3;margin:0 0 16px;font-weight:500}.service p,.service li,.steps p,.about-copy>p,.engagements p{font-size:16px;line-height:1.75;color:var(--muted)}.service p{min-height:84px}.service ul{padding:20px 0 0;list-style:none;border-top:1px solid var(--line)}.service li{padding-left:16px;position:relative;margin:7px 0;font-size:14px}.service li:before{content:'+';position:absolute;left:0;color:var(--green)}.approach-band{background:var(--wash);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;list-style:none;margin:0;padding:0}.steps li{border-top:1px solid #b6c3bd;padding-top:22px}.steps span{font-size:12px;color:var(--green);display:block;margin-bottom:24px}.steps p{font-size:15px;margin-bottom:0}.about{display:grid;grid-template-columns:1fr 1.5fr;gap:80px}.role{font-size:18px;line-height:1.6;color:var(--muted);margin-bottom:30px}.text-link{font-size:14px;color:var(--green);border-bottom:1px solid #8ca699;padding-bottom:5px}.about-copy .large-copy{font-size:28px;line-height:1.35;color:var(--ink);margin-top:0}.engagements{display:grid;grid-template-columns:1fr 1fr;gap:28px;border-top:1px solid var(--line);margin-top:30px;padding-top:28px}.engagements h3{font-size:17px;margin-bottom:9px}.engagements p{font-size:14px;margin:0}.contact-band{background:var(--green);color:white}.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:76px;padding-bottom:76px}.contact-inner h2{font-size:48px}.contact-inner p:not(.eyebrow){font-size:17px;line-height:1.7;max-width:395px;color:#e1eee7}.contact-details{padding-top:10px;display:flex;align-items:flex-start;flex-direction:column;justify-content:center}.contact-details>span{font-size:12px;color:#c2d6ca;margin-bottom:17px}.email{font-size:27px;line-height:1.4;max-width:100%;overflow-wrap:anywhere;margin-bottom:25px}.email:hover{text-decoration:underline;text-underline-offset:6px}.white{background:white;color:var(--green)}.white:hover{background:var(--accent)}.footer{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-top:32px;padding-bottom:32px;font-size:13px;color:var(--muted)}.footer-brand{font-size:15px;font-weight:700;color:var(--ink)}.footer p{margin:0}
@media(min-width:1600px){.hero{min-height:640px}.hero-image{object-position:center 48%}}
@media(max-width:900px){.wrap{padding-left:32px;padding-right:32px}.header{padding-left:32px;padding-right:32px}.header nav{gap:20px}.hero{min-height:600px}.hero-image{object-position:40% center}.hero:after{content:'';position:absolute;inset:0;background:rgba(10,18,14,.24);z-index:-1}h1{font-size:58px}.scope-inner{flex-wrap:wrap;padding-top:24px;padding-bottom:24px}.section-head{grid-template-columns:1fr 2fr;gap:25px}.services{gap:23px}.service p{min-height:112px}.steps{grid-template-columns:1fr 1fr;gap:32px}.about{gap:40px}.contact-inner{gap:36px}.email{font-size:22px}}
@media(max-width:600px){.wrap{padding-left:22px;padding-right:22px}.header{min-height:104px;padding:18px 22px;flex-wrap:wrap;gap:18px}.brand{font-size:15px}.mark{width:38px;height:38px;font-size:19px}.brand-small{font-size:11px}.header nav{width:100%;justify-content:space-between;gap:12px;font-size:13px}.nav-contact{padding:8px 13px}.hero{min-height:570px}.hero-content{padding-top:44px;padding-bottom:38px}.hero-image{object-position:25% center}.hero:after{background:rgba(10,18,14,.35)}h1{font-size:46px;line-height:1.08;max-width:100%}.hero .eyebrow{font-size:11px;max-width:265px}.hero-lead{font-size:22px}.hero-copy{font-size:15px;max-width:315px}.hero-note{font-size:11px}.scope-inner{gap:20px}.scope-inner ul{width:100%;justify-content:space-between;gap:15px;font-size:15px}.section{padding-top:64px;padding-bottom:64px}.section-head{grid-template-columns:1fr;gap:0;margin-bottom:34px}.section-head .eyebrow{padding:0}h2{font-size:34px}.section-head p:not(.eyebrow){font-size:16px}.services{grid-template-columns:1fr;gap:30px}.service-no{margin-bottom:16px}.service p{min-height:0}.service ul{padding-top:13px}.steps{gap:28px 22px}.steps h3{font-size:19px}.steps p{font-size:14px}.about{grid-template-columns:1fr;gap:40px}.about-copy .large-copy{font-size:25px}.engagements{gap:22px}.contact-inner{grid-template-columns:1fr;gap:25px;padding-top:60px;padding-bottom:60px}.contact-inner h2{font-size:40px}.email{font-size:23px}.footer{flex-wrap:wrap;gap:18px;font-size:12px}.footer-brand{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
.mobile-menu{display:none}
@media(max-width:600px){
  .wrap{padding-left:24px;padding-right:24px;min-width:0}
  .header{position:relative;min-height:76px;padding:16px 24px;flex-wrap:nowrap;gap:16px}
  .header>nav{display:none}
  .brand{font-size:13px;gap:10px;flex-shrink:0}
  .brand-small{font-size:10px;margin-top:4px}
  .mark{width:34px;height:34px;font-size:18px;flex-shrink:0}
  .mobile-menu{display:block;z-index:5}
  .mobile-menu summary{min-height:44px;display:flex;align-items:center;justify-content:center;padding:0 8px;font-size:14px;cursor:pointer;list-style:none}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .mobile-menu[open] summary{color:var(--green);text-decoration:underline;text-underline-offset:5px}
  .mobile-menu nav{position:absolute;top:100%;left:0;right:0;background:white;box-shadow:0 12px 18px #00000014;padding:8px 24px 20px;display:flex;flex-direction:column;align-items:stretch;gap:0;width:auto;font-size:16px}
  .mobile-menu nav a{padding:16px 0;border-bottom:1px solid var(--line)}
  .hero{min-height:0;display:block}
  .hero-content{width:100%;padding-top:36px;padding-bottom:36px}
  .hero-image{object-position:70% center}
  .hero:after{background:rgba(9,18,14,.76)}
  .hero .eyebrow{font-size:11px;line-height:1.6;max-width:270px;margin-bottom:20px}
  h1{font-size:40px;line-height:1.1;margin-bottom:22px;max-width:100%}
  .hero-lead{font-size:20px;line-height:1.45;margin-bottom:16px}
  .hero-copy{font-size:15px;line-height:1.7;max-width:100%;margin-bottom:24px;overflow-wrap:break-word}
  .hero .button{min-height:48px;padding:14px 20px}
  .hero-note{font-size:11px;line-height:1.6;margin-top:22px}
  .scope-inner{min-height:0;gap:16px;padding-top:20px;padding-bottom:20px}
  .scope-inner>span{font-size:13px}
  .scope-inner ul{font-size:13px;gap:12px}
  .section{padding-top:48px;padding-bottom:48px}
  .section-head{margin-bottom:28px}
  .section-head .eyebrow{margin-bottom:16px}
  h2{font-size:30px;line-height:1.2;margin-bottom:18px}
  .section-head p:not(.eyebrow){font-size:15px;line-height:1.7}
  .services{gap:28px}
  .service{padding-top:18px}
  .service-no{font-size:11px;margin-bottom:12px}
  h3{font-size:20px;margin-bottom:12px}
  .service p,.about-copy>p{font-size:15px;line-height:1.75}
  .steps{grid-template-columns:1fr;gap:0}
  .steps li{display:grid;grid-template-columns:32px minmax(0,1fr);column-gap:12px;padding:22px 0}
  .steps span{grid-row:1 / 3;margin:3px 0 0}
  .steps h3{font-size:19px;margin-bottom:8px}
  .steps p{grid-column:2;font-size:15px;margin-top:0}
  .about{gap:32px}
  .about .eyebrow{margin-bottom:16px}
  .role{font-size:16px;margin-bottom:20px}
  .about-copy .large-copy{font-size:23px;line-height:1.45}
  .engagements{grid-template-columns:1fr;gap:24px}
  .contact-inner{padding-top:48px;padding-bottom:48px;gap:20px}
  .contact-inner h2{font-size:32px;line-height:1.2}
  .contact-inner p:not(.eyebrow){font-size:15px}
  .contact-details{min-width:0}
  .email{font-size:21px;line-height:1.5}
  .footer{padding-top:24px;padding-bottom:24px;gap:16px}
}
@media(max-width:350px){h1{font-size:34px}.header{padding-left:20px;padding-right:20px}.wrap{padding-left:20px;padding-right:20px}.brand{font-size:12px}.scope-inner ul{font-size:12px;gap:8px}.email{font-size:19px}}
