:root{--paper:#f3f0e8;--ink:#171918;--forest:#183f35;--deep:#0d2922;--lime:#d5f267;--line:#c9c8bc;--mono:ui-monospace,'Courier New',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Helvetica Neue',Arial,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%}h1,h2,h3,p{margin:0}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #6c851e;outline-offset:4px}.skip{position:absolute;left:1rem;top:-100px;background:var(--lime);padding:.75rem;z-index:5}.skip:focus{top:.5rem}.wrap{width:min(100% - 112px,1320px);margin-inline:auto}.header{position:relative;z-index:2}.bar{min-height:86px;display:flex;align-items:center;justify-content:space-between;gap:24px}.logo{display:inline-flex;align-items:center;gap:10px;flex:none}.logo img{width:43px;height:auto}.logo span{border-left:1px solid;padding-left:10px;display:grid;gap:3px;line-height:.82}.logo b{font-size:30px;letter-spacing:-.07em;font-weight:850}.logo small{font-size:7px;font-weight:800;letter-spacing:.22em}.bar nav{display:flex;gap:clamp(16px,4vw,52px);font-size:14px}.bar nav a:hover,.footer a:hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{border:1px solid var(--ink);padding:9px 14px;font-size:13px;font-weight:700;white-space:nowrap}.nav-cta:hover{background:var(--ink);color:var(--paper)}
.hero{background:radial-gradient(ellipse at 75% 40%,#1b4a3d,var(--deep) 74%);color:var(--paper);overflow:hidden}.hero-grid{position:relative;min-height:650px;display:grid;align-items:center}.hero-copy{position:relative;z-index:1;padding:75px 0 112px}.eyebrow,.index,.hero-note{font-family:var(--mono);font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.eyebrow{display:flex;align-items:center;gap:9px;margin-bottom:24px}.eyebrow i{width:7px;height:7px;background:currentColor;display:inline-block}.hero .eyebrow i,.approach .eyebrow i{background:var(--lime)}h1{font-size:clamp(61px,8.7vw,143px);line-height:.91;letter-spacing:-.085em;max-width:850px}.intro{font-size:clamp(17px,1.6vw,22px);max-width:450px;margin:28px 0;color:#e7ebe0}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;padding:13px 17px;font-size:14px;font-weight:750;border:0}.lime{background:var(--lime);color:var(--ink)}.lime:hover{background:#ebffa1}.dark{background:var(--ink);color:var(--paper)}.dark:hover{background:var(--forest)}.ribbon{position:absolute;width:min(62vw,860px);height:100%;object-fit:cover;object-position:left center;right:min(-56px,calc((1320px - 100vw)/2));bottom:0}.hero-note{position:absolute;z-index:1;bottom:22px;left:0;right:0;display:flex;justify-content:space-between;border-top:1px solid #d3dec463;padding-top:11px;font-size:9px}
.section{padding-block:clamp(64px,8vw,120px)}h2{font-size:clamp(43px,6.1vw,94px);line-height:.96;letter-spacing:-.075em}.services{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);margin-top:45px}.services article{padding:24px 24px 29px 0}.services article+article{border-left:1px solid var(--line);padding-left:24px}.services h3{font-size:clamp(31px,4vw,58px);letter-spacing:-.06em;margin-top:12px;line-height:1.1}.services p{margin:12px 0 18px;max-width:28ch}.services ul{padding-left:17px;margin:0;font-size:14px;color:#3d443d}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,7vw,110px)}.approach{background:var(--forest);color:var(--paper)}.steps{list-style:none;padding:0;margin:0}.steps li{border-top:1px solid #a5b5a77d;padding:18px 0;display:grid;grid-template-columns:38px 1fr;gap:10px}.steps li:last-child{border-bottom:1px solid #a5b5a77d}.steps span{font-family:var(--mono);color:var(--lime);padding-top:4px}.steps h3{font-size:24px;letter-spacing:-.035em}.steps p{color:#e4e9dc;margin-top:5px}.about-copy{align-self:end}.about-copy p:not(.index){font-size:clamp(17px,2vw,23px);margin-bottom:18px}.contact{background:var(--lime)}.contact-copy{margin-top:22px;max-width:36ch;font-size:18px}form{display:grid;align-content:start;gap:9px}form label{font-weight:700;font-size:14px}input,select,textarea{border:1px solid #35401e;background:#f6ffd8;color:var(--ink);padding:10px;border-radius:0;width:100%;margin-bottom:7px}textarea{resize:vertical}form .button{justify-self:start}.form-note{font-size:13px}.form-note:empty{display:none}.footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:27px;font-size:13px}
@media(max-width:900px){.wrap{width:calc(100% - 56px)}.hero-grid{min-height:590px}.ribbon{right:-28px;opacity:.8}.split{gap:32px}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.bar{min-height:98px;display:grid;grid-template-columns:1fr auto;gap:0 12px;padding-block:10px}.bar nav{grid-row:2;grid-column:1/-1;gap:22px}.bar .nav-cta{grid-column:2;grid-row:1;padding:6px 8px}.hero-grid{min-height:640px;align-items:start}.hero-copy{padding:55px 0 0}.ribbon{width:108%;height:330px;right:-18px;bottom:0;opacity:.75;object-position:right bottom}.hero-note span+span{display:none}h1{font-size:clamp(51px,12vw,74px)}.intro{margin:20px 0;font-size:16px;max-width:34ch}.services,.split{grid-template-columns:1fr}.services article,.services article+article{border-left:0;padding:22px 0}.services article+article{border-top:1px solid var(--line)}.footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.contact-details{margin-top:24px;font-style:normal}.contact-details p{margin-top:12px}.contact-details a{font-weight:700;text-decoration:underline;text-underline-offset:4px}
