:root{--black:#0e0e0e;--charcoal:#1c1c1c;--line:#2a2a2a;--gold:#c9a45c;--gold-dark:#92632e;--gold-light:#f3e7a6;--gold-on-light:#7f5f2c;--cream:#f7f3ea;--ink:#1a1a1a;--muted:#b9b4aa;--radius:7px;--font-display:"Cormorant Garamond", Georgia, "Times New Roman", serif;--font-label:"Barlow Condensed", "Arial Narrow", sans-serif;--font-body:"Source Sans 3", system-ui, sans-serif;--sticky-bar-h:0px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--black);color:var(--cream);font-family:var(--font-body);letter-spacing:0;padding-bottom:calc(1.25rem + var(--sticky-bar-h));-webkit-font-smoothing:antialiased;margin:0;font-size:17px;font-weight:400;line-height:1.6}img{max-width:100%;display:block}a{color:inherit}.gold-grad,.btn-gold,.final-cta{background:linear-gradient(135deg,#92632e 0%,#c9a45c 45%,#f3e7a6 70%,#b8914a 100%)}.preview-banner{background:var(--charcoal);color:var(--muted);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;text-align:center;padding:.65rem 1rem;font-size:12px}.site-header{z-index:40;border-bottom:1px solid var(--line);backdrop-filter:blur(8px);background:#0e0e0ef0;justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1.1rem;display:flex;position:sticky;top:0}.brand{flex:1;align-items:center;gap:.75rem;min-width:0;text-decoration:none;display:flex}.brand-logo{object-fit:contain;background:0 0;border-radius:5px;flex-shrink:0;width:52px;height:37px}.brand-name{font-family:var(--font-display);color:var(--gold);letter-spacing:-.01em;text-transform:none;flex-direction:column;font-size:clamp(1.05rem,3.5vw,1.3rem);font-weight:600;line-height:1.1;display:flex}.brand-name span{white-space:nowrap;display:block}.header-actions{flex-shrink:0;align-items:center;gap:.75rem;display:flex}.header-phone{color:var(--muted);font-family:var(--font-label);letter-spacing:.06em;font-size:.95rem;text-decoration:none}.header-phone-icon{color:var(--gold);padding:.35rem;display:none}.btn{border-radius:var(--radius);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;padding:1rem 1.45rem;font-size:1rem;font-weight:600;text-decoration:none;transition:filter .2s,transform .2s;display:inline-flex}.btn:hover{filter:brightness(1.05)}.btn:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.btn-gold{color:var(--black)}.btn-outline{color:var(--cream);background:0 0;border-color:#f7f3ea73}.btn-black{background:var(--black);color:var(--cream)}.btn-black-outline{color:var(--black);background:0 0;border-color:#0e0e0e8c}.btn.full{width:100%}.wrap{width:min(1100px,100% - 2rem);margin:0 auto}.wrap.narrow{width:min(760px,100% - 2rem)}.hero{align-items:end;min-height:min(88vh,820px);display:grid;position:relative;overflow:hidden}.hero-img{object-fit:cover;object-position:center 72%;width:100%;height:100%;position:absolute;inset:0}.hero-overlay{background:linear-gradient(90deg,#0e0e0eb8 0%,#0e0e0e59 55%,#0e0e0e33 100%),linear-gradient(#0e0e0e33 0%,#0e0e0e73 40%,#0e0e0ef0 100%);position:absolute;inset:0}.hero-inner{z-index:1;padding:2.75rem 1.1rem calc(2.25rem + var(--sticky-bar-h));width:min(820px,100%);animation:.35s both fadeUp;position:relative}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.hero-inner,.work-grid img{transition:none;animation:none}html{scroll-behavior:auto}}.badge{font-family:var(--font-label);letter-spacing:.12em;text-transform:uppercase;color:var(--gold);border:1px solid #c9a45c73;border-radius:999px;margin:0 0 1rem;padding:.4rem .75rem;font-size:.8rem;font-weight:600;display:inline-block}h1,h2,.pull{font-family:var(--font-display);letter-spacing:-.02em;font-weight:600;line-height:1.02}h1{color:var(--cream);text-wrap:balance;max-width:none;margin:0;font-size:clamp(3.4rem,10.5vw,5.75rem)}h1 em{color:var(--gold);font-style:italic;font-weight:600}h2{letter-spacing:-.02em;max-width:20ch;margin:0 0 1rem;font-size:clamp(2.15rem,5vw,3.1rem)}.subhead,.lede{color:var(--muted);max-width:36rem}.subhead{letter-spacing:0;margin:1.1rem 0 1.65rem;font-size:1.12rem;font-weight:400;line-height:1.55}.section-lede{color:#4a463e;max-width:42rem;margin:-.35rem 0 0;font-size:1.05rem}.hero-ctas{flex-wrap:wrap;gap:.75rem;display:flex}.micro{color:var(--muted);margin:1.1rem 0 0;font-size:.95rem}.wire{color:var(--gold);background:var(--black);align-items:center;gap:.75rem;padding:1.25rem 1.1rem;display:flex}.wire span{background:linear-gradient(90deg, transparent, var(--gold), transparent);opacity:.55;flex:1;height:1px}.section-cream{background:var(--cream);color:var(--ink);padding:4rem 0}.section-black{background:var(--black);padding:4rem 0}.section-charcoal{background:var(--charcoal);padding:4rem 0}.services h2,.steps h2,.faq h2,.area h2{color:var(--ink)}.steps-intro{color:#4a463e;margin:0 0 .25rem}.steps-list strong{font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;margin-bottom:.35rem;display:block}.steps-list span{color:#4a463e;font-size:.95rem;line-height:1.5}.service-grid{gap:1.75rem;margin-top:2rem;display:grid}.service-card{background:0 0;border:0;border-bottom:1px solid #1a1a1a1f;border-radius:0;padding-bottom:.25rem;overflow:visible}.service-card:last-child{border-bottom:0}.service-card img{aspect-ratio:4/3;object-fit:cover;object-position:center;border-radius:var(--radius);width:100%;height:auto}.service-card h3,.service-card p,.service-card a{padding-inline:0}.service-card h3{font-family:var(--font-display);letter-spacing:-.015em;margin:1rem 0 .4rem;font-size:1.75rem;font-weight:600;line-height:1.1}.service-card p{color:#4a463e;margin:0 0 .9rem}.service-card a{color:var(--gold-on-light);font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;margin-bottom:1.25rem;font-weight:600;text-decoration:none;display:inline-block}.work .lede{margin-top:-.25rem}.work-grid{grid-template-columns:1fr 1fr;gap:.85rem;margin-top:1.75rem;display:grid}.work-grid figure{border-radius:var(--radius);margin:0;position:relative;overflow:hidden}.work-grid img{aspect-ratio:4/3;object-fit:cover;object-position:center;width:100%;height:auto;transition:transform .45s;display:block}.work-grid figure:hover img{transform:scale(1.04)}.work-grid figcaption{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;background:linear-gradient(#0000,#000c);padding:.85rem .9rem;font-size:.78rem;position:absolute;bottom:0;left:0;right:0}.town-chips{flex-wrap:wrap;gap:.55rem;margin:1.75rem 0 0;padding:0;list-style:none;display:flex}.town-chips li{border-radius:var(--radius);font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;color:var(--ink);background:#ffffff73;border:1px solid #1a1a1a29;padding:.45rem .8rem;font-size:.82rem}.reviews-cta{font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:1.75rem 0 0}.reviews-cta a{color:var(--gold);margin-left:.35rem;text-decoration:none}.final-lede{color:#0e0e0ebf;margin:-.35rem 0 1.35rem;font-size:1.05rem}.final-cta{color:var(--black);text-align:center;padding:3.75rem 0}.final-cta h2{color:var(--black);margin:0 0 .5rem;max-width:18ch;margin-inline:auto}.final-cta .hero-ctas{justify-content:center}.boards{background-image:repeating-linear-gradient(90deg,#0000,#0000 28px,#ffffff08 28px 29px)}.pull{color:var(--cream);letter-spacing:-.02em;max-width:16ch;margin:0 0 2rem;font-size:clamp(2.15rem,5.2vw,3.3rem);font-style:italic;font-weight:600;line-height:1.05}.why-grid{gap:1.5rem;display:grid}.why-grid h3{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--gold);margin:.6rem 0 .35rem;font-size:.95rem}.why-grid p{color:var(--muted);margin:0}.icon{width:28px;height:28px;color:var(--gold)}.steps-list{counter-reset:step;gap:1rem;margin:1.75rem 0 0;padding:0;list-style:none;display:grid}.steps-list li{border-radius:var(--radius);counter-increment:step;background:#fff;border:1px solid #1a1a1a14;padding:1rem 1rem 1rem 3.5rem;position:relative}.steps-list li:before{content:counter(step);background:var(--black);width:1.6rem;height:1.6rem;color:var(--gold);font-family:var(--font-label);border-radius:50%;place-items:center;font-size:.85rem;display:grid;position:absolute;top:1rem;left:1rem}.reviews-meta{margin-top:-.35rem}.review-grid{gap:1rem;margin-top:1.75rem;display:grid}.review-grid blockquote{border-left:3px solid var(--gold);border-radius:0 var(--radius) var(--radius) 0;background:#0e0e0e73;margin:0;padding:1.35rem 1.25rem}.review-grid p{font-family:var(--font-display);letter-spacing:-.01em;margin:0 0 1rem;font-size:1.3rem;font-style:italic;font-weight:600;line-height:1.35}.review-grid footer{color:var(--muted);font-family:var(--font-label);letter-spacing:.06em;text-transform:uppercase;font-size:.8rem}.estimate h2{margin-bottom:.4rem}form{gap:.85rem;margin-top:1.25rem;display:grid}label{font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);gap:.35rem;font-size:.8rem;display:grid}input,select{border-radius:var(--radius);border:1px solid var(--line);background:var(--charcoal);width:100%;color:var(--cream);font-family:var(--font-body);text-transform:none;letter-spacing:normal;padding:.85rem .9rem;font-size:1rem}input[type=file]{padding:.65rem;font-size:.9rem}.form-note{color:var(--muted);margin:.35rem 0 0;font-size:.9rem}.form-confirm{border-radius:var(--radius);background:#c9a45c14;border:1px solid #c9a45c73;margin-top:1rem;padding:1rem}.form-confirm a{color:var(--gold)}.faq details{border-bottom:1px solid #1a1a1a1f;padding:.85rem 0}.faq summary{cursor:pointer;font-family:var(--font-label);letter-spacing:.05em;text-transform:uppercase;font-size:1rem;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq details p{color:#4a463e;margin:.7rem 0 .3rem}.site-footer{padding:3rem 0 calc(2rem + env(safe-area-inset-bottom));background:var(--black);border-top:1px solid var(--line);text-align:center;color:var(--muted)}.footer-logo{object-fit:contain;border-radius:5px;width:72px;height:auto;margin:0 auto .75rem}.footer-name{color:var(--gold);font-family:var(--font-display);letter-spacing:-.01em;text-transform:none;margin:0;font-size:1.45rem;font-weight:600}.site-footer a{color:var(--cream);text-decoration:none}.eky{margin-top:1.25rem;font-size:.85rem}.sticky-bar{z-index:50;background:var(--black);border-top:2px solid var(--gold);padding-bottom:env(safe-area-inset-bottom);grid-template-columns:1fr 1fr 1fr;display:none;position:fixed;bottom:0;left:0;right:0}.sticky-bar a{text-align:center;font-family:var(--font-label);letter-spacing:.08em;text-transform:uppercase;color:var(--cream);border-right:1px solid var(--line);padding:.95rem .4rem;font-size:.85rem;text-decoration:none}.sticky-bar a:last-child{border-right:0}.sticky-bar .estimate-link{color:var(--black);background:linear-gradient(135deg,#92632e 0%,#c9a45c 45%,#f3e7a6 70%,#b8914a 100%);font-weight:600}@media (width<=768px){:root{--sticky-bar-h:calc(58px + env(safe-area-inset-bottom,0px))}.header-phone,.header-actions .btn{display:none}.header-phone-icon{display:inline-flex}.sticky-bar{display:grid}.brand-logo{width:46px;height:32px}.hero{min-height:min(78svh,640px)}.hero-img{object-position:center 82%}.hero-inner{padding-top:2rem;padding-bottom:calc(1.35rem + var(--sticky-bar-h))}.micro{margin-bottom:.25rem}}@media (width>=769px){body{padding-bottom:0}.hero-inner{margin-left:max(0px,50% - 550px);padding:4rem 1.5rem 4.5rem}.service-grid{grid-template-columns:repeat(3,1fr);gap:2rem}.service-card{border-bottom:0;padding-bottom:0}.service-card a{margin-bottom:0}.work-grid{grid-template-columns:repeat(3,1fr);gap:1rem}h1{max-width:none}.why-grid{grid-template-columns:repeat(3,1fr)}.steps-list{grid-template-columns:repeat(4,1fr);gap:.85rem}.review-grid{grid-template-columns:repeat(3,1fr)}}
