:root{--forest:#0b2921;--forest-2:#103d30;--forest-3:#183f32;--ink:#152a23;--muted:#5a6b63;--cream:#fafaf5;--soft:#f3f5ef;--lime:#c9e69b;--gold:#eec17a;--line:#e0e6dc;--radius:22px;--shadow:0 20px 55px rgba(11,41,33,.10)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,"Avenir Next",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased;line-height:1.55}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}svg.icon{display:inline-block;width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round;flex:none}img{display:block;max-width:100%}.shell{width:min(100% - 96px,1250px);margin-inline:auto}.svg-sprite{position:absolute;width:0;height:0;overflow:hidden}.skip-link{position:fixed;z-index:9999;top:-100px;left:20px;padding:12px 18px;background:white;color:#123d2d;border-radius:8px}.skip-link:focus{top:15px}.announcement{background:#092219;color:#c3dfc8;font-size:12px;font-weight:700;letter-spacing:.045em}.announcement-inner{min-height:36px;display:flex;align-items:center;justify-content:space-between;gap:15px}.announcement-inner>span{display:flex;align-items:center;gap:9px}.announcement a{display:flex;align-items:center;gap:8px;color:#e7f4e4}.announcement a:hover{color:white}.announcement .icon{width:12px;height:12px}.pulse-dot{display:inline-block;width:7px;height:7px;background:#b7e493;border-radius:50%;box-shadow:0 0 0 4px rgba(183,228,147,.13)}
.site-header{position:sticky;top:0;z-index:50;background:rgba(250,250,245,.97);border-bottom:1px solid #e8ece4;backdrop-filter:blur(14px)}.nav-wrap{height:91px;display:flex;align-items:center;gap:22px;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-icon{width:49px;height:49px;border-radius:15px;background:var(--forest);display:flex;justify-content:center;align-items:center;flex:none;box-shadow:0 4px 10px rgba(2,35,25,.13)}.brand-icon svg{height:39px;width:39px}.brand-name{font-weight:850;letter-spacing:-.045em;font-size:25px;line-height:1.03;color:#153528;white-space:nowrap}.brand-sub{display:block;font-size:9px;letter-spacing:.14em;font-weight:850;color:#49734f;margin-top:6px}.brand-sub i{font-style:normal;color:#bf9650}.desktop-nav{display:flex;gap:31px;align-items:center;margin-left:auto}.desktop-nav>a{font-weight:650;font-size:13px;color:#40564b;transition:color .2s}.desktop-nav>a:hover{color:#174b34}.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;border:1px solid transparent;border-radius:9px;min-height:51px;padding:13px 22px;font-size:13px;font-weight:800;line-height:1.2;transition:transform .2s,background-color .2s,border-color .2s,box-shadow .2s;text-align:center}.btn:hover{transform:translateY(-2px)}.btn .icon{width:16px;height:16px}.btn-dark{background:var(--forest);color:white}.btn-dark:hover{background:#24523e;box-shadow:0 10px 24px #09221925}.nav-cta{min-height:43px;padding:11px 16px;white-space:nowrap;margin-left:12px;font-size:12px}.menu-toggle{display:none;background:transparent;border:0;color:var(--ink);padding:9px}.menu-toggle .icon{width:26px;height:26px}.mobile-nav[hidden]{display:none!important}
.hero{background:var(--forest);color:white;position:relative;overflow:hidden}.hero-pattern{position:absolute;inset:0;background:radial-gradient(ellipse at 73% 20%,rgba(127,184,95,.12),transparent 44%),radial-gradient(circle at 0% 95%,rgba(112,149,122,.10),transparent 37%);pointer-events:none}.hero-pattern:before{content:"";position:absolute;inset:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:75px 75px;mask-image:linear-gradient(to right,transparent 20%,black 100%)}.hero-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.93fr);gap:65px;align-items:center;padding-top:83px;padding-bottom:104px;min-height:668px}.hero-copy{padding:3px 0 8px}.eyebrow{display:flex;gap:10px;align-items:center;font-size:11px;letter-spacing:.19em;font-weight:900;color:#507b59;text-transform:uppercase}.eyebrow-light{color:#bedba8}.eyebrow-line{width:29px;height:2px;background:#77ad69}.hero h1{font-size:clamp(50px,5.3vw,79px);font-weight:850;letter-spacing:-.07em;line-height:1.065;margin:26px 0 23px}.hero h1 em,h2 em{font-style:normal;color:var(--lime)}.hero-copy>p{font-size:17px;color:#c7d8cd;max-width:475px;line-height:1.82;margin:0 0 32px}.hero-copy>p strong{font-weight:750;color:white}.hero-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}.btn-lime{background:var(--lime);color:#173a2b}.btn-lime:hover{background:#e1f6bf;box-shadow:0 14px 36px #bff1a124}.btn-ghost{border:1px solid #6d8d79;color:#f0f9f1;background:rgba(255,255,255,.035)}.btn-ghost:hover{background:rgba(255,255,255,.095)}.hero-foot{display:flex;align-items:center;gap:13px;margin-top:53px;color:#b3c8ba;font-size:12px;line-height:1.55}.hero-foot b{color:#e2f0e1}.avatar-mark{display:flex;justify-content:center;align-items:center;width:43px;height:43px;border:1px solid rgba(201,230,155,.35);background:#214537;border-radius:50%;color:#d4eca9}.avatar-mark .icon{width:20px;height:20px}.hero-visual{display:grid;grid-template-columns:1fr 1fr;gap:15px;align-items:stretch;min-width:0;position:relative;transform:rotate(1.2deg);isolation:isolate}.visual-panel{height:479px;border:5px solid rgba(255,255,255,.10);border-radius:21px;overflow:hidden;position:relative;background:#356c59;box-shadow:0 20px 45px rgba(0,0,0,.23)}.visual-panel img{width:100%;height:100%;object-fit:cover;object-position:center}.visual-night{margin-top:32px;margin-bottom:-32px}.visual-night img{object-position:48% center}.visual-panel:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(180deg,transparent 40%,rgba(3,17,13,.7) 100%)}.panel-caption{position:absolute;z-index:1;bottom:20px;left:17px;right:10px;display:flex;align-items:center;gap:7px;color:white;font-weight:900;font-size:10px;letter-spacing:.13em;text-shadow:0 2px 7px #001b14}.panel-caption .icon{width:17px;height:17px}.visual-stamp{position:absolute;z-index:3;bottom:-72px;left:50%;transform:translateX(-50%) rotate(-1.2deg);padding:14px 20px;border:1px solid #819f72;border-radius:50px;background:#1a4234;color:#e7f6d7;font-size:10px;letter-spacing:.12em;font-weight:900;white-space:nowrap;box-shadow:0 10px 24px #03181244}.stamp-symbol{font-size:17px;color:var(--lime);vertical-align:-1px;margin-right:6px}.stamp-separator{color:#a8c18d;margin:0 5px}.hero-bottom{height:4px;background:linear-gradient(90deg,#3f805b,#bfe292 54%,#edbd78)}
.quick-services{background:#e9efe6;border-bottom:1px solid var(--line)}.quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-height:97px}.quick-grid>div{display:flex;gap:13px;justify-content:center;align-items:center;border-right:1px solid #d6e2d4;font-size:13px;font-weight:770;color:#355742}.quick-grid>div:last-child{border-right:none}.quick-grid .icon{height:20px;width:20px;color:#557e54}
.section{padding:112px 0}.services-section{background:var(--cream)}.section-top,.showcase-top{display:flex;align-items:end;justify-content:space-between;gap:50px}.section h2,.showcase-section h2{font-size:clamp(39px,4.25vw,62px);line-height:1.09;letter-spacing:-.065em;font-weight:830;margin:21px 0 0}.section h2 em{color:#608b57}.section-top>p,.showcase-top>p{max-width:340px;margin:0 0 5px;color:#66776d;font-size:15px;line-height:1.8}.filters{display:flex;flex-wrap:wrap;gap:11px;margin:45px 0 22px}.filter{display:inline-flex;align-items:center;gap:8px;padding:10px 21px;min-height:43px;border:1px solid #d8e3d4;background:#fff;border-radius:50px;font-size:12px;font-weight:760;color:#526b56;transition:all .2s}.filter .icon{width:15px;height:15px}.filter:hover{border-color:#83a77d;color:var(--forest)}.filter.active{background:var(--forest);border-color:var(--forest);color:white}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.service-card{min-height:298px;background:white;border:1px solid #e4e8e1;border-radius:15px;padding:25px 22px 23px;display:flex;flex-direction:column;box-shadow:0 5px 24px rgba(26,53,34,.025);transition:border-color .2s,box-shadow .2s,transform .2s}.service-card:hover{transform:translateY(-4px);border-color:#bfd6b9;box-shadow:var(--shadow)}.service-card[hidden]{display:none}.service-card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;gap:12px}.service-icon{display:flex;align-items:center;justify-content:center;background:#eef5e8;color:#456e44;height:50px;width:50px;border-radius:12px}.service-icon .icon{width:24px;height:24px;stroke-width:1.7}.service-icon.amber{background:#fff2df;color:#ae814c}.service-type{font-size:9px;font-weight:900;letter-spacing:.12em;color:#8aa18c}.service-type.lighting-type{color:#be9760}.service-card h3{font-size:18px;letter-spacing:-.035em;line-height:1.3;margin:0 0 10px;font-weight:790}.service-card p{font-size:12.5px;line-height:1.8;color:#66776d;margin:0 0 18px}.service-card>a:not(.btn){margin-top:auto;display:inline-flex;align-items:center;gap:9px;font-weight:850;font-size:11px;color:#245d39}.service-card>a:not(.btn):hover{color:#4e975b}.service-card>a .icon{width:14px;height:14px}.callout-card{background:#173b2d;border-color:#173b2d;color:#f4f9f0}.callout-card .callout-icon{height:50px;width:50px;background:rgba(201,230,155,.12);color:var(--lime);display:flex;align-items:center;justify-content:center;border-radius:12px;margin-bottom:19px}.callout-icon .icon{height:25px;width:25px}.callout-card h3{color:white}.callout-card p{color:#bccfc1}.callout-card .btn-light{align-self:flex-start;margin-top:auto;background:#d0e6b2;color:#173a2a;border-color:#d0e6b2;padding:10px 16px;min-height:43px;font-size:12px}
.showcase-section{background:#0c2822;color:#fff;padding:110px 0 104px;position:relative;overflow:hidden}.showcase-section:before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,#32664a44,transparent 69%);right:-180px;top:-320px;pointer-events:none}.showcase-section .shell{position:relative}.showcase-top h2{color:white}.showcase-top h2 em{color:#e8c382}.showcase-top>p{color:#aec5b4}.showcase-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:45px}.show-tile{height:385px;position:relative;overflow:hidden;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:#204737}.show-tile img{width:100%;height:100%;object-fit:cover;object-position:center 57%;transition:transform .5s}.show-tile:hover img{transform:scale(1.04)}.show-landscape img{object-position:center 69%}.show-lighting img{object-position:center 60%}.tile-gradient{position:absolute;inset:20% 0 0;background:linear-gradient(180deg,transparent 25%,rgba(0,18,14,.82))}.show-label{position:absolute;bottom:28px;left:32px;right:24px}.show-label span{font-size:10px;font-weight:890;letter-spacing:.17em;color:#e7e5b7}.show-label h3{font-size:25px;letter-spacing:-.045em;line-height:1.2;margin:9px 0 0}.showcase-note{text-align:center;font-size:11px;color:#97ae9d;margin:22px 0 0}
.process-section{background:#f6f7f1}.process-heading{display:flex;align-items:end;justify-content:space-between;gap:40px}.process-heading>p{max-width:275px;margin:0 0 5px;color:#68766e;line-height:1.8;font-size:15px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:47px}.step{padding:29px;border:1px solid #dce7d8;border-radius:17px;background:#fff;position:relative;min-height:260px}.step-number{position:absolute;right:25px;top:25px;color:#d0ded0;font-size:40px;font-weight:850;letter-spacing:-.08em;line-height:1}.step-symbol{display:flex;align-items:center;justify-content:center;background:#e9f3e5;color:#436e48;border-radius:13px;width:52px;height:52px}.step-symbol .icon{height:25px;width:25px}.step h3{font-size:19px;letter-spacing:-.035em;margin:32px 0 8px}.step p{font-size:13px;color:#69786e;line-height:1.85;margin:0;max-width:290px}
.area-strip{background:#e2edd8;border-top:1px solid #d8e5d2;border-bottom:1px solid #d8e5d2;padding:26px 0}.area-grid{display:flex;align-items:center;gap:22px}.area-icon{width:60px;height:60px;background:#c4dcb8;color:#456c47;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:none}.area-icon .icon{width:27px;height:27px}.area-grid>div:nth-child(2){flex:1}.area-grid>div:nth-child(2)>span{color:#5b8462;font-size:10px;font-weight:850;letter-spacing:.14em}.area-grid h2{font-size:22px;margin:5px 0 0;letter-spacing:-.03em}.area-grid>a{font-size:12px;color:#5f7b63;display:flex;flex-direction:column;gap:4px}.area-grid>a strong{font-weight:830;color:#214a36;display:flex;gap:5px;align-items:center}.area-grid>a strong .icon{width:13px;height:13px}
.contact-section{padding:120px 0;background:#fff}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.contact-copy{padding-top:21px}.contact-copy h2{font-size:clamp(42px,4.3vw,62px);margin:25px 0 20px}.contact-copy>p{color:#6c7d72;line-height:1.8;max-width:370px;margin:0;font-size:16px}.contact-link-list{margin-top:48px;display:flex;flex-direction:column;max-width:415px}.contact-link-list a{display:flex;align-items:center;gap:15px;padding:15px 0;border-bottom:1px solid #e3eae1}.contact-link-list a:first-child{border-top:1px solid #e3eae1}.contact-link-icon{height:46px;width:46px;border-radius:50%;display:flex;justify-content:center;align-items:center;background:#eef5ea;color:#48724d}.contact-link-icon .icon{width:21px;height:21px}.contact-link-list a>span:nth-child(2){display:flex;flex-direction:column;gap:1px;flex:1}.contact-link-list small{font-size:10px;letter-spacing:.13em;color:#859687;font-weight:850}.contact-link-list b{font-size:17px;letter-spacing:-.025em}.contact-link-list .link-arrow{color:#7e9680;width:17px;height:17px}.contact-link-list a:hover b{color:#3c8950}.estimate-card{border-radius:20px;background:#f2f5ef;border:1px solid #dce6d8;box-shadow:0 18px 60px rgba(8,52,27,.08);padding:38px 37px;scroll-margin-top:115px}.form-header{margin-bottom:25px}.form-pill{display:inline-flex;gap:7px;align-items:center;background:#dfeedd;color:#326340;padding:7px 10px;border-radius:5px;font-size:10px;font-weight:900;letter-spacing:.12em}.form-pill .icon{width:13px;height:13px}.form-header h3{font-size:32px;letter-spacing:-.045em;line-height:1.2;margin:17px 0 8px}.form-header p{margin:0;color:#677a6b;font-size:13px}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:17px;min-width:0}.field label{font-size:12px;font-weight:800;color:#344c3c}.field label span{color:#b24c3e}.field label small{font-size:11px;color:#829083;font-weight:500}.field input,.field select,.field textarea{width:100%;border:1px solid #d5dfd0;background:white;border-radius:8px;outline:none;font-size:13px;color:#193a29;padding:13px 14px;min-height:48px;transition:border-color .2s,box-shadow .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#558765;box-shadow:0 0 0 3px #8cc59b44}.field input::placeholder,.field textarea::placeholder{color:#9aa69b}.field textarea{resize:vertical;min-height:105px;line-height:1.55}.field select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%235e7561' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;padding-right:40px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-submit{width:100%;min-height:51px;margin-top:3px;justify-content:space-between}.form-help{font-size:10px;line-height:1.6;color:#849186;margin:13px 0 0}.form-feedback{font-size:12px;line-height:1.5;color:#a83f3f;margin:8px 0 0}.form-feedback:empty{display:none}.prepared-request{border-top:1px solid #d6e2d0;padding-top:24px}.prepared-request h4{font-size:18px;margin:0 0 8px}.prepared-request p{font-size:12px;color:#66776d;line-height:1.6}.prepared-request textarea{width:100%;border:1px solid #c8d9c8;border-radius:9px;font-size:12px;padding:13px;resize:vertical;background:white;color:#294633;line-height:1.65}.prepared-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:13px}.prepared-actions .btn{min-height:43px;font-size:12px;gap:9px;padding:10px 13px}.btn-outline{border-color:#b5cbb5;background:transparent;color:#28482d}.btn-outline:hover{background:#fff}.copy-feedback{margin:6px 0!important;color:#396a46!important;font-weight:650}.edit-request{background:none;border:0;color:#476f4b;font-size:12px;font-weight:800;margin-top:8px;padding:5px 0;text-decoration:underline}
.footer{background:#071d17;color:#d9e6d9;padding:59px 0 0}.footer-main{display:grid;grid-template-columns:1.9fr 1fr 1fr;gap:60px;padding-bottom:55px}.footer-brand .brand-name{color:white}.footer-brand .brand-sub{color:#b0d399}.footer-brand .brand-icon{background:#1a4031;border:1px solid #3a5c40}.footer-main>div:first-child p{font-size:13px;line-height:1.8;color:#92ad9a;margin:25px 0 0}.footer-main>div:not(:first-child){display:flex;flex-direction:column;align-items:flex-start;gap:11px}.footer-main h3{font-size:13px;color:white;letter-spacing:.015em;margin:5px 0 9px}.footer-main>div:not(:first-child) a,.footer-location{font-size:12px;color:#9bb4a1}.footer-main>div:not(:first-child) a:hover{color:#d7f3cf}.footer-main a .icon{height:12px;width:12px}.footer-location{margin-top:5px}.footer-bottom{border-top:1px solid #244034;padding:20px 0 25px;display:flex;gap:15px;justify-content:space-between;align-items:center;color:#789584;font-size:11px}.footer-bottom a:hover{color:white}.mobile-contact-bar{display:none}
@media(max-width:1170px){.shell{width:min(100% - 64px,1250px)}.desktop-nav{gap:20px}.nav-cta{margin-left:0}.hero-grid{gap:35px}.hero h1{font-size:clamp(48px,5.25vw,70px)}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-grid{gap:50px}.hero-visual .visual-panel{height:415px}.hero-grid{min-height:610px}}
@media(max-width:980px){.desktop-nav,.nav-cta{display:none}.menu-toggle{display:block;margin-left:auto}.mobile-nav{display:flex;flex-direction:column;padding:9px max(32px,calc((100vw - 1250px)/2)) 22px;background:var(--cream);border-top:1px solid #e1e8dc;box-shadow:0 18px 25px #152e2619}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;padding:14px 0;font-size:14px;font-weight:750;color:#274b37;border-bottom:1px solid #e4eade}.mobile-nav a.mobile-quote{color:#214831;border-bottom:0}.hero-grid{grid-template-columns:1fr 1fr;gap:25px}.hero h1{font-size:clamp(41px,5.3vw,60px)}.hero-copy>p{font-size:15px}.hero-actions .btn{font-size:11px;padding:12px 13px}.hero-visual .visual-panel{height:380px}.visual-stamp{font-size:8px;bottom:-65px}.panel-caption{font-size:8px;left:9px}.quick-grid>div{font-size:11px}.quick-grid .icon{width:16px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-top>p{max-width:270px}.contact-grid{gap:35px}.contact-copy h2{font-size:clamp(40px,4.9vw,54px)}.estimate-card{padding:29px 24px}.area-grid h2{font-size:18px}}
@media(max-width:720px){.shell{width:min(100% - 40px,560px)}.announcement-inner{min-height:34px}.announcement-inner>span{font-size:10px;letter-spacing:.015em}.announcement-inner>a{font-size:11px;white-space:nowrap}.nav-wrap{height:76px}.brand-icon{width:42px;height:42px;border-radius:13px}.brand-icon svg{width:33px;height:33px}.brand-name{font-size:21px}.brand-sub{font-size:7.5px;letter-spacing:.12em}.hero-grid{grid-template-columns:1fr;gap:37px;padding-top:68px;padding-bottom:116px;min-height:0}.hero h1{font-size:clamp(48px,9.9vw,70px);letter-spacing:-.065em;line-height:1.06}.hero h1 br{display:block}.hero-copy>p{max-width:500px;font-size:15px;line-height:1.75}.hero-foot{margin-top:30px}.hero-visual{margin:5px auto 0;width:min(100%,505px);gap:12px;transform:rotate(0)}.visual-panel{height:360px!important;border-width:4px;border-radius:16px}.visual-night{margin-top:23px;margin-bottom:-23px}.panel-caption{font-size:9px;bottom:13px;left:12px;letter-spacing:.06em}.visual-stamp{bottom:-56px;font-size:9px;padding:11px 15px}.quick-grid{grid-template-columns:repeat(2,1fr);min-height:0;padding-top:12px;padding-bottom:12px}.quick-grid>div{padding:13px 4px;justify-content:flex-start;border-right:0;font-size:11px}.quick-grid>div:nth-child(odd){border-right:1px solid #d6e2d4;padding-left:10px}.quick-grid>div:nth-child(even){padding-left:20px}.quick-grid .icon{height:18px;width:18px}.section{padding:78px 0}.section-top,.showcase-top,.process-heading{display:block}.section h2,.showcase-section h2{font-size:clamp(38px,8vw,52px);margin-top:18px}.section-top>p,.showcase-top>p,.process-heading>p{font-size:14px;max-width:490px;margin:21px 0 0}.filters{margin-top:28px;gap:7px}.filter{padding:8px 13px;min-height:39px;font-size:11px}.filter .icon{width:13px;height:13px}.service-grid{gap:12px}.service-card{min-height:270px;padding:21px 18px}.service-card h3{font-size:17px}.service-card p{font-size:12px}.showcase-section{padding:83px 0 76px}.showcase-grid{margin-top:31px;gap:14px}.show-tile{height:320px}.show-label{left:18px;bottom:19px}.show-label h3{font-size:21px}.show-label span{font-size:9px}.steps{margin-top:33px;gap:13px;grid-template-columns:1fr}.step{min-height:0;padding:22px}.step h3{margin-top:22px}.step p{max-width:460px}.area-grid{flex-wrap:wrap;gap:14px}.area-icon{width:50px;height:50px}.area-grid>div:nth-child(2){flex:1 1 calc(100% - 80px)}.area-grid>a{margin-left:64px}.contact-section{padding:80px 0}.contact-grid{grid-template-columns:1fr;gap:42px}.contact-copy{padding-top:0}.contact-copy h2{font-size:clamp(44px,8.5vw,58px)}.contact-link-list{margin-top:30px;max-width:none}.estimate-card{padding:28px 24px}.footer-main{grid-template-columns:1fr 1fr;gap:35px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{align-items:flex-start;flex-direction:column}.footer{padding-bottom:65px}.mobile-contact-bar{display:grid;grid-template-columns:1fr 1fr;position:fixed;z-index:45;bottom:0;left:0;width:100%;height:59px;background:#0d2e25;border-top:1px solid #5a7755;box-shadow:0 -8px 25px #071d172c}.mobile-contact-bar a{display:flex;align-items:center;justify-content:center;gap:8px;color:white;font-size:13px;font-weight:800}.mobile-contact-bar a+a{background:var(--lime);color:#173e29}.mobile-contact-bar .icon{height:18px;width:18px}}
@media(max-width:465px){.shell{width:calc(100% - 36px)}.brand{gap:9px}.brand-name{font-size:19px}.brand-sub{font-size:7px;letter-spacing:.10em}.brand-icon{width:40px;height:40px}.announcement-inner>span{max-width:240px;font-size:9px}.announcement-inner>a{font-size:10px}.hero-grid{padding-top:60px;padding-bottom:93px}.hero h1{font-size:clamp(43px,11.6vw,55px)}.hero-copy>p{font-size:14px}.hero-actions{gap:9px}.hero-actions .btn{font-size:11px;padding:12px 10px;gap:9px;min-height:46px}.hero-actions .btn-ghost{width:auto}.visual-panel{height:270px!important}.visual-stamp{bottom:-50px;font-size:7.5px}.panel-caption{font-size:7px;gap:3px;left:7px}.panel-caption .icon{width:13px;height:13px}.quick-grid>div{font-size:10px;gap:8px}.quick-grid>div:nth-child(even){padding-left:12px}.section h2,.showcase-section h2{font-size:clamp(37px,10vw,45px)}.service-grid{grid-template-columns:1fr}.service-card{min-height:226px;padding:22px}.service-card-top{margin-bottom:12px}.service-card h3{font-size:19px}.service-card p{font-size:12.5px}.callout-card{min-height:225px}.showcase-grid{grid-template-columns:1fr}.show-tile{height:300px}.show-label h3{font-size:23px}.form-row{grid-template-columns:1fr;gap:0}.form-header h3{font-size:28px}.estimate-card{padding:25px 19px}.contact-copy h2{font-size:clamp(40px,11vw,53px)}.footer-brand .brand-name{font-size:21px}.footer-main{gap:27px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Two authentic business divisions and project galleries */
.divisions-section{background:#edf2e9;padding:100px 0 104px}.divisions-intro{text-align:center;max-width:630px;margin:0 auto 41px}.divisions-intro .eyebrow{justify-content:center}.divisions-intro h2{font-size:clamp(38px,4.5vw,62px);letter-spacing:-.065em;line-height:1.08;margin:16px 0 12px}.divisions-intro h2 em{font-style:normal;color:#477b48}.divisions-intro p{color:#61736a;margin:0;font-size:15px}.divisions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.division-card{background:white;border:1px solid #dae5d7;border-radius:20px;overflow:hidden;box-shadow:0 18px 42px #193a2910;position:relative}.division-photo{height:200px;position:relative;overflow:hidden;background:#102f2a}.division-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 45%,rgba(4,29,21,.42))}.division-photo img{height:100%;width:100%;object-fit:cover}.lighting-division .division-photo img{object-position:center 50%}.division-inner{padding:0 33px 31px;position:relative}.division-logo{width:130px;height:130px;background:#000;border:5px solid white;border-radius:18px;overflow:hidden;margin-top:-72px;margin-bottom:12px;position:relative;box-shadow:0 11px 24px #00000038}.division-logo img{width:100%;height:100%;object-fit:contain;background:#000}.division-tag{color:#65866a;font-size:10px;font-weight:850;letter-spacing:.15em}.lighting-division .division-tag{color:#b38743}.division-inner h3{font-size:27px;letter-spacing:-.052em;line-height:1.16;margin:11px 0 10px}.division-inner p{font-size:13px;color:#62766c;margin:0 0 18px;line-height:1.85;max-width:450px}.division-action{color:#1c603e;font-size:13px;font-weight:850;display:inline-flex;align-items:center;gap:8px}.division-action .icon{width:15px;height:15px}.division-action:hover{text-decoration:underline}.lighting-division .division-action{color:#9d6926}
.visual-panel img{object-fit:cover}.visual-day img{object-position:50% 54%}.visual-night img{object-position:51% 55%}.show-tile img{object-position:50% 50%}.show-tile .tile-gradient{position:absolute;inset:40% 0 0;background:linear-gradient(180deg,transparent,rgba(2,18,14,.82))}.gallery-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin:60px 0 20px}.gallery-kicker{font-size:10px;letter-spacing:.18em;font-weight:900;color:#b6d9b1}.gallery-heading h3{font-size:29px;letter-spacing:-.04em;margin:5px 0 0}.gallery-filters{display:flex;gap:8px;flex-wrap:wrap}.gallery-filter{font-size:11px;color:#d7e7de;background:transparent;border:1px solid #5d7e6c;border-radius:22px;padding:9px 14px;font-weight:750}.gallery-filter:hover{background:#2a4c3a}.gallery-filter.active{background:#d5edb2;color:#1b3d2b;border-color:#d5edb2}.project-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.project-photo{margin:0;background:#1f3c33;border:1px solid #416253;border-radius:14px;overflow:hidden;min-width:0;transition:transform .2s}.project-photo:hover{transform:translateY(-3px)}.project-photo[hidden]{display:none}.project-photo img{width:100%;height:198px;object-fit:cover;object-position:center}.project-photo figcaption{padding:11px 14px 14px;line-height:1.3;font-weight:760;font-size:12px;color:white}.project-photo figcaption span{display:block;font-size:10px;font-weight:600;color:#c1dbca;margin-top:5px}.gallery-bottom{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:25px;margin-top:40px}.gallery-bottom p{color:#bad0c0;font-size:14px}.footer-division-logos{display:flex;gap:12px;margin-top:17px}.footer-division-logos img{width:92px;height:92px;object-fit:contain;border:1px solid #315541;background:black;border-radius:10px}
@media(max-width:1120px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.divisions-section{padding:78px 0 82px}}
@media(max-width:720px){.divisions-grid{grid-template-columns:1fr;gap:18px}.division-photo{height:185px}.division-inner{padding:0 24px 27px}.division-logo{width:118px;height:118px;margin-top:-63px}.division-inner h3{font-size:25px}.divisions-section{padding:70px 0 74px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-photo img{height:170px}.gallery-heading{align-items:flex-start;flex-direction:column;margin-top:44px}.gallery-bottom{gap:8px}.showcase-section .showcase-top p{font-size:14px}}
@media(max-width:465px){.divisions-intro h2{font-size:40px}.division-photo{height:170px}.project-photo img{height:137px}.project-photo figcaption{font-size:11px;padding:10px 10px 12px}.project-photo figcaption span{font-size:9px}.gallery-filter{padding:8px 11px}.footer-division-logos img{width:80px;height:80px}}

/* Original business logo used for header and footer branding */
.brand-icon{overflow:hidden;background:#000;border:1px solid #1d4938;box-shadow:0 4px 10px rgba(2,35,25,.16)}
.brand-icon img{width:100%;height:100%;display:block;object-fit:contain;background:#000}
.footer-brand .brand-icon{background:#000;border-color:#39644e}
/* User-supplied project photos: keep architectural context visible */
.project-photo img{background:#214438;object-position:50% 50%;}
.visual-day img{object-position:53% 61%}
.show-landscape img{object-position:50% 61%}
@media(max-width:720px){.brand-icon{width:49px;height:49px;border-radius:12px}.brand-name{font-size:20px}.brand-sub{font-size:7.2px}}
@media(max-width:400px){.brand-name{font-size:18px}.brand-sub{font-size:6.5px}}

.project-photo{cursor:zoom-in}.project-photo:focus-visible{outline:3px solid #d5edb2;outline-offset:3px}
.photo-viewer{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:min(92vw,1120px);max-width:1120px;max-height:90vh;padding:12px 12px 8px;border:1px solid #3d6554;border-radius:16px;background:#092419;color:#fff;box-shadow:0 25px 90px #0008;overflow:auto}
.photo-viewer::backdrop{background:rgba(0,0,0,.84)}.photo-viewer img{max-height:75vh;width:100%;height:auto;object-fit:contain;border-radius:10px}.photo-viewer-caption{text-align:center;margin:6px 0 2px;font-size:12px;color:#d5e7d5}.photo-viewer-close{z-index:1;position:sticky;float:right;top:4px;right:4px;background:#f2f7ec;border:0;border-radius:50%;width:36px;height:36px;cursor:pointer;font-size:25px;line-height:1;color:#103727}


/* Customer feedback — excerpts from publicly shared Facebook comments */
.reviews-section{background:#f0f4ed;border-top:1px solid #e4eade;border-bottom:1px solid #e4eade;padding:100px 0 96px}
.reviews-top{display:flex;align-items:end;justify-content:space-between;gap:42px;margin-bottom:36px}
.reviews-top h2{font-size:clamp(39px,4.3vw,62px);line-height:1.1;letter-spacing:-.065em;margin:19px 0 0;font-weight:830;max-width:570px}
.reviews-top h2 em{font-style:normal;color:#608b57}
.reviews-top>p{max-width:400px;color:#607568;font-size:15px;line-height:1.8;margin:0 0 4px}
.reviews-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.review-card{margin:0;padding:32px 34px 27px;background:white;border:1px solid #dae4d5;border-radius:19px;box-shadow:0 13px 32px rgba(18,53,33,.055);display:flex;flex-direction:column;min-height:283px}
.review-card-accent{background:#173e30;border-color:#173e30;color:#fff}
.review-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.review-quote-mark{font-size:73px;line-height:.85;font-family:Georgia,serif;color:#93b88b;font-weight:700}
.review-card-accent .review-quote-mark{color:#badc9a}
.review-source{font-size:9.5px;letter-spacing:.15em;font-weight:850;color:#637d6a;padding:8px 11px;border:1px solid #dce7d9;border-radius:20px;text-align:center}
.review-card-accent .review-source{color:#d6eacb;border-color:#4e7058}
.review-card blockquote{margin:10px 0 24px;font-size:clamp(21px,2.15vw,28px);line-height:1.48;letter-spacing:-.025em;font-weight:750;color:#19382a}
.review-card-accent blockquote{color:#f4fff1}
.review-card figcaption{margin-top:auto;padding-top:21px;border-top:1px solid #e5ede2;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;font-size:12px;color:#65776a}
.review-card-accent figcaption{border-top-color:#456958;color:#c8dacc}
.review-card figcaption span{font-weight:720}
.review-card figcaption a{display:inline-flex;align-items:center;gap:6px;color:#275b39;text-decoration:underline;text-underline-offset:3px;font-size:11.5px;font-weight:830}
.review-card-accent figcaption a{color:#d8efbc}
.review-card figcaption .icon{width:14px;height:14px}
.reviews-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:29px 4px 0}
.reviews-bottom>div{display:flex;flex-direction:column;gap:7px}
.reviews-bottom strong{font-size:18px;letter-spacing:-.025em}
.reviews-bottom span{font-size:13px;color:#65796a}
@media(max-width:900px){.reviews-top{align-items:flex-start;flex-direction:column;gap:16px}.reviews-top>p{max-width:620px}.review-card{padding:28px 25px 24px}.review-card blockquote{font-size:22px}}
@media(max-width:720px){.reviews-section{padding:75px 0 72px}.reviews-grid{grid-template-columns:1fr;gap:15px}.review-card{min-height:235px}.reviews-bottom{align-items:flex-start}.reviews-bottom .btn{max-width:100%}}
@media(max-width:465px){.reviews-top h2{font-size:40px}.reviews-top>p{font-size:13px}.review-card{padding:24px 22px;min-height:238px}.review-card blockquote{font-size:21px}.review-source{font-size:8px;padding:7px 8px}.reviews-bottom .btn{width:100%;justify-content:center}.review-card figcaption{align-items:flex-start}}
