@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--green:#153e2d;--deep:#09251b;--gold:#d4b36b;--paper:#f6f7f3;--ink:#172b22;--muted:#637067}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.7}h1,h2,h3{font-family:Manrope,sans-serif;line-height:1.12;letter-spacing:-.04em;margin:0 0 24px}h1{font-size:clamp(3rem,6vw,6.2rem);font-weight:700}h2{font-size:clamp(2.2rem,4vw,4rem);font-weight:600}h3{font-size:1.45rem}p{margin:0 0 24px}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{max-width:100%;object-fit:cover}section{padding:100px max(7%,calc((100vw - 1280px)/2));}section p{max-width:650px;color:var(--muted)}.eyebrow{font-size:14px;font-weight:700;letter-spacing:.16em;color:#8d733b!important;margin-bottom:20px}.topline{background:var(--deep);color:#dce8df;display:flex;justify-content:space-between;padding:10px 7%;font-size:14px}header{background:#fff;display:flex;align-items:center;justify-content:space-between;padding:10px 6%;height:102px;position:sticky;top:0;z-index:30;border-bottom:1px solid #e0e7df}.brand{width:180px}.brand img{width:100%;height:86px;object-fit:contain}nav{display:flex;gap:24px}nav a{font-size:14px;font-weight:600;position:relative}nav a.active:after,nav a:hover:after{content:'';height:2px;background:var(--gold);position:absolute;bottom:-8px;left:0;right:0}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:#fff;border:1px solid var(--green);padding:15px 24px;font-size:14px;font-weight:700;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s}.button:before{content:'';position:absolute;inset:-100% 0;width:30%;background:#ffffff30;transform:translateX(-200%) rotate(20deg)}.button:hover{transform:translateY(-3px);box-shadow:0 12px 25px #0002}.button:hover:before{transition:transform .65s;transform:translateX(500%) rotate(20deg)}.gold{background:var(--gold);border-color:var(--gold);color:var(--deep)}.outline{background:transparent;border-color:#ffffff80;color:white}.menu-toggle{display:none}.hero{height:760px;min-height:640px;padding-top:105px;position:relative;background:var(--deep);color:white;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-position:50% 45%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,29,19,.92) 0%,rgba(5,29,19,.64) 55%,rgba(5,29,19,.12)),linear-gradient(0deg,#09251b90,transparent 45%)}.hero-content{position:relative;z-index:2;max-width:900px}.hero h1{font-size:clamp(3.1rem,5.7vw,5.8rem);max-width:960px}.hero h1 em{color:#e2c98f;font-style:normal}.hero p{color:#e0e8e0;max-width:590px;font-size:18px}.hero .eyebrow{color:#e2c98f!important}.hero-actions{display:flex;gap:16px;margin-top:34px}.hero-note{position:absolute;right:8%;bottom:140px;z-index:2;border-top:1px solid var(--gold);padding-top:10px;display:flex;align-items:center;gap:15px}.hero-note span{font-size:76px;line-height:1}.hero-note p{font-size:12px;letter-spacing:.14em;margin:0;color:#fff}.hero-bottom{position:absolute;bottom:30px;left:7%;right:7%;display:flex;gap:60px;border-top:1px solid #ffffff44;padding-top:20px;z-index:2;font-size:12px;letter-spacing:.12em}.city-ribbon{background:var(--gold);padding:20px 0;overflow:hidden}.city-ribbon>div{display:flex;white-space:nowrap;width:max-content;animation:marquee 48s linear infinite}.city-ribbon:hover>div{animation-play-state:paused}.city-ribbon span{font-size:15px;font-weight:600}.city-ribbon b{margin:0 36px;color:#6a542b}@keyframes marquee{to{transform:translateX(-50%)}}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.image-frame{position:relative;padding:12px;border:1px solid #c2ad77}.image-frame:after{content:'';position:absolute;width:80%;height:80%;background:var(--green);z-index:-1;left:-20px;bottom:-20px}.image-frame img{display:block;width:100%;height:480px}.image-caption{display:block;background:var(--green);color:#e6d6ae;font-size:12px;letter-spacing:.15em;padding:16px 18px}.mini-stats{display:flex;gap:32px;border-top:1px solid #cdd5cd;padding-top:24px;margin-top:34px}.mini-stats strong{display:block;font-size:20px}.mini-stats span{font-size:12px;color:var(--muted)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:40px}.section-heading h2{margin-bottom:0}.text-link{font-weight:700;border-bottom:1px solid var(--gold);padding-bottom:8px;font-size:14px;display:inline-block}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.flip-card{height:370px;perspective:1200px}.flip-inner{width:100%;height:100%;position:relative;transform-style:preserve-3d;transition:transform .7s}.flip-card.flipped .flip-inner{transform:rotateY(180deg)}@media(hover:hover){.flip-card:hover .flip-inner{transform:rotateY(180deg)}}.flip-front,.flip-back{position:absolute;inset:0;backface-visibility:hidden;overflow:hidden;border:1px solid #c9b683}.flip-front img{width:100%;height:100%;transition:transform 1s}.flip-front:after{content:'';inset:0;position:absolute;background:linear-gradient(transparent 35%,#071f15e8)}.card-title{position:absolute;bottom:22px;left:24px;right:20px;z-index:2;display:flex;align-items:center;gap:12px;color:white}.card-title span{color:#e2c98f;font-size:12px;align-self:start}.card-title h3{font-size:24px;flex:1;margin:0;letter-spacing:-.03em}.flip-toggle{width:38px;height:38px;border:1px solid #d4b36b70;color:#fff;background:#ffffff15;border-radius:50%;font-size:22px}.flip-back{transform:rotateY(180deg);background:var(--green);color:#fff;padding:35px;display:flex;flex-direction:column;justify-content:center}.flip-back p{color:#e0e8df;font-size:15px}.flip-back .eyebrow{font-size:12px;color:#e2c98f!important}.flip-back .button{border-color:var(--gold)}.back{background:none;border:0;border-radius:0;width:auto;font-size:13px;text-decoration:underline;align-self:start;margin-top:12px}.service-monogram{height:100%;background:linear-gradient(135deg,#315744,#102c21);display:flex;align-items:center;justify-content:center;flex-direction:column;color:#d4b36b;font:70px Manrope}.service-monogram span{font:12px 'DM Sans';letter-spacing:.2em}.video-section{background:#e8ede5}.video-card{position:relative;height:370px;border:1px solid #bda36a;overflow:hidden}.video-card>img{width:100%;height:100%;filter:brightness(.7)}.video-card>span{position:absolute;bottom:20px;left:24px;color:#fff;font-size:12px;letter-spacing:.16em}.video-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:78px;height:78px;border:1px solid #ead9b3;color:var(--deep);background:var(--gold);border-radius:50%;font-size:22px;transition:scale .2s}.video-play:hover{scale:1.1}.video-card iframe,.video-card video{height:100%;width:100%;border:0;object-fit:contain;background:#000}.work-section{background:var(--deep);color:white}.work-section .eyebrow{color:var(--gold)!important}.gallery-track{display:flex;overflow:auto;gap:22px;scroll-snap-type:x mandatory;scrollbar-width:thin;padding-bottom:25px}.project-photo{border:1px solid #bca66e66;padding:0;background:transparent;position:relative;flex:0 0 34%;height:360px;overflow:hidden;scroll-snap-align:start}.project-photo img{height:100%;width:100%;transition:transform .6s}.project-photo:hover img{transform:scale(1.06)}.project-photo span{position:absolute;bottom:0;left:0;right:0;padding:17px;text-align:left;font-size:12px;letter-spacing:.1em;background:linear-gradient(transparent,#000b);color:white}.carousel-controls{display:flex;gap:10px}.carousel-controls button{height:45px;width:45px;background:none;border:1px solid #bca66e;color:white;font-size:25px}.coverage-preview{text-align:center;background:#e9eee7}.coverage-preview p{margin-left:auto;margin-right:auto}.city-chips{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;max-width:950px;margin:35px auto}.city-chips span{border:1px solid #bdcbbd;padding:12px 20px;font-size:14px;background:#ffffff70}.faq{max-width:1280px;margin:auto}.faq details{padding:22px 0;border-bottom:1px solid #cbd4c8}.faq summary{font-weight:600;cursor:pointer}.faq details p{padding-top:20px}.closing{background:var(--green);color:white;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--gold)}.closing .eyebrow{color:var(--gold)!important}.closing h2{margin-bottom:0}footer{padding:65px 7% 25px;background:var(--deep);color:#d4dfd6;display:grid;grid-template-columns:1.1fr 1.3fr 1.2fr .8fr;gap:35px;font-size:14px}footer img{background:white}footer h3{font-size:16px;letter-spacing:0;color:#e3cb93}footer a{display:block;overflow-wrap:anywhere;margin-bottom:8px}footer a:hover{color:var(--gold)}footer p{font-size:14px;margin-top:16px}.copyright{grid-column:1/-1;border-top:1px solid #ffffff20;padding-top:25px;font-size:12px}.social-rail{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:40;background:var(--deep);padding:8px;border:1px solid var(--gold);border-right:0;display:flex;flex-direction:column;gap:4px}.social-rail a{width:34px;height:34px;display:flex;align-items:center;justify-content:center;color:#e2cf9c;font-weight:700;font-size:16px;transition:background .2s}.social-rail a:hover{background:var(--gold);color:var(--deep)}.page-intro{background:var(--green);color:#fff;padding-top:80px;padding-bottom:80px;border-bottom:1px solid var(--gold)}.page-intro h1{font-size:clamp(3rem,6vw,5.8rem)}.page-intro p{color:#cfded2}.page-intro .eyebrow{color:var(--gold)!important}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;background:#e8ede5}.values>div{padding-top:20px;border-top:1px solid #bba265}.values span{display:block;color:#8d733b;margin-bottom:20px;font-size:14px}.full-gallery .gallery-track{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible}.full-gallery .project-photo{height:330px}.area-layout{display:grid;grid-template-columns:1fr 1.5fr;gap:60px}.area-feature{background:var(--green);color:white;padding:50px;align-self:start;position:sticky;top:130px;border:1px solid var(--gold)}.area-feature>span{font-size:130px;line-height:1;color:var(--gold)}.area-feature h2{font-size:32px;margin-top:30px}.area-feature p{color:#d7e3d8}.city-list{display:grid;grid-template-columns:1fr 1fr;gap:24px}.city-list article{padding:24px 0;border-top:1px solid #c1aa73}.city-list span{color:#927746;font-size:13px}.city-list h3{margin:16px 0;font-size:22px}.city-list p{font-size:14px}.contact-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:40px}.contact-main{background:var(--green);color:white;padding:50px;border:1px solid var(--gold);position:relative}.contact-main p{color:#d7e3d8}.contact-main .eyebrow{color:var(--gold)!important}.big-phone{font-size:clamp(1.8rem,3.4vw,3rem);font-family:Manrope;display:block;white-space:nowrap;margin-bottom:20px}.owner-phone{font-size:28px}.contact-main hr{border:0;border-top:1px solid #ffffff30;margin:45px 0}.contact-info{border:1px solid #c3b27f;padding:40px}.contact-info h2{font-size:32px}.contact-info h3{font-size:18px;margin:25px 0 10px}.contact-info>a{display:block;overflow-wrap:anywhere}.social-links{display:flex;flex-wrap:wrap;gap:15px}.social-links a{border:1px solid #c2ab72;padding:12px 24px;font-size:14px}dialog{border:1px solid var(--gold);padding:30px;background:var(--deep);color:white;width:min(95vw,1300px);max-height:95vh}dialog::backdrop{background:#000d}dialog img{width:100%;height:76vh;object-fit:contain}dialog p{text-align:center;margin:10px 0 0;font-size:14px}dialog button{position:absolute;border:1px solid var(--gold);background:var(--deep);color:#fff;font-size:28px;width:44px;height:44px;z-index:1}.lightbox-close{right:10px;top:10px}.lightbox-prev{left:12px;top:45%}.lightbox-next{right:12px;top:45%}.skip{position:fixed;top:-100px;left:10px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}:focus-visible{outline:3px solid var(--gold);outline-offset:5px}section.reveal{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}section.reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){nav{gap:15px}.header-call{display:none}.split{gap:40px}.hero-note{right:7%;bottom:100px}.hero-content{max-width:780px}.services-grid{gap:15px}.flip-back{padding:25px}footer{grid-template-columns:1fr 1fr}.social-rail{padding:5px}.social-rail a{width:28px;height:28px}}
@media(max-width:760px){section{padding:65px 7%}.topline{font-size:12px;gap:15px;padding:9px 6%}.topline>span{display:none}header{height:85px;padding:5px 6%}.brand{width:155px}.brand img{height:74px}.menu-toggle{display:block;border:1px solid #bba36a;background:none;padding:5px 12px;font-size:24px}nav{display:none;position:absolute;top:85px;left:0;right:0;background:white;padding:30px;flex-direction:column;box-shadow:0 20px 25px #0002}nav.open{display:flex}nav a{padding:10px 0}.hero{height:740px;padding-top:85px}.hero h1{font-size:clamp(2.7rem,10vw,4rem)}.hero p{font-size:16px}.hero-image{object-position:55% center}.hero:after{background:linear-gradient(90deg,#062619e6,#06261985)}.hero-actions{flex-wrap:wrap}.hero-note{display:none}.hero-bottom{gap:18px;font-size:10px;flex-wrap:wrap;right:10%}.split{grid-template-columns:1fr;gap:45px}.image-frame img{height:390px}.mini-stats{gap:20px}.mini-stats strong{font-size:18px}.section-heading{align-items:start;flex-direction:column}.services-grid{grid-template-columns:1fr 1fr}.flip-card{height:320px}.card-title{left:15px;right:12px}.card-title h3{font-size:20px}.card-title span{display:none}.flip-back{padding:20px}.flip-back h3{font-size:22px}.flip-back p{font-size:14px;margin-bottom:15px}.flip-back .eyebrow{font-size:10px}.flip-back .button{padding:10px;font-size:12px}.video-card{height:320px}.project-photo{flex-basis:85%;height:340px}.closing{align-items:start;flex-direction:column;gap:30px}footer{padding-right:10%;gap:28px}.social-rail{padding:3px}.social-rail a{width:24px;height:28px;font-size:13px}.full-gallery .gallery-track{grid-template-columns:1fr 1fr;gap:12px}.full-gallery .project-photo{height:250px}.values{grid-template-columns:1fr;gap:20px}.area-layout,.contact-grid{grid-template-columns:1fr}.area-feature{position:static;padding:35px}.contact-main,.contact-info{padding:28px}.big-phone{font-size:30px}.page-intro{padding-top:60px;padding-bottom:60px}.city-list{gap:16px}dialog{padding:15px}dialog img{height:70vh}}
@media(max-width:430px){.services-grid{grid-template-columns:1fr}.flip-card{height:360px}.flip-back{padding:30px}.flip-back p{font-size:16px}.full-gallery .gallery-track{grid-template-columns:1fr}.full-gallery .project-photo{height:360px}footer{grid-template-columns:1fr}.hero{height:740px}.hero h1{font-size:2.7rem}.hero-actions .button{padding:13px 17px}.city-list{grid-template-columns:1fr}.mini-stats{gap:14px}.mini-stats strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}section.reveal{opacity:1;transform:none}}
.social-rail img{width:26px;height:26px;object-fit:contain;border-radius:3px}.social-rail a:hover img{transform:scale(1.12)}
/* Refined brand, edge treatment and dimensional surfaces */
header{height:112px;box-shadow:0 7px 24px #0b291c08}.brand{width:255px;flex-shrink:0}.logo-crop{display:block;position:relative;width:100%;height:85px;overflow:hidden}.logo-crop img{position:absolute!important;width:176%!important;max-width:none!important;height:auto!important;left:-32%!important;top:-115%!important;object-fit:initial!important}.brand .logo-crop{height:85px}.footer-logo-light{width:260px;height:140px;position:relative;isolation:isolate;display:flex;align-items:center;justify-content:center;margin:0 0 25px}.footer-logo-light:before{content:'';position:absolute;inset:-20px -35px;background:radial-gradient(ellipse at 50% 48%,#fff5cbde 0%,#f6e8b495 25%,#e1c98335 49%,transparent 70%);filter:blur(15px);z-index:-1}.footer-logo-light:after{content:'';position:absolute;width:140px;height:250px;top:-145px;left:70px;background:linear-gradient(180deg,transparent,#e9d99824,#fff6cf77);clip-path:polygon(40% 0,60% 0,100% 100%,0 100%);filter:blur(15px);z-index:-1}.footer-logo-light .logo-crop{width:260px;height:90px}.footer-logo-light img{background:none;filter:url('#remove-logo-white') drop-shadow(0 1px 1px #f9edb870)}.logo-filters{position:absolute;pointer-events:none}.button{border-radius:9px;border:1px solid #899f8b66;box-shadow:inset 0 1px 0 #ffffff29,0 5px 13px #102e1812;min-height:50px;letter-spacing:.025em}.gold{border-color:#ecd7a0;background:linear-gradient(135deg,#e4c888,#c9a352);box-shadow:inset 0 1px 0 #fff6dbaa,0 6px 16px #0002}.outline{border-color:#e5d7b175;background:#ffffff07;backdrop-filter:blur(5px)}.flip-front,.flip-back{border-radius:15px;border:1px solid #baa16c8c;box-shadow:0 13px 28px #0e2a1e14,inset 0 0 0 5px #ffffff07}.flip-front:before{content:'';position:absolute;inset:8px;border:1px solid #f4e5bf50;border-radius:9px;z-index:2;pointer-events:none}.flip-back{background:radial-gradient(circle at top right,#375945,var(--green) 70%)}.flip-toggle{box-shadow:inset 0 1px 0 #fff4;background:#0b2e2260;border-color:#e7cc8770}.flip-toggle.back{box-shadow:none;background:none}.image-frame{padding:10px;border-radius:15px;box-shadow:0 22px 40px #193a1f18}.image-frame img{border-radius:9px 9px 0 0}.image-caption{border-radius:0 0 8px 8px}.image-frame:after{border-radius:15px}.video-card,.project-photo{border-radius:14px;border:1px solid #baa16c9e;box-shadow:0 12px 24px #031b181c}.video-card:after{content:'';position:absolute;inset:9px;border:1px solid #fff4;border-radius:8px;pointer-events:none}.project-photo:after{content:'';position:absolute;inset:8px;border:1px solid #ffffff35;border-radius:8px;pointer-events:none}.carousel-controls button{border-radius:8px;background:#ffffff06;box-shadow:inset 0 1px 0 #ffffff20}.city-chips span{border-radius:7px;box-shadow:0 3px 10px #18351c06}.contact-main,.contact-info,.area-feature{border-radius:16px;box-shadow:0 18px 40px #16371f14}.contact-main{background:radial-gradient(ellipse at top right,#335b43,var(--green) 65%);border:1px solid #c3aa6b}.contact-main:before{content:'';position:absolute;inset:10px;border:1px solid #e2cc9330;border-radius:9px;pointer-events:none}.contact-info{background:linear-gradient(135deg,#ffffff,#f0f3ec)}.social-rail{border-radius:12px 0 0 12px;box-shadow:-7px 9px 24px #0002;padding:8px}.social-rail a{border-radius:6px}.page-intro{background:radial-gradient(ellipse at 95% 0,#356049,var(--green) 60%)}.closing{background:linear-gradient(110deg,#183f2c,#0b2e21);position:relative}.closing:before{content:'';position:absolute;top:9px;left:7%;right:7%;height:1px;background:linear-gradient(90deg,transparent,#dcc18477,transparent)}.google-reviews-section{background:linear-gradient(135deg,#ebeee6,#f9faf6)}.google-review-source{display:flex;align-items:center;gap:12px;font-weight:600;font-size:14px}.google-review-source img{object-fit:contain}.reviews-connect{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:35px;background:#fff;border:1px solid #c1aa7280;border-radius:14px;box-shadow:0 14px 30px #19321e0c}.reviews-connect h3{margin-bottom:12px}.reviews-connect p{margin:0}.reviews-all{margin-top:25px}.google-rating{font-size:22px;font-weight:700;margin-bottom:24px}.review-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.review-card{background:white;padding:28px;border-radius:14px;border:1px solid #c5b18380;box-shadow:0 10px 25px #17391e0b}.review-card .review-author{display:flex;gap:12px;align-items:center;margin-bottom:20px}.review-avatar{width:42px;height:42px;object-fit:cover;border-radius:50%}.review-card h3{font-size:16px;letter-spacing:0;margin:0 0 5px}.review-card time{font-size:12px;color:#657468}.review-stars{color:#a27a25;letter-spacing:.15em}.review-card blockquote{margin:15px 0;font-size:15px;line-height:1.7}.review-card .text-link{font-size:12px}.map-section{background:#e9eee7}.map-frame{padding:9px;border:1px solid #bba269;border-radius:16px;background:#fff;box-shadow:0 18px 35px #17362016;overflow:hidden}.map-frame iframe{display:block;width:100%;height:480px;border:0;border-radius:10px}.hero-content{max-width:1000px}.hero h1{font-weight:600}.section-heading{position:relative}.services-grid{gap:28px}.faq details{padding:24px 18px}.faq details[open]{background:#ffffffb0;border-radius:9px}.full-gallery .gallery-track{gap:24px}footer{border-top:1px solid #bfa16845}
@media(max-width:1250px){header{padding-left:5%;padding-right:5%}.brand{width:220px}nav{gap:18px}.brand .logo-crop{height:74px}.header-call{display:none}}
@media(max-width:760px){header{height:100px}.brand{width:220px}.brand .logo-crop{height:74px}nav{top:100px}.footer-logo-light{margin-top:20px}.reviews-connect{flex-direction:column;align-items:start;padding:25px}.review-cards{grid-template-columns:1fr}.map-frame iframe{height:370px}.services-grid{gap:20px}.full-gallery .gallery-track{gap:16px}.social-rail{padding:4px}.section-heading{gap:24px}}
.logo-crop img{top:-85%!important}.review-attribution{font-size:13px;margin-top:20px}
