/* Unified presentation; recovered service facts and SEO metadata are preserved. */
:root{--page-width:1160px;--ink:#203c2c;--body-ink:#3c5144;--green:#23764b;--green-hover:#185635;--soft:#f3f6f0;--line:#d8e3d9;scroll-padding-top:110px}
body{font-size:17px;line-height:1.75;color:var(--body-ink)}h1,h2,h3{color:var(--ink);font-weight:400;letter-spacing:-.025em}a{transition:color .15s,background-color .15s,border-color .15s}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #397e50;outline-offset:4px}section[id],h1[id]{scroll-margin-top:110px}
body .site-header{position:sticky;top:0;background:#fff;border-bottom:1px solid #dde6dc;z-index:30}.header-shell{max-width:calc(var(--page-width) + 48px);min-height:84px;padding:14px 24px;gap:24px}.site-header .brand{color:var(--ink);font-size:19px;font-weight:500;gap:12px;flex-shrink:0}.site-header .brand img{width:46px;height:46px;object-fit:contain;border-radius:0}.site-header .brand small{color:#53665a;font-size:12px;line-height:1.5;margin-top:3px}.site-header .desktop-nav{gap:8px;color:var(--ink);font-size:14px;font-weight:400}.site-header .desktop-nav a:not(.header-cta){padding:10px 13px;border-radius:5px}.site-header .desktop-nav a:hover,.site-header .desktop-nav a[aria-current=page]{color:var(--green-hover);background:#edf3eb}.site-header .desktop-nav a[aria-current=page]::after{left:13px;right:13px;bottom:5px;height:1px}.site-header .desktop-nav .header-cta{display:inline-flex;align-items:center;gap:8px;margin-left:8px;background:var(--green);border-color:var(--green);color:#fff;padding:12px 18px;min-height:46px;border-radius:6px}.site-header .desktop-nav .header-cta:hover{background:var(--green-hover);color:#fff}.site-header .mobile-nav{display:none}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:12px 21px;font:500 15px/1.5 Roboto,sans-serif;border:1px solid transparent;border-radius:6px;cursor:pointer;text-decoration:none;white-space:normal}.button svg{width:19px;height:19px}.button-green{background:var(--green);color:#fff;border-color:var(--green)}.button-green:hover{background:var(--green-hover);border-color:var(--green-hover);color:#fff}.button-light{background:#fff;color:#203c2c;border-color:#fff}.button-light:hover{background:#e7efdf;border-color:#e7efdf;color:#173523}.button-outline-light{background:transparent;color:#fff;border-color:#ffffffaa}.button-outline-light:hover{background:#fff;color:#203c2c;border-color:#fff}
.home-hero{position:relative;isolation:isolate;display:flex;align-items:center;min-height:70svh;padding:48px 32px;background:#1a3122 url('/assets/trees-3822149_960_720-1.jpg') center/cover}.home-hero .elementor-background-video-container{z-index:-2}.hero-scrim{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(12,31,20,.84),rgba(12,31,20,.68))}.hero-shell{max-width:var(--page-width);width:100%;margin:auto;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:80px;align-items:center}.hero-name{font:500 17px/1.5 Poppins,sans-serif;color:#e2efdd;margin:0 0 20px}.hero-copy h1{font-size:clamp(38px,4.2vw,56px);line-height:1.15;font-weight:400;color:#fff;margin-bottom:22px;letter-spacing:-.035em}.hero-copy h1 span{font-size:.8em;letter-spacing:-.03em}.hero-description{font-size:18px;line-height:1.75;color:#f0f5eb;max-width:550px;margin-bottom:28px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-phone{display:inline-flex;align-items:center;gap:10px;color:#f0f5eb;font-size:14px;margin-top:20px;min-height:32px}.hero-phone svg{width:17px;height:17px}.hero-phone strong{font-weight:500}.hero-phone:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}.hero-copy a:focus-visible{outline-color:#cce7ac}.hero-visit{padding:30px;background:#fff;border:1px solid #fff;border-radius:10px;color:var(--body-ink)}.hero-visit h2{font-size:26px;line-height:1.35;margin-bottom:25px}.visit-detail{display:flex;align-items:flex-start;gap:15px;margin-bottom:21px;font-size:16px;line-height:1.6}.visit-detail svg{color:var(--green);margin-top:3px}.visit-detail p{margin:0}.visit-detail p span{font-size:14px;color:#586b5e}.visit-phone{align-items:center;font-family:Poppins,sans-serif;font-size:22px;color:var(--ink);font-weight:500}.hero-visit>.button{display:flex;width:100%;margin-top:25px}.visit-note{font-size:13px;line-height:1.6;color:#59695e;text-align:center;margin:13px 0 0}.home-hero .video-toggle{right:24px;bottom:16px;min-height:34px;background:#11291ee6;color:#fff;border-color:#ffffff8c;font-size:11px}
.polish-shell,.page-shell{max-width:var(--page-width);margin-inline:auto}.page-shell{width:calc(100% - 64px)}.polish-section{padding-block:68px}.section-intro h2{font-size:clamp(28px,3vw,37px)}.section-intro>p:not(.eyebrow){color:#4c6353}.quick-facts{padding:25px 32px;background:#edf3e9}.quick-facts>.polish-shell{gap:36px}.quick-facts p{font-size:15px;color:#354c3d}.eyebrow{color:var(--green-hover);font-size:12px;letter-spacing:.08em}.service-card{border-color:#ceddce;border-radius:10px;box-shadow:none;padding:30px 26px}.service-card h3{font-size:23px}.service-card>.text-link{min-height:32px;display:inline-flex;align-items:center}.text-link{color:var(--green-hover);text-decoration-thickness:1px}.quote-section{padding:48px 32px;background:#f8f9f5;border-block:1px solid #e0e7dc;text-align:center}.quote-section blockquote{margin:0 auto;max-width:840px}.quote-section blockquote p{font:400 22px/1.65 Poppins,sans-serif;color:#2d4b35;margin:0 0 16px}.quote-section cite{font:400 13px/1.5 Roboto,sans-serif;font-style:normal;color:#5a6d60}.faq-section{background:#edf3e9}.faq-layout>.section-intro{top:120px}.faq-item summary{font-size:17px;min-height:60px}.faq-answer{font-size:16px;color:#344b3d}
.content-page .breadcrumbs{position:static;max-width:none;display:flex;width:max-content;margin:24px 0 0;background:none;padding:0;font-size:12px;color:#59695e;gap:10px}.content-page .breadcrumbs a{display:inline-flex;align-items:center;min-height:28px}.content-page .breadcrumbs [aria-current=page]{color:var(--ink)}.profile-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,.85fr);gap:70px;align-items:start;padding:34px 0 64px}.profile-copy>h1{font-size:44px;line-height:1.2;margin-bottom:22px}.profile-lead{max-width:620px;font-size:18px;line-height:1.8;margin-bottom:32px}.profile-copy>h2{font-size:23px;margin-bottom:20px}.work-areas-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;font-size:15px;line-height:1.65}.work-areas{padding-left:18px;margin:0}.work-areas li{margin-bottom:9px;padding-left:3px}.work-areas li::marker{color:var(--green)}.profile-photo{margin:0;padding-top:8px}.profile-photo img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:10px}.profile-photo figcaption{color:#586d5e;font-size:13px;margin-top:13px;text-align:center}.qualifications-section{background:var(--soft);padding:58px 0 64px;border-top:1px solid var(--line)}.qualifications-grid{display:grid;grid-template-columns:.85fr 1.45fr;gap:70px;align-items:start}.qualifications-grid h2{font-size:30px;line-height:1.4}.practice-symbol{width:145px;height:auto;margin:28px 0 0;opacity:.95}.qualification-text{font-size:17px;line-height:1.85}.qualification-text p{margin-bottom:24px}.qualification-text .button{margin-top:5px}
.pricing-banner{position:relative;isolation:isolate;margin-top:20px;padding:45px 32px;background:#23402c url('/assets/forest-3622519_1280-1.jpg') center 45%/cover;text-align:center;color:#fff}.pricing-banner::before{content:"";position:absolute;inset:0;background:#122f22bd;z-index:-1}.pricing-banner .eyebrow{color:#d2e7c6;margin-bottom:12px}.pricing-banner h1{font-size:46px;color:#fff;margin-bottom:12px}.pricing-banner p:not(.eyebrow){font-size:16px;color:#f2f6ee;margin:0}.pricing-section{padding:48px 0 64px}.price-grid{max-width:920px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:28px}.price-card{padding:30px;border:1px solid #ccdccc;border-top:4px solid var(--green);border-radius:10px;background:#fff;display:flex;flex-direction:column}.price-card h2{font-size:26px;margin-bottom:22px;line-height:1.35}.price-value{display:flex;align-items:baseline;gap:10px;margin-bottom:6px;color:var(--ink)}.price-value strong{font:500 52px/1.2 Poppins,sans-serif;letter-spacing:-.04em}.price-value>span{font-size:21px}.price-duration{display:flex;align-items:center;gap:9px;font-size:16px;color:#4c6655;margin-bottom:24px}.price-duration svg{width:19px;height:19px}.price-card ul{list-style:none;margin:0 0 28px;padding:20px 0 0;border-top:1px solid var(--line);font-size:15px;line-height:1.8}.price-card li{margin-bottom:5px}.price-card>.button{display:flex;margin-top:auto}.pricing-note{max-width:760px;margin:30px auto 0;text-align:center;font-size:15px;line-height:1.75;color:#4b6253}
.contact-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;padding:34px 0 64px;align-items:start}.contact-copy h1{font-size:46px;line-height:1.2;margin-bottom:24px}.contact-intro{font-size:18px;line-height:1.8;max-width:520px;margin-bottom:30px}.contact-facts{border-block:1px solid var(--line);padding:25px 0;margin-bottom:24px;display:grid;gap:26px}.contact-fact{display:flex;align-items:flex-start;gap:16px;color:var(--body-ink)}.contact-fact>svg{width:23px;height:23px;color:var(--green);margin-top:4px}.contact-fact h2{font-size:17px;font-weight:500;margin-bottom:7px;letter-spacing:0}.contact-fact p{font-size:16px;line-height:1.65;margin:0}.contact-fact .contact-number{font:500 24px/1.4 Poppins,sans-serif;color:var(--green-hover)}.contact-fact:hover .contact-number{text-decoration:underline;text-underline-offset:5px}.contact-online{font-size:16px;line-height:1.7;max-width:380px;margin-bottom:20px}.booking-panel{border:1px solid var(--line);border-radius:10px;background:#fff;overflow:hidden;min-width:0;scroll-margin-top:110px}.booking-heading{padding:25px 28px 0}.booking-heading h2{font-size:26px;line-height:1.35;margin:0}.booking-heading .eyebrow{margin-bottom:10px}.booking-fallback{background:#f5f8f2;font-size:14px;line-height:1.8;padding:20px 24px;color:#3e5545;margin:0;border-top:1px solid var(--line)}.booking-fallback a{color:var(--green-hover);font-weight:500}.map-section{background:var(--soft);border-top:1px solid var(--line);padding:48px 0 58px}.map-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:20px;margin-bottom:25px}.map-heading h2{font-size:27px;margin:0}.map-heading .eyebrow{margin-bottom:9px}.location-map{height:330px;border:1px solid #ccdccc;border-radius:10px;background:#e6eddf}.site-footer{background:#1d5336;padding-block:42px 22px}.footer-shell,.footer-bottom{max-width:var(--page-width)}.footer-shell span{opacity:1;color:#edf5e7}.footer-shell strong{color:#fff}.footer-booking{min-height:48px;display:inline-flex;align-items:center;background:#fff;color:#203c2c;border-color:#fff;font-size:15px;font-weight:500}.site-footer .footer-booking:hover{background:#e7efdf;color:#203c2c;text-decoration:none}.footer-bottom{font-size:13px;border-color:#ffffff4a}.footer-bottom a{display:inline-flex;align-items:center;min-height:30px;color:#f2f6ed}
@media(max-width:1024px){.hero-shell{gap:36px;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.hero-visit{padding:24px}.hero-visit h2{font-size:24px}.hero-copy h1{font-size:42px}.hero-description{font-size:17px}.profile-grid,.qualifications-grid,.contact-layout{gap:38px}.work-areas-grid{gap:20px}.profile-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.8fr)}.page-shell{width:calc(100% - 48px)}.hero-visit .visit-phone{font-size:20px}.price-card{padding:27px}.polish-section{padding-block:56px}}
@media(max-width:900px){.site-header .desktop-nav{display:none}.site-header .mobile-nav{display:block;position:relative}.site-header .mobile-nav summary{display:flex;align-items:center;justify-content:center;gap:10px;min-height:44px;padding:9px 12px;border:1px solid #cddccc;border-radius:6px;color:var(--ink);font-size:14px;list-style:none;cursor:pointer}.site-header .mobile-nav summary::-webkit-details-marker{display:none}.site-header .mobile-nav nav{position:absolute;right:0;top:calc(100% + 13px);width:min(300px,calc(100vw - 32px));display:grid;gap:2px;padding:10px;background:#fff;border:1px solid #cbd9c9;border-radius:8px;box-shadow:0 12px 30px #102c1a1c;color:var(--ink)}.site-header .mobile-nav nav a{padding:11px 15px;min-height:46px;border-radius:4px;font-size:15px}.site-header .mobile-nav nav a[aria-current=page]{background:#edf3eb;color:var(--green-hover)}.site-header .mobile-nav nav .mobile-nav-booking{background:var(--green);color:#fff;margin-top:5px}.hero-shell{gap:28px}.hero-visit{padding:24px 20px}.visit-detail{gap:12px}.hero-actions{gap:10px}.hero-actions .button{padding-inline:17px}.work-areas-grid{grid-template-columns:1fr}.qualifications-grid{grid-template-columns:.8fr 1.3fr}}
@media(max-width:767px){:root{scroll-padding-top:92px}section[id],h1[id]{scroll-margin-top:92px}.header-shell{min-height:76px;padding:12px 20px;gap:12px}.site-header .brand{font-size:16px;gap:9px}.site-header .brand img{width:39px;height:39px}.site-header .brand small{font-size:11px;line-height:1.5}.site-header .mobile-nav summary{font-size:13px;padding:8px 10px;gap:8px}.home-hero{min-height:70svh;padding:36px 24px}.hero-shell{grid-template-columns:1fr;gap:0}.hero-visit{display:none}.hero-name{font-size:16px;margin-bottom:17px}.hero-copy h1{font-size:39px;line-height:1.16;margin-bottom:20px}.hero-copy h1 span{font-size:.77em}.hero-description{font-size:16px;line-height:1.75;margin-bottom:24px;max-width:520px}.hero-actions .button{padding:11px 17px;font-size:14px;min-height:48px}.hero-phone{font-size:14px;margin-top:17px}.quick-facts{padding:24px}.quick-facts>.polish-shell{grid-template-columns:1fr 1fr;gap:20px}.quick-facts>.polish-shell>div:first-child{grid-column:auto}.quick-facts>.polish-shell>div:last-child{grid-column:1/-1;padding-top:16px;border-top:1px solid #cddccb}.quick-facts p{font-size:14px}.quick-facts a{font-size:21px}.quick-facts .eyebrow{font-size:11px;margin-bottom:7px}.polish-section{padding:48px 24px}.offer-intro{margin-bottom:28px;text-align:left}.section-intro h2{font-size:28px;line-height:1.35}.section-intro>p:not(.eyebrow){font-size:16px}.service-card{padding:26px}.quote-section{padding:36px 24px}.quote-section blockquote p{font-size:18px;line-height:1.7}.faq-layout{gap:25px}.faq-layout>.section-intro{position:static}.faq-item summary{font-size:16px;padding-block:19px}.page-shell{width:calc(100% - 40px)}.content-page .breadcrumbs{font-size:12px;margin-top:18px}.profile-grid{grid-template-columns:1fr;gap:28px;padding:24px 0 40px}.profile-copy>h1{font-size:35px;margin-bottom:19px}.profile-lead{font-size:17px;line-height:1.75;margin-bottom:26px}.profile-copy>h2{font-size:23px;margin-bottom:17px}.work-areas-grid{grid-template-columns:1fr 1fr;gap:20px;font-size:14px;line-height:1.65}.work-areas li{margin-bottom:9px}.profile-photo{max-width:380px;width:100%;margin-inline:auto;padding:0}.profile-photo figcaption{font-size:12px}.qualifications-section{padding:40px 0}.qualifications-grid{grid-template-columns:1fr;gap:20px}.qualifications-grid h2{font-size:27px;margin-bottom:0}.practice-symbol{display:none}.qualification-text{font-size:16px;line-height:1.85}.pricing-banner{margin-top:14px;padding:30px 24px}.pricing-banner h1{font-size:36px}.pricing-section{padding:30px 0 44px}.price-grid{grid-template-columns:1fr;gap:20px}.price-card{padding:25px}.price-card h2{font-size:25px;margin-bottom:16px}.price-value strong{font-size:47px}.pricing-note{text-align:left;font-size:14px}.contact-layout{grid-template-columns:1fr;gap:32px;padding:24px 0 40px}.contact-copy h1{font-size:36px;margin-bottom:20px}.contact-intro{font-size:17px;line-height:1.75;margin-bottom:24px}.contact-facts{padding-block:22px;gap:23px}.contact-fact .contact-number{font-size:24px}.booking-heading{padding:23px 22px 0}.booking-heading h2{font-size:25px}.booking-panel{scroll-margin-top:92px}.booking-fallback{font-size:13px;padding:18px}.map-section{padding:35px 0 40px}.map-heading h2{font-size:25px}.location-map{height:290px}.footer-shell{gap:24px}.site-footer{padding:34px 24px 18px}.footer-shell strong{font-size:21px}.footer-shell span{font-size:13px}.footer-bottom{margin-top:25px}.home-hero .video-toggle{display:none}}
@media(max-width:359px){.header-shell{padding-inline:16px;gap:8px}.site-header .brand{font-size:14px}.site-header .brand img{width:34px;height:34px}.site-header .brand small{font-size:10px}.site-header .mobile-nav summary{padding-inline:8px;font-size:12px}.home-hero{padding:28px 20px}.hero-copy h1{font-size:34px}.hero-copy h1 span{font-size:.75em}.hero-name{font-size:15px}.hero-description{font-size:15px}.hero-actions .button{padding-inline:15px;font-size:13px}.page-shell{width:calc(100% - 32px)}.work-areas-grid{grid-template-columns:1fr;gap:0}}
/* Keep prices and their actions together within a typical laptop viewport. */
.pricing-banner{padding-block:26px}.pricing-section{padding-top:36px}.price-card{padding:26px}.price-card h2{margin-bottom:16px}.price-value strong{font-size:48px}.price-duration{margin-bottom:20px}.price-card ul{padding-top:16px;margin-bottom:20px}.footer-bottom a{min-height:44px}main:focus{outline:none}
@media(max-width:900px){.hero-shell{grid-template-columns:1fr}.hero-visit{display:none}.hero-copy{max-width:620px}}
@media(min-width:768px) and (max-height:650px){.home-hero{padding-block:24px}.hero-name{font-size:15px;margin-bottom:12px}.hero-copy h1{font-size:42px;margin-bottom:14px}.hero-description{font-size:16px;margin-bottom:18px}.hero-phone{margin-top:12px}.hero-visit{padding:24px}.hero-visit h2{font-size:22px;margin-bottom:18px}.visit-detail{margin-bottom:16px}.hero-visit>.button{margin-top:18px}}
@media(max-width:767px){.profile-grid{grid-template-columns:minmax(0,1fr) 110px;grid-template-areas:"eyebrow photo" "title photo" "lead lead" "topics topics" "list list";column-gap:20px;row-gap:0}.profile-copy{display:contents}.profile-copy>.eyebrow{grid-area:eyebrow;align-self:end;margin-bottom:8px}.profile-copy>h1{grid-area:title;align-self:start;margin-bottom:0}.profile-lead{grid-area:lead;margin-top:24px;margin-bottom:25px}.profile-copy>h2{grid-area:topics}.work-areas-grid{grid-area:list}.profile-photo{grid-area:photo;align-self:start;width:110px;max-width:none;margin:0}.profile-photo figcaption{display:none}.pricing-banner{padding-block:26px}.pricing-section{padding-top:28px}.price-card{padding:25px}.price-value strong{font-size:47px}}
@media(max-width:359px){.profile-grid{grid-template-columns:minmax(0,1fr) 92px;column-gap:16px}.profile-photo{width:92px}.profile-copy>h1{font-size:30px}}

.service-card>.text-link,.offer-bottom>.text-link{min-height:44px;display:inline-flex;align-items:center}.booking-fallback{font-size:14px}
.error-content{min-height:60svh;display:flex;align-items:center;padding-block:56px;background:var(--soft)}.error-content h1{font-size:clamp(32px,4vw,46px);line-height:1.25}.error-content p:not(.eyebrow){max-width:650px}.error-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:28px}
