
:root{--ink:#20241e;--ink2:#2b3128;--stone:#ece8df;--paper:#faf8f3;--brass:#a6813f;--brass2:#c09a57;--sage:#6c7565;--muted:#6f7468;--line:#d9d3c6;--white:#fff;--shadow:0 18px 44px rgba(32,36,30,.10)}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Inter,Arial,sans-serif;background:var(--paper);color:var(--ink);font-size:16px;line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;line-height:1.06;font-weight:600;letter-spacing:-.01em}h1{font-size:clamp(45px,7vw,82px)}h2{font-size:clamp(34px,4.5vw,54px)}h3{font-size:27px}.wrap{width:min(1120px,calc(100% - 48px));margin:auto}.narrow{width:min(790px,calc(100% - 48px));margin:auto}.section{padding:96px 0}.section-sm{padding:68px 0}.stone{background:var(--stone)}.ink{background:var(--ink);color:#f7f3ea}.eyebrow{display:inline-flex;align-items:center;gap:12px;font-size:11px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;color:var(--sage);margin-bottom:20px}.eyebrow:before{content:"";width:27px;height:1px;background:var(--brass)}.ink .eyebrow{color:rgba(255,255,255,.72)}.lede{font-size:19px;line-height:1.65;color:var(--ink2);max-width:64ch}.ink .lede{color:rgba(255,255,255,.76)}.sub{color:var(--muted);font-size:17px;max-width:66ch}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 26px;border:1px solid var(--ink);background:var(--ink);color:#f8f4ea;text-decoration:none;text-transform:uppercase;letter-spacing:.14em;font-size:12px;font-weight:700;border-radius:2px;transition:.25s}.btn:hover{transform:translateY(-1px);background:#30362d}.btn.gold{background:var(--brass);border-color:var(--brass);color:#21180b}.btn.gold:hover{background:var(--brass2);border-color:var(--brass2)}.btn.ghost{background:transparent;color:var(--ink);border-color:rgba(32,36,30,.35)}.btn.ghost:hover{background:rgba(32,36,30,.06)}.ink .btn.ghost{color:#fff;border-color:rgba(255,255,255,.5)}.actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}
.skip{position:absolute;left:-999px;top:10px;background:#fff;padding:10px;z-index:999}.skip:focus{left:10px}
nav{position:sticky;top:0;z-index:100;background:rgba(25,28,23,.95);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}.nav-inner{width:min(1160px,calc(100% - 36px));margin:auto;height:72px;display:flex;align-items:center;justify-content:space-between}.logo{font-family:"Cormorant Garamond",Georgia,serif;color:#f3eee3;text-decoration:none;font-size:26px;font-weight:600;white-space:nowrap}.nav-links{display:flex;align-items:center;gap:26px}.nav-links a{color:rgba(255,255,255,.82);font-size:13px;text-decoration:none;letter-spacing:.035em}.nav-links a:hover,.nav-links a.active{color:var(--brass2)}.nav-links .nav-cta{background:var(--brass);color:#21180b;padding:11px 18px;border-radius:2px;font-weight:700;text-transform:uppercase;letter-spacing:.11em;font-size:11px}.menu-btn{display:none;background:none;border:1px solid rgba(255,255,255,.35);color:#fff;padding:8px 11px;font-size:18px}
.hero{position:relative;min-height:78vh;display:flex;align-items:flex-end;background:var(--ink);overflow:hidden}.hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,20,16,.32),rgba(18,20,16,.35) 35%,rgba(18,20,16,.88))}.hero-content{position:relative;z-index:1;width:min(1120px,calc(100% - 48px));margin:0 auto;padding:130px 0 78px;color:#fff}.hero h1{max-width:14ch;text-shadow:0 3px 32px rgba(0,0,0,.35)}.hero h1 em{color:var(--brass2);font-weight:500}.hero .lede{color:rgba(255,255,255,.88);max-width:55ch;margin-top:24px}.page-hero{background:var(--ink);color:#fff;padding:112px 0 76px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;width:380px;height:380px;border:1px solid rgba(192,154,87,.2);border-radius:50%;right:-110px;top:-180px}.page-hero h1{font-size:clamp(42px,6vw,68px);max-width:15ch}.page-hero .lede{color:rgba(255,255,255,.75);margin-top:22px}
.cred{background:var(--paper);border-bottom:1px solid var(--line)}.cred .wrap{display:grid;grid-template-columns:repeat(3,1fr);text-align:center}.cred div{padding:25px 20px;border-right:1px solid var(--line);font-size:13px;color:var(--muted)}.cred div:last-child{border-right:0}.cred strong{display:block;color:var(--ink);font-size:14px;margin-bottom:2px}
.two-col{display:grid;grid-template-columns:1.08fr .92fr;gap:70px;align-items:start}.two-col.center{align-items:center}.copy p{margin-top:18px;color:var(--ink2)}.feature-panel{background:var(--paper);border:1px solid var(--line);padding:34px}.feature-panel h3{margin-bottom:14px}.feature-list{list-style:none}.feature-list li{padding:14px 0 14px 24px;border-bottom:1px solid var(--line);position:relative;color:var(--ink2)}.feature-list li:before{content:"";position:absolute;left:0;top:25px;width:9px;height:1px;background:var(--brass)}.feature-list li:last-child{border-bottom:0}
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:42px}.card{background:var(--paper);border:1px solid var(--line);display:flex;flex-direction:column;min-width:0;transition:.25s}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.card-img{aspect-ratio:4/3;overflow:hidden;background:var(--stone)}.card-img img{width:100%;height:100%;object-fit:cover;transition:.5s}.card:hover .card-img img{transform:scale(1.025)}.card-body{padding:28px;display:flex;flex-direction:column;flex:1}.card-body p{color:var(--muted);margin-top:12px}.card-link{display:inline-block;margin-top:auto;padding-top:22px;color:var(--brass);font-weight:700;font-size:13px;text-decoration:none;letter-spacing:.04em}.card-link:after{content:" →"}
.service-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);margin-top:40px}.service-strip div{background:var(--paper);padding:30px}.service-strip span{font-size:11px;text-transform:uppercase;letter-spacing:.18em;color:var(--brass);font-weight:700}.service-strip h3{font-size:25px;margin:8px 0}.service-strip p{color:var(--muted);font-size:15px}
.remodel-teaser{display:grid;grid-template-columns:1fr 1fr;gap:0;border:1px solid var(--line);background:var(--stone);margin-top:42px}.compare{display:grid;grid-template-columns:1fr 1fr;position:relative;min-height:360px}.compare figure{position:relative;overflow:hidden}.compare img{width:100%;height:100%;object-fit:cover}.tag{position:absolute;top:14px;left:14px;background:rgba(24,27,22,.76);color:#fff;padding:6px 11px;text-transform:uppercase;letter-spacing:.17em;font-size:10px;font-weight:700}.compare figure:last-child .tag{background:var(--brass);color:#21180b}.remodel-copy{padding:42px;align-self:center}.remodel-copy p{color:var(--muted);margin:16px 0 25px}
.quote-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:40px}.quote{background:var(--paper);border:1px solid var(--line);padding:28px}.quote blockquote{font-family:"Cormorant Garamond",Georgia,serif;font-size:23px;line-height:1.35}.quote cite{display:block;font-style:normal;color:var(--muted);font-size:13px;margin-top:18px}.quote .stars{color:var(--brass);letter-spacing:.1em;font-size:13px;margin-bottom:12px}
.cta{background:var(--ink);color:#fff}.cta-inner{display:flex;justify-content:space-between;gap:40px;align-items:center}.cta h2{max-width:14ch}.cta p{color:rgba(255,255,255,.72);max-width:52ch;margin-top:14px}
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}.gallery-grid figure{overflow:hidden;border:1px solid var(--line);background:var(--stone);aspect-ratio:4/3}.gallery-grid figure.wide{grid-column:span 2;aspect-ratio:8/3}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:.5s}.gallery-grid figure:hover img{transform:scale(1.025)}.gallery-grid figcaption{display:none}.case-intro{display:grid;grid-template-columns:1fr 1fr;gap:58px;align-items:center}.case-intro img{width:100%;aspect-ratio:4/3;object-fit:cover}.case-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:28px}.fact{border-top:1px solid var(--line);padding-top:14px}.fact strong{display:block;font-size:13px}.fact span{color:var(--muted);font-size:13px}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:38px}.story{border-top:2px solid var(--brass);padding:22px 4px}.story p{color:var(--muted);margin-top:10px}
.ba-list{display:grid;gap:36px;margin-top:40px}.ba-item{background:var(--stone);border:1px solid var(--line);padding:26px}.ba-item h2{font-size:33px;margin-bottom:20px}.ba-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.ba-grid.three{grid-template-columns:repeat(3,1fr)}.ba-grid figure{position:relative;overflow:hidden;aspect-ratio:4/3}.ba-grid img{width:100%;height:100%;object-fit:cover}.ba-grid figcaption{position:absolute;top:12px;left:12px;background:rgba(24,27,22,.78);color:#fff;padding:6px 11px;text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:700}.ba-grid figure:not(:first-child) figcaption{background:var(--brass);color:#21180b}
.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:44px}.package{background:var(--paper);border:1px solid var(--line);padding:36px 30px;display:flex;flex-direction:column;position:relative}.package.featured{border-color:var(--brass)}.package .flag{position:absolute;top:-12px;left:28px;background:var(--brass);color:#21180b;padding:6px 13px;text-transform:uppercase;letter-spacing:.15em;font-size:10px;font-weight:700}.package .mode{font-size:11px;text-transform:uppercase;letter-spacing:.16em;color:var(--sage);font-weight:700;margin:7px 0 15px}.package .price{font-family:"Cormorant Garamond",Georgia,serif;font-size:38px;margin-bottom:19px}.package ul{list-style:none;margin-bottom:26px}.package li{border-bottom:1px solid var(--line);padding:11px 0 11px 22px;position:relative;font-size:14px}.package li:before{content:"";width:8px;height:1px;background:var(--brass);position:absolute;left:0;top:22px}.package .btn{margin-top:auto}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;margin-top:44px}.step{border-top:1px solid rgba(192,154,87,.4);padding-top:20px}.step .num{font-family:"Cormorant Garamond",Georgia,serif;font-size:42px;color:var(--brass2)}.step h3{font-size:24px;margin:7px 0}.step p{color:rgba(255,255,255,.68);font-size:14px}
.faq{display:grid;gap:0;border-top:1px solid var(--line);margin-top:36px}.faq details{border-bottom:1px solid var(--line);padding:20px 0}.faq summary{font-family:"Cormorant Garamond",Georgia,serif;font-size:24px;cursor:pointer}.faq p{color:var(--muted);padding-top:12px;max-width:70ch}
.form-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px}.contact-card{background:var(--stone);padding:32px;border:1px solid var(--line)}.contact-card p{color:var(--muted);margin-top:12px}.contact-card a{color:var(--brass);font-weight:700}.field{margin-bottom:22px}.field label{display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--sage);font-weight:700;margin-bottom:8px}.field input,.field select,.field textarea{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:12px 2px;font:inherit;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--brass)}.field textarea{min-height:125px;resize:vertical}.hp{position:absolute;left:-9999px}.form-note{font-size:12px;color:var(--muted);margin-top:14px}
.legal h2{font-size:34px;margin:38px 0 12px}.legal h3{font-size:26px;margin:28px 0 8px}.legal p,.legal li{color:var(--ink2)}.legal ul{margin:12px 0 0 22px}
.breadcrumb{font-size:13px;color:var(--muted);margin-bottom:26px}.breadcrumb a{color:var(--brass);text-decoration:none}
footer{background:#181b16;color:rgba(255,255,255,.62);padding:44px 0}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;gap:42px}.footer-brand{font-family:"Cormorant Garamond",Georgia,serif;color:var(--brass2);font-size:25px}.footer-grid p{font-size:13px;margin-top:8px}.footer-links{display:flex;flex-direction:column;gap:8px}.footer-links a{color:rgba(255,255,255,.68);text-decoration:none;font-size:13px}.footer-links a:hover{color:var(--brass2)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:28px;padding-top:20px;font-size:12px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}
@media(max-width:900px){.two-col,.case-intro,.form-grid,.remodel-teaser{grid-template-columns:1fr}.card-grid,.quote-grid,.package-grid,.story-grid{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr 1fr}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid figure.wide{grid-column:span 2}.service-strip{grid-template-columns:1fr}.cred .wrap{grid-template-columns:1fr}.cred div{border-right:0;border-bottom:1px solid var(--line)}.cred div:last-child{border-bottom:0}.cta-inner{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:span 2}}
@media(max-width:760px){.menu-btn{display:block}.nav-links{display:none;position:absolute;left:0;right:0;top:72px;background:#1a1d18;padding:20px 24px;flex-direction:column;align-items:flex-start;border-top:1px solid rgba(255,255,255,.08)}.nav-links.open{display:flex}.nav-links .nav-cta{width:100%;text-align:center}.section{padding:72px 0}.page-hero{padding:90px 0 62px}.hero{min-height:72vh}.hero-content{padding:110px 0 62px}.card-grid,.quote-grid,.package-grid,.story-grid,.gallery-grid,.steps,.case-facts{grid-template-columns:1fr}.gallery-grid figure.wide{grid-column:span 1;aspect-ratio:4/3}.ba-grid,.ba-grid.three{grid-template-columns:1fr}.compare{min-height:280px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.wrap,.narrow,.hero-content{width:min(100% - 32px,1120px)}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
