:root{--ink:#12231f;--green:#154f42;--lime:#c7ee56;--cream:#f3f0e8;--white:#fff;--line:rgba(18,35,31,.18)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:"DM Sans",sans-serif}a{color:inherit;text-decoration:none}.site-header{height:88px;padding:0 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:absolute;z-index:5;width:100%}.logo{font-family:Manrope,sans-serif;font-size:29px;font-weight:700;letter-spacing:-2px}.logo span{font-size:18px;letter-spacing:-1px}.logo i{color:var(--lime);font-style:normal}.site-header nav{display:flex;gap:36px;font-size:14px}.site-header nav a:hover{opacity:.55}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:var(--lime);padding:17px 20px;color:var(--ink);font-weight:600;font-size:14px;min-width:215px;transition:.25s}.button:hover{background:#d4f777;transform:translateY(-2px)}.button-small{min-width:130px;padding:12px 15px;gap:16px}.menu-button{display:none;border:0;background:transparent}.hero{min-height:760px;height:100vh;max-height:920px;padding:160px 8vw 55px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.eyebrow,.section-label{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:600}.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:36px}.eyebrow span{width:28px;height:2px;background:var(--lime)}.hero h1{font-family:Manrope,sans-serif;font-size:clamp(60px,8vw,126px);line-height:.92;letter-spacing:-7px;margin:0;max-width:820px}.hero>p{font-size:19px;line-height:1.6;max-width:625px;margin:35px 0}.hero-actions{display:flex;gap:30px;align-items:center}.text-link{font-size:14px;font-weight:600;border-bottom:1px solid;padding:10px 0}.text-link span{margin-left:15px}.hero-mark{position:absolute;right:-5vw;top:90px;width:46vw;height:46vw;max-width:680px;max-height:680px;border:1px solid rgba(18,35,31,.12);border-radius:50%;display:grid;place-items:center;z-index:-1}.hero-mark:after,.hero-mark:before{content:"";position:absolute;width:70%;height:70%;border:1px solid rgba(18,35,31,.08);border-radius:50%}.hero-mark:after{width:38%;height:38%;background:var(--lime);border:0}.hero-mark span{font:700 34vw/1 Manrope;color:rgba(18,35,31,.04);z-index:-1}.hero-foot{position:absolute;bottom:35px;left:8vw;right:8vw;border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;font-size:12px}.hero-foot p{max-width:420px;margin:0}.hero-foot>span{text-transform:uppercase;letter-spacing:1.5px;font-size:9px}.section{padding:125px 8vw}.intro{display:grid;grid-template-columns:1fr 2fr;gap:8vw}.intro-copy{max-width:850px}.intro h2,.section-heading h2,.contact h2,.approach h2{font:600 clamp(40px,5vw,70px)/1.08 Manrope;margin:0 0 45px;letter-spacing:-3px}.intro-copy p{font-size:18px;line-height:1.75;max-width:730px}.intro-copy p:first-of-type{font-size:24px;line-height:1.5}.services{background:#fff}.section-heading{display:grid;grid-template-columns:1fr 2fr;gap:8vw}.service-list{margin:60px 0 0 33%}.service-list article{display:grid;grid-template-columns:50px 1fr 30px;gap:20px;padding:30px 0;border-top:1px solid var(--line);transition:.2s}.service-list article:last-child{border-bottom:1px solid var(--line)}.service-list article:hover{padding-left:12px}.service-list span{font-size:11px;color:#60706c}.service-list h3{font:600 24px Manrope;margin:0 0 8px}.service-list p{margin:0;max-width:580px;color:#596762;line-height:1.6}.service-list b{font-size:20px}.approach{background:var(--green);color:#fff}.section-label.light{color:var(--lime)}.approach-top{display:grid;grid-template-columns:1fr 2fr;gap:8vw}.approach h2 em,.contact h2 em{font-family:Georgia,serif;font-weight:400;color:var(--lime)}.steps{margin-top:80px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.25)}.steps article{padding:35px 50px 0 0;border-right:1px solid rgba(255,255,255,.25);min-height:240px}.steps article+article{padding-left:50px}.steps article:last-child{border:0}.steps span{color:var(--lime);font-size:11px}.steps h3{font:600 25px Manrope;margin:35px 0 13px}.steps p{color:rgba(255,255,255,.7);line-height:1.6}.contact{display:grid;grid-template-columns:1fr 2fr;gap:8vw}.contact-main p{font-size:18px;line-height:1.6;max-width:540px;margin:-20px 0 35px}footer{padding:60px 8vw 25px;background:#0c1c18;color:#fff;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;align-items:start}.logo-light i{color:var(--lime)}footer p{color:rgba(255,255,255,.6);font-size:13px;line-height:1.7;margin:0}footer>div{display:flex;justify-content:flex-end;gap:25px;font-size:13px}footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.15);padding-top:20px;color:rgba(255,255,255,.4);font-size:10px;margin-top:30px}.reveal{opacity:0;transform:translateY(25px);transition:.7s}.reveal.visible{opacity:1;transform:none}@media(max-width:760px){.site-header{height:72px}.site-header nav,.site-header>.button{display:none}.menu-button{display:block;width:32px}.menu-button span{display:block;height:2px;background:var(--ink);margin:7px 0}.site-header.open nav{display:flex;position:absolute;top:72px;left:0;right:0;padding:30px 5vw;background:var(--cream);flex-direction:column}.hero{padding:125px 6vw 45px;min-height:720px}.hero h1{letter-spacing:-4px}.hero>p{font-size:17px}.hero-actions{align-items:flex-start;flex-direction:column;gap:15px}.hero-mark{width:90vw;height:90vw;right:-40vw;top:130px}.hero-foot{left:6vw;right:6vw}.hero-foot>span{display:none}.section{padding:85px 6vw}.intro,.section-heading,.approach-top,.contact{grid-template-columns:1fr;gap:35px}.intro h2,.section-heading h2,.contact h2,.approach h2{letter-spacing:-2px;margin-bottom:25px}.intro-copy p:first-of-type{font-size:20px}.service-list{margin:35px 0 0}.service-list article{grid-template-columns:30px 1fr 20px}.steps{grid-template-columns:1fr;margin-top:45px}.steps article,.steps article+article{border-right:0;border-bottom:1px solid rgba(255,255,255,.25);padding:30px 0;min-height:auto}.steps article:last-child{border-bottom:0}.steps h3{margin:18px 0 10px}footer{grid-template-columns:1fr}footer>div{justify-content:flex-start}footer small{margin-top:5px}}
