:root{
  --burgundy:#5B0F1A;
  --burgundy-dark:#3D0911;
  --charcoal:#262626;
  --charcoal-2:#151515;
  --champagne:#C8A45A;
  --champagne-light:#E5CC92;
  --ivory:#F7F4EC;
  --paper:#FFFCF6;
  --muted:#756E65;
  --line:rgba(38,38,38,.12);
  --shadow:0 18px 50px rgba(30,18,12,.12);
  --radius:18px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ivory);color:var(--charcoal);font-family:"DM Sans",system-ui,-apple-system,sans-serif;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font:inherit}
.container{width:min(1180px,calc(100% - 40px));margin-inline:auto}
.skip-link{position:absolute;left:-9999px;top:8px;background:white;color:#111;padding:10px 14px;z-index:999}.skip-link:focus{left:8px}
.topbar{background:var(--charcoal-2);color:#efe9df;font-size:.82rem}.topbar-inner{min-height:38px;display:flex;align-items:center;justify-content:space-between;gap:20px}.topbar-links{display:flex;gap:22px}.topbar a:hover{color:var(--champagne-light)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(247,244,236,.97);backdrop-filter:blur(14px);border-bottom:1px solid rgba(91,15,26,.08)}
.nav-wrap{height:84px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand img{width:300px;height:auto}.site-nav{display:flex;align-items:center;gap:26px;font-size:.92rem;font-weight:600}.site-nav>a:not(.btn){position:relative}.site-nav>a:not(.btn)::after{content:"";position:absolute;height:2px;background:var(--champagne);left:0;right:100%;bottom:-7px;transition:.25s}.site-nav>a:not(.btn):hover::after{right:0}.nav-toggle{display:none;border:0;background:transparent;padding:8px}.nav-toggle span{display:block;width:26px;height:2px;background:var(--burgundy);margin:5px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;border-radius:8px;background:var(--burgundy);color:white;font-weight:700;border:1px solid var(--burgundy);transition:.2s;cursor:pointer;box-shadow:0 8px 22px rgba(91,15,26,.18)}.btn:hover{transform:translateY(-1px);background:#701321}.btn-small{min-height:42px;padding:0 18px}.btn-outline-light{background:rgba(18,18,18,.18);border-color:rgba(255,255,255,.68);box-shadow:none}.btn-outline-light:hover{background:white;color:var(--burgundy)}.btn-dark{background:var(--charcoal-2);border-color:var(--charcoal-2)}
.hero{position:relative;min-height:650px;display:flex;align-items:center;overflow:hidden;background:#141414}.hero-media{position:absolute;inset:0;background-image:url('https://images.unsplash.com/photo-1774836435838-2a6e7ef30206?auto=format&fit=crop&fm=jpg&q=78&w=2400');background-size:cover;background-position:center 48%;transform:scale(1.015)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,14,17,.91) 0%,rgba(22,18,18,.73) 36%,rgba(14,14,14,.22) 68%,rgba(14,14,14,.08) 100%)}.hero-content{position:relative;z-index:2;padding-block:86px}.hero-copy{max-width:650px;color:white}.eyebrow{margin:0 0 14px;color:var(--champagne-light);text-transform:uppercase;letter-spacing:.16em;font-weight:700;font-size:.78rem}.eyebrow.dark{color:#9B742A}.hero h1,.section-heading h2,.showcase-copy h2,.area-copy h2,.estimate-copy h2,.contact-section h2{font-family:"Libre Baskerville",serif;line-height:1.12;letter-spacing:-.025em}.hero h1{font-size:clamp(3rem,6vw,5.2rem);margin:.1em 0 .32em;max-width:780px}.hero h1 em{color:var(--champagne-light);font-style:normal}.hero-lead{font-size:1.16rem;max-width:620px;color:#f2ece6;margin:0 0 30px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-notes{margin-top:38px;display:flex;flex-wrap:wrap;gap:14px 28px;color:#e7e1da;font-size:.88rem}.hero-notes span::before{content:"✓";color:var(--champagne-light);font-weight:800;margin-right:8px}
.trust-strip{background:var(--burgundy);color:white;border-top:1px solid #7b2630}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid article{display:flex;gap:15px;padding:26px 22px;border-right:1px solid rgba(255,255,255,.14)}.trust-grid article:first-child{border-left:1px solid rgba(255,255,255,.14)}.trust-icon{width:42px;height:42px;border:1px solid rgba(229,204,146,.75);color:var(--champagne-light);border-radius:50%;display:grid;place-items:center;flex:0 0 auto;font-weight:700;font-size:.75rem}.trust-grid strong{font-family:"Libre Baskerville",serif;font-size:1rem}.trust-grid p{margin:4px 0 0;color:#eadde0;font-size:.82rem;line-height:1.45}
.section{padding:100px 0}.section-heading{max-width:760px;margin:0 auto 48px;text-align:center}.section-heading.compact{margin-bottom:38px}.section-heading h2{font-size:clamp(2.25rem,4vw,3.45rem);margin:0 0 18px;color:#211c1b}.section-heading>p:last-child{color:var(--muted);font-size:1.05rem}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{background:rgba(255,252,246,.84);border:1px solid rgba(91,15,26,.12);padding:30px 28px;border-radius:14px;transition:.25s;min-height:230px}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(200,164,90,.6)}.service-icon{width:50px;height:50px;border-radius:12px;display:grid;place-items:center;background:var(--burgundy);color:var(--champagne-light);font-size:1.35rem;margin-bottom:20px}.service-card h3{font-family:"Libre Baskerville",serif;margin:0 0 10px;font-size:1.22rem}.service-card p{margin:0;color:var(--muted)}
.showcase-section{padding:105px 0;background:var(--paper);border-block:1px solid rgba(38,38,38,.07)}.showcase-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}.showcase-image{position:relative}.showcase-image img{width:100%;height:540px;object-fit:cover;border-radius:18px;box-shadow:var(--shadow);filter:saturate(.82) contrast(1.03)}.image-badge{position:absolute;right:-25px;bottom:30px;background:white;border:1px solid rgba(91,15,26,.1);box-shadow:var(--shadow);border-radius:12px;padding:13px 18px;display:flex;align-items:center;gap:10px;font-weight:700}.image-badge span{width:33px;height:33px;border-radius:50%;background:var(--burgundy);color:var(--champagne-light);display:grid;place-items:center;font-family:"Libre Baskerville",serif}.showcase-copy h2{font-size:clamp(2.35rem,4.4vw,3.7rem);margin:0 0 20px}.lead-copy{font-size:1.08rem;color:#5f5850}.feature-list{margin:30px 0}.feature-list>div{display:flex;gap:15px;padding:18px 0;border-top:1px solid var(--line)}.feature-list>div:last-child{border-bottom:1px solid var(--line)}.feature-list span{color:var(--burgundy);font-weight:800}.feature-list p{margin:0;color:#5e574f}.feature-list strong{color:#26211f}.text-link{font-weight:700;color:var(--burgundy)}.text-link span{color:var(--champagne);padding-left:6px}
.projects-section{background:linear-gradient(#f7f4ec,#f3ede3)}.photo-grid{display:grid;grid-template-columns:1.3fr .8fr .8fr;gap:18px}.photo-card{position:relative;overflow:hidden;border-radius:16px;min-height:380px;background:#ddd;margin:0}.photo-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.photo-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,14,14,.78),transparent 55%)}.photo-card figcaption{position:absolute;left:24px;right:24px;bottom:22px;color:white;z-index:2}.photo-card figcaption strong{display:block;font-family:"Libre Baskerville",serif;font-size:1.25rem}.photo-card figcaption span{font-size:.9rem;color:#eee5df}.quote-card{background:var(--burgundy);color:white;padding:34px;display:flex;flex-direction:column;justify-content:flex-end}.quote-card::after{display:none}.quote-card .quote-mark{font-family:Georgia,serif;font-size:4rem;line-height:.7;color:var(--champagne)}.quote-card p{font-family:"Libre Baskerville",serif;font-size:1.3rem;line-height:1.5}.quote-card span{color:#e5d9dc;font-size:.85rem}
.process-section{padding:105px 0;background:var(--charcoal-2);color:white}.section-heading.light h2{color:white}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.process-card{border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:28px;background:rgba(255,255,255,.03)}.process-card span{width:38px;height:38px;display:grid;place-items:center;border:1px solid var(--champagne);color:var(--champagne-light);border-radius:50%;margin-bottom:28px}.process-card h3{font-family:"Libre Baskerville",serif;font-size:1.1rem;margin:0 0 10px}.process-card p{margin:0;color:#cfc9c3;font-size:.9rem}
.area-section{background:var(--paper)}.area-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:center}.area-copy h2{font-size:clamp(2.4rem,4.3vw,3.7rem);margin:0 0 18px}.area-copy p{max-width:650px;color:var(--muted);font-size:1.04rem;margin-bottom:26px}.area-panel{background:var(--burgundy);color:white;padding:44px;border-radius:18px;box-shadow:var(--shadow);position:relative;overflow:hidden}.area-panel::after{content:"V";position:absolute;right:-10px;bottom:-72px;font:700 230px/1 Georgia,serif;color:rgba(255,255,255,.04)}.pin{font-size:2.4rem;color:var(--champagne-light)}.area-panel strong{display:block;font:700 1.8rem "Libre Baskerville",serif;margin-top:10px}.area-panel p{color:#eadde0;max-width:320px}.area-panel a{display:inline-block;margin-top:12px;color:var(--champagne-light);font-weight:700}
.estimate-section{padding:100px 0;background:linear-gradient(135deg,#3d0911,#5B0F1A 58%,#381016);color:white}.estimate-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.estimate-copy h2{font-size:clamp(2.5rem,4.5vw,3.8rem);margin:0 0 16px}.estimate-copy>p:not(.eyebrow){color:#eadde0;max-width:500px}.contact-stack{display:grid;gap:12px;margin-top:30px}.contact-stack a{display:flex;gap:14px;align-items:center;border:1px solid rgba(255,255,255,.14);padding:14px 16px;border-radius:10px;background:rgba(255,255,255,.04)}.contact-stack span{color:var(--champagne-light)}.contact-stack small{display:block;color:#d5c8cb}.contact-stack strong{font-size:.96rem}.estimate-form{background:var(--paper);color:var(--charcoal);padding:30px;border-radius:16px;box-shadow:0 22px 60px rgba(0,0,0,.2)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.estimate-form label{display:block;font-size:.78rem;font-weight:700;color:#645e57;margin-bottom:14px}.estimate-form input,.estimate-form select,.estimate-form textarea{display:block;width:100%;margin-top:7px;border:1px solid rgba(38,38,38,.17);border-radius:8px;background:white;padding:13px 14px;color:#222;outline:none;transition:.2s}.estimate-form input:focus,.estimate-form select:focus,.estimate-form textarea:focus{border-color:var(--champagne);box-shadow:0 0 0 3px rgba(200,164,90,.16)}.estimate-form textarea{resize:vertical}.form-submit{width:100%;margin-top:4px}.form-note{font-size:.75rem;color:#7a746d;text-align:center;margin:12px 0 0}
.contact-section{padding:75px 0;background:#efe8dc}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end}.contact-section h2{font-size:2.4rem;margin:0 0 10px}.contact-section p{color:var(--muted);max-width:600px}.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-actions a{padding:16px;border:1px solid rgba(38,38,38,.1);border-radius:10px;background:rgba(255,255,255,.55)}.contact-actions a:last-child{grid-column:1/-1}.contact-actions small{display:block;color:#81776e}.contact-actions strong{color:var(--burgundy)}
.site-footer{background:#171717;color:#eee8df;padding:60px 0 24px}.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:42px}.footer-brand img{width:280px;filter:brightness(1.15)}.footer-brand p{color:#bdb5ae}.footer-grid>div:not(.footer-brand){display:flex;flex-direction:column;gap:9px}.footer-grid strong{color:var(--champagne-light);margin-bottom:7px}.footer-grid a{color:#cfc7c0;font-size:.9rem}.footer-grid a:hover{color:white}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:38px;padding-top:20px;display:flex;justify-content:space-between;color:#958e88;font-size:.78rem}.mobile-actions{display:none}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;transform:none}
@media (max-width:980px){.topbar-inner>span{display:none}.topbar-inner{justify-content:center}.nav-toggle{display:block}.site-nav{position:absolute;left:20px;right:20px;top:78px;background:var(--paper);border:1px solid rgba(38,38,38,.1);border-radius:14px;padding:18px;box-shadow:var(--shadow);display:none;flex-direction:column;align-items:stretch;gap:4px}.site-nav.open{display:flex}.site-nav a{padding:10px 6px}.site-nav .btn{margin-top:8px}.brand img{width:250px}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid article:nth-child(3){border-left:1px solid rgba(255,255,255,.14)}.service-grid{grid-template-columns:1fr 1fr}.showcase-grid,.area-grid,.estimate-grid,.contact-grid{grid-template-columns:1fr;gap:42px}.showcase-image{max-width:680px}.image-badge{right:18px}.photo-grid{grid-template-columns:1fr 1fr}.photo-card.large{grid-column:1/-1;min-height:440px}.process-grid{grid-template-columns:1fr 1fr}.footer-grid{grid-template-columns:1.4fr 1fr 1fr}.footer-grid>div:last-child{grid-column:2/4}.contact-actions{max-width:700px}}
@media (max-width:640px){body{padding-bottom:62px}.container{width:min(100% - 28px,1180px)}.topbar{display:none}.nav-wrap{height:72px}.brand img{width:220px}.hero{min-height:610px}.hero-content{padding-block:70px}.hero-overlay{background:linear-gradient(90deg,rgba(12,12,14,.92),rgba(18,15,15,.67) 75%,rgba(14,14,14,.42))}.hero h1{font-size:3.05rem}.hero-lead{font-size:1rem}.hero-actions{display:grid;grid-template-columns:1fr}.hero-notes{gap:8px 20px}.trust-grid,.service-grid,.process-grid,.photo-grid,.form-row,.contact-actions,.footer-grid{grid-template-columns:1fr}.trust-grid article,.trust-grid article:first-child,.trust-grid article:nth-child(3){border-left:0;border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}.section,.showcase-section,.process-section,.estimate-section{padding:76px 0}.section-heading{margin-bottom:34px}.section-heading h2{font-size:2.25rem}.service-card{min-height:auto}.showcase-grid{gap:38px}.showcase-image img{height:380px}.image-badge{position:relative;right:auto;bottom:auto;margin:-28px 14px 0}.photo-card,.photo-card.large{min-height:360px;grid-column:auto}.process-grid{gap:12px}.area-panel{padding:32px}.estimate-form{padding:22px 18px}.contact-actions a:last-child{grid-column:auto}.footer-grid>div:last-child{grid-column:auto}.footer-brand img{width:240px}.footer-bottom{flex-direction:column;gap:8px}.mobile-actions{position:fixed;display:grid;grid-template-columns:1fr 1fr 1.15fr;left:0;right:0;bottom:0;z-index:70;background:#151515;border-top:1px solid #333}.mobile-actions a{padding:14px 8px;text-align:center;color:white;font-size:.82rem;font-weight:700;border-right:1px solid #353535}.mobile-actions a:last-child{background:var(--burgundy);color:var(--champagne-light);border-right:0}.reveal{opacity:1;transform:none}}


/* Multi-page launch styles */
.subhero{position:relative;min-height:500px;display:flex;align-items:center;color:white;background:#171717;overflow:hidden;background-size:cover;background-position:center}.subhero::before{content:"";position:absolute;inset:0;background-size:cover;background-position:center}.subhero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,12,14,.94) 0%,rgba(30,20,20,.78) 45%,rgba(12,12,12,.28) 100%)}.subhero-inner{position:relative;z-index:2;padding:85px 0;max-width:760px;margin-left:max(0px,calc((100vw - 1180px)/2))}.subhero h1{font-family:"Libre Baskerville",serif;font-size:clamp(2.8rem,5.4vw,4.8rem);line-height:1.1;letter-spacing:-.03em;margin:.05em 0 .28em}.subhero p:not(.eyebrow){font-size:1.1rem;color:#eee7df;max-width:700px}.subhero-services::before{background-image:url('https://images.unsplash.com/photo-1562259929-b4e1fd3aef09?auto=format&fit=crop&fm=jpg&q=80&w=2400')}.subhero-painting::before{background-image:url('https://images.unsplash.com/photo-1562259929-b4e1fd3aef09?auto=format&fit=crop&fm=jpg&q=80&w=2400')}.subhero-improvements::before{background-image:url('https://images.unsplash.com/photo-1781183955329-6edb3d53b8d9?auto=format&fit=crop&fm=jpg&q=80&w=2400')}.subhero-about::before{background-image:url('https://images.unsplash.com/photo-1774836435838-2a6e7ef30206?auto=format&fit=crop&fm=jpg&q=80&w=2400')}.subhero-areas::before{background-image:url('https://images.unsplash.com/photo-1774836435838-2a6e7ef30206?auto=format&fit=crop&fm=jpg&q=80&w=2400')}.subhero-contact::before{background-image:url('https://images.unsplash.com/photo-1774836435838-2a6e7ef30206?auto=format&fit=crop&fm=jpg&q=80&w=2400')}.detailed-grid .service-card{min-height:300px;display:flex;flex-direction:column}.detailed-grid .text-link{margin-top:auto;padding-top:18px}.text-link{color:var(--burgundy);font-weight:700}.text-link:hover{color:#8a1826}.split-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.split-grid.reverse> :first-child{order:1}.page-h2{font-family:"Libre Baskerville",serif;font-size:clamp(2.3rem,4vw,3.5rem);line-height:1.15;margin:0 0 18px}.check-list{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px}.check-list li{position:relative;padding-left:26px;color:#5e5750}.check-list li::before{content:"✓";position:absolute;left:0;color:var(--burgundy);font-weight:800}.feature-photo img{width:100%;height:520px;object-fit:cover;border-radius:18px;box-shadow:var(--shadow)}.alt-section{background:var(--paper);border-block:1px solid rgba(38,38,38,.07)}.photo-banner,.cta-band{background:var(--charcoal-2);color:white;padding:70px 0}.photo-banner-grid,.cta-band-inner{display:flex;align-items:center;justify-content:space-between;gap:50px}.photo-banner h2,.cta-band h2{font-family:"Libre Baskerville",serif;font-size:clamp(2rem,3.8vw,3.2rem);line-height:1.2;margin:0}.photo-banner p:not(.eyebrow){color:#cfc8c1;max-width:720px}.project-type-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.project-type{padding:34px;border-radius:16px;background:var(--paper);border:1px solid rgba(91,15,26,.12)}.project-type span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--burgundy);color:var(--champagne-light);font-size:.78rem;font-weight:700}.project-type h3{font-family:"Libre Baskerville",serif;font-size:1.3rem}.project-type p{color:var(--muted)}.values-panel{display:grid;grid-template-columns:1fr;gap:14px}.values-panel>div{padding:24px 26px;background:var(--paper);border:1px solid rgba(91,15,26,.12);border-radius:14px}.values-panel span{color:var(--champagne);font-weight:800}.values-panel h3{font-family:"Libre Baskerville",serif;margin:5px 0 5px}.values-panel p{margin:0;color:var(--muted)}.area-page-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:70px;align-items:center}.area-list{display:flex;flex-wrap:wrap;gap:10px;margin:28px 0}.area-list span{background:#efe7da;border:1px solid rgba(91,15,26,.12);padding:9px 14px;border-radius:999px;font-size:.9rem;font-weight:600}.small-note{color:var(--muted);font-size:.92rem}.area-visual{background:var(--burgundy);color:white;border-radius:18px;padding:48px;box-shadow:var(--shadow)}.big-pin{font-size:3rem;color:var(--champagne-light)}.area-visual strong{display:block;font:700 2rem "Libre Baskerville",serif;margin:12px 0}.area-visual p{color:#eadde0}.standalone-estimate{padding-top:100px}.contact-info-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.info-card{background:var(--paper);border:1px solid rgba(91,15,26,.12);border-radius:16px;padding:30px}.info-card>span{color:#9B742A;text-transform:uppercase;letter-spacing:.12em;font-size:.74rem;font-weight:700}.info-card h3{font-family:"Libre Baskerville",serif;font-size:1.3rem;overflow-wrap:anywhere}.info-card p{color:var(--muted)}
@media(max-width:980px){.subhero-inner{margin-left:auto}.split-grid,.area-page-grid{grid-template-columns:1fr}.project-type-grid,.contact-info-grid{grid-template-columns:1fr 1fr}.photo-banner-grid,.cta-band-inner{align-items:flex-start;flex-direction:column}.feature-photo img{height:440px}}
@media(max-width:640px){.subhero{min-height:520px}.subhero-inner{padding:70px 0}.subhero h1{font-size:2.7rem}.check-list,.project-type-grid,.contact-info-grid{grid-template-columns:1fr}.feature-photo img{height:350px}.split-grid.reverse> :first-child{order:0}.photo-banner,.cta-band{padding:58px 0}}
