:root{
  --ink:#111; --muted:#666; --paper:#f7f6f2; --white:#fff; --line:#dedcd5;
  --serif: Georgia, "Times New Roman", serif; --sans: Arial, Helvetica, sans-serif;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--sans);line-height:1.6}
.container{width:min(1160px,92%);margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(247,246,242,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.08)}
.nav-wrap{height:78px;display:flex;align-items:center;justify-content:space-between}.brand{text-decoration:none;color:var(--ink)}.logo-placeholder{font-weight:900;letter-spacing:.15em;line-height:1;font-size:18px}.logo-placeholder span{font-size:8px;letter-spacing:.3em}
.nav{display:flex;align-items:center;gap:25px}.nav a{color:var(--ink);text-decoration:none;font-size:13px;font-weight:700}.nav-cta{background:var(--ink)!important;color:#fff!important;padding:12px 16px;border-radius:2px}.menu-toggle{display:none;border:0;background:none;font-size:28px}
.hero{min-height:720px;display:flex;align-items:center;position:relative;background:linear-gradient(120deg,#ddd 0%,#eee 45%,#bbb 100%);overflow:hidden}
.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.62),rgba(0,0,0,.15)),radial-gradient(circle at 75% 30%,rgba(255,255,255,.6),transparent 30%)}
.hero-content{position:relative;color:#fff;padding:100px 0}.eyebrow{font-size:11px;letter-spacing:.2em;font-weight:800;margin:0 0 16px}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(46px,7vw,82px);line-height:.98;margin:0 0 25px}.hero h1 em{font-style:italic}.hero-copy{font-size:19px;max-width:600px}.hero-actions{display:flex;gap:12px;margin:32px 0}.btn{display:inline-block;border:0;text-decoration:none;padding:15px 23px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.btn-primary{background:#111;color:#fff}.hero .btn-primary{background:#fff;color:#111}.btn-ghost{border:1px solid rgba(255,255,255,.65);color:#fff}.btn-light{background:#fff;color:#111;margin-top:25px}.service-pills{display:flex;gap:9px;flex-wrap:wrap}.service-pills span{border:1px solid rgba(255,255,255,.35);padding:7px 11px;font-size:11px}
.trust-strip{background:#111;color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0}.trust-grid div{border-right:1px solid #444;text-align:center}.trust-grid div:last-child{border:0}.trust-grid strong{display:block;font-family:var(--serif);font-size:25px}.trust-grid span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#bbb}
.section{padding:105px 0}.section-heading{max-width:760px;margin-bottom:48px}.section-heading h2,.about-section h2,.estimate-section h2,.dark-section h2{font-family:var(--serif);font-size:clamp(38px,5vw,58px);font-weight:400;line-height:1.05;margin:0 0 18px}.section-heading p{color:var(--muted)}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.card{background:var(--paper);padding:36px;min-height:230px}.card-number{font-size:11px;color:#888}.card h3{font-family:var(--serif);font-size:25px;font-weight:400}.card p{color:var(--muted);font-size:14px}
.dark-section{background:#111;color:#fff;padding:110px 0}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:90px;align-items:center}.dark-section p{color:#bcbcbc}.feature-list{margin-top:35px}.feature-list div{padding:18px 0;border-top:1px solid #333}.feature-list b{display:block;color:#fff;font-family:var(--serif);font-size:20px;font-weight:400}.feature-list span{font-size:13px;color:#999}.christmas-visual{min-height:500px;background:linear-gradient(145deg,#252525,#080808);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px solid #333;position:relative;overflow:hidden}.christmas-visual:before,.christmas-visual:after{content:"";position:absolute;width:160%;height:1px;background:#eee;opacity:.25;transform:rotate(-8deg)}.christmas-visual:after{transform:rotate(8deg)}.glow{font-size:80px;margin-bottom:20px}.visual-title{font-family:var(--serif);font-size:38px;line-height:1.05}.visual-sub{color:#999;margin-top:18px;font-size:11px;letter-spacing:.12em;text-transform:uppercase}
.gallery-section{background:#fff}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-item{aspect-ratio:1/1;display:flex;align-items:center;justify-content:center;text-align:center}.image-placeholder{background:linear-gradient(135deg,#d9d6ce,#aaa69d);color:#fff;letter-spacing:.14em;font-size:11px;font-weight:800}
.gallery-project{grid-column:1/-1;background:var(--paper);border:1px solid var(--line);padding:clamp(22px,4vw,46px);margin-bottom:12px}.gallery-project-header{display:flex;justify-content:space-between;align-items:end;gap:30px;padding-bottom:25px;border-bottom:1px solid var(--line)}.gallery-project-header .eyebrow{margin-bottom:8px}.gallery-project-header h3{font-family:var(--serif);font-size:clamp(30px,4vw,46px);font-weight:400;line-height:1.05;margin:0}.gallery-project-header>p{max-width:300px;margin:0;color:var(--muted);font-size:14px}.comparison-groups{display:grid;grid-template-columns:1fr 1fr;gap:clamp(20px,3vw,38px);padding-top:30px}.comparison-group h4{display:flex;align-items:center;gap:14px;margin:0 0 14px;font-size:11px;letter-spacing:.2em;text-transform:uppercase}.comparison-group h4:after{content:"";height:1px;flex:1;background:var(--line)}.comparison-group h4 span{background:var(--ink);color:var(--white);padding:7px 10px}.project-photos{display:grid;grid-template-columns:1fr 1fr;gap:8px}.project-photos figure{margin:0;background:#e9e7e0;aspect-ratio:4/3;overflow:hidden}.project-photos img{display:block;width:100%;height:100%;object-fit:cover}
.interior-gallery-project{margin-top:12px}.interior-project-photos{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding-top:30px}.interior-project-photos figure{margin:0;background:#e9e7e0;aspect-ratio:3/4;overflow:hidden}.interior-project-photos img{display:block;width:100%;height:100%;object-fit:contain}
.about-section{padding:110px 0;background:#e9e7e0}.about-grid{display:grid;grid-template-columns:300px 1fr;gap:80px;align-items:center}.about-badge{width:230px;height:230px;border-radius:50%;background:#111;color:#fff;display:grid;place-items:center;font-family:var(--serif);font-size:120px}.about-section p{max-width:700px;color:#555}.signature{font-family:var(--serif);font-style:italic;font-size:27px;margin-top:30px}.signature small{font-family:var(--sans);font-style:normal;font-size:10px;letter-spacing:.1em;color:#777}
.review-placeholder{max-width:800px;margin:auto;text-align:center;border:1px solid var(--line);padding:55px;background:#fff}.stars{letter-spacing:.25em}.review-placeholder p{font-family:var(--serif);font-size:27px}.review-placeholder span{font-size:11px;color:#777}.center{text-align:center;margin-top:28px}.text-link{color:#111;font-weight:800;font-size:12px}
.estimate-section{background:#111;color:#fff;padding:110px 0}.estimate-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.estimate-section p{color:#aaa}.contact-box{border-top:1px solid #333;margin-top:40px;padding-top:20px}.contact-box span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.15em;color:#777}.contact-box a{color:#fff;font-family:var(--serif);font-size:28px;text-decoration:none}
.estimate-form{background:#fff;color:#111;padding:38px}.estimate-form label{display:block;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:17px}.estimate-form input,.estimate-form select,.estimate-form textarea{width:100%;margin-top:7px;border:1px solid #d8d5cd;padding:13px;font:inherit;background:#fff}.btn-full{width:100%}.form-note{font-size:11px!important;text-align:center;margin:12px 0 0!important}
.service-area{padding:75px 0;background:#e4e1d9}.service-area h2{font-family:var(--serif);font-size:35px;font-weight:400}.service-area p:last-child{color:#666}
footer{background:#090909;color:#fff;padding:60px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-brand{font-weight:900;letter-spacing:.15em}.footer-grid p,.footer-grid span,.footer-grid a{display:block;color:#999;font-size:12px;text-decoration:none;margin:7px 0}.copyright{border-top:1px solid #292929;margin-top:40px;padding-top:18px;color:#666;font-size:10px}
.modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:50;place-items:center;padding:20px}.modal.show{display:grid}.modal-card{background:#fff;color:#111;max-width:500px;text-align:center;padding:50px;position:relative}.modal-close{position:absolute;right:15px;top:10px;border:0;background:none;font-size:28px;cursor:pointer}.check{font-size:50px}.modal-card h2{font-family:var(--serif);font-size:35px;font-weight:400}.modal-card p{color:#666}
@media(max-width:850px){.nav{display:none}.nav.open{display:flex;position:absolute;top:78px;left:0;right:0;background:var(--paper);padding:20px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}.nav.open a{padding:8px}.menu-toggle{display:block}.trust-grid{grid-template-columns:repeat(2,1fr);gap:20px}.trust-grid div:nth-child(2){border:0}.cards{grid-template-columns:repeat(2,1fr)}.split,.estimate-grid,.about-grid{grid-template-columns:1fr;gap:45px}.gallery{grid-template-columns:repeat(2,1fr)}.interior-project-photos{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.hero{min-height:680px}}
@media(max-width:700px){.gallery-project-header{display:block}.gallery-project-header>p{margin-top:14px}.comparison-groups{grid-template-columns:1fr}.project-photos figure{aspect-ratio:4/3}}
@media(max-width:560px){.hero-content{padding:70px 0}.hero h1{font-size:48px}.hero-copy{font-size:16px}.hero-actions{flex-direction:column;align-items:stretch}.trust-grid{grid-template-columns:1fr 1fr}.cards,.gallery{grid-template-columns:1fr}.card{min-height:auto}.section,.dark-section,.estimate-section,.about-section{padding:75px 0}.christmas-visual{min-height:360px}.estimate-form{padding:24px}.footer-grid{grid-template-columns:1fr}.about-badge{width:170px;height:170px;font-size:85px}.gallery-project{padding:20px}.comparison-groups,.interior-project-photos{padding-top:24px}.project-photos,.interior-project-photos{gap:5px}}
