@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400;1,500&family=Manrope:wght@400;500;600;700&display=swap');
:root{--paper:#f3efe7;--ink:#201e1a;--muted:#777268;--gold:#b59b70;--line:#d4cabb;--soft:#eae4da;--night:#181916}
body{font-family:Manrope,Arial,sans-serif;font-size:14px;line-height:1.9;background:var(--paper)}
.wrap{width:min(1320px,86%)}
.topbar{background:var(--night);color:#bbb4a6;padding:9px 0;font-size:8px;letter-spacing:2px;border-bottom:1px solid #b59b7024}
header{background:var(--night);color:var(--paper);width:100%!important;margin:0;padding:27px 7%;min-height:105px}
.brand{gap:16px;font-family:'Cormorant Garamond',Georgia,serif;font-size:35px;letter-spacing:5px}
.brand img{width:39px;height:47px;object-fit:contain}
.brand small{font-family:Manrope,sans-serif;font-size:7px;letter-spacing:3.7px;color:#c3ad87;margin-top:9px}
nav{gap:36px;font-size:10px;letter-spacing:.4px}
nav>.button.compact{color:var(--paper);border:1px solid #8a795b;background:transparent;padding:13px 23px;font-size:9px}
.button{font-size:10px;font-weight:500;letter-spacing:1.1px;text-transform:uppercase;padding:20px 28px;border:1px solid var(--ink);transition:background .25s,color .25s}
.button:hover{background:#bba47e;color:var(--night);border-color:#bba47e}
.hero{min-height:730px;height:calc(100svh - 145px);max-height:1000px;background:#211d17}
.hero>img{object-position:center 54%}
.hero-shade{background:linear-gradient(90deg,#12110fba 0%,#12110f65 47%,#12110f00 85%),linear-gradient(0deg,#12110fbd 0%,transparent 35%)}
.hero-content{padding:70px 0 110px}
.eyebrow{font-family:Manrope,sans-serif;font-size:8px;font-weight:500;letter-spacing:3px;margin-bottom:28px}
.eyebrow.light{color:#d3c3a7}
h1,h2,h3,.lead,.phone{font-family:'Cormorant Garamond',Georgia,serif;font-weight:400}
h1{font-size:clamp(70px,7.4vw,116px);line-height:.98;letter-spacing:-3px;max-width:1000px}
h1 em{color:#dfc7a1}h2{font-size:clamp(49px,4.8vw,76px);line-height:1.02;letter-spacing:-1.8px}h2 em{color:#8c785b}h3{font-size:36px;line-height:1.15}
.hero-content>p:not(.eyebrow){max-width:365px;font-size:12px;line-height:1.95;margin:32px 0 25px;color:#ded8cd}
.hero-content>.button.cream{background:#e2d5bd;color:#242219;border-color:#e2d5bd;gap:48px;padding:20px 27px}
.hero-content>.button.cream:hover{background:#f3eadb}
.hero-bottom{bottom:28px;border-top:1px solid #d5c5aa55;padding-top:22px;font-size:9px;letter-spacing:1px;color:#d8cfc0}
.hero-bottom span:last-child{font-size:7px;letter-spacing:2.5px}
.section{padding:120px 0}.intro{padding-top:130px;padding-bottom:130px}
.intro-grid{grid-template-columns:1.2fr 1fr;gap:110px}.intro-grid>div{padding-top:4px;max-width:420px}
.lead{font-size:32px!important;line-height:1.3;letter-spacing:-.4px;margin-bottom:27px}
.intro p:not(.eyebrow):not(.lead),.section-heading>p,.section-heading>div>p:not(.eyebrow){font-size:12px;line-height:2}
.textlink{font-size:9px;font-weight:500;letter-spacing:1px;text-transform:uppercase;padding-bottom:9px;gap:32px}
.services-section{background:var(--night);color:var(--paper)}
.services-section h2 em{color:#bfa77f}.services-section .section-heading>p{color:#aea99d}
.section-heading{margin-bottom:55px;gap:90px}.section-heading>p,.section-heading>div:last-child:not(:first-child){max-width:345px}
.service-grid{gap:40px}.service-grid .service:nth-child(2){padding-top:110px}
.image-frame img{height:470px;transition:transform .7s;filter:saturate(.82)}
.image-frame:hover img{transform:scale(1.025)}
.image-frame>span{bottom:22px;left:22px;font-size:7px;letter-spacing:2px;background:#191916d9;color:#e9dcc5;padding:10px 14px;border:1px solid #b59b7055}
.service-copy{padding:30px 0 0}.service-copy h3{font-size:37px;margin-bottom:16px}
.service-copy p{font-size:12px;line-height:2;color:#b5afa2;max-width:420px}.service-copy ul{font-size:10px;color:#c2b8a6;gap:6px 19px}
.services-section .textlink{color:#ded1bb}.prep{border-color:#b59b7038;padding-top:30px;margin-top:50px}.prep p{color:#b5afa2;font-size:10px}.prep .eyebrow{font-size:7px;letter-spacing:1.6px}
.gallery-filters{gap:23px}.gallery-filters button{font-size:9px;font-family:Manrope,sans-serif;padding-bottom:8px}
.gallery{gap:38px}.gallery img{height:440px;filter:saturate(.85)}.gallery-wide{grid-column:span 2}.gallery-full{grid-column:1 / -1}.gallery-full img{height:560px;object-position:center 55%}
.gallery figcaption{padding-top:20px}.gallery figcaption span{font-family:'Cormorant Garamond',Georgia,serif;font-size:27px}.gallery small{font-size:7px;letter-spacing:1.5px}.gallery-note{font-size:9px;line-height:1.9;max-width:780px;margin-top:35px}.gallery.filtered .gallery-full{grid-column:span 1}
.approach{background:#e7dfd2;color:var(--ink)}.approach .eyebrow.light{color:#8c785b}.approach h2{font-size:clamp(49px,4.8vw,69px)}.approach-grid{gap:110px;grid-template-columns:1.1fr 1fr}
.approach-grid>div>p:not(.eyebrow){color:var(--muted);font-size:12px;line-height:2;max-width:320px}.steps article{border-color:#b7a99166;padding:25px 0;gap:30px}.steps article>span{color:#927b56;font-size:9px}.steps h3{font-size:29px}.steps p{color:var(--muted);font-size:11px;line-height:1.9;margin-top:11px}
.area{gap:110px}.area .lead{font-size:32px!important}.area>div:last-child>p:not(.lead){font-size:12px;max-width:365px}.area .small{font-size:10px!important}
.estimate{background:var(--night);color:var(--paper)}.estimate h2 em{color:#c9b18b}.estimate-grid{gap:110px;grid-template-columns:1fr 1fr}.estimate-grid>div>p:not(.eyebrow){color:#b8b0a1;font-size:12px;line-height:2;max-width:330px}
.phone{font-size:39px;letter-spacing:.5px}.estimate-note{border-color:#b59b7044}.estimate-note span{font-size:7px;letter-spacing:1.6px}.estimate-note p{color:#a59e91;font-size:10px;line-height:1.9}
label{font-family:Manrope,sans-serif;color:#c7c0b3;font-size:9px;letter-spacing:.7px;font-weight:400;margin-bottom:25px}input,select,textarea{background:#22231f;border:1px solid #585345;color:#efe9dc;padding:14px;font-size:12px;margin-top:10px}input::placeholder,textarea::placeholder{color:#928d80}input:focus,select:focus,textarea:focus{outline:1px solid var(--gold);border-color:var(--gold)}
.estimate .small{color:#a59e91;font-size:9px!important;line-height:1.9}form .button{background:#cfb991;border-color:#cfb991;color:#1a1b17;padding:19px 24px}form .button:hover{background:#e4d2b2}#request-result{border-color:#b59b7044}#request-result h3{font-size:30px}pre{font:11px/1.9 Manrope,sans-serif;color:#d8cfbf}.secondary{border-color:#a58f6c;color:#dcccae;font-size:10px}
.faq{gap:100px}.faq h2{font-size:58px}.faq details{padding:24px 0}.faq summary{font-size:12px}.faq details p{font-size:11px;line-height:2}
footer{background:#11120f;color:var(--paper);border-top:1px solid #b59b7033;padding:50px 0}footer p{font-size:9px;color:#a8a294;line-height:2}.back-top{font-size:7px;color:#d6c3a3}.brand img{border:0}
:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
@media(min-width:1600px){.hero-content>p:not(.eyebrow){font-size:14px}.image-frame img{height:550px}.gallery img{height:500px}.gallery-full img{height:650px}}
@media(max-width:1000px){header{padding:23px 6%}nav{gap:20px}.intro-grid,.approach-grid,.estimate-grid,.area{gap:55px}.service-grid{gap:28px}.image-frame img{height:370px}.gallery img{height:350px}.gallery-full img{height:470px}.section{padding:90px 0}.hero{min-height:690px}.hero h1{font-size:85px}}
@media(max-width:720px){.wrap{width:86%}.topbar .wrap{font-size:7px;letter-spacing:1px}.topbar{padding:9px 0}header{padding:21px 7%;min-height:90px;gap:15px}.brand{font-size:26px;letter-spacing:3px;gap:10px}.brand img{width:29px;height:37px}.brand small{font-size:6px;letter-spacing:2.4px}nav .button.compact{font-size:7px;padding:11px 13px;letter-spacing:.3px;gap:12px}.hero{min-height:710px;height:auto;max-height:none}.hero-content{min-height:710px;padding:85px 0 125px}.hero>img{object-position:61% center}.hero-shade{background:linear-gradient(90deg,#12110fc7,#12110f50),linear-gradient(0deg,#12110fbb,transparent 40%)}.hero h1{font-size:65px;line-height:1;letter-spacing:-2px}.hero .eyebrow{font-size:7px;letter-spacing:2px;max-width:260px}.hero-content>p:not(.eyebrow){font-size:12px;max-width:285px;margin:27px 0}.hero-content>.button.cream{font-size:8px;letter-spacing:.8px;padding:19px 22px;gap:30px}.hero-bottom{font-size:8px;bottom:24px;padding-top:20px;gap:10px}.hero-bottom span:last-child{font-size:6px;letter-spacing:1.6px}.section{padding:75px 0}.intro-grid,.approach-grid,.estimate-grid,.area,.faq{grid-template-columns:1fr;gap:34px}.eyebrow{font-size:7px;letter-spacing:2px;margin-bottom:22px}h2{font-size:48px;letter-spacing:-1px}.intro-grid>div{padding:0}.lead{font-size:29px!important}.section-heading{margin-bottom:35px}.section-heading>p,.section-heading>div:last-child:not(:first-child){max-width:none}.service-grid{gap:42px}.service-grid .service:nth-child(2){padding-top:0}.image-frame img{height:340px}.service-copy h3{font-size:33px}.service-copy p{font-size:11px}.prep{margin-top:35px;padding-top:25px}.prep .eyebrow{font-size:6px}.prep p{font-size:9px}.gallery{gap:30px}.gallery img{height:300px}.gallery-full{grid-column:span 1}.gallery-full img{height:330px}.gallery figcaption{display:block;padding-top:16px}.gallery figcaption span{font-size:25px;display:block}.gallery small{font-size:6px;letter-spacing:1.2px;display:block;margin-top:6px}.gallery-filters{gap:20px}.gallery-filters button{font-size:8px}.gallery-note{font-size:8px}.approach h2{font-size:46px}.steps h3{font-size:28px}.steps p{font-size:11px}.area .lead{font-size:29px!important}.phone{font-size:34px}.estimate-grid{gap:45px}.estimate-note{max-width:none}.faq h2{font-size:48px}.faq summary{font-size:11px}.faq details{padding:22px 0}footer{padding:36px 0}footer .brand{font-size:26px}footer p{font-size:8px}.back-top{font-size:6px}}
@media(max-width:380px){.hero h1{font-size:59px}nav .button.compact span{display:none}.brand{font-size:23px}.hero-content>.button.cream{gap:20px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
