:root{--ink:#233e35;--paper:#f4f2eb;--muted:#677269;--line:#d7dacf;--yellow:#e5ed98}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px;line-height:1.6}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #809b33;outline-offset:5px}header{height:100px;padding:0 5%;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:24px;font-weight:800;letter-spacing:1.5px;line-height:1.1}.brand small{display:block;font-size:10px;letter-spacing:4.5px;margin-top:6px}.mark{font-family:Georgia,serif;font-size:40px;position:relative}.mark span{font-size:27px;margin-left:-10px}nav{display:flex;gap:30px;margin-left:auto;font-size:13px}nav a:hover,.text-link:hover{text-decoration:underline}.header-call{font-size:13px}.button{display:inline-flex;gap:36px;justify-content:space-between;align-items:center;background:var(--ink);color:white;padding:17px 23px;border:1px solid var(--ink);font-weight:600;font-size:13px;transition:background .2s}.button:hover{background:#406050}.button.small{padding:13px 18px}.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;min-height:640px;padding:36px 5% 55px;gap:4%}.hero-copy{padding-top:42px;display:flex;flex-direction:column;align-items:flex-start}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.7px;display:flex;align-items:center;gap:10px}.dot{height:7px;width:7px;background:var(--ink);border-radius:50%}h1{font-family:Georgia,'Times New Roman',serif;font-size:clamp(45px,5.5vw,83px);line-height:1.07;letter-spacing:-3px;font-weight:400;margin:33px 0 25px}h1 em{font-weight:400;font-size:.93em}p{color:var(--muted)}.hero p{font-size:16px;line-height:1.8;margin:0}.actions{display:flex;align-items:center;gap:28px;margin-top:32px}.text-link{font-size:13px;font-weight:600;display:inline-flex;gap:20px;align-items:center}.hero-bottom{display:flex;gap:28px;font-size:8px;font-weight:700;letter-spacing:1.3px;margin-top:auto;padding-top:45px}.hero-image{position:relative;min-height:550px;overflow:hidden}.hero-image>img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:center 57%}.image-label{position:absolute;bottom:18px;left:18px;right:18px;padding:13px 17px;background:var(--paper);display:flex;flex-direction:column;font-size:11px;gap:4px}.image-label span:first-child{font-size:8px;letter-spacing:1.5px;font-weight:bold}.hero-number{position:absolute;bottom:17px;right:5%;font-size:8px;letter-spacing:1.5px}.trust{padding:24px 5%;border-block:1px solid var(--line);display:flex;justify-content:space-around;gap:12px;font-size:11px;font-weight:600}.trust i{font-style:normal;color:#71825b}.section{padding:95px 5%}.section-head{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:45px}.section-head>p,.section-head>div:nth-child(2){max-width:395px}.section-head p{font-size:14px;line-height:1.8}h2{font-family:Georgia,serif;font-weight:400;font-size:clamp(37px,4.1vw,59px);letter-spacing:-1.5px;line-height:1.1;margin:20px 0 0}h3{font-weight:500;font-size:23px;line-height:1.25;letter-spacing:-.6px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.services article{padding:32px 30px 30px 0;display:flex;flex-direction:column}.services article+article{border-left:1px solid var(--line);padding-left:30px}.service-num{font-size:9px;letter-spacing:1.5px}.services h3{margin-top:30px}.services p{font-size:13px;line-height:1.9;margin-top:0}.services a{font-size:12px;font-weight:600;display:flex;justify-content:space-between;margin-top:auto;padding-top:26px}.service-extra{display:flex;align-items:center;gap:40px;padding-top:23px}.service-extra>span{font-size:9px;letter-spacing:1.3px;font-weight:700}.service-extra p{font-size:12px}.service-extra b{padding:0 12px}.work{background:#e9ece3}.filters{display:flex;gap:8px;margin-top:24px}.filters button{border:1px solid #c4cbbe;background:transparent;color:var(--ink);padding:8px 15px;border-radius:30px;font-size:11px}.filters button.active{background:var(--ink);color:white;border-color:var(--ink)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:35px 24px}.project{margin:0}.project button{border:0;padding:0;display:block;width:100%;background:transparent;overflow:hidden;position:relative}.project img{width:100%;height:360px;object-fit:cover;display:block;transition:transform .4s}.project button:hover img{transform:scale(1.035)}.project button span{position:absolute;bottom:15px;right:15px;border-radius:50%;background:var(--paper);width:35px;height:35px;display:grid;place-items:center;color:var(--ink)}.project figcaption{padding:15px 0;font-size:13px;display:flex;justify-content:space-between;gap:10px}.project figcaption small{font-size:9px;letter-spacing:1px;color:var(--muted)}.about{display:grid;grid-template-columns:1fr 1fr;background:var(--ink);color:var(--paper)}.about-photo{position:relative;min-height:570px}.about-photo img{width:100%;height:100%;object-fit:cover;position:absolute}.about-photo>span{position:absolute;bottom:25px;left:30px;background:var(--paper);color:var(--ink);padding:10px 15px;font-size:9px;letter-spacing:1.5px}.about-copy{padding:70px 12%}.about-copy p{color:#ccd4c9;font-size:13px;line-height:1.9}.about-copy .lead{font-size:20px;color:var(--yellow);line-height:1.5;margin-top:30px}.light{margin-top:22px;color:var(--yellow)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:45px}.steps article{border-top:1px solid var(--line);padding-top:25px}.steps article>span{font-family:Georgia,serif;font-size:31px;color:#829073}.steps h3{font-size:20px}.steps p{font-size:13px;line-height:1.9}.contact{background:var(--yellow);padding:80px 7%;display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact p{font-size:13px;color:#516244;line-height:1.9}.phone{display:block;font-family:Georgia,serif;font-size:29px;margin-top:35px}.contact-email{display:block;font-size:13px;margin:10px 0 25px}form{background:var(--paper);padding:32px}form h3{margin:0 0 24px;font-family:Georgia,serif;font-size:27px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}label{display:block;font-size:10px;font-weight:600;margin-bottom:16px}input,select,textarea{display:block;border:0;border-bottom:1px solid #bdc6b7;border-radius:0;width:100%;padding:10px 0;background:transparent;color:var(--ink);font-size:12px;outline-offset:4px}textarea{resize:vertical}form .button{width:100%}.form-note{font-size:10px!important;line-height:1.5!important;margin-bottom:0}footer{padding:40px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px}footer .brand{font-size:17px;display:block}footer>span{font-size:11px}footer>div{display:flex;gap:22px;font-size:9px}.mobile-contact{display:none}.skip{position:absolute;top:-70px}.skip:focus{top:0;z-index:10;background:white;padding:15px}dialog{border:0;padding:20px;background:var(--paper);max-width:90vw;max-height:92vh}dialog::backdrop{background:#10251de6}dialog img{display:block;max-width:80vw;max-height:75vh;object-fit:contain}dialog p{font-size:12px;margin-bottom:0}.close{position:absolute;right:24px;top:24px;width:38px;height:38px;border:0;border-radius:50%;background:var(--paper);color:var(--ink)}[hidden]{display:none!important}@media(min-width:1500px){body{max-width:1700px;margin:auto}}@media(max-width:1050px){header{gap:20px}nav{gap:20px}.header-call{display:none}.hero{min-height:570px}.hero-image{min-height:490px}h1{letter-spacing:-2px}.hero-bottom{gap:15px;font-size:7px}.actions{gap:18px}.project img{height:300px}.about-copy{padding:55px 9%}footer>span{display:none}}@media(max-width:700px){header{height:80px;padding:0 6%;gap:15px;justify-content:space-between}.brand{font-size:20px}.mark{font-size:34px}nav{display:none}.button.small{padding:10px 15px}.hero{display:flex;flex-direction:column;padding:15px 6% 35px;gap:30px}.hero-copy{padding-top:22px}.eyebrow{font-size:9px}h1{font-size:51px;letter-spacing:-2px;margin:25px 0 20px}.hero p{font-size:14px}.actions{gap:20px;margin-top:26px}.button{padding:15px 18px;gap:20px;font-size:12px}.text-link{font-size:11px}.hero-bottom{padding-top:28px;font-size:7px;gap:20px}.hero-image{min-height:470px}.hero-number{font-size:7px;bottom:10px}.trust{padding:20px 6%;flex-wrap:wrap;font-size:9px;justify-content:center;gap:12px}.trust i:last-of-type{display:none}.trust a{width:100%;text-align:center}.section{padding:58px 6%}.section-head{display:block;margin-bottom:30px}.section-head>p{margin-top:24px}h2{font-size:41px}.services{display:block}.services article{padding:27px 0!important;border-left:0!important}.services article+article{border-top:1px solid var(--line)}.services h3{margin:20px 0 15px;font-size:25px}.services a{padding-top:10px}.service-extra{display:block}.service-extra p{line-height:2}.service-extra b{padding:0 5px}.gallery{grid-template-columns:1fr 1fr;gap:18px 12px}.project img{height:250px}.project figcaption{font-size:11px;display:block;line-height:1.4}.project figcaption small{display:block;margin-top:6px;font-size:8px}.about{grid-template-columns:1fr}.about-photo{min-height:330px}.about-copy{padding:48px 6%}.steps{grid-template-columns:1fr;gap:20px}.steps article{padding-top:20px}.steps h3{margin:12px 0}.process .section-head .text-link{margin-top:25px}.contact{padding:55px 6%;grid-template-columns:1fr;gap:35px}.phone{font-size:29px}form{padding:25px}.form-grid{grid-template-columns:1fr;gap:0}footer{padding:35px 6% 95px;align-items:start}footer>div{flex-direction:column;gap:7px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;background:var(--ink);color:var(--paper);z-index:3;padding-bottom:env(safe-area-inset-bottom)}.mobile-contact a{width:50%;text-align:center;padding:15px;font-size:12px}.mobile-contact a+a{border-left:1px solid #53665e}dialog{padding:10px}dialog img{max-width:82vw}.close{right:15px;top:15px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Refined identity, editorial composition, and interaction states. */
header{position:sticky;top:0;z-index:10;background:rgba(244,242,235,.97);backdrop-filter:blur(14px);height:88px}.brand-symbol{flex-shrink:0}.menu-toggle{display:none}.hero{padding-top:30px;min-height:690px}.hero-copy{padding-top:46px}h1{font-size:clamp(48px,5.5vw,85px)}.hero-detail{display:flex;align-items:center;gap:17px;border-top:1px solid var(--line);margin-top:36px;padding-top:23px;width:88%}.hero-detail img{width:86px;height:70px;object-fit:cover}.hero-detail p{font-size:12px;line-height:1.8}.hero-detail strong{font-weight:500;color:var(--ink)}.hero-bottom{padding-top:28px;margin-top:0}.image-label{left:0;bottom:0;right:auto;min-width:65%;padding:18px 25px}.hero-image{min-height:590px}.hero-image:after{content:'';position:absolute;inset:0;border:1px solid #00000008;pointer-events:none}.service-extra a{text-decoration:underline;text-underline-offset:4px}.services article{transition:background .2s}.services article:hover{background:#e9ece340}.feature-story{display:grid;grid-template-columns:1.13fr 1fr;background:#e4e7dd;min-height:680px}.feature-image{position:relative;min-height:680px;overflow:hidden}.feature-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 55%}.feature-copy{padding:80px 15% 55px 13%;display:flex;flex-direction:column;align-items:start}.feature-copy h2{font-size:clamp(40px,4vw,65px);margin-bottom:20px}.feature-copy p{font-size:13px;line-height:1.9}.feature-copy .text-link{margin-top:23px}.feature-caption{margin-top:auto;padding-top:45px;display:flex;flex-direction:column;gap:7px}.feature-caption span{font-size:8px;letter-spacing:1.6px}.feature-caption strong{font-weight:500;font-size:12px}.work{background:var(--paper)}.gallery{gap:34px 26px}.project:nth-child(3n+2){padding-top:36px}.project img{height:390px}.project:nth-child(3n+2) img{height:354px}.project figcaption{font-weight:500}.gallery-bottom{border-top:1px solid var(--line);padding-top:20px;margin-top:35px;display:flex;justify-content:space-between;align-items:center;gap:20px}.gallery-bottom p{font-size:11px}.about-photo img{object-position:60% 50%}.faq{display:grid;grid-template-columns:.9fr 1.2fr;gap:12%;background:#e9ece3}.faq>div>p{font-size:13px;margin-top:28px;line-height:2}.faq details{border-bottom:1px solid #c8cebf}.faq details:first-child{border-top:1px solid #c8cebf}.faq summary{padding:22px 0;font-size:14px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary span{font-size:23px;font-weight:300;transition:transform .2s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{font-size:13px;margin:0 30px 24px 0;line-height:1.9}.form-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.form-heading>span:last-child{font-size:9px;letter-spacing:1px;color:var(--muted)}.form-intro{margin-top:-6px!important;margin-bottom:18px}.service-choice{display:grid;gap:8px;margin-bottom:25px}.service-choice button{display:flex;align-items:center;text-align:left;width:100%;border:1px solid #d6dbcc;background:transparent;color:var(--ink);padding:14px 12px;font-size:12px;gap:11px}.service-choice button>span{font-size:9px;color:#677269}.service-choice button i{font-style:normal;margin-left:auto}.service-choice button.selected{background:#e4e9d5;border-color:var(--ink)}.back-step,.copy-details{padding:0;border:0;background:transparent;color:var(--ink);font-size:11px;text-decoration:underline;text-underline-offset:4px}.back-step{margin-bottom:22px}.copy-details{display:block;margin:15px auto 0}.form-note a{text-decoration:underline}.form-grid input{min-width:0}.contact{align-items:start}.contact h2{font-size:clamp(42px,4.5vw,65px)}.contact>div>p{margin-top:26px}.contact form{box-shadow:0 18px 45px #3446290c}dialog{padding:20px;background:#f4f2eb;overflow:auto}dialog img{max-height:76vh;max-width:80vw;min-width:240px}.photo-prev,.photo-next{position:absolute;top:45%;width:42px;height:42px;border:0;background:var(--paper);border-radius:50%;font-size:18px;color:var(--ink)}.photo-prev{left:30px}.photo-next{right:30px}.photo-info{display:flex;align-items:center;justify-content:space-between;gap:25px;max-width:80vw}.photo-info p{max-width:600px}.photo-info>span{white-space:nowrap;font-size:10px}.photo-open{overflow:hidden}.close{z-index:2}.service-hero{display:grid;grid-template-columns:1fr 1fr;gap:7%;padding:45px 6% 65px}.service-hero>div{padding-top:12px}.breadcrumb{font-size:10px;color:var(--muted)}a.breadcrumb{text-decoration:underline}.service-hero .eyebrow{margin-top:55px}.service-hero h1{font-size:clamp(45px,5vw,72px);margin-top:25px}.service-hero p{font-size:14px;line-height:1.9;max-width:450px}.service-hero .button{margin-top:23px}.service-hero>img{height:580px;width:100%;object-fit:cover}.scope-section{display:grid;grid-template-columns:1fr 1fr;background:#e9ece3}.scope-section>img{width:100%;height:100%;max-height:660px;object-fit:cover}.scope-section>div{padding:65px 12%}.scope-section ul{list-style:none;padding:0;margin-top:30px}.scope-section li{padding:12px 0;border-bottom:1px solid #ccd2c3;font-size:13px}.scope-section li:before{content:'↗';padding-right:15px}.scope-section p{font-size:11px;line-height:1.8}.service-cta{padding:75px 6%;background:var(--yellow);text-align:center}.service-cta .eyebrow,.service-cta .actions{justify-content:center}.service-cta p{font-size:14px}.service-cta h2{margin-top:20px}input:focus,textarea:focus,select:focus{outline:2px solid #647b45;outline-offset:4px}.faq summary:focus-visible{outline:2px solid #647b45;outline-offset:3px}@media(min-width:1500px){.hero{min-height:780px}.hero-image{min-height:680px}.hero-copy{padding-top:70px}}@media(max-width:1100px){header{gap:20px}nav{gap:18px;font-size:12px}.hero{min-height:620px}.hero-image{min-height:530px}.hero-detail{margin-top:25px}.hero-copy{padding-top:30px}.project img{height:320px}.project:nth-child(3n+2) img{height:284px}.feature-copy{padding:65px 10%}.feature-story,.feature-image{min-height:610px}.service-hero>img{height:540px}.service-hero .eyebrow{margin-top:35px}}@media(max-width:700px){header{height:78px;gap:12px}.brand-symbol{width:34px;height:34px}.brand{font-size:17px;gap:9px}.brand small{font-size:8px;letter-spacing:3.8px}header>.button.small{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;justify-content:center;align-items:center;width:44px;height:44px;margin-left:auto;border:1px solid var(--line);background:transparent;color:var(--ink)}.menu-toggle span{display:block;width:18px;height:1px;background:var(--ink)}nav.is-open{display:flex;position:absolute;top:78px;left:0;right:0;flex-direction:column;gap:0;background:var(--paper);padding:15px 6% 25px;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #233e3510}nav a{padding:15px 0;font-size:17px;border-bottom:1px solid var(--line)}.hero{padding-top:10px;gap:25px}.hero-copy{padding-top:26px}h1{font-size:clamp(44px,11vw,65px);line-height:1.07;letter-spacing:-1.8px}.hero-detail{margin-top:25px;padding-top:18px;width:100%}.hero-detail img{height:60px;width:78px}.hero-detail p{font-size:11px}.hero-bottom{padding-top:22px;flex-wrap:wrap;gap:8px 20px}.hero-image{min-height:480px}.image-label{padding:14px 18px;min-width:70%}.feature-story{display:flex;flex-direction:column}.feature-image{min-height:470px}.feature-copy{padding:40px 6%}.feature-copy h2{font-size:43px}.feature-caption{padding-top:30px}.gallery{gap:20px 12px}.project:nth-child(3n+2){padding-top:0}.project img,.project:nth-child(3n+2) img{height:250px}.gallery-bottom{display:block}.gallery-bottom .text-link{margin-top:10px}.faq{grid-template-columns:1fr;gap:28px}.faq h2 br{display:none}.faq summary{font-size:13px;padding:20px 0}.contact form{padding:25px}.contact h2{font-size:43px}.form-heading .eyebrow{font-size:8px}.service-choice button{font-size:12px;padding:15px 10px;min-height:50px}.photo-prev,.photo-next{width:35px;height:35px;top:40%}.photo-prev{left:18px}.photo-next{right:18px}.photo-info{gap:12px}.photo-info p{font-size:10px}.service-hero{display:flex;flex-direction:column;padding:25px 6% 45px;gap:35px}.service-hero h1{font-size:48px}.service-hero .eyebrow{margin-top:30px;font-size:8px}.service-hero>img{height:430px}.scope-section{grid-template-columns:1fr}.scope-section>img{height:320px}.scope-section>div{padding:45px 6%}.service-cta{padding:55px 6%}.service-cta .actions{flex-direction:column;gap:20px}.service-cta h2{font-size:40px}.form-grid{gap:0}dialog{padding:12px}footer .brand{font-size:15px}}@media(max-width:370px){.actions{flex-wrap:wrap}h1{font-size:43px}.hero-image{min-height:410px}.project img,.project:nth-child(3n+2) img{height:210px}.hero-bottom{font-size:6px}.phone{font-size:25px}.service-hero h1{font-size:41px}}
.client-note{padding:65px 15%;background:#e4e7dd;text-align:center}.client-note>.eyebrow{justify-content:center}.client-note blockquote{font-family:Georgia,serif;font-size:clamp(24px,2.5vw,38px);line-height:1.45;letter-spacing:-.5px;margin:25px 0 30px}.client-note>div:last-child{display:flex;justify-content:center;align-items:center;gap:45px;font-size:12px}.client-note small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.no-script{text-align:center;padding:20px;background:var(--yellow)}.no-script a{text-decoration:underline}@media(max-width:700px){.client-note{padding:48px 7%}.client-note blockquote{font-size:27px}.client-note>div:last-child{gap:25px}}

/* deploy additions */
.hp-field{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
.trust .ratings b{color:#71825b;font-weight:600}
.contact .contact-address{font-size:12px;margin:-12px 0 22px;line-height:1.6}
.google-reviews{margin-top:45px}
@media(max-width:700px){.trust .ratings{width:100%;text-align:center}}
.google-reviews .ratings-row{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;font-size:12px;font-weight:600;margin:10px 0 35px}
.google-reviews .ratings-row b{color:#71825b}
.review-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;text-align:left}
.review-grid figure{margin:0;background:#f4f2ea;padding:28px;border:1px solid var(--line)}
.review-grid blockquote{font-family:Georgia,serif;font-size:17px;line-height:1.55;margin:0 0 16px}
.review-grid figcaption{font-size:11px;font-weight:600;color:var(--muted)}
@media(max-width:700px){.review-grid{grid-template-columns:1fr}.review-grid blockquote{font-size:16px}}
.client-note>div.google-reviews:last-child{display:block;font-size:inherit}
.review-grid{grid-template-columns:repeat(3,1fr)}
.review-grid figcaption small{font-weight:400;margin-left:0}
.client-note{padding-left:8%;padding-right:8%}
@media(max-width:1050px){.review-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.review-grid{grid-template-columns:1fr}}
.notfound-links{display:flex;flex-direction:column;gap:0;align-self:center;border-top:1px solid var(--line)}
.notfound-links .eyebrow{padding:18px 0}
.notfound-links a{padding:18px 0;border-bottom:1px solid var(--line);font-size:15px}
.notfound-links a:hover{color:#71825b}
.notfound-links .eyebrow{margin-top:0}
