:root{--bg:#f5f7f2;--surface:#e4eae1;--ink:#14231b;--muted:#405248;--accent:#f26522;--accent-strong:#d94d0d;--accent-text:#a93809;--margin:clamp(1.25rem, 2.2vw, 2rem);--section-space:clamp(7rem, 12vw, 11rem);--step-small:clamp(.8125rem, .79rem + .1vw, .875rem);--step-body:clamp(1.0625rem, 1rem + .25vw, 1.1875rem);--step-lead:clamp(1.25rem, 1.1rem + .7vw, 1.5rem);--step-head:clamp(2.5rem, 1.8rem + 3.2vw, 4rem);--step-display:clamp(3.25rem, 2rem + 6vw, 6rem);--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-expo:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.76, 0, .24, 1);--t-press:.14s;--t-hover:.18s;--t-ui:.24s;color-scheme:light;scrollbar-color:var(--accent) var(--surface);scrollbar-width:thin;font-family:Hanken Grotesk,sans-serif}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);scroll-padding-top:2rem}body{background:var(--bg);color:var(--ink);font-family:Hanken Grotesk,sans-serif;font-size:var(--step-body);letter-spacing:-.005em;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;margin:0;font-weight:400;line-height:1.5;overflow-x:clip}::selection{background:var(--accent);color:var(--ink)}::-webkit-scrollbar{width:.65rem}::-webkit-scrollbar-track{background:var(--surface)}::-webkit-scrollbar-thumb{background:var(--accent)}h1,h2,h3,p,figure,ul{margin:0}h1,h2,h3{text-wrap:balance;font-weight:500}h2{font-size:var(--step-head);letter-spacing:-.04em;line-height:.95}h3{letter-spacing:-.035em;font-size:clamp(2rem,1.6rem + 1.5vw,3rem);line-height:1}p{text-wrap:pretty}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:.07em}button,input,select,textarea{font:inherit;caret-color:var(--accent-text)}button,summary,select{cursor:pointer}img{max-width:100%;display:block}section{scroll-margin-top:2rem}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.skip-link{z-index:100;background:var(--ink);color:var(--bg);transition:transform var(--t-ui) var(--ease-out);padding:.75rem 1rem;position:fixed;top:.75rem;left:.75rem;transform:translateY(-160%)}.skip-link:focus{transform:none}.logo-link{color:inherit;text-decoration:none;display:inline-flex}.text-link{transition:text-decoration-color var(--t-hover) ease;text-decoration:underline #0000;display:inline-flex}.text-link:hover{text-decoration-color:currentColor}.button{background:var(--accent);min-height:3.5rem;color:var(--ink);transition:transform var(--t-press) var(--ease-out), background-color var(--t-hover) ease;border:0;border-radius:0;justify-content:space-between;align-items:center;gap:1.5rem;padding:.95rem 1.25rem;font-weight:500;line-height:1.2;text-decoration:none;display:inline-flex}.button:hover{background:var(--accent-strong)}.button:active{transform:scale(.98)}.button--dark{background:var(--ink);color:var(--bg)}.button--dark:hover{background:#2b4034}.button--light{background:var(--bg);color:var(--ink)}.button--light:hover{background:var(--accent)}.button__number{font-variant-numeric:tabular-nums;white-space:nowrap}.section{position:relative}.hero{min-height:100svh;padding:var(--margin);background:var(--bg);grid-template-rows:auto 1fr auto;grid-template-columns:34% 66%;display:grid}.hero__brand{grid-area:1/1;align-self:start}.nav-desktop{font-size:var(--step-small);grid-area:1/2;align-items:center;gap:clamp(1.25rem,2.4vw,2.5rem);display:flex}.nav-mobile{display:none}.hero__intro{grid-area:2/1;align-self:center;max-width:25rem;padding-right:clamp(1.5rem,3vw,3.5rem)}.hero__intro>p{max-width:24ch;font-size:var(--step-lead);margin-bottom:2rem;line-height:1.35}.hero__intro .button{width:100%;max-width:23rem}.hero__email{font-size:var(--step-small);margin-top:1.25rem}.hero__title{font-size:var(--step-display);letter-spacing:-.04em;grid-area:2/2;align-self:start;margin-top:clamp(3.5rem,8vh,6.5rem);line-height:.86}.lines .line{margin-bottom:-.08em;padding-bottom:.08em;display:block;overflow:hidden}.lines [data-line]{display:block}.hero__picture{width:calc(100% + var(--margin));background:#315c35;grid-area:3/2;height:clamp(16rem,32vh,24rem);margin-top:clamp(3rem,7vh,5rem);position:relative;overflow:clip}.hero__picture img{object-fit:cover;object-position:50% 64%;width:100%;height:100%}.hero__location{z-index:1;background:var(--accent);width:min(20rem,72%);color:var(--ink);grid-area:3/2;place-self:start;margin-top:clamp(3rem,7vh,5rem);padding:1.5rem;transform:translateY(-50%)}.hero__location strong,.hero__location span{display:block}.hero__location strong{letter-spacing:-.04em;margin-bottom:.25rem;font-size:2.5rem;font-weight:500;line-height:1}.hero__location span{font-size:var(--step-small)}.intro{padding-top:.5rem}.intro__board{grid-template-rows:repeat(2,38svh);grid-template-columns:repeat(12,1fr);gap:.5rem;margin:.5rem;display:grid}.intro__statement{background:var(--accent);grid-area:1/1/span 2/span 8;align-items:flex-end;padding:1.25rem;display:flex;overflow:clip}.intro__statement h2{font-size:clamp(3.5rem,8vw,6rem);line-height:.86}.intro__local{background:var(--surface);grid-area:1/9/auto/span 4;align-items:flex-end;padding:1.25rem;display:flex;overflow:clip}.intro__local p{font-size:var(--step-display);letter-spacing:-.04em;font-weight:500;line-height:.8}.intro__image{background:#5c8f35;grid-area:2/9/auto/span 4;overflow:clip}.intro__image img{object-fit:cover;width:100%;height:100%}.intro__copy{padding:4rem var(--margin) 0;grid-template-columns:repeat(12,1fr);display:grid}.intro__copy p{max-width:42ch;font-size:var(--step-lead);grid-column:7/span 6;line-height:1.35}.services{margin-top:var(--section-space)}.section-heading--axis{min-height:52svh;padding:4rem var(--margin) 7rem;grid-template-columns:repeat(12,1fr);align-content:center;display:grid}.section-heading--axis h2{grid-column:5/span 8}.section-heading--axis p{grid-column:5/span 4;max-width:35ch;margin-top:2rem}.service-list{padding:0 var(--margin);flex-direction:column;gap:clamp(5rem,9vw,8rem);display:flex}.service-row{grid-template-columns:repeat(12,1fr);align-items:start;display:grid}.service-row__copy{grid-column:5/span 4}.service-row__copy p{max-width:38ch;margin:1.5rem 0 1.25rem}.service-row__copy .text-link{font-size:var(--step-small);font-weight:500}.service-row__image{aspect-ratio:4/5;background:var(--surface);grid-column:10/span 3;width:100%;overflow:clip}.service-row__image--wide{aspect-ratio:3/2;grid-column:9/span 4}.service-row__image--small{aspect-ratio:1;grid-column:11/span 2}.service-row__image img{object-fit:cover;width:100%;height:100%}.service-row__image--portrait img{object-position:50% 70%}.service-row--hauling .service-row__image img{object-position:50% 62%}.showcase{margin-top:var(--section-space)}.showcase__heading{padding:0 var(--margin) 4rem;grid-template-columns:repeat(12,1fr);align-items:end;display:grid}.showcase__heading h2{grid-column:3/span 6}.showcase__heading p{grid-column:9/span 4;justify-self:end;max-width:28ch}.showcase__band{height:68svh;min-height:30rem;display:flex}.showcase__panel{background:var(--surface);min-width:0;transition:flex-grow .5s var(--ease-out);flex:2 1 0;overflow:clip}.showcase__panel--lead{flex-grow:5}.showcase__panel:nth-child(3){flex-grow:3}.showcase__panel img{object-fit:cover;width:100%;height:100%}.showcase__panel:nth-child(2) img{object-position:46% 50%}.showcase__panel:nth-child(4) img{object-position:66% 50%}@media (hover:hover) and (pointer:fine){.showcase__band:hover .showcase__panel{flex-grow:1.5}.showcase__band .showcase__panel:hover{flex-grow:6}}.showcase__caption{margin:1rem var(--margin) 0;color:var(--muted);font-size:var(--step-small)}.areas{margin-top:var(--section-space);padding:clamp(5rem, 9vw, 8rem) var(--margin);background:var(--ink);color:var(--bg);grid-template-columns:repeat(12,1fr);gap:2rem;display:grid}.areas__intro{grid-column:1/span 5}.areas__intro p{max-width:38ch;margin:2rem 0}.areas__list{font-size:var(--step-head);letter-spacing:-.04em;grid-column:7/span 6;padding:0;font-weight:500;line-height:1.05;list-style:none}.areas__list li{margin-bottom:1.25rem}.areas__home{color:var(--accent)}.areas__home span{color:var(--bg);font-size:var(--step-small);letter-spacing:0;vertical-align:middle;margin-left:1rem;font-weight:400;display:inline-block}.faq{margin-top:var(--section-space);padding:0 var(--margin);grid-template-columns:repeat(12,1fr);gap:2rem;display:grid}.faq__heading{grid-column:1/span 4}.faq__heading p{margin-top:1.5rem}.faq__list{grid-column:6/span 7}.faq__list details{background:var(--surface);margin-bottom:.75rem}.faq__list summary{font-size:var(--step-lead);padding:1.5rem;font-weight:500;line-height:1.25}.faq__list summary::marker{color:var(--accent-text)}.faq__answer{grid-template-rows:1fr;display:grid}.faq__answer p{max-width:62ch;padding:0 1.5rem 1.5rem}.contact{margin-top:var(--section-space);padding:clamp(5rem, 9vw, 8rem) var(--margin);background:var(--surface);grid-template-columns:repeat(12,1fr);gap:2rem;display:grid}.contact__intro{grid-column:1/span 5}.contact__intro>p{max-width:38ch;margin-top:2rem}.contact__intro>span{font-size:var(--step-small);display:block}.contact__phone{font-size:var(--step-head);letter-spacing:-.04em;white-space:nowrap;margin:3rem 0 .75rem;font-weight:500;line-height:1;text-decoration:none;display:inline-block}.contact>div:last-child{grid-column:7/span 6}.quote-form{width:100%}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.field{margin-bottom:1.25rem}.field label{margin-bottom:.5rem;font-size:1rem;font-weight:500;display:block}.field label span{color:var(--muted);font-size:var(--step-small);font-weight:400}.field input,.field select,.field textarea{background:var(--bg);width:100%;min-height:3.25rem;color:var(--ink);transition:border-color var(--t-hover) ease, background-color var(--t-hover) ease;border:1px solid #89988b;border-radius:0;padding:.8rem 1rem;font-size:1rem}.field textarea{resize:vertical;min-height:8.5rem}.field input::placeholder,.field textarea::placeholder{color:#536158;opacity:1}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent-text);background:#fff}.form-submit{align-items:center;gap:1.5rem;margin-top:1.5rem;display:flex}.form-submit p{max-width:32ch;color:var(--muted);font-size:var(--step-small)}.form-status{min-height:1.5em;font-size:var(--step-small);margin-top:1rem}.closing{min-height:90svh;padding:clamp(5rem, 9vw, 8rem) var(--margin) 3rem;background:var(--accent);color:var(--ink);flex-direction:column;justify-content:space-between;display:flex}.closing h2{font-size:var(--step-display);line-height:.86}.closing__bottom{justify-content:space-between;align-items:flex-end;gap:2rem;display:flex}.closing__bottom p{max-width:30ch;font-size:var(--step-lead)}.closing__bottom .button{min-width:12rem}.footer{padding:5rem var(--margin) 2rem;background:var(--ink);color:var(--bg);overflow:clip}.footer__contact{grid-template-columns:repeat(12,1fr);gap:2rem;margin-top:5rem;display:grid}.footer__contact>div{letter-spacing:-.035em;flex-direction:column;grid-column:1/span 5;align-items:flex-start;font-size:clamp(1.75rem,2.5vw,2.5rem);font-weight:500;line-height:1.25;display:flex}.footer__contact>p{max-width:36ch;font-size:var(--step-lead);grid-column:7/span 6}.footer__name{letter-spacing:-.04em;white-space:nowrap;margin-top:6rem;font-size:clamp(4rem,8vw,6rem);font-weight:500;line-height:.85}.footer__legal{font-size:var(--step-small);justify-content:space-between;align-items:flex-end;gap:2rem;margin-top:4rem;display:flex}.footer__legal p{max-width:65ch}.credits{font-size:var(--step-small);margin-top:2rem}.credits summary{text-underline-offset:.2em;text-decoration:underline;display:inline-block}.credits p{max-width:105ch;margin-top:1rem;line-height:1.6}.mobile-call{display:none}@media (prefers-reduced-motion:no-preference){.js .hero [data-line]{animation:line-up .9s var(--ease-expo) forwards;animation-delay:calc(.15s + var(--i) * .11s);transform:translateY(105%)}.js .hero [data-load]{opacity:0;animation:load-rise .6s var(--ease-out) .48s forwards}.js .hero .hero__location[data-load]{animation-name:location-rise}.js .hero [data-open]{clip-path:inset(0 0 100%);animation:load-open 1.05s var(--ease-in-out) .15s forwards}.js .hero [data-open] img{animation:load-settle 1.2s var(--ease-expo) .15s forwards;transform:scale(1.07)}.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease-out), transform .9s var(--ease-expo);transition-delay:calc(var(--i,0) * 70ms);transform:translateY(24px)}.js [data-reveal].is-in{opacity:1;transform:none}.intro__local{--i:1}.intro__image{--i:2}.areas__list li:nth-child(2){--i:1}.areas__list li:nth-child(3){--i:2}.areas__list li:nth-child(4){--i:3}.areas__list li:nth-child(5){--i:4}}@keyframes line-up{to{transform:none}}@keyframes load-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes location-rise{0%{opacity:0;transform:translateY(calc(12px - 50%))}to{opacity:1;transform:translateY(-50%)}}@keyframes load-open{to{clip-path:inset(0)}}@keyframes load-settle{to{transform:none}}@media (width<=1100px){.hero{grid-template-columns:37% 63%}.hero__intro .button{flex-direction:column;align-items:flex-start;gap:.35rem}.section-heading--axis h2,.section-heading--axis p{grid-column-start:4}.service-row__copy{grid-column:4/span 5}.service-row__image{grid-column-start:10}.service-row__image--wide{grid-column-start:9}.contact__intro{grid-column:1/span 5}.contact>div:last-child{grid-column:6/span 7}.form-row{grid-template-columns:1fr;gap:0}}@media (width<=900px){.areas__intro,.areas__list,.contact__intro,.contact>div:last-child{grid-column:1/-1}.areas__list,.contact>div:last-child{margin-top:3rem}.faq__heading{grid-column:1/span 5}.faq__list{grid-column:6/span 7}.footer__contact>div,.footer__contact>p{grid-column:1/-1}.footer__contact>p{margin-top:1rem}}@media (width<=700px){:root{--margin:1.25rem;--section-space:7rem}body{padding-bottom:4.5rem}.nav-desktop{display:none}.nav-mobile{top:var(--margin);right:var(--margin);z-index:10;font-size:1rem;display:block;position:absolute}.nav-mobile summary{padding:.4rem 0;font-weight:500;list-style:none}.nav-mobile summary::-webkit-details-marker{display:none}.nav-mobile nav{background:var(--bg);flex-direction:column;width:min(18rem,100vw - 2.5rem);padding:.75rem;display:flex;position:absolute;top:calc(100% + .75rem);right:0;box-shadow:0 12px 32px #14231b2e}.nav-mobile nav a{padding:.85rem;text-decoration:none}.nav-mobile__call{background:var(--accent);margin-top:.5rem;font-weight:500}.hero{grid-template-rows:auto auto auto auto;grid-template-columns:minmax(0,1fr);min-height:auto;padding-bottom:0;display:grid}.hero__brand{grid-area:1/1}.hero__title{grid-area:2/1;margin-top:4rem;font-size:clamp(3rem,14vw,4rem)}.hero__intro{grid-area:3/1;max-width:34rem;margin-top:2.5rem;padding-right:0}.hero__intro>p{max-width:32ch;font-size:1.25rem}.hero__intro .button{flex-direction:row;align-items:center;max-width:none}.hero__picture{aspect-ratio:4/3;grid-area:4/1;width:calc(100% + 2.5rem);height:auto;margin-top:3.5rem;margin-left:-1.25rem}.hero__location{grid-area:4/1;width:62%;margin-top:3.5rem;padding:1.25rem}.hero__location strong{font-size:2rem}.intro__board{grid-template-rows:auto auto;grid-template-columns:repeat(2,1fr);gap:.375rem;margin:.375rem}.intro__statement{grid-area:1/1/auto/-1;min-height:46svh}.intro__statement h2{font-size:clamp(3.25rem,15vw,4.5rem)}.intro__local,.intro__image{aspect-ratio:1;grid-row:2}.intro__local{grid-column:1}.intro__local p{font-size:clamp(2.5rem,12vw,4rem)}.intro__image{grid-column:2}.intro__copy{padding-top:2.5rem;display:block}.intro__copy p{font-size:1.25rem}.section-heading--axis{flex-direction:column;justify-content:flex-end;min-height:50svh;padding-bottom:5rem;display:flex}.section-heading--axis p{max-width:32ch}.service-list{gap:5rem}.service-row{flex-direction:column;display:flex}.service-row__copy p{max-width:40ch}.service-row__image,.service-row__image--wide,.service-row__image--small{aspect-ratio:4/5;width:100%;margin-top:2rem}.service-row__image--wide{aspect-ratio:3/4;align-self:flex-end;width:72%}.service-row__image--small{aspect-ratio:1;align-self:flex-start;width:56%}.showcase__heading{padding-bottom:3rem;display:block}.showcase__heading p{margin-top:1.25rem}.showcase__band{grid-template-rows:1fr 1fr;grid-template-columns:64% 36%;height:84svh;min-height:34rem;display:grid}.showcase__panel,.showcase__panel--lead,.showcase__panel:nth-child(3){width:auto;height:auto}.showcase__panel:nth-child(3){grid-area:2/1}.showcase__band{grid-template-columns:36% 64%}.showcase__panel--lead{grid-area:1/1/auto/-1}.showcase__panel:nth-child(2){display:none}.areas,.faq,.contact{display:block}.areas__home span{margin:.5rem 0 1rem;display:block}.faq__list{margin-top:3rem}.faq__list summary{padding:1.25rem}.faq__answer p{padding:0 1.25rem 1.25rem}.contact__phone{font-size:clamp(2rem,9vw,3rem)}.form-submit{flex-direction:column;align-items:stretch}.form-submit .button{justify-content:center}.closing{min-height:80svh;padding-bottom:4rem}.closing h2{font-size:clamp(3.75rem,16vw,5rem)}.closing__bottom{flex-direction:column;align-items:stretch}.closing__bottom .button{justify-content:center}.footer__contact{margin-top:3rem;display:block}.footer__name{white-space:normal;margin-top:4rem;font-size:clamp(3.25rem,15vw,4.5rem)}.footer__legal{flex-direction:column;align-items:flex-start;gap:1rem}.mobile-call{z-index:50;min-height:4.5rem;padding:1rem 1.25rem calc(1rem + env(safe-area-inset-bottom));background:var(--accent);color:var(--ink);justify-content:space-between;align-items:center;gap:1rem;font-size:1rem;text-decoration:none;display:flex;position:fixed;bottom:0;left:0;right:0}.mobile-call strong{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:500}}@media (width<=390px){.hero__intro .button{flex-direction:column;align-items:flex-start}.mobile-call{font-size:.9375rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
