/* Unified visual direction: architectural spacing, warm ivory, forest green. */
:root{--bg:#0c211c;--panel:#15332a;--gold:#e5b651;--cream:#f6f2e9;--muted:#c5cfc8;--line:rgba(229,182,81,.24);--header-height:132px}
body{font-family:'Avenir Next',Avenir,'Segoe UI',sans-serif;line-height:1.7;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Palatino Linotype','Book Antiqua',Palatino,Georgia,serif;font-weight:400;letter-spacing:-.035em}
h1{line-height:1.08}h2{line-height:1.13;font-size:clamp(2.2rem,4vw,4rem)}h3{letter-spacing:-.02em}
.eyebrow{font-weight:600;letter-spacing:.2em;font-size:11px;margin-bottom:16px}
.section{padding-block:clamp(64px,7.5vw,112px)}
.wrap{width:min(1280px,calc(100% - 72px))!important}
.gold-btn,.outline-btn{font-family:inherit;font-weight:650;letter-spacing:.07em;font-size:11px;border-radius:2px;padding:16px 23px;min-height:48px;transition:background .2s,transform .2s}
.gold-btn:hover{background:#f4d397;transform:translateY(-2px)}.outline-btn:hover{background:#e5b65115}
:focus-visible{outline:2px solid var(--gold);outline-offset:5px}
.skip-link{position:fixed;top:8px;left:12px;z-index:300;transform:translateY(-160%);padding:12px 22px;background:var(--gold);color:#09251b}.skip-link:focus{transform:none}
.site-header.lumi-premium-header{background:rgba(7,25,20,.98)!important;border-bottom:1px solid #e5b65138!important}
.site-header.lumi-premium-header .nav-inner{width:min(1440px,calc(100% - 56px))!important;grid-template-columns:230px minmax(0,1fr) 190px!important;gap:24px!important;min-height:132px!important;padding:8px 0!important}
.site-header.lumi-premium-header .brand{width:230px!important}
.site-header.lumi-premium-header .brand img{max-height:116px!important;height:auto!important;object-fit:contain}
.site-header.lumi-premium-header .navlinks{gap:18px!important}
.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action),.nav-areas>summary{font-family:'Avenir Next',Avenir,'Segoe UI',sans-serif!important;font-size:12px!important;font-weight:500!important;letter-spacing:.015em!important;text-transform:none;line-height:1.4!important}
.site-header.lumi-premium-header .header-actions .lumi-phone-cta{min-width:184px!important;border-radius:2px!important;box-shadow:none!important;background:transparent!important;border:1px solid #e5b65180!important}
.site-header.lumi-premium-header .lumi-phone-number{font-weight:600}.lumi-phone-overline{font-weight:500!important}
.nav-areas{position:relative;flex-shrink:0}.nav-areas>summary{cursor:pointer;list-style:none;display:flex;gap:8px;align-items:center;padding:12px 0;white-space:nowrap;color:var(--cream)}
.nav-areas>summary::-webkit-details-marker{display:none}.nav-areas>summary:after{content:'';width:6px;height:6px;border-right:1px solid var(--gold);border-bottom:1px solid var(--gold);transform:rotate(45deg);margin-top:-4px}.nav-areas[open]>summary{color:var(--gold)}.nav-areas[open]>summary:after{transform:rotate(225deg);margin-top:3px}
.area-dropdown{position:absolute;top:calc(100% + 14px);left:-22px;width:420px;display:grid;grid-template-columns:1fr 1fr;background:#102d24;border:1px solid #c8a55b66;padding:16px;box-shadow:0 22px 44px #0005}
.area-dropdown a{display:flex;align-items:center;min-height:44px;padding:9px 12px;font-size:13px!important;color:#f6f2e9;line-height:1.4}.area-dropdown a:hover,.area-dropdown a[aria-current]{background:#e5b65116;color:var(--gold)}.area-dropdown .all-areas{grid-column:1/-1;border-top:1px solid var(--line);margin-top:8px;padding-top:16px;color:var(--gold)}
.hero{min-height:690px!important;min-height:min(760px,86svh)!important}.hero:before{background:linear-gradient(90deg,#071d17f5 0%,#071d17cf 40%,#071d1738 100%)!important}
.hero .hero-content{padding:92px 0 110px!important}.hero .hero-content h1{font-size:clamp(3.1rem,5.8vw,6rem)!important;max-width:900px!important;font-weight:400!important;letter-spacing:-.045em!important;line-height:1.08!important;margin:15px 0 24px!important}.hero .hero-content h1 em{color:#edcc8d;font-style:italic;font-weight:400}
.hero .hero-content p{font-size:clamp(1rem,1.3vw,1.2rem);line-height:1.8;max-width:560px;color:#e0e7df}.hero-silent{font-size:10px!important;opacity:.8;border:0!important;padding:0!important;margin-top:25px!important}.hero-play{font:500 11px/1.5 'Segoe UI',sans-serif;letter-spacing:.12em;border-radius:2px}
.qualities{background:#102c23}.quality{font-weight:500;letter-spacing:.08em;font-size:10px}.qualities .wrap{padding:24px 0}
.home-refined #services{background:#f3efe6;color:#132f25}.home-refined #services .eyebrow{color:#826029}.home-refined #services .section-title p{color:#536359;max-width:580px}.home-refined #services .outline-btn{color:#16382a;border-color:#a78547}
.home-refined .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px}.home-refined .service-card{background:transparent;border:0;border-radius:0;box-shadow:none;position:relative}.home-refined .service-card>img{aspect-ratio:1.5;object-fit:cover}.home-refined .service-card .body{padding:22px 0 8px;border-bottom:1px solid #c7c7b7}.home-refined .service-card h3{font-size:1.65rem}.home-refined .service-card p{color:#526258;font-size:14px;min-height:54px;margin-top:12px}.service-number{font-size:10px;color:#826029;letter-spacing:.16em;margin-bottom:10px}.home-refined .service-card .gold-btn{background:transparent;border:0;border-radius:0;color:#244c37;padding:8px 0;min-height:40px;letter-spacing:.1em}.home-refined .service-card:hover{transform:translateY(-4px)}
.market-card,.showcase-card,.media-card,.lumi-curated-card{border-radius:2px!important;box-shadow:none!important}.showcase-copy h3{font-size:1.8rem}.section-title{margin-bottom:42px;gap:40px}.market-card{height:420px}.market-card h3{font-size:2.4rem}.step{background:#153228;padding:22px;border-top-width:1px}.step h3{font-size:1.6rem}.dark{background:#071b15}.lumi-footer{background:#061711}.closing-cta{text-align:center}.closing-cta .muted{max-width:650px;margin:24px auto}.closing-actions{justify-content:center}
.subhero{background:linear-gradient(120deg,#15362a,#091f18);padding-block:80px}.subhero h1{font-weight:400!important}.city-pill-grid>a{border-radius:2px!important}.lumi-curated-grid{gap:24px}
@media(min-width:1350px) and (max-width:1500px){.site-header.lumi-premium-header .nav-inner{grid-template-columns:210px minmax(0,1fr) 184px!important;gap:16px!important}.site-header.lumi-premium-header .brand{width:210px!important}.site-header.lumi-premium-header .navlinks{gap:13px!important}}
@media(max-width:1349px){:root{--header-height:96px}.site-header.lumi-premium-header .nav-inner{grid-template-columns:minmax(0,1fr) auto 44px!important;grid-template-areas:'brand actions toggle'!important;min-height:96px!important;gap:16px!important}.site-header.lumi-premium-header .brand{width:205px!important}.site-header.lumi-premium-header .brand img{max-height:80px!important}.site-header.lumi-premium-header .navlinks{gap:0!important}.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action){font-size:15px!important}.nav-areas{width:100%;border-bottom:1px solid #ffffff14}.nav-areas>summary{font-size:15px!important;padding:16px 6px;justify-content:space-between}.area-dropdown{position:static;width:100%;box-shadow:none;border:0;border-left:1px solid var(--gold);margin:0 0 14px;background:#14372a;padding:8px}.area-dropdown a{font-size:14px!important}.site-header.lumi-premium-header .navlinks{max-height:calc(100dvh - var(--header-height))!important}}
@media(max-width:850px){.home-refined .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wrap{width:calc(100% - 40px)!important}.market-card{height:340px}.hero .hero-content h1{font-size:clamp(3rem,8vw,4.6rem)!important}}
@media(max-width:640px){:root{--header-height:84px}.site-header.lumi-premium-header .nav-inner{width:calc(100% - 28px)!important;min-height:84px!important;gap:10px!important;grid-template-columns:minmax(0,1fr) auto 41px!important}.site-header.lumi-premium-header .brand{width:165px!important;max-width:100%!important}.site-header.lumi-premium-header .brand img{max-height:68px!important}.site-header.lumi-premium-header .header-actions .lumi-phone-cta{min-width:62px!important;padding:10px!important}.hero{min-height:610px!important}.hero .hero-content{padding:72px 0 100px!important}.hero .hero-content h1{font-size:clamp(2.7rem,10.3vw,4rem)!important;line-height:1.12!important}.hero .eyebrow{font-size:9px;max-width:240px;line-height:1.9}.hero .hero-content p{max-width:340px}.hero:before{background:linear-gradient(90deg,#071d17ed,#071d1780)!important}.home-refined .service-grid{grid-template-columns:1fr;gap:28px}.home-refined .service-card>img{aspect-ratio:1.6}.home-refined .service-card p{min-height:0}.section-title{gap:22px;margin-bottom:30px}.qualities .wrap{gap:12px}.quality{font-size:9px}.area-dropdown{grid-template-columns:1fr}.hero-actions .gold-btn,.hero-actions .outline-btn{font-size:10px;padding:14px 16px}.closing-actions{flex-wrap:wrap}.market-card{height:320px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gold-btn,.outline-btn,.service-card{transition:none!important}}

/* Persistent, solid masthead. Navigation hierarchy is identical on all pages. */
:root{--header-height:118px}
.site-header.lumi-premium-header{position:fixed!important;top:0!important;left:0!important;right:0!important;background:#021711!important;backdrop-filter:none!important;box-shadow:0 4px 20px #0003!important;z-index:100!important;border-bottom:1px solid #b9914666!important}
.site-header.lumi-premium-header .nav-inner{width:min(1400px,calc(100% - 64px))!important;min-height:118px!important;grid-template-columns:220px minmax(0,1fr) 190px!important;grid-template-areas:'brand navigation actions'!important;gap:30px!important;padding:10px 0!important}
.site-header.lumi-premium-header .brand{width:220px!important}.site-header.lumi-premium-header .brand img{width:100%!important;max-height:98px!important;object-position:left center!important;filter:none!important}
.site-header.lumi-premium-header .navlinks{gap:28px!important}
.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action),.nav-services>summary,.nav-areas>summary{font-size:14px!important;font-weight:500!important;color:#f6f2e9!important;letter-spacing:.015em!important;line-height:1.4!important;min-height:44px!important;align-items:center!important}
.nav-services{position:relative;flex-shrink:0}.nav-services>summary{display:flex;gap:8px;list-style:none;cursor:pointer;padding:12px 0;white-space:nowrap}.nav-services>summary::-webkit-details-marker{display:none}.nav-services>summary:after{content:'';width:6px;height:6px;border-right:1px solid var(--gold);border-bottom:1px solid var(--gold);transform:rotate(45deg);margin-top:-4px}
.nav-services[open]>summary,.nav-areas[open]>summary{color:#edcc8d!important}.nav-services[open]>summary:after{transform:rotate(225deg);margin-top:3px}
.services-dropdown{position:absolute;top:100%;left:-20px;min-width:230px;background:#102d24;border:1px solid #b9914666;padding:12px;box-shadow:0 20px 35px #0004}
.services-dropdown a{display:flex;align-items:center;min-height:46px;padding:10px 14px;font-size:14px!important;color:#f6f2e9}.services-dropdown a:hover{background:#e5b65116;color:var(--gold)}
.site-header.lumi-premium-header .header-actions .lumi-phone-cta{background:#e5b651!important;color:#10291e!important;border-color:#e5b651!important;border-radius:2px!important;min-height:52px!important}.site-header.lumi-premium-header .lumi-phone-number{font-size:16px!important}.site-header.lumi-premium-header .lumi-phone-overline{font-size:8px!important;letter-spacing:.12em!important}
@media(min-width:1100px){.site-header.lumi-premium-header .navlinks{display:flex!important;position:static!important;flex-direction:row!important;flex-wrap:nowrap!important;justify-content:center!important;gap:22px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important;overflow:visible!important;max-height:none!important}.site-header.lumi-premium-header .menu-toggle{display:none!important}.nav-areas{width:auto;border:0}.nav-areas>summary{justify-content:flex-start;padding:12px 0}.area-dropdown{position:absolute;top:100%;left:-100px;width:420px;grid-template-columns:1fr 1fr;background:#102d24;border:1px solid #b9914666;padding:16px;margin:0;box-shadow:0 20px 35px #0004}}
@media(min-width:1100px) and (max-width:1250px){.site-header.lumi-premium-header .nav-inner{grid-template-columns:180px minmax(0,1fr) 184px!important;gap:18px!important;width:calc(100% - 40px)!important}.site-header.lumi-premium-header .brand{width:180px!important}.site-header.lumi-premium-header .navlinks{gap:16px!important}.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action),.nav-services>summary,.nav-areas>summary{font-size:13px!important}}
@media(max-width:1099px){:root{--header-height:96px}.site-header.lumi-premium-header .nav-inner{min-height:96px!important;grid-template-columns:minmax(0,1fr) auto 44px!important;grid-template-areas:'brand actions toggle'!important;width:calc(100% - 40px)!important;gap:16px!important;padding:8px 0!important}.site-header.lumi-premium-header .brand{width:190px!important}.site-header.lumi-premium-header .brand img{max-height:80px!important}.site-header.lumi-premium-header .menu-toggle{display:flex!important;grid-area:toggle!important}.site-header.lumi-premium-header .navlinks{position:absolute!important;top:100%!important;left:0!important;right:0!important;display:none!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;padding:14px 24px 24px!important;background:#021711!important;max-height:calc(100dvh - var(--header-height))!important;overflow-y:auto!important;border-top:1px solid #b9914666!important}.site-header.lumi-premium-header .navlinks.open{display:flex!important}.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action){font-size:15px!important;padding:14px 6px!important}.nav-services,.nav-areas{width:100%;border-bottom:1px solid #ffffff14}.nav-services>summary,.nav-areas>summary{padding:16px 6px;justify-content:space-between;font-size:15px!important}.services-dropdown,.area-dropdown{position:static;width:100%;min-width:0;margin:0 0 12px;padding:8px;box-shadow:none;border:0;border-left:1px solid var(--gold);background:#123126}.site-header.lumi-premium-header .mobile-menu-action{display:block!important;padding:16px 6px!important;color:var(--gold)!important}}
@media(max-width:640px){:root{--header-height:84px}.site-header.lumi-premium-header .nav-inner{width:calc(100% - 28px)!important;min-height:84px!important;grid-template-columns:minmax(0,1fr) auto 41px!important;gap:10px!important}.site-header.lumi-premium-header .brand{width:155px!important;max-width:100%!important}.site-header.lumi-premium-header .brand img{max-height:68px!important}.site-header.lumi-premium-header .header-actions .lumi-phone-cta{min-width:66px!important;min-height:44px!important;padding:10px!important}.site-header.lumi-premium-header .lumi-phone-overline,.site-header.lumi-premium-header .lumi-phone-number{display:none!important}.site-header.lumi-premium-header .lumi-phone-mobile{display:block!important;color:#10291e!important}.site-header.lumi-premium-header .menu-toggle{min-height:44px!important}}

/* Readable estimate form at every viewport, including the confirmation state. */
.estimate-panel{font-size:18px;line-height:1.6}
.estimate-panel label{font-size:19px!important;font-weight:500;line-height:1.5;gap:10px;margin-bottom:22px;color:#f6f2e9}
.estimate-panel input,.estimate-panel select,.estimate-panel textarea{font-size:18px!important;line-height:1.5!important;min-height:56px;padding:14px 16px!important}
.estimate-panel input::placeholder,.estimate-panel textarea::placeholder{color:#536359;opacity:1}
.estimate-panel legend{font-size:28px!important;line-height:1.3;margin-bottom:24px}
.estimate-panel .form-progress,.estimate-panel .form-help,.estimate-panel small,.estimate-panel #estimate-error,.estimate-panel #estimate-copy-status{font-size:16px!important;line-height:1.65!important;letter-spacing:normal}
.estimate-panel .form-progress{font-weight:600;color:#edcc8d}
.estimate-panel .form-help{color:#d4dfd7}
.estimate-panel button,.estimate-panel .gold-btn,.estimate-panel .outline-btn{font-size:17px!important;line-height:1.4!important;min-height:54px;padding:15px 22px!important;letter-spacing:.025em!important;white-space:normal}
.estimate-panel pre{font-size:17px!important;line-height:1.7!important}
#estimate-ready p{font-size:18px!important;line-height:1.65}
@media(max-width:640px){.estimate-panel{padding:24px 18px 96px!important}.estimate-panel label{font-size:18px!important}.estimate-panel legend{font-size:26px!important}.estimate-step-actions{gap:14px}.estimate-step-actions button{flex:1 1 150px}}

/* Header reference supplied by Isac: black, spaced capitals, outlined phone. */
:root{--header-height:106px}
.site-header.lumi-premium-header{background:#000!important;border-bottom:1px solid #ffffff12!important;box-shadow:none!important}
.site-header.lumi-premium-header .nav-inner{width:min(1560px,calc(100% - 48px))!important;min-height:106px!important;grid-template-columns:190px minmax(0,1fr) 202px!important;gap:20px!important;padding:8px 0!important}
.site-header.lumi-premium-header .brand{width:190px!important}.site-header.lumi-premium-header .brand img{max-height:90px!important}
.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action),.site-header.lumi-premium-header .nav-services>summary,.site-header.lumi-premium-header .nav-areas>summary{font-family:'Avenir Next','Segoe UI',Arial,sans-serif!important;font-size:14px!important;font-weight:650!important;letter-spacing:.13em!important;text-transform:uppercase!important;color:#bdbdbd!important;line-height:1.4!important;min-height:44px!important}
.site-header.lumi-premium-header .navlinks>a[aria-current='page'],.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action):hover,.site-header.lumi-premium-header details[open]>summary{color:#d6a52b!important}
.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action)::after{background:#d6a52b!important;height:1px!important}
.site-header.lumi-premium-header .header-actions .lumi-phone-cta{border:1px solid #00a65a!important;background:transparent!important;min-width:202px!important;min-height:46px!important;padding:10px 16px!important;color:#12b76a!important;border-radius:0!important;justify-content:center!important;box-shadow:none!important}
.site-header.lumi-premium-header .lumi-phone-copy{align-items:center!important}.site-header.lumi-premium-header .lumi-phone-icon,.site-header.lumi-premium-header .lumi-phone-overline{display:none!important}.site-header.lumi-premium-header .lumi-phone-number{color:#12b76a!important;font-size:15px!important;font-weight:650!important;letter-spacing:.13em!important}.site-header.lumi-premium-header .header-actions .lumi-phone-cta:hover{background:#00a65a18!important}
.site-header.lumi-premium-header .area-dropdown,.site-header.lumi-premium-header .services-dropdown{background:#080808!important;border-color:#ffffff24!important}
@media(min-width:1200px){.site-header.lumi-premium-header .navlinks{gap:clamp(15px,1.7vw,30px)!important}}
@media(min-width:1100px) and (max-width:1199px){.site-header.lumi-premium-header .nav-inner{grid-template-columns:160px minmax(0,1fr) 180px!important;gap:14px!important;width:calc(100% - 36px)!important}.site-header.lumi-premium-header .brand{width:160px!important}.site-header.lumi-premium-header .header-actions .lumi-phone-cta{min-width:180px!important}.site-header.lumi-premium-header .navlinks{gap:14px!important}.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action),.site-header.lumi-premium-header .nav-services>summary,.site-header.lumi-premium-header .nav-areas>summary{font-size:12px!important;letter-spacing:.09em!important}}
@media(max-width:1099px){:root{--header-height:92px}.site-header.lumi-premium-header .nav-inner{grid-template-columns:minmax(0,1fr) auto 44px!important;min-height:92px!important;gap:16px!important}.site-header.lumi-premium-header .brand{width:175px!important}.site-header.lumi-premium-header .brand img{max-height:76px!important}.site-header.lumi-premium-header .navlinks{background:#000!important}.site-header.lumi-premium-header .navlinks>a:not(.mobile-menu-action),.site-header.lumi-premium-header .nav-services>summary,.site-header.lumi-premium-header .nav-areas>summary{font-size:15px!important;letter-spacing:.11em!important}}
@media(max-width:640px){:root{--header-height:82px}.site-header.lumi-premium-header .nav-inner{min-height:82px!important;width:calc(100% - 28px)!important;grid-template-columns:minmax(0,1fr) auto 41px!important;gap:10px!important}.site-header.lumi-premium-header .brand{width:145px!important}.site-header.lumi-premium-header .brand img{max-height:66px!important}.site-header.lumi-premium-header .header-actions .lumi-phone-cta{min-width:64px!important;padding:10px!important}.site-header.lumi-premium-header .lumi-phone-number{display:none!important}.site-header.lumi-premium-header .lumi-phone-mobile{color:#12b76a!important;letter-spacing:.08em!important}.site-header.lumi-premium-header .lumi-phone-copy{display:block!important}}

/* Show complete project photographs; keep portrait jobsite views uncropped. */
.project-showcase .showcase-cover{width:100%!important;height:310px!important;aspect-ratio:auto!important;object-fit:contain!important;background:#061711;transform:none!important}
.project-showcase .showcase-thumbnail{width:100%!important;height:140px!important;aspect-ratio:auto!important;object-fit:contain!important;background:#061711}
.project-showcase .showcase-open:has(.showcase-thumbnail) .showcase-count{bottom:158px}
.project-showcase .showcase-open:hover .showcase-cover{transform:none!important}
@media(max-width:600px){.project-showcase .showcase-cover{height:320px!important}.project-showcase .showcase-thumbnail{height:130px!important}.project-showcase .showcase-open:has(.showcase-thumbnail) .showcase-count{bottom:148px}}
@media(min-width:1100px){.site-header.lumi-premium-header .navlinks{align-items:center!important}.site-header.lumi-premium-header .navlinks .mobile-menu-action{display:none!important}.site-header.lumi-premium-header .navlinks>.nav-services,.site-header.lumi-premium-header .navlinks>.nav-areas{align-self:center!important}}

/* Construction estimate form: preserve the site's panel and readable controls. */
.hubspot-estimate[hidden],#estimate-form[hidden],.estimate-alternative[hidden]{display:none!important}
.hubspot-estimate{min-height:360px;width:100%;overflow:visible}
.hubspot-estimate iframe{width:100%!important;max-width:100%;border:0}
.estimate-alternative{display:block;margin:22px auto 0;padding:10px 14px;background:none;border:1px solid currentColor;border-radius:4px;color:inherit;font:inherit;cursor:pointer}
