*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:94px}body{margin:0;background:#f2f3ef;color:#183034;font-family:Manrope,Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b5a078;outline-offset:5px}.skip{position:absolute;top:-100px;z-index:50;background:#fff;padding:15px}.skip:focus{top:10px}.header{height:104px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#f2f3ef}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand svg{width:54px;height:54px;stroke:currentColor;fill:none;stroke-width:7}.brand .inner{stroke-width:3}.brand span{font-size:29px;font-weight:600;letter-spacing:-1px}.brand small{display:block;font-size:10px;font-weight:400;letter-spacing:.7px;margin-top:3px}.header nav{display:flex;align-items:center;gap:35px;font-size:13px}.nav-cta{border:1px solid #163d4340;padding:14px 18px;display:flex;gap:25px}.header nav a:hover{color:#5f766e}.menu-button{display:none}.hero{position:relative;height:min(790px,calc(100svh - 104px));min-height:590px;margin:0 22px;color:#fff;background:#163d43;isolation:isolate}.hero-photo{position:absolute;width:100%;height:100%;object-fit:cover;z-index:-2}.hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,35,39,.8),rgba(12,35,39,.23) 58%,rgba(12,35,39,.04)),linear-gradient(0deg,rgba(12,35,39,.4),transparent 25%)}.hero-content{padding:65px 5% 100px;max-width:760px}.location{font-size:12px;display:flex;align-items:center;gap:10px;margin:0 0 25px}.location span{width:6px;height:6px;border-radius:50%;background:#b5a078}h1{font-size:clamp(60px,6.2vw,98px);line-height:1.02;font-weight:400;letter-spacing:-4.8px;margin:0 0 26px}.hero-content>p:not(.location){font-size:15px;line-height:1.8;color:#e7ece6;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;font-size:13px;font-weight:600;padding:19px 24px;border:1px solid transparent;min-height:56px;transition:background .2s}.button span{font-size:19px;font-weight:400}.light{background:#f2f3ef;color:#163d43}.light:hover{background:#dce4df}.hero-bottom{position:absolute;bottom:27px;left:5%;right:4%;display:flex;justify-content:space-between;align-items:center;font-size:11px}.hero-bottom a{display:flex;gap:30px;align-items:center}.hero-bottom small{font-size:9px;color:#d6dfda}.section{padding:105px 7%;scroll-margin-top:20px}.section-label{font-size:12px;margin:0;line-height:1.7}.intro{display:grid;grid-template-columns:1fr 3fr;gap:40px}.intro .section-label{padding-top:10px}h2{font-size:clamp(37px,4vw,60px);font-weight:400;line-height:1.1;letter-spacing:-2.5px;margin:0 0 30px}.intro-copy{display:grid;grid-template-columns:1fr 1fr;gap:45px}.intro p,.section-top p,.approach-copy,.contact>div>p{font-size:14px;line-height:1.9;color:#536562;margin:0 0 26px}.text-link{display:inline-flex;gap:25px;font-size:12px;border-bottom:1px solid #a7b8b7;padding-bottom:9px;margin-top:10px}.services{background:#e7ece8;display:grid;grid-template-columns:1fr 1.4fr;gap:9%}.section-top h2{margin-bottom:25px}.section-top p{margin:0}.service-list details{border-bottom:1px solid #163d4333}.service-list details:first-child{border-top:1px solid #163d4333}.service-list summary{list-style:none;display:flex;justify-content:space-between;gap:20px;padding:26px 0;font-size:21px;letter-spacing:-.6px;cursor:pointer}.service-list summary::-webkit-details-marker{display:none}.plus{font-size:25px;font-weight:400;transition:transform .2s}.service-list details[open] .plus{transform:rotate(45deg)}.service-detail{display:flex;gap:30px;align-items:center;padding:0 0 26px}.service-detail svg{width:70px;flex-shrink:0;fill:none;stroke:#607b73;stroke-width:1.5}.service-detail p{max-width:390px;font-size:13px;line-height:1.9;margin:0;color:#536562}.portfolio .section-top{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:42px}.portfolio .section-top h2{margin:0}.gallery{display:grid;grid-template-columns:1.4fr 1fr;gap:30px}.project{border:0;background:none;color:inherit;padding:0;text-align:left;min-width:0}.project.wide{grid-row:span 2;display:flex;flex-direction:column}.project img{width:100%;height:260px;object-fit:cover;display:block}.project.wide img{height:100%;min-height:490px;max-height:665px}.project>span{display:flex;align-items:center;justify-content:space-between;padding:19px 0 0;font-size:17px;letter-spacing:-.5px}.project small{display:block;font-size:11px;letter-spacing:0;color:#536562;margin-top:5px}.project b{width:38px;height:38px;border:1px solid #b9c8c2;border-radius:50%;display:grid;place-items:center;font-weight:400}.project:hover b{background:#163d43;color:white}.approach{background:#163d43;color:#f2f3ef;display:grid;grid-template-columns:1.1fr 1fr;gap:13%}.approach .section-label{color:#a7b8b7;margin-bottom:26px}.approach h2{font-size:clamp(37px,3.7vw,56px)}.approach-copy{color:#c2d0cb;max-width:390px}.outline{border-color:#79918d;color:#f2f3ef;margin-top:10px}.outline:hover{background:#31575c}.steps{padding:0;list-style:none;margin:12px 0 0}.steps li{display:flex;gap:26px;border-top:1px solid #a7b8b740;padding:30px 0}.steps li:last-child{border-bottom:1px solid #a7b8b740}.steps li>span{color:#b5a078;font-size:12px;padding-top:5px}.steps h3{font-size:19px;font-weight:400;letter-spacing:-.5px;margin:0 0 12px}.steps p{font-size:12px;line-height:1.8;color:#bdcec8;max-width:290px;margin:0}.contact{display:grid;grid-template-columns:1fr 3fr;gap:40px}.contact>.section-label{padding-top:10px}.contact h2{font-size:clamp(39px,4.5vw,66px)}form{margin-top:42px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:25px}label{display:block;font-size:12px;margin-bottom:22px}.optional{color:#627470}input,select,textarea{width:100%;background:transparent;border:0;border-bottom:1px solid #a7b8b7;color:#183034;border-radius:0;padding:15px 0;font-size:13px;resize:vertical}input::placeholder,textarea::placeholder{color:#667570}.form-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.form-bottom p{font-size:10px;line-height:1.8;max-width:250px;color:#627470}.dark{background:#163d43;color:#fff;white-space:nowrap}.dark:hover{background:#31575c}#form-status{font-size:12px;min-height:18px;color:#31575c}footer{padding:48px 7% 20px;border-top:1px solid #cad5cf}.footer-main{display:flex;justify-content:space-between;align-items:center;padding-bottom:40px}.footer-main p{font-size:12px;line-height:1.8;color:#536562}.footer-main>a:last-child{font-size:12px;display:flex;gap:28px}.footer-bottom{border-top:1px solid #cad5cf;padding-top:20px;display:flex;gap:35px;font-size:10px;color:#536562;align-items:center}.footer-bottom p{margin:0;margin-right:auto}.footer-bottom button{border:0;background:transparent;color:inherit;padding:5px}dialog{border:0;padding:45px;background:#f2f3ef;color:#163d43;max-width:min(90vw,920px)}dialog::backdrop{background:#0b252ad9}.close-dialog{position:absolute;top:6px;right:12px;font-size:28px;background:none;border:0;color:inherit}#photo-dialog img{display:block;max-width:100%;max-height:75vh;object-fit:contain;margin:auto}#photo-caption{font-size:13px;margin-bottom:0}#privacy-dialog{max-width:min(90vw,580px)}#privacy-dialog h2{font-size:30px;letter-spacing:-1px}#privacy-dialog p{line-height:1.8;font-size:14px}

@media(max-width:900px){.header{height:86px}.header nav{gap:20px}.hero{height:710px;min-height:600px}.hero-content{padding-top:70px}h1{font-size:78px}.section{padding:75px 6%}.intro,.contact{grid-template-columns:1fr 3fr;gap:25px}.intro-copy{gap:22px}.services{gap:6%;grid-template-columns:1fr 1.3fr}.service-list summary{font-size:18px}.approach{gap:7%}.gallery{gap:22px}.project img{height:210px}.project.wide img{min-height:430px}.form-bottom{align-items:flex-start;flex-direction:column}.footer-main{gap:25px}}
@media(max-width:640px){html{scroll-padding-top:15px}.header{height:82px;padding:0 6%;position:relative;z-index:5}.brand svg{width:42px;height:42px}.brand span{font-size:25px}.brand small{font-size:9px}.menu-button{display:flex;gap:13px;align-items:center;background:none;border:0;color:#163d43;font-size:12px;padding:12px 0}.header nav{display:none;position:absolute;top:82px;left:0;right:0;background:#f2f3ef;padding:22px 6% 28px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 20px 30px #163d431a}.header nav.open{display:flex}.header nav a{padding:15px 0}.header nav .nav-cta{padding:15px;margin-top:12px}.hero{margin:0 10px;height:660px;min-height:0}.hero-photo{object-position:62% center}.hero:after{background:linear-gradient(90deg,#0c232bd9,#0c232b35),linear-gradient(0deg,#0c232b66,transparent 30%)}.hero-content{padding:54px 7% 90px}.location{font-size:10px;max-width:260px;line-height:1.7;margin-bottom:32px}h1{font-size:62px;letter-spacing:-3.4px;line-height:1.05;margin-bottom:25px}.hero-content>p:not(.location){font-size:12px;max-width:290px}.button{font-size:11px;gap:20px;padding:17px 19px}.hero-bottom{left:7%;right:7%;bottom:21px;gap:25px;align-items:flex-end}.hero-bottom small{font-size:8px;max-width:145px;text-align:right}.hero-bottom a{font-size:10px;gap:15px}.section{padding:65px 7%}.intro,.contact,.services,.approach{display:block}.intro .section-label,.contact>.section-label{margin-bottom:24px;padding:0}h2{font-size:40px;letter-spacing:-1.8px}.intro-copy{display:block}.intro p{font-size:13px}.intro p+p{margin-top:18px}.text-link{font-size:11px}.service-list{margin-top:30px}.service-list summary{font-size:18px;padding:23px 0}.service-detail{gap:20px}.service-detail p{font-size:12px}.portfolio .section-top{display:block;margin-bottom:30px}.portfolio .section-top p{font-size:12px;margin-top:22px}.gallery{grid-template-columns:1fr;gap:30px}.project.wide{grid-row:auto}.project.wide img{height:360px;min-height:0;max-height:none;object-position:center}.project img{height:300px}.project>span{font-size:16px;padding-top:13px}.approach h2{font-size:39px}.steps{margin-top:45px}.steps li{padding:24px 0}.steps p{max-width:none}.fields{display:block}.contact>div>p{font-size:12px}.contact h2{font-size:40px}.form-bottom .button{width:100%;font-size:12px}.form-bottom p{max-width:none;margin:0}.footer-main{flex-wrap:wrap;align-items:flex-start;gap:24px}.footer-main p{margin:0;font-size:10px}.footer-main>a:last-child{width:100%}.footer-bottom{flex-wrap:wrap;gap:20px}.footer-bottom p{width:100%;line-height:1.8}.footer-bottom a{margin-left:auto}dialog{padding:35px 15px 20px}#privacy-dialog{padding:40px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media(max-width:640px){h1{font-size:clamp(44px,13.5vw,56px);letter-spacing:-2.7px;line-height:1.08}}
