:root{--ink:#202820;--muted:#74786f;--line:#d9dcd4;--paper:#fafaf7;--accent:#8a9274}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:15px Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:2px solid #627c37;outline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;padding:28px 5%;border-bottom:1px solid var(--line)}.logo{font-size:44px;font-weight:750;letter-spacing:-3px}nav{display:flex;gap:36px;align-items:center;font-size:13px}.contact{border-bottom:1px solid;padding:12px 0}.contact span{margin-left:30px}main>section{margin:0 5%}.hero{padding:74px 0 58px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600}h1{font-size:clamp(58px,7.8vw,118px);font-weight:400;letter-spacing:-6px;line-height:1;margin:35px 0 44px}.serif{font-family:Georgia,serif;font-style:italic;color:#858d77;display:block;letter-spacing:-5px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:50px;max-width:1050px}.intro>p{font-size:21px;line-height:1.5}.intro div{max-width:445px;line-height:1.8;color:#63685f}.under{display:flex;justify-content:space-between;border-bottom:1px solid var(--ink);padding:15px 0 9px;color:var(--ink);max-width:230px}.numbers{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:34px 0}.numbers div{padding:0 30px;border-right:1px solid var(--line)}.numbers div:first-child{padding-left:0}.numbers div:last-child{border:0}.numbers strong{display:block;font-size:48px;letter-spacing:-2px;font-weight:400}.numbers small{font-size:18px;letter-spacing:0}.numbers span{display:block;color:var(--muted);font-size:12px;margin-top:12px}#references{padding:80px 0}.sectionhead{display:flex;justify-content:space-between;align-items:end}h2{font-size:38px;font-weight:400;letter-spacing:-1.3px;line-height:1.15;margin:18px 0 30px}#count{font-size:12px;color:var(--muted);padding-bottom:32px}.toolbar{border-top:1px solid var(--line);padding:25px 0 30px}#filters{display:flex;gap:9px;flex-wrap:wrap}#filters button{border:1px solid var(--line);padding:10px 17px;background:transparent;color:var(--ink);border-radius:2px;cursor:pointer}#filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.search{display:flex;gap:20px;margin-top:24px;justify-content:space-between}.search input{width:370px;max-width:60%;border:0;border-bottom:1px solid var(--line);padding:10px 0;background:transparent}.search select{border:0;background:transparent;color:var(--muted);font-size:12px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 25px}.card{background:none;border:0;padding:0;text-align:left;color:inherit;cursor:pointer;min-width:0}.photo{position:relative;aspect-ratio:1.42;overflow:hidden;background:#e5e7df}.photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s;filter:saturate(.75)}.card:hover img{transform:scale(1.04)}.badge{position:absolute;left:14px;top:14px;background:#fafaf7;padding:7px 10px;font-size:10px;letter-spacing:1px}.card .city{font-size:11px;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin:18px 0 7px}.card h3{font-size:21px;font-weight:400;margin:0 0 17px;letter-spacing:-.5px}.cardbottom{border-top:1px solid var(--line);padding-top:12px;display:flex;align-items:center;justify-content:space-between;font-size:14px}.cardbottom small{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}.arrow{font-size:25px}.note{font-size:11px;line-height:1.7;color:var(--muted);max-width:850px;margin-top:45px}.approach{padding:65px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:60px}.approach h2{font-size:35px}.approach em{font-family:Georgia,serif;font-weight:400;color:var(--muted)}.approach>div>p{line-height:1.8;color:#62685e}.services{display:grid;grid-template-columns:40px 1fr;align-items:center}.services span{font-size:11px;color:var(--muted)}.services p{border-bottom:1px solid var(--line);padding-bottom:16px}.cta{background:var(--ink);color:var(--paper);margin:0;padding:65px 5%}.cta h2{font-size:48px}.cta a{display:flex;justify-content:space-between;max-width:400px;border-bottom:1px solid #727a6c;padding:15px 0}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:35px 5%}footer span{color:var(--muted);font-size:11px}.sr{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}dialog{border:0;background:var(--paper);color:var(--ink);padding:0;width:min(750px,92vw);max-height:90vh}dialog::backdrop{background:#142019ac}#close{position:absolute;right:15px;top:15px;border:0;background:white;width:38px;height:38px;cursor:pointer;z-index:2}dialog img{width:100%;max-height:380px;object-fit:cover}.details{padding:32px}dl{display:grid;grid-template-columns:1fr 1fr;gap:20px}dt{font-size:11px;color:var(--muted)}dd{margin:7px 0 0}#reset{cursor:pointer;border:0;text-decoration:underline;background:none}@media(min-width:1500px){main,header,footer{max-width:1600px;margin:auto}}@media(max-width:800px){nav{gap:20px}nav>a:nth-child(2){display:none}.grid{grid-template-columns:repeat(2,1fr)}h1{letter-spacing:-3px}.serif{letter-spacing:-3px}.intro{gap:25px}.numbers strong{font-size:36px}.approach{gap:25px}}@media(max-width:540px){header{padding:20px 5%}.logo{font-size:36px}nav{font-size:11px}.contact span{margin-left:10px}.hero{padding:50px 0 35px}h1{font-size:55px}.intro{grid-template-columns:1fr;gap:5px}.intro>p{margin-bottom:5px}.numbers{padding:25px 0}.numbers div{padding:0 12px}.numbers strong{font-size:28px;letter-spacing:-1px}.numbers small{font-size:11px}.numbers span{font-size:10px;line-height:1.5}.grid{grid-template-columns:1fr}.sectionhead{align-items:start}h2{font-size:30px}#references{padding:50px 0}#count{white-space:nowrap;font-size:10px;margin-top:30px}.search{flex-wrap:wrap}.search input{max-width:100%;width:100%}.approach{grid-template-columns:1fr;gap:0}.cta h2{font-size:36px}footer{flex-wrap:wrap}footer span:last-child{margin-left:auto}.eyebrow{font-size:9px}.details{padding:24px}dl{gap:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}
