:root{--background:#f5f6f2;--surface:#fff;--text:#17251f;--muted:#65716b;--brand-dark:#173c2d;--brand:#3f7659;--brand-light:#dfe9e2;--border:#dfe5df;--font-body:"Inter", system-ui, sans-serif;--max-width:73.75rem;--header-height:4.75rem}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-height)}body{min-height:100%;font-family:var(--font-body);color:var(--text);background:var(--background);-webkit-font-smoothing:antialiased;margin:0;font-size:1rem;line-height:1.6}img{max-width:100%;display:block}a{color:inherit}:focus-visible{outline:2px solid var(--brand);outline-offset:2px}h1,h2,h3{letter-spacing:-.03em;font-weight:600;line-height:1.1}h1{letter-spacing:-.045em;font-size:clamp(2.75rem,5.5vw,4.75rem);line-height:1.02}h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.1}.container{width:min(100% - 2.5rem, var(--max-width));margin-inline:auto}.section{padding-block:5.5rem}.section__header{max-width:43.75rem;margin-bottom:3rem}.section__title{color:var(--text);margin:0 0 .75rem}.section__intro{color:var(--muted);margin:0;font-size:clamp(1.125rem,1.6vw,1.25rem);line-height:1.55}.lead{font-size:clamp(1.125rem,1.6vw,1.25rem);line-height:1.55}.btn{cursor:pointer;min-height:2.75rem;font-size:.9375rem;font-weight:600;font:inherit;border:none;border-radius:.5rem;justify-content:center;align-items:center;padding:.75rem 1.35rem;text-decoration:none;transition:background-color .2s,border-color .2s,box-shadow .2s;display:inline-flex}.btn--primary{background:var(--brand-dark);color:#fff}.btn--primary:hover{background:#1f4a38}.btn--secondary{color:#fff;background:0 0;box-shadow:inset 0 0 0 1px #ffffff59}.btn--secondary:hover{background:#ffffff14;box-shadow:inset 0 0 0 1px #fff}.btn--outline{background:var(--surface);color:var(--text);box-shadow:inset 0 0 0 1px var(--border)}.btn--outline:hover{box-shadow:inset 0 0 0 1px var(--brand)}.btn--on-dark{color:var(--brand-dark);background:#fff}.btn--on-dark:hover{background:var(--brand-light)}.header{z-index:20;height:var(--header-height);background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0}.header__inner{justify-content:space-between;align-items:center;gap:1rem;height:100%;display:flex}.header__brand{color:var(--text);flex-shrink:0;align-items:center;gap:.75rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-flex}.header__brand img{width:2.25rem;height:2.25rem}.header__nav-desktop{align-items:center;gap:1.5rem;display:none}.header__nav-desktop a{color:var(--muted);font-size:.9375rem;font-weight:500;text-decoration:none;transition:color .2s}.header__nav-desktop a:hover{color:var(--text)}.header__cta{background:var(--brand-dark);border-radius:.5rem;padding:.5rem 1rem;color:#fff!important}.header__cta:hover{background:#1f4a38;color:#fff!important}.header__menu-toggle{width:2.75rem;height:2.75rem;color:var(--text);cursor:pointer;background:0 0;border:none;border-radius:.375rem;justify-content:center;align-items:center;padding:0;display:flex}.header__menu-toggle:hover{background:var(--brand-light)}.header__menu-icon,.header__menu-icon:before,.header__menu-icon:after{background:currentColor;border-radius:1px;width:1.25rem;height:2px;transition:transform .2s,opacity .2s;display:block}.header__menu-icon{position:relative}.header__menu-icon:before,.header__menu-icon:after{content:"";position:absolute;left:0}.header__menu-icon:before{top:-6px}.header__menu-icon:after{top:6px}.header[data-menu-open=true] .header__menu-icon{background:0 0}.header[data-menu-open=true] .header__menu-icon:before{top:0;transform:rotate(45deg)}.header[data-menu-open=true] .header__menu-icon:after{top:0;transform:rotate(-45deg)}.header__nav-mobile{top:var(--header-height);background:var(--surface);border-bottom:1px solid var(--border);padding:1rem 1.25rem 1.5rem;display:none;position:absolute;left:0;right:0}.header[data-menu-open=true] .header__nav-mobile{flex-direction:column;gap:.25rem;display:flex}.header__nav-mobile a{min-height:2.75rem;color:var(--text);border-radius:.375rem;align-items:center;padding-inline:.5rem;font-weight:500;text-decoration:none;display:flex}.header__nav-mobile a:hover{background:var(--brand-light)}.header__nav-mobile .header__cta{justify-content:center;margin-top:.5rem}@media (width>=900px){.header__nav-desktop{display:flex}.header__menu-toggle{display:none}}.hero{isolation:isolate;background:var(--brand-dark);color:#fff;align-items:center;min-height:clamp(32rem,85vh,42.5rem);padding-block:4rem;display:flex;position:relative;overflow:hidden}.hero__brand-mark{opacity:.05;pointer-events:none;user-select:none;width:min(34rem,45vw);position:absolute;bottom:-8rem;right:-6rem}.hero__content{z-index:1;max-width:47.5rem;position:relative}.hero__eyebrow{letter-spacing:.08em;text-transform:uppercase;color:#ffffffb8;margin:0 0 1.25rem;font-size:.8125rem;font-weight:600}.hero__title{color:#fff;margin:0 0 1.5rem}.hero__body{color:#ffffffd1;max-width:43.75rem;margin:0 0 2rem}.hero__actions{flex-wrap:wrap;gap:.75rem;margin-bottom:2.5rem;display:flex}.hero__capabilities{color:#fff9;margin:0;font-size:.875rem}.services{background:var(--background)}.services .section__title{margin-bottom:2rem}.services__grid{gap:1.25rem;display:grid}.service-card{border:1px solid var(--border);background:var(--surface);border-radius:1rem;padding:1.75rem;transition:box-shadow .2s,border-color .2s}.service-card:hover{border-color:color-mix(in srgb, var(--brand) 35%, var(--border));box-shadow:0 4px 20px color-mix(in srgb, var(--brand-dark) 6%, transparent)}.service-card__icon{width:2.25rem;height:2.25rem;color:var(--brand);justify-content:center;align-items:center;margin-bottom:1.25rem;display:flex}.service-card__title{margin:0 0 .75rem;font-size:1.25rem;font-weight:600}.service-card__text{color:var(--muted);margin:0 0 1.25rem;font-size:.975rem}.service-card__tags{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.service-card__tags li{background:var(--brand-light);color:var(--brand-dark);border-radius:999px;padding:.25rem .65rem;font-size:.8125rem;font-weight:500}@media (width>=768px){.services__grid{grid-template-columns:repeat(3,1fr)}}.work{background:var(--surface);border-top:1px solid var(--border)}.work__list{gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}.work__item{border-bottom:1px solid var(--border);padding:1.25rem 0}.work__item:last-child{border-bottom:none;padding-bottom:0}.work__item:first-child{padding-top:0}.work__item-title{margin:0 0 .35rem;font-size:1.05rem;font-weight:600}.work__item-description{color:var(--muted);margin:0;font-size:.975rem}@media (width>=640px){.work__list{grid-template-columns:1fr 1fr;gap:1.5rem 2.5rem}.work__item{border-bottom:none;padding:0}}.why{background:var(--background);border-top:1px solid var(--border)}.why__grid{border:1px solid var(--border);background:var(--surface);border-radius:1rem;gap:0;display:grid;overflow:hidden}.why__item{border-bottom:1px solid var(--border);padding:1.75rem}.why__item:last-child{border-bottom:none}.why__icon{width:2rem;height:2rem;color:var(--brand);justify-content:center;align-items:center;margin-bottom:1rem;display:flex}.why__item h3{margin:0 0 .5rem;font-size:1.125rem;font-weight:600}.why__item p{color:var(--muted);margin:0;font-size:.975rem}@media (width>=640px){.why__grid{grid-template-columns:1fr 1fr}.why__item{border-bottom:1px solid var(--border);border-right:1px solid var(--border)}.why__item:nth-child(2n){border-right:none}.why__item:nth-last-child(-n+2){border-bottom:none}}.contact{background:var(--brand-dark);color:#fff;border-top:none}.contact__inner{text-align:center;max-width:40rem;margin-inline:auto}.contact .section__title{color:#fff}.contact .section__intro{color:#ffffffc7;margin-bottom:1.5rem}.contact__email{color:#fff;font-size:1.0625rem;font-weight:500;text-decoration:none}.contact__email:hover{text-underline-offset:.2em;text-decoration:underline}.footer{background:var(--text);color:#ffffffb8;padding:2.5rem 0 2rem;font-size:.9375rem}.footer__grid{gap:2rem;display:grid}.footer__name{color:#fff;margin:0 0 .35rem;font-size:1rem;font-weight:600}.footer__brand p{margin:0 0 .25rem}.footer__nav{flex-wrap:wrap;gap:.75rem 1.25rem;display:flex}.footer__nav a{color:#fff;font-weight:500;text-decoration:none}.footer__nav a:hover{text-decoration:underline}.footer__copy{border-top:1px solid #ffffff1f;margin:0;padding-top:1.5rem;font-size:.875rem}@media (width>=768px){.footer__grid{grid-template-columns:1fr auto;align-items:start}.footer__copy{grid-column:1/-1}}@media (width<=768px){.section{padding-block:3.75rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important}}
