*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#fff;color:#252623;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #98784b;outline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.08;letter-spacing:-.035em}h1{font-size:clamp(48px,6.1vw,92px);margin-bottom:24px}h2{font-size:clamp(36px,4.2vw,64px);margin-bottom:26px}h3{font-size:23px;font-weight:400;line-height:1.25}p{color:#666963}header{height:100px;padding:0 4.5%;display:flex;align-items:center;justify-content:space-between;background:#fff;position:relative;z-index:5}.brand{display:inline-flex;flex-direction:column;font-size:27px;line-height:1.05;letter-spacing:.095em;font-weight:600}.brand span{font-size:13px;letter-spacing:.46em;margin-top:9px}nav{display:flex;align-items:center;gap:30px;font-size:14px}nav a{padding:10px 0}nav a:hover,.textlink:hover{color:#887052}.navcta{border-bottom:1px solid #252623;margin-left:16px}.menu{display:none}.hero{height:calc(100svh - 100px);min-height:620px;max-height:950px;position:relative;color:white}.hero>img,.subhero>img{position:absolute;inset:0}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.52),rgba(0,0,0,.06)),linear-gradient(0deg,rgba(0,0,0,.2),transparent 40%)}.herocopy{position:absolute;left:7%;top:50%;transform:translateY(-47%)}.herocopy>p:not(.eyebrow){font-size:19px;color:#f5f5f0;margin-bottom:32px}.eyebrow{font-size:12px;font-weight:500;letter-spacing:.19em;line-height:1.5;margin-bottom:28px}.hero .eyebrow,.subhero p{color:white}.button{display:inline-block;padding:15px 28px;font-size:14px;border:1px solid transparent;transition:background .2s}.white{background:white;color:#252623}.white:hover{background:#e4e2db}.outline{border-color:#9c9e95}.outline:hover{background:#34372f;color:white}.herobottom{position:absolute;bottom:28px;left:7%;right:5%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.15em}.wrap{padding:100px 7%}.intro{display:grid;grid-template-columns:1fr 1.65fr;gap:10%;padding-top:112px;padding-bottom:112px}.intro>div{max-width:760px}.intro p:not(.eyebrow){max-width:580px}.textlink{display:inline-block;font-size:14px;margin-top:14px;padding-bottom:6px;border-bottom:1px solid}.sectionhead{display:flex;justify-content:space-between;align-items:flex-end;gap:35px;margin-bottom:44px}.sectionhead h2{margin-bottom:0}.sectionhead>p{font-size:15px;margin-bottom:5px}.services{background:#f5f5f2}.servicegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 24px}.servicecard{overflow:hidden}.servicecard>img{height:auto;aspect-ratio:4/4.3;transition:filter .3s}.servicecard:hover>img{filter:brightness(.88)}.servicecard>div{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #cccfc6;padding:20px 0 17px;gap:12px}.servicecard h3{font-size:21px;margin:0}.servicecard span{font-size:12px;color:#75786f}.feature{display:grid;grid-template-columns:1.15fr 1fr;background:#242922;color:white}.feature>img{min-height:620px;max-height:760px}.feature>div{align-self:center;padding:70px 15%}.feature p{color:#d2d5cd}.feature .eyebrow{color:#c4c9bc}.feature h2{font-size:clamp(42px,5vw,72px)}.feature .button{margin-top:18px}.filters{display:flex;gap:28px;margin:0 0 35px;flex-wrap:wrap}.filters button{background:none;border:0;border-bottom:1px solid transparent;padding:8px 0;color:#6b6e65;font-size:14px}.filters button[aria-pressed=true]{border-color:#252623;color:#252623}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:28px 20px;align-items:start}.galleryitem{background:none;padding:0;border:0;text-align:left;color:inherit}.galleryitem img{height:auto;aspect-ratio:3/4;transition:filter .2s}.galleryitem:nth-child(even) img{aspect-ratio:3/3.4}.galleryitem:hover img{filter:brightness(.85)}.galleryitem>span{display:block;margin-top:13px;font-size:15px}.galleryitem small{display:block;color:#7a7b74;font-size:12px;margin-top:2px}.galleryitem[hidden]{display:none}.note{font-size:12px;line-height:1.65}.inspiration>.note{margin-top:35px;max-width:650px}.process{border-top:1px solid #e1e2dc;background:#fafaf8}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:55px;margin-top:65px}.steps article{border-top:1px solid #bdbfb6;padding-top:25px}.steps span{font-size:12px;letter-spacing:.12em;color:#7c7e75}.steps h3{margin-top:27px}.steps p{font-size:15px}.faq{display:grid;grid-template-columns:1fr 1.3fr;gap:10%}details{border-bottom:1px solid #dadbd6}summary{cursor:pointer;padding:22px 28px 22px 0;list-style:none;position:relative;font-size:16px}summary:after{content:'+';position:absolute;right:0}details[open] summary:after{content:'−'}details p{font-size:15px;padding-right:25px}.project{background:#252822;color:#fff;display:grid;grid-template-columns:1fr 1.1fr;gap:12%}.project p{color:#c6c9c0}.project h2{font-size:clamp(46px,5vw,74px)}.project>div>p{max-width:350px}.project .note{margin-top:30px}form{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{font-size:13px;display:flex;flex-direction:column;gap:9px}input,select,textarea{width:100%;border:0;border-bottom:1px solid #7b8173;background:transparent;border-radius:0;padding:10px 0;color:#fff;font-size:15px}input::placeholder,textarea::placeholder{color:#afb5a7}select option{color:#222;background:white}textarea{resize:vertical}.full{grid-column:1/-1}form .note{margin:0!important}form #status{margin:0;font-size:14px}footer{padding:65px 7% 25px}.footmain{display:flex;justify-content:space-between;gap:30px;align-items:flex-start;padding-bottom:60px}.footmain p{font-size:16px}.footmain>div{display:flex;flex-direction:column;gap:8px;font-size:14px}.footbottom{border-top:1px solid #ddd;padding-top:24px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#76786f}.subhero{position:relative;height:650px;color:white}.subhero>div:last-child{position:absolute;bottom:80px;left:7%;right:7%}.subhero h1{max-width:800px}.subhero p:not(.eyebrow){font-size:20px}.inclusions{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:40px 0}.inclusions span{border-bottom:1px solid #ddd;padding-bottom:14px;font-size:15px}dialog{max-width:95vw;width:1100px;max-height:94svh;border:0;padding:20px;background:#fff}dialog::backdrop{background:#000d}dialog img{object-fit:contain;max-height:75svh;height:auto}dialog p{margin:12px 0 0}dialog .close{display:block;margin:0 0 14px auto;background:none;border:0;font-size:15px}.skip{position:absolute;top:-100px;left:20px;background:white;z-index:99;padding:12px}.skip:focus{top:10px}@media(min-width:1600px){.wrap{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}}@media(max-width:1050px){nav{gap:18px}nav .navcta{margin-left:0}header{padding:0 5%}.brand{font-size:23px}.brand span{font-size:11px}.gallery{grid-template-columns:repeat(2,1fr)}.servicegrid{grid-template-columns:repeat(2,1fr)}.feature>div{padding:50px 10%}.project{gap:6%}.steps{gap:25px}}@media(max-width:760px){header{height:82px}.menu{display:block;border:0;border-bottom:1px solid;background:none;padding:7px 0;font-size:14px}nav{display:none;position:absolute;left:0;right:0;top:82px;background:#fff;padding:25px 7%;align-items:flex-start;box-shadow:0 10px 20px #0001}nav.open{display:flex;flex-direction:column;gap:5px}.hero{height:78svh;min-height:550px}.herocopy{left:7%;right:6%}.hero>img{object-position:60% center}.herocopy h1{font-size:clamp(42px,9vw,65px)}.herocopy>p:not(.eyebrow){font-size:17px}.eyebrow{font-size:11px}.herobottom{font-size:10px}.wrap{padding:65px 7%}.intro{grid-template-columns:1fr;gap:10px}.intro>.eyebrow{margin-bottom:20px}.sectionhead{display:block}.sectionhead>p{margin-top:24px}.servicegrid{gap:30px 16px}.servicecard h3{font-size:17px}.servicecard>img{aspect-ratio:3/4}.servicecard span{display:none}.feature{grid-template-columns:1fr}.feature>img{min-height:0;height:480px}.feature>div{padding:55px 7%}.gallery{gap:25px 15px}.galleryitem>span{font-size:14px}.filters{gap:21px}.steps{grid-template-columns:1fr;gap:25px;margin-top:40px}.steps h3{margin-top:18px}.faq,.project{grid-template-columns:1fr;gap:30px}.project h2{font-size:54px}.footmain{flex-wrap:wrap;padding-bottom:30px}.footmain p{width:100%;order:3}.footbottom{flex-direction:column;gap:10px}.subhero{height:580px}.subhero h1{font-size:50px}.subhero>div:last-child{bottom:55px}.inclusions{gap:18px}form{gap:20px}h2{font-size:39px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.credits{border:0;margin-bottom:20px}.credits summary{padding:10px 0;font-size:12px;max-width:140px}.credits p{font-size:12px;max-width:800px}.credits a{text-decoration:underline}
/* Integrated architectural navigation */
header{position:absolute;inset:0 0 auto;height:112px;padding:0 5%;color:#fff;background:linear-gradient(180deg,#0005,transparent);z-index:20;border-bottom:1px solid #ffffff35}header .brand{font-weight:500;letter-spacing:.14em;font-size:27px}header .brand span{font-size:11px;letter-spacing:.58em}nav{gap:32px}nav>a,nav summary{font-size:13px;letter-spacing:.025em}nav a:hover{color:#e7dbc5}.navcta{border:1px solid #ffffff80;padding:12px 20px; margin-left:6px}.navcta:hover{background:#fff;color:#222}.hero{height:100svh;min-height:720px;max-height:1100px}.hero .shade,.subhero .shade{background:linear-gradient(90deg,#0006,transparent 85%),linear-gradient(180deg,#0003,transparent 35%,#0002)}.herocopy{top:auto;bottom:16%;transform:none}.herocopy h1{font-size:clamp(50px,5.7vw,86px)}.subhero{height:760px}.subhero>div:last-child{bottom:85px}.navdrop{position:relative;border:0}.navdrop summary{padding:10px 20px 10px 0;font-size:13px}.navdrop summary:after{content:'⌄';right:0}.navdrop[open] summary:after{content:'⌃'}.dropdown{position:absolute;top:48px;left:-28px;background:#fff;color:#242822;min-width:305px;padding:18px 28px;box-shadow:0 12px 28px #0002;display:flex;flex-direction:column}.dropdown a{padding:9px 0;font-size:14px}.dropdown a:hover{color:#8e7352}.servicegrid{grid-template-columns:repeat(3,1fr)}.servicecard>img{aspect-ratio:4/3.8}.servicecard h3{font-size:20px}.servicecard:last-child:nth-child(3n+2){grid-column:auto}.gallery{grid-template-columns:repeat(3,1fr)}.galleryitem img,.galleryitem:nth-child(even) img{aspect-ratio:4/3}.outdoor-feature{background:#ecece6;color:#252623}.outdoor-feature p,.outdoor-feature .eyebrow{color:#626859}.outdoor-feature .outline{color:#252623}.outdoor-feature .outline:hover{color:#fff}.feature>img{object-position:center}.menulines{display:inline-block;width:18px;height:9px;margin-left:10px;border-top:1px solid;border-bottom:1px solid}
@media(max-width:1050px){nav{gap:20px}header .brand{font-size:23px}.servicegrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){header{height:92px;padding:0 7%}header .brand{font-size:24px}header .brand span{font-size:10px}.menu{color:inherit;border:0;display:flex;align-items:center}nav{top:92px;background:#252822;color:white;max-height:calc(100svh - 92px);overflow:auto;padding:22px 7% 30px}.navdrop{width:100%}.navdrop summary{font-size:15px;padding:12px 20px 12px 0}.dropdown{position:static;background:transparent;color:white;box-shadow:none;padding:4px 0 12px 16px;min-width:0;border-left:1px solid #6c7462}.dropdown a{font-size:14px}.hero{min-height:690px;height:100svh;max-height:1000px}.herocopy{bottom:15%;top:auto}.herocopy h1{font-size:48px}.hero>img{object-position:60%}.subhero{height:680px}.subhero>div:last-child{bottom:65px}.subhero h1{font-size:46px}.gallery{grid-template-columns:repeat(2,1fr)}.servicecard h3{font-size:18px;line-height:1.4}.servicecard>img{aspect-ratio:3/3.6}.navcta{margin-top:12px}.galleryitem img,.galleryitem:nth-child(even) img{aspect-ratio:3/3.5}}
header{background:linear-gradient(180deg,rgba(20,23,19,.64),rgba(20,23,19,.16));text-shadow:0 1px 12px #0003}.dropdown{text-shadow:none}.hero .herocopy{max-width:760px}.navdrop:focus-within>summary{outline-offset:4px}@media(min-width:761px){.hero .herocopy{bottom:13%}}@media(max-width:390px){header .brand{font-size:21px}.herocopy h1{font-size:43px}.servicegrid{grid-template-columns:1fr}.servicecard>img{aspect-ratio:4/3}}
.servicecard>img{aspect-ratio:4/3}.servicecard h3{font-size:19px}@media(max-width:760px){.servicegrid{grid-template-columns:1fr}.servicecard>img{aspect-ratio:16/10}.servicecard h3{font-size:22px}.gallery{grid-template-columns:1fr 1fr}.galleryitem img,.galleryitem:nth-child(even) img{aspect-ratio:4/3}}
