:root{color-scheme:light;--ink:#202622;--paper:#f6f7f4;--lime:#d5f776;--muted:#6a706c;--line:#d7dcd5}
*{box-sizing:border-box;letter-spacing:0}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button{font:inherit}
a,button{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible{outline:3px solid #598321;outline-offset:6px}
::selection{background:var(--lime);color:var(--ink)}
.skip-link{position:fixed;top:-100px;left:16px;padding:16px;background:var(--lime);z-index:20}
.skip-link:focus{top:12px}
.site-header{height:88px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--paper)}
.brand{font-size:34px;font-weight:800;line-height:1}
.brand-dot{color:#527524}
nav{display:flex;align-items:center;gap:36px;font-size:14px;font-weight:600}
nav a{padding:14px 0}
nav a:hover,.email:hover{text-decoration:underline;text-underline-offset:6px}
.language-toggle{width:44px;height:44px;background:transparent;border:1px solid #a4ada3;border-radius:50%;cursor:pointer;font-size:12px;font-weight:700}
.language-toggle:hover{background:var(--lime)}
.hero{position:relative;isolation:isolate;min-height:620px;height:calc(100svh - 156px);max-height:920px;color:#fff;background:#293b42;display:flex;flex-direction:column;justify-content:space-between;padding:56px 5% 26px;overflow:hidden}
.hero-image{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 55%}
.hero:before{content:"";position:absolute;inset:0;background:rgba(10,22,27,.42);z-index:-1}
.hero-content{width:100%;max-width:1400px;margin:auto}
.eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;line-height:1.6;margin:0 0 30px}
h1{font-size:144px;line-height:1;margin:0 0 24px;font-weight:700}
h1 span{color:var(--lime)}
.hero-statement{font-size:44px;line-height:1.12;font-weight:500;margin:0 0 34px}
.text-link{display:inline-flex;align-items:center;gap:40px;font-size:15px;font-weight:600;padding:0 0 10px;border-bottom:1px solid currentColor}
.text-link span:last-child{font-size:23px}
.text-link:hover{color:var(--lime)}
.hero-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff55;padding-top:14px;margin-top:40px;font-size:12px;width:100%;max-width:1400px;align-self:center}
.hero-bottom a{font-size:24px;width:44px;height:36px;text-align:right}
.section{padding:100px max(5%,calc((100% - 1400px)/2))}
.services{display:grid;grid-template-columns:0.9fr 1.3fr;gap:80px;padding-top:36px}
h2{font-size:52px;line-height:1.1;font-weight:500;margin:0}
.muted{color:var(--muted)}
.service-row{display:grid;grid-template-columns:30px minmax(0,1fr) 24px;gap:20px;padding:30px 0;border-top:1px solid var(--line);align-items:start}
.service-row:last-child{border-bottom:1px solid var(--line)}
.index{font-size:11px;color:var(--muted);padding-top:7px}
h3{font-size:26px;line-height:1.2;font-weight:500;margin:0 0 12px}
.service-row p{font-size:14px;line-height:1.65;color:#59615b;margin:0;max-width:390px}
.service-mark{font-size:23px;color:#6e795f}
.approach{background:var(--ink);color:var(--paper)}
.approach>.eyebrow{color:var(--lime)}
.approach-content{display:flex;align-items:flex-end;justify-content:space-between;gap:64px}
.approach h2{max-width:580px;font-size:60px}
.approach-content p{max-width:300px;font-size:18px;line-height:1.6;color:#c6cec7;margin:0}
.approach-steps{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff35;margin-top:64px;padding-top:32px;font-size:28px}
.approach-steps [aria-hidden]{color:var(--lime)}
.contact{background:var(--lime)}
.contact-link{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;width:100%}
.contact-link h2{font-size:100px;line-height:1.15}
.contact-link>span{font-size:86px;transition:transform .2s}
.contact-link:hover>span{transform:translate(5px,-5px)}
.email{font-size:18px;overflow-wrap:anywhere}
.site-footer{display:flex;justify-content:space-between;gap:20px;padding:30px 5%;font-size:11px;line-height:1.6}
@media(min-width:1700px){.hero{padding-left:max(5%,calc((100% - 1400px)/2));padding-right:max(5%,calc((100% - 1400px)/2))}}
@media(max-width:1000px){.services{grid-template-columns:1fr;gap:46px}.section{padding:72px 6%}.section-intro h2{font-size:48px}.approach h2{font-size:46px}.approach-content{gap:32px}.contact-link h2{font-size:80px}}
@media(max-width:600px){.site-header{height:76px;padding:0 6%;gap:16px}.brand{font-size:29px}nav{gap:20px;font-size:13px}.services-link{display:none}.language-toggle{width:40px;height:40px}.hero{padding:32px 6% 20px;min-height:530px;height:calc(100svh - 128px);max-height:780px}.hero-image{object-position:60% center}.hero-content{margin:auto 0}.hero .eyebrow{font-size:10px;margin-bottom:28px}h1{font-size:78px;margin-bottom:24px}.hero-statement{font-size:36px;line-height:1.16;margin-bottom:30px}.hero-bottom{font-size:11px;margin-top:28px}.text-link{font-size:14px}.section{padding:60px 6%}.section-intro h2{font-size:40px}.eyebrow{margin-bottom:24px}.service-row{grid-template-columns:22px minmax(0,1fr) 18px;gap:12px;padding:26px 0}h3{font-size:23px}.service-row p{font-size:13px}.approach-content{display:block}.approach h2{font-size:40px;max-width:350px}.approach-content p{font-size:16px;margin-top:24px;max-width:300px}.approach-steps{font-size:20px;gap:10px;margin-top:40px;padding-top:26px}.contact-link h2{font-size:52px}.contact-link>span{font-size:44px}.email{font-size:16px}.site-footer{padding:24px 6%;flex-direction:column;gap:14px}}
@media(max-width:360px){h1{font-size:68px}.hero-statement{font-size:32px}.contact-link h2{font-size:44px}.contact-link{gap:10px}.approach-steps{font-size:18px}nav{gap:14px}}
@media(max-width:1000px){.services{padding-top:28px}}
@media(max-width:600px) and (max-height:640px){.hero{min-height:420px;padding-top:20px}.hero .eyebrow{margin-bottom:16px}.hero-statement{font-size:30px;margin-bottom:18px}.hero h1{font-size:68px;margin-bottom:16px}.hero-bottom{margin-top:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
