
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f6f7ee;color:#183e2e;font-family:Arial,sans-serif}a{color:inherit;text-decoration:none}header{display:flex;align-items:center;justify-content:space-between;padding:25px 5%;border-bottom:1px solid #d9dfcf}.brand{font-size:21px;letter-spacing:-1px;font-weight:800}.brand small{display:block;font-size:10px;letter-spacing:3px;margin-top:6px}nav{display:flex;gap:27px;font-size:14px}.phone{font-size:15px;font-weight:bold}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:650px}.intro{padding:80px 10% 65px}.eyebrow{text-transform:uppercase;letter-spacing:2px;font-size:11px;font-weight:bold}h1{font-size:clamp(48px,5.6vw,84px);line-height:1.04;letter-spacing:-4px;margin:30px 0}h1 em{font-family:Georgia,serif;font-weight:normal}p{font-size:17px;line-height:1.65;max-width:510px}.hero-photo{background:linear-gradient(0deg,#102e2270,transparent 60%),url('hero.webp') center/cover;position:relative;min-height:450px}.caption{position:absolute;bottom:32px;left:35px;color:white;font-size:12px;letter-spacing:2px}.buttons{display:flex;flex-wrap:wrap;gap:10px;margin-top:32px}.btn{padding:18px 23px;border:1px solid #b7c0af;border-radius:4px;font-size:14px;font-weight:bold;display:inline-block}.primary{background:#e4f593;border-color:#e4f593}.note{font-size:12px;margin-top:22px;color:#637060}.strip{background:#e4f593;display:flex;justify-content:space-between;padding:25px 5%;font-size:14px}.section{padding:85px 5%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px}h2{font-size:clamp(34px,4vw,55px);letter-spacing:-2px;line-height:1.1;margin:15px 0}h3{font-size:19px;font-weight:500}.section-head p{font-size:15px;max-width:340px}.services{display:grid;grid-template-columns:1fr 1fr;column-gap:60px}.service{border-top:1px solid #cdd5c5;padding:17px 0;display:flex;align-items:center;gap:22px}.service span{font-size:11px;color:#7d8d75}.service a{margin-left:auto;font-size:26px}.story{display:grid;grid-template-columns:1fr 1fr;gap:7%;background:#e9eddf}.story img{width:100%;height:440px;object-fit:cover}.story article{align-self:center}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.process article{border-top:1px solid #b7c0af;padding-top:20px}.process p{font-size:15px}.contact{background:#183e2e;color:#f6f7ee;display:flex;justify-content:space-between;gap:35px}.contact h2{max-width:600px}.contact .primary{color:#183e2e}.numbers{display:flex;flex-direction:column;gap:15px;font-size:25px;margin-top:35px}footer{display:flex;justify-content:space-between;padding:28px 5%;font-size:12px}.mobilebar{display:none}.concept{padding:9px;text-align:center;font-size:11px;background:#edf0e3;color:#637060}a:focus-visible{outline:3px solid #84ab39;outline-offset:4px}@media(max-width:760px){header{padding:20px 6%}nav,.phone{display:none}.hero{grid-template-columns:1fr}.intro{padding:45px 6%}h1{letter-spacing:-2px}.hero-photo{min-height:380px}.strip{gap:18px;flex-wrap:wrap}.section{padding:55px 6%}.section-head,.contact{display:block}.services,.story,.process{grid-template-columns:1fr}.story img{height:320px}.story article{margin-top:25px}.service h3{font-size:17px}footer{padding-bottom:95px}.mobilebar{display:flex;position:fixed;bottom:0;background:#f6f7ee;box-shadow:0 -2px 20px #183e2e15;width:100%;padding:10px;gap:8px}.mobilebar a{flex:1;text-align:center;padding:15px 5px;font-size:13px;border:1px solid #cdd5c5}.mobilebar a:first-child{background:#e4f593}}
body{background:#e8eddb}header{background:#dce5ce}.intro{background:#e3ebd4}.section{background:#edf0e2}.story{background:#d1dfc1}.contact{background:#183e2e}footer{background:#dce5ce}.hero-photo{background-color:#47654a}h1{font-size:clamp(42px,5vw,74px);letter-spacing:-2.5px}.services{gap:18px}.service{position:relative;display:block;border:1px solid #c1ceb3;background:#dfe8d2;padding:0;overflow:hidden;border-radius:8px;min-height:215px}.service-body{position:relative;z-index:1;padding:28px;transition:background .25s}.service h3{font-size:23px;margin:12px 0}.service p{font-size:14px;margin:0 0 20px;max-width:400px}.service a{font-size:13px;font-weight:bold;display:inline-block;padding:10px 0;border-bottom:1px solid currentColor}.service img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .25s}.service:hover img,.service:focus-within img{opacity:1}.service:hover .service-body,.service:focus-within .service-body{color:white}.service:hover span,.service:focus-within span{color:#e4f593}.mobilebar{background:#dce5ce}.concept{background:#cad8b7}@media(hover:none),(max-width:760px){.service img{position:static;height:200px;opacity:1;display:block}.service:hover .service-body,.service:focus-within .service-body{background:transparent;color:#183e2e}.mobilebar a{font-size:11px;line-height:1.3;padding:12px 3px}.services{gap:22px}h1{font-size:44px}}

.brand{display:block;flex-shrink:0}.brand img{display:block;width:80px;height:auto}.contact-logo{display:block;width:100px;height:auto;margin-bottom:20px}header{gap:24px;padding-top:10px;padding-bottom:10px}@media(max-width:760px){.brand img{width:64px}.contact-logo{width:85px}header{padding-top:10px;padding-bottom:10px}}

h2 em{font-family:Georgia,serif;font-weight:normal}

.service::after{content:"";position:absolute;inset:0;background:#102e22d9;opacity:0;transition:opacity .25s;pointer-events:none}.service:hover::after,.service:focus-within::after{opacity:1}.service-body{z-index:1}@media(hover:none),(max-width:760px){.service::after{display:none}}

.menu-toggle{display:none}@media(max-width:760px){header{position:relative;flex-wrap:wrap}.menu-toggle{display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 14px;background:transparent;border:1px solid #a6b79a;border-radius:4px;color:#183e2e;font:600 14px Arial,sans-serif;cursor:pointer}.menu-icon{display:flex;flex-direction:column;gap:4px;width:20px}.menu-icon i{display:block;width:20px;height:2px;background:currentColor;transition:transform .2s,opacity .2s}.menu-toggle[aria-expanded="true"] .menu-icon i:first-child{transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded="true"] .menu-icon i:nth-child(2){opacity:0}.menu-toggle[aria-expanded="true"] .menu-icon i:last-child{transform:translateY(-6px) rotate(-45deg)}header nav{display:none;flex-basis:100%;gap:0;border-top:1px solid #bbc9ad;padding-top:8px}header nav.is-open{display:flex;flex-direction:column}header nav a{display:block;padding:16px 8px;font-size:17px;border-bottom:1px solid #c7d3bb}.menu-toggle:focus-visible{outline:3px solid #557c35;outline-offset:3px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.menu-icon i{transition:none}}

@media(max-width:760px){body{padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}html{scroll-padding-bottom:calc(80px + env(safe-area-inset-bottom,0px))}.mobilebar{position:fixed;inset:auto 0 0 0;z-index:1000;isolation:isolate;background:#dce5ce;opacity:1;display:flex;align-items:center;gap:8px;padding:8px 12px calc(8px + env(safe-area-inset-bottom,0px));border-top:1px solid #b3c3a4;box-shadow:0 -4px 16px #183e2e18}.mobilebar a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:10px 6px;font-size:13px;font-weight:600;line-height:1;white-space:nowrap;border-radius:4px;background:#edf0e2}.mobilebar a:first-child{background:#e4f593}footer{padding-bottom:28px}}

.story{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:7%;row-gap:32px;padding-block:85px}.story article{min-width:0}.story article>:last-child{margin-bottom:0}@media(max-width:760px){.section{padding:55px 6%}.story{grid-template-columns:minmax(0,1fr);gap:28px;padding:55px 6%}.story article{margin-top:0}.story img{min-width:0;max-width:100%}.process{grid-template-columns:minmax(0,1fr)}}

.languages{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:600}.languages a{padding:10px 2px}.languages [aria-current]{border-bottom:2px solid #183e2e}.skip-link{position:absolute;left:12px;top:-80px;padding:12px;background:#e4f593;z-index:1100}.skip-link:focus{top:8px}.phone{white-space:nowrap}header nav{flex-wrap:wrap}@media(max-width:760px){header .brand{order:0}header .languages{order:1;margin-left:auto}header .menu-toggle{order:2}header nav{order:3}.hero h1{font-size:clamp(34px,10.5vw,44px)}.numbers{font-size:clamp(20px,6vw,25px)}.btn{max-width:100%}}
