*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body,h1,h2,h3,h4,p,figure,blockquote,dl,dd{margin:0}body{min-height:100vh;text-rendering:optimizeSpeed}img,picture{display:block;max-width:100%}input,button,textarea,select{font:inherit}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}:root{--color-bg: #f4f0e6;--color-surface: #fffdf6;--color-surface-muted: #dfe5dc;--color-text: #142219;--color-text-muted: #4f5e54;--color-border: #bac3ba;--color-primary: #1f5a37;--color-primary-contrast: #fffdf6;--color-accent: #f2b91d;--color-contrast: #101812;--color-contrast-text: #f6f1e7;--font-body: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-heading: "Arial Narrow", "Roboto Condensed", Impact, ui-sans-serif, system-ui, sans-serif;--step--1: .9rem;--step-0: 1rem;--step-1: 1.125rem;--step-2: 1.35rem;--step-3: 1.75rem;--step-4: 2.25rem;--step-5: 3rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4rem;--radius-sm: 2px;--radius-md: 6px;--shadow-sm: 0 1px 2px rgb(0 0 0 / .06);--shadow-md: 0 16px 40px rgb(0 0 0 / .08);--width-content: 1180px;--width-narrow: 760px;--header-height: 82px;--focus-ring: 0 0 0 3px rgb(242 185 29 / .48)}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6}body.menu-open{overflow:hidden}a{color:inherit;text-underline-offset:.18em}a:hover{color:var(--color-primary)}:focus-visible{border-radius:var(--radius-sm);box-shadow:var(--focus-ring);outline:2px solid transparent}h1,h2,h3{color:var(--color-text);font-family:var(--font-heading);font-weight:700;line-height:1.1}h1,h2{letter-spacing:-.025em;text-transform:uppercase}h1{font-size:var(--step-5);max-width:12ch}h2{font-size:var(--step-4)}h3{font-size:var(--step-2)}p{color:var(--color-text-muted)}.container{margin-inline:auto;max-width:var(--width-content);padding-inline:var(--space-5);width:100%}.container--narrow{max-width:var(--width-narrow)}.skip-link,.sr-only{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.skip-link:focus{background:var(--color-contrast);clip:auto;color:var(--color-contrast-text);height:auto;left:var(--space-4);padding:var(--space-3) var(--space-4);top:var(--space-4);width:auto;z-index:1000}.site-header{background:#101812f5;backdrop-filter:blur(12px);border-bottom:1px solid var(--color-border);min-height:var(--header-height);position:sticky;top:0;z-index:20}.header__inner{align-items:center;display:flex;gap:var(--space-5);min-height:var(--header-height)}.site-logo{align-items:center;display:inline-flex;flex:0 0 auto;font-weight:700;text-decoration:none}.site-logo img{display:block;height:58px;width:auto}.brand-logo--one-color{height:76px;width:auto}.primary-nav{align-items:center;display:flex;gap:var(--space-2);margin-left:auto}.header-call{align-items:flex-start;background:var(--color-accent);border-radius:var(--radius-md);color:var(--color-text);display:flex;flex-direction:column;font-size:.72rem;justify-content:center;line-height:1.1;min-height:48px;padding:.45rem .8rem;text-decoration:none;text-transform:uppercase}.header-call strong{font-size:.95rem;letter-spacing:.02em}.header-call:hover{color:var(--color-text);filter:brightness(.96)}.primary-nav a,.dropdown-toggle{align-items:center;background:transparent;border:0;border-radius:var(--radius-sm);color:var(--color-contrast-text);cursor:pointer;display:inline-flex;font-size:var(--step--1);font-weight:700;min-height:42px;padding:var(--space-2) var(--space-3);text-decoration:none;transition:background-color .12s ease,color .12s ease}.primary-nav a.active{color:var(--color-accent)}.primary-nav a:hover,.primary-nav a:focus-visible,.dropdown-toggle:hover,.dropdown-toggle:focus-visible,.has-dropdown:hover>a,.has-dropdown:hover>.dropdown-toggle,.has-dropdown:focus-within>a,.has-dropdown:focus-within>.dropdown-toggle,.has-dropdown.is-open>a,.has-dropdown.is-open>.dropdown-toggle{background:#ffffff14;color:var(--color-accent)}.nav-item{align-items:center;display:inline-flex;position:relative}.dropdown{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:grid;gap:var(--space-1);left:0;min-width:220px;opacity:0;padding:calc(var(--space-2) + var(--space-2)) var(--space-2) var(--space-2);pointer-events:none;position:absolute;top:100%;transform:translateY(-4px);transition:opacity .12s ease,transform .12s ease}.has-dropdown:hover .dropdown,.has-dropdown:focus-within .dropdown,.has-dropdown.is-open .dropdown{opacity:1;pointer-events:auto;transform:translateY(0)}.menu-toggle{background:transparent;border:0;display:none;margin-left:auto;padding:var(--space-2)}.menu-toggle span:not(.sr-only){background:var(--color-contrast-text);display:block;height:2px;margin:5px;width:26px}.hero-section{padding-block:var(--space-8)}.hero-section__inner{align-items:center;display:grid;gap:var(--space-7);grid-template-columns:minmax(0,1fr)}.hero-section--split .hero-section__inner{grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr)}.hero-section--image{background:var(--color-contrast);color:var(--color-contrast-text);min-height:clamp(34rem,72vh,48rem);overflow:hidden;padding-block:0;position:relative}.hero-section--image:after{background:linear-gradient(90deg,#0b1d12f0,#0b1d12b8 48%,#0b1d1229 78%);content:"";inset:0;position:absolute}.hero-section--image .hero-section__inner{align-items:center;min-height:inherit;position:relative;z-index:1}.hero-section--image .hero-section__copy{max-width:680px;padding-block:var(--space-8);z-index:2}.hero-section--image h1,.hero-section--image .lede{color:var(--color-contrast-text)}.hero-section--image h1{font-size:clamp(3.5rem,8vw,7rem);line-height:.88;max-width:9ch}.hero-section--image .eyebrow{color:var(--color-accent)}.hero-section--image .hero-section__media--background{border-radius:0;inset:0;position:absolute}.hero-section--image .hero-section__media img{aspect-ratio:auto;object-position:var(--media-position, center)}.hero-section__copy{display:grid;gap:var(--space-5)}.lede{color:var(--color-text-muted);font-size:var(--step-1);max-width:62ch}.eyebrow{color:var(--color-primary);font-size:var(--step--1);font-weight:800;letter-spacing:0;text-transform:uppercase}.section{padding-block:var(--space-8)}.section--muted{background:var(--color-surface-muted)}.section--contrast{background:var(--color-contrast);color:var(--color-contrast-text)}.section--contrast h2,.section--contrast p{color:inherit}.section-heading,.section-copy{display:grid;gap:var(--space-4);margin-bottom:var(--space-6)}.section-copy--center,.section-heading{text-align:center}.section-heading{margin-inline:auto;max-width:var(--width-narrow)}.button-row{display:flex;flex-wrap:wrap;gap:var(--space-3)}.button-row--center{justify-content:center}.button{align-items:center;border:1px solid transparent;border-radius:var(--radius-md);display:inline-flex;font-weight:800;justify-content:center;min-height:44px;padding:.7rem 1rem;text-decoration:none}.button--primary{background:var(--color-primary);color:var(--color-primary-contrast)}.button--secondary{background:var(--color-surface);border-color:var(--color-border);color:var(--color-text)}.button--ghost{background:transparent;border-color:currentColor}.button--link{border:0;min-height:auto;padding:0;text-decoration:underline}.grid{display:grid;gap:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--color-surface);border-radius:var(--radius-md);color:inherit;display:grid;overflow:hidden;text-decoration:none}.card--bordered{border:1px solid var(--color-border)}.card--elevated{box-shadow:var(--shadow-md)}.card__body{display:grid;gap:var(--space-3);padding:var(--space-5)}.media{background:var(--color-surface-muted);border-radius:var(--radius-md);margin:0;overflow:hidden}.media img{aspect-ratio:4 / 3;height:100%;object-fit:cover;object-position:var(--media-position, center);width:100%}.trust-strip{background:var(--color-accent);color:var(--color-text)}.trust-strip__inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.trust-strip__item{align-items:center;display:flex;gap:var(--space-3);justify-content:center;min-height:86px;padding:var(--space-4);text-transform:uppercase}.trust-strip__item+.trust-strip__item{border-left:1px solid rgb(27 35 30 / .25)}.emergency-section{background:var(--color-contrast);color:var(--color-contrast-text);padding-block:var(--space-7)}.emergency-section__inner{align-items:stretch;display:grid;gap:var(--space-7);grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr)}.emergency-section__copy{align-content:center;display:grid;gap:var(--space-4)}.emergency-section h2,.emergency-section p{color:inherit}.emergency-section .eyebrow{color:var(--color-accent)}.emergency-section__media{max-height:22rem}.services-opening{background:var(--color-contrast);color:var(--color-contrast-text);min-height:clamp(34rem,70vh,46rem);overflow:hidden;position:relative}.services-opening__media,.services-opening__media img,.services-opening__shade{inset:0;position:absolute}.services-opening__media{border-radius:0;margin:0}.services-opening__media img{height:100%;object-fit:cover;object-position:var(--media-position, center);width:100%}.services-opening__shade{background:linear-gradient(90deg,#0b1d12f5,#0b1d12d1 42%,#0b1d1238 76%)}.services-opening .breadcrumbs,.services-opening__inner,.services-opening__proof{position:relative;z-index:1}.services-opening .breadcrumbs{color:var(--color-contrast-text);padding-top:var(--space-5)}.services-opening .breadcrumbs a{color:inherit}.services-opening__inner{align-items:center;display:grid;min-height:clamp(25rem,54vh,34rem);padding-block:var(--space-6) var(--space-8)}.services-opening__copy{display:grid;gap:var(--space-5);max-width:680px}.services-opening h1{color:inherit;font-size:clamp(3.4rem,5.4vw,5.2rem);line-height:.9;max-width:12ch}.services-opening .eyebrow{color:var(--color-accent)}.services-opening .lede{color:inherit;max-width:50ch}.services-opening .button--primary{background:var(--color-accent);color:var(--color-text)}.services-opening__proof{background:#f2b91df5;color:var(--color-text)}.services-opening__proof-inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.services-opening__proof span{align-items:center;display:flex;font-size:var(--step--1);font-weight:800;justify-content:center;min-height:62px;padding:var(--space-3);text-transform:uppercase}.services-opening__proof span+span{border-left:1px solid rgb(27 35 30 / .25)}.services-jump{background:var(--color-primary);color:var(--color-primary-contrast);position:sticky;top:var(--header-height);z-index:10}.services-jump__inner{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.services-jump a{align-items:center;display:flex;font-size:var(--step--1);font-weight:800;justify-content:center;min-height:54px;padding:var(--space-3);text-decoration:none;text-transform:uppercase}.services-jump a+a{border-left:1px solid rgb(246 241 231 / .22)}.services-jump a:hover{background:#ffffff14;color:var(--color-accent)}.service-group{padding-block:var(--space-8);scroll-margin-top:calc(var(--header-height) + 54px)}.service-group:nth-of-type(2n){background:var(--color-surface-muted)}.service-group__layout{align-items:start;display:grid;gap:var(--space-8);grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr)}.service-group__intro{display:grid;gap:var(--space-4);position:sticky;top:calc(var(--header-height) + 78px)}.service-group__number{color:var(--color-accent);font-family:var(--font-heading);font-size:var(--step-5);font-weight:800;line-height:.8}.service-group__intro .media{margin-top:var(--space-3);max-height:24rem}.service-group__items{display:grid;gap:var(--space-4)}.service-detail{background:var(--color-surface);border-left:4px solid var(--color-primary);box-shadow:var(--shadow-sm);display:grid;gap:var(--space-3);padding:var(--space-5);scroll-margin-top:calc(var(--header-height) + 72px)}.project-gallery{display:grid;gap:var(--space-4);grid-auto-rows:15rem;grid-template-columns:repeat(12,minmax(0,1fr))}.project-tile{background:var(--color-contrast);border:0;color:var(--color-contrast-text);cursor:zoom-in;grid-column:span 4;overflow:hidden;padding:0;position:relative;text-align:left}.project-tile--1,.project-tile--4{grid-column:span 7}.project-tile--2,.project-tile--5{grid-column:span 5}.project-tile img{height:100%;object-fit:cover;transition:transform .24s ease;width:100%}.project-tile span{background:linear-gradient(transparent,#0a180fe0);bottom:0;display:grid;gap:var(--space-1);left:0;padding:var(--space-6) var(--space-4) var(--space-4);position:absolute;right:0}.project-tile small{color:var(--color-accent);font-weight:800;text-transform:uppercase}.project-tile:hover img,.project-tile:focus-visible img{transform:scale(1.035)}.gallery-dialog{background:transparent;border:0;color:var(--color-contrast-text);max-height:92vh;max-width:min(92vw,1040px);padding:0;width:100%}.gallery-dialog::backdrop{background:#040c07eb}.gallery-dialog__panel{background:var(--color-contrast);display:grid;grid-template-columns:minmax(0,1.5fr) minmax(240px,.5fr);max-height:92vh;overflow:auto;position:relative}.gallery-dialog__panel>img{background:#09100b;height:min(82vh,800px);object-fit:contain;width:100%}.gallery-dialog__copy{align-content:center;display:grid;gap:var(--space-4);padding:var(--space-6)}.gallery-dialog__copy h2,.gallery-dialog__copy p{color:inherit}.gallery-dialog__close{align-items:center;background:var(--color-accent);border:0;border-radius:50%;color:var(--color-text);cursor:pointer;display:flex;font-size:1.8rem;height:44px;justify-content:center;position:absolute;right:var(--space-3);top:var(--space-3);width:44px;z-index:1}.button--primary{background:var(--color-accent);color:var(--color-text)}.button--primary:hover{color:var(--color-text);filter:brightness(.96)}.split,.form-section{align-items:start;display:grid;gap:var(--space-7);grid-template-columns:minmax(0,1fr) minmax(280px,1fr)}.embed-section{display:grid;gap:var(--space-5)}.feature-list{counter-reset:feature;display:grid;gap:var(--space-4);grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0}.feature-list li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-2);padding:var(--space-5)}.gallery-grid{display:grid;gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr))}.faq-list{display:grid;gap:var(--space-3)}.faq-list details{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-4)}.faq-list summary{cursor:pointer;font-weight:800}.faq-list p{margin-top:var(--space-3)}.form{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-4);padding:var(--space-5)}.form-field{display:grid;gap:var(--space-2)}.form-field.is-hidden{display:none}.form-field label,.form-field legend{color:var(--color-text);font-weight:800}.form input,.form textarea,.form select{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-text);min-height:44px;padding:var(--space-3);width:100%}.form textarea{min-height:140px}.field-help,.form-note{font-size:var(--step--1)}.form-fallback{background:#fff2bd;border-left:4px solid var(--color-accent);color:var(--color-text);padding:var(--space-4)}.form-fallback[hidden]{display:none}.ghl-embed{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid;gap:var(--space-3);margin-inline:auto;max-width:var(--width-content);padding:var(--space-4);width:100%}.ghl-embed__frame{border:0;border-radius:var(--radius-sm);display:block;min-height:420px;width:100%}.ghl-embed__loading,.ghl-embed__fallback{font-size:var(--step--1);margin:0}.ghl-embed__trusted-code{display:grid;min-height:420px}.breadcrumbs{display:flex;gap:var(--space-2);padding-block:var(--space-4)}.site-footer{background:var(--color-contrast);color:var(--color-contrast-text);padding-block:var(--space-7) var(--space-5)}.site-footer a,.site-footer p{color:inherit}.footer__grid{display:grid;gap:var(--space-6);grid-template-columns:1fr auto auto}.footer__brand{display:inline-block;font-weight:800;margin-bottom:var(--space-2);text-decoration:none}.footer__brand img{display:block;height:76px;width:auto}.mobile-call-bar{display:none}.site-footer nav,.site-footer address{display:grid;gap:var(--space-2)}.footer__bottom{border-top:1px solid rgb(255 255 255 / .18);margin-top:var(--space-6);padding-top:var(--space-4)}.rich-text{display:grid;gap:var(--space-4)}.markdown-section:has(.rich-text:empty){display:none}@media(max-width:860px){body{padding-bottom:68px}h1{font-size:var(--step-4)}.menu-toggle{display:block}.header-call{display:none}.site-logo img{height:50px}.mobile-call-bar{background:var(--color-accent);bottom:0;display:block;left:0;padding:.45rem max(1rem,env(safe-area-inset-right)) calc(.45rem + env(safe-area-inset-bottom)) max(1rem,env(safe-area-inset-left));position:fixed;right:0;z-index:50}.mobile-call-bar a{align-items:center;color:var(--color-text);display:flex;gap:.7rem;justify-content:center;min-height:52px;text-decoration:none}.mobile-call-bar span{display:grid;line-height:1.05}.mobile-call-bar strong{font-size:.78rem;text-transform:uppercase}.mobile-call-bar small{font-size:1rem;font-weight:800}.primary-nav{background:var(--color-contrast);border-top:1px solid var(--color-border);display:none;inset:var(--header-height) 0 auto 0;padding:var(--space-4) var(--space-5) var(--space-6);position:fixed}.primary-nav.is-open{display:grid}.primary-nav>a.button{background:var(--color-accent);color:var(--color-text);justify-self:start;margin-top:var(--space-2);padding-inline:var(--space-5)}.nav-item{align-items:stretch;display:grid}.dropdown{box-shadow:none;min-width:auto;opacity:1;pointer-events:auto;position:static;transform:none}.hero-section--split .hero-section__inner,.split,.form-section,.emergency-section__inner,.footer__grid,.grid,.feature-list,.gallery-grid{grid-template-columns:1fr}.hero-section--image{min-height:38rem}.hero-section--image:after{background:linear-gradient(0deg,#0b1d12f0,#0b1d12b8 62%,#0b1d124d)}.hero-section--image .hero-section__inner{align-items:end}.hero-section--image h1{font-size:clamp(3.2rem,16vw,5rem)}.services-opening{min-height:38rem}.services-opening__shade{background:linear-gradient(0deg,#0b1d12f7,#0b1d12c7 66%,#0b1d1261)}.services-opening__inner{align-items:end;min-height:28rem}.services-opening h1{font-size:clamp(3rem,12vw,4.5rem);max-width:11ch}.trust-strip__inner{grid-template-columns:1fr;padding-block:var(--space-2)}.trust-strip__item{justify-content:flex-start;min-height:52px}.trust-strip__item+.trust-strip__item{border-left:0;border-top:1px solid rgb(27 35 30 / .25)}.services-jump{overflow-x:auto}.services-jump__inner{min-width:560px;padding-inline:0}.service-group__layout{grid-template-columns:1fr}.service-group__intro{position:static}.project-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.project-tile,.project-tile--1,.project-tile--2,.project-tile--4,.project-tile--5{grid-column:span 1}.gallery-dialog__panel{grid-template-columns:1fr}.gallery-dialog__panel>img{height:62vh}}@media(max-width:639px){.form input,.form textarea,.form select{font-size:1rem}.services-opening__copy .button-row,.services-opening__copy .button{width:100%}.services-opening__proof-inner{grid-template-columns:1fr;padding-block:var(--space-2)}.services-opening__proof span{justify-content:flex-start;min-height:44px}.services-opening__proof span+span{border-left:0;border-top:1px solid rgb(27 35 30 / .25)}.project-gallery{grid-template-columns:1fr}.gallery-dialog{max-width:100vw}}@media(min-width:640px)and (max-width:859px){.grid,.feature-list{grid-template-columns:repeat(2,minmax(0,1fr))}.trust-strip__inner{grid-template-columns:repeat(3,minmax(0,1fr));padding-block:0}.trust-strip__item{justify-content:center;min-height:80px}.trust-strip__item+.trust-strip__item{border-left:1px solid rgb(20 34 25 / .25);border-top:0}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.visually-hidden{clip:rect(1px,1px,1px,1px);height:1px;overflow:hidden;position:absolute;white-space:nowrap;width:1px}.flow>*+*{margin-top:var(--space-4)}
