/* Hoosier — forest green, working lime, and room to breathe. */
:root{--forest:#102c23;--deep:#0b1e18;--lime:#bbef48;--paper:#f7f8f4;--ink:#122b22;--muted:#5d6b62;--line:#d7ded5;--light-line:#3c5146;--display:Impact,Haettenschweiler,'Arial Narrow Bold',sans-serif;--body:Arial,Helvetica,sans-serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 var(--body);-webkit-font-smoothing:antialiased}body,button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-underline-offset:.24em}button{font:inherit}img{display:block;max-width:100%;height:auto}svg{flex-shrink:0}p,h1,h2,h3,figure{margin:0}p+p{margin-top:1.2rem}h1,h2{font-family:var(--display);font-weight:400;line-height:1.04;letter-spacing:-.012em;text-transform:uppercase}h1{font-size:clamp(3.75rem,6.9vw,6.8rem)}h2{font-size:clamp(2.6rem,4.5vw,4.7rem)}h3{font-size:1.4rem;line-height:1.28;letter-spacing:-.03em}em{font-style:normal}::selection{background:var(--lime);color:var(--deep)}:focus-visible{outline:3px solid #4f73ed;outline-offset:5px}main:focus{outline:0}.wrap{width:min(1280px,calc(100% - 6rem));margin-inline:auto}.section{padding-block:7.5rem}.icon{width:1.35rem;height:1.35rem;vertical-align:middle}.eyebrow{font:700 .875rem/1.5 var(--body);letter-spacing:.11em;text-transform:uppercase;margin-bottom:1.3rem}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-7rem;left:1rem;z-index:100;background:var(--lime);padding:.8rem 1rem;color:var(--deep)}.skip-link:focus{top:1rem}.topline{background:var(--deep);color:#dfe9df;font-size:.75rem;letter-spacing:.07em}.topline .wrap{display:flex;justify-content:space-between;gap:1rem;padding-block:.5rem}.site-header{background:var(--forest);color:white;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--light-line)}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.9rem;text-decoration:none;flex-shrink:0}.brand img{width:64px;height:64px;object-fit:contain;border-radius:50%;background:white}.brand strong{display:block;font:400 2.35rem/1 var(--display);letter-spacing:.045em}.brand small{display:block;font-size:.75rem;letter-spacing:.035em;line-height:1.9}.site-header nav{display:flex;align-items:center;gap:1.65rem}.site-header nav>a{font-size:.875rem;font-weight:600;text-decoration:none;white-space:nowrap}.site-header nav>a:hover{color:var(--lime)}.site-header nav .nav-contact{display:flex;align-items:center;gap:.7rem;background:var(--lime);color:var(--deep);padding:.85rem 1.05rem;border-radius:4px}.site-header nav .nav-contact:hover{background:#cbfa70;color:var(--deep)}.menu-toggle{display:none}.hero{background:var(--forest);color:white;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.13fr 1fr;align-items:center;gap:4rem;padding-top:5.3rem;padding-bottom:4.5rem}.hero .eyebrow{display:flex;align-items:center;gap:.75rem;color:#d4e1d4;letter-spacing:.075em}.short-line{width:30px;height:2px;background:var(--lime);flex-shrink:0}.hero h1{font-size:clamp(4rem,7.3vw,7.5rem);line-height:1.06;letter-spacing:-.01em}.hero em,.work-section em,.about-section em{color:var(--lime)}.hero-description{font-size:1.075rem;line-height:1.7;max-width:31rem;margin-top:1.8rem;color:#d8e2d9}.hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:1.2rem;margin-top:2rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;padding:1rem 1.2rem;background:var(--lime);color:var(--deep);text-decoration:none;line-height:1.4;font-weight:700;border:1px solid transparent;border-radius:4px;min-height:56px;transition:background .2s,transform .2s;max-width:100%}.button:hover{background:#cdf973;transform:translateY(-2px)}.button>.icon:last-child{margin-left:.45rem}.call-link{display:inline-flex;align-items:center;gap:.65rem;font-size:1rem;font-weight:600;text-decoration:none}.call-link:hover{text-decoration:underline}.hero-area{font-size:.875rem;line-height:1.9;color:#c4d2c5;margin-top:1.7rem;max-width:35rem}.hero-proof{position:relative;margin-top:.6rem;transform:rotate(2deg);background:#e9eee5;color:var(--ink);border:8px solid #e9eee5;box-shadow:0 22px 0 -8px #071a13,0 35px 60px #05181060}.proof-heading{display:flex;gap:1rem;justify-content:space-between;font-size:.75rem;font-weight:700;letter-spacing:.07em;padding:.8rem .6rem 1rem}.proof-heading span:last-child{color:var(--muted)}.proof-image{display:block;background:#c6c8bd;overflow:hidden}.proof-image img{width:100%;aspect-ratio:3/2;object-fit:contain;transition:transform .45s}.proof-image:hover img{transform:scale(1.018)}.proof-footer{display:flex;align-items:center;justify-content:space-between;padding:1.5rem 1rem 1.2rem}.proof-footer p{font-size:1.05rem;line-height:1.45}.proof-footer strong{font-size:1.5rem;letter-spacing:-.04em}.proof-footer a{display:grid;place-items:center;border:1px solid #8ca085;border-radius:50%;width:48px;height:48px}.proof-footer a:hover{background:var(--lime)}.proof-tag{position:absolute;top:-1.9rem;right:-1.4rem;background:var(--lime);color:var(--deep);font:400 1.6rem/.98 var(--display);padding:1.2rem 1rem;transform:rotate(7deg);box-shadow:2px 5px 0 #102c23;border:2px solid var(--deep)}.hero-bottom{border-top:1px solid var(--light-line);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.45rem;font-size:.875rem;font-weight:700;letter-spacing:.04em}.hero-bottom>a{display:flex;align-items:center;gap:1rem;text-decoration:none;color:var(--lime);letter-spacing:0}.trust-bar{background:var(--lime);color:var(--deep)}.trust-bar .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding-block:1.1rem}.trust-bar span{display:flex;justify-content:center;align-items:center;gap:.6rem;font-weight:700;font-size:.9rem}.trust-bar span+span{border-left:1px solid #7daa27}.section-heading{display:grid;grid-template-columns:1.15fr 1fr;gap:5rem;align-items:end;margin-bottom:3.6rem}.section-heading h2 em,.page-intro h1 em,.service-hero h1 em,.service-detail h2 em,.contact-hero h1 em,.area-section h2 em{color:#487336}.section-heading>p{font-size:1.1rem;line-height:1.75;max-width:28rem;color:var(--muted);margin-bottom:.2rem}.service-list{border-top:1px solid #b7c3b7}.service-row{display:grid;grid-template-columns:3rem 1.1fr 1fr 3rem;gap:1.8rem;align-items:center;text-decoration:none;border-bottom:1px solid #b7c3b7;padding:2rem 0;transition:background .2s,padding .2s}.service-row:hover{background:#edf2e3;padding-inline:.7rem}.service-num{font:.9rem/1.5 var(--body);color:var(--muted)}.service-row h3{font-size:1.45rem;letter-spacing:-.035em}.service-row p{font-size:1rem;color:var(--muted);max-width:23rem}.round-arrow{display:grid;place-items:center;width:46px;height:46px;border:1px solid #a0b09e;border-radius:50%;transition:background .2s}.service-row:hover .round-arrow{background:var(--lime);border-color:var(--lime)}.service-note{font-size:.875rem;color:var(--muted);margin-top:1.4rem}.service-note a{font-weight:700}.work-section{background:var(--deep);color:white;padding-block:6.5rem}.work-grid{display:grid;grid-template-columns:.82fr 1.3fr;gap:5rem;align-items:center}.work-copy p:not(.eyebrow){color:#cbd8cd;margin:1.6rem 0 2rem;max-width:24rem}.work-copy .eyebrow{color:#bfd0bb}.text-link{display:inline-flex;align-items:center;gap:1rem;text-decoration:none;font-weight:700;border-bottom:1px solid #697d62;padding-bottom:.6rem;color:var(--lime)}.text-link:hover{gap:1.5rem}.text-link .icon{transition:transform .2s}.text-link:hover .icon{transform:translateX(3px)}.work-feature img{width:100%;border:1px solid var(--light-line)}.work-feature figcaption{display:flex;justify-content:space-between;gap:1rem;padding-top:1rem;font-size:.875rem;color:#d2dfd1}.work-feature figcaption span:last-child{font-size:.75rem;letter-spacing:.06em}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem}.steps article{border-top:1px solid #aabd9f;padding-top:1.6rem}.steps article>span{display:inline-block;font:400 3.5rem/1 var(--display);color:#557a40;margin-bottom:1.5rem}.steps h3{margin-bottom:.7rem}.steps p{color:var(--muted);max-width:22rem}.about-section{background:var(--forest);color:white;padding:6.5rem 0}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:7rem;align-items:center}.brand-panel{width:100%;max-width:390px;margin-inline:auto;background:white;border-radius:50%;padding:1.1rem;transform:rotate(-5deg)}.brand-panel img{width:100%;border-radius:50%}.about-grid>div>p:not(.eyebrow){color:#d0ddd1;margin-top:1.5rem;max-width:35rem}.about-grid .text-link{margin-top:2rem}.about-grid .eyebrow{color:#c6d4c4}.area-section{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:6rem}.area-section p:not(.eyebrow){color:var(--muted);max-width:31rem;margin:1.5rem 0 2rem}.dark-link{color:var(--ink);border-color:#6f806b}.city-list{list-style:none;padding:0;margin:0;border-top:1px solid #bbc5b6}.city-list li{display:flex;align-items:baseline;gap:1.5rem;padding:1.25rem 0;border-bottom:1px solid #bbc5b6}.city-list span{color:var(--muted);font-size:.8rem}.city-list strong{font-size:1.8rem;letter-spacing:-.04em;line-height:1.4;font-weight:500}.city-list small{font-size:.875rem;color:var(--muted);margin-left:auto}.estimate-band{background:var(--lime);color:var(--deep);padding-block:5.5rem}.estimate-inner{display:grid;grid-template-columns:1.25fr 1fr;gap:4rem;align-items:center}.estimate-band h2{font-size:clamp(3.2rem,4.7vw,5rem)}.estimate-band h2 em{color:#365323}.estimate-band p:not(.eyebrow){margin-top:1.4rem;max-width:32rem}.estimate-actions{display:flex;flex-direction:column;align-items:flex-start;gap:.9rem}.estimate-actions .button,.dark-button{background:var(--deep);color:white}.estimate-actions .button:hover,.dark-button:hover{background:#214430}.plain-phone{font-size:clamp(1.7rem,2.5vw,2.35rem);font-weight:700;letter-spacing:-.035em;text-decoration:none}.plain-phone:hover{text-decoration:underline}.estimate-actions>span{font-size:.875rem}.footer{background:var(--deep);color:#d6e1d5;padding-top:4rem}.footer-top{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:center;gap:3rem;padding-bottom:3rem}.footer-top p{font-size:.95rem;line-height:1.6;color:#a8bda9}.footer-phone{font-size:1.5rem;letter-spacing:-.03em;font-weight:700;text-decoration:none}.footer .brand strong{font-size:3rem;color:white}.footer .brand small{font-size:.75rem}.footer-links{display:grid;grid-template-columns:1.1fr 1.25fr 1fr;gap:3rem;padding-bottom:3.5rem}.footer-links>div{display:flex;flex-direction:column;align-items:flex-start;gap:.65rem;min-width:0}.footer-links a{font-size:.875rem;line-height:1.7;text-decoration:none;overflow-wrap:anywhere}.footer-links a:hover{color:var(--lime);text-decoration:underline}.footer-links .eyebrow{color:#96ad95;font-size:.75rem;margin-bottom:.5rem}.footer-bottom{border-top:1px solid var(--light-line);display:flex;justify-content:space-between;gap:1rem;padding-block:1.4rem;font-size:.75rem;color:#9caf9b}.mobile-contact{display:none}.breadcrumbs{padding-top:1.8rem;font-size:.875rem;color:var(--muted)}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.6rem;padding:0;margin:0}.breadcrumbs li+li:before{content:'/';margin-right:.6rem;color:#91a18a}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{text-decoration:underline}.page-intro{padding-top:3.5rem;padding-bottom:4.5rem}.page-intro .lead{margin-top:1.5rem;max-width:45rem}.lead{font-size:1.125rem;line-height:1.75;color:var(--muted)}.service-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:5rem;align-items:start;padding-top:3.5rem;padding-bottom:5rem}.service-hero h1{font-size:clamp(3.4rem,5.6vw,5.7rem)}.service-hero .lead{margin:1.5rem 0 1.7rem;max-width:35rem}.service-hero>.eyebrow{color:var(--muted)}.service-local{font-size:.875rem;color:var(--muted);margin-top:1.2rem}.scope-panel{background:var(--forest);color:white;padding:2.5rem;position:relative;border-top:5px solid var(--lime)}.scope-panel h2{font-size:3rem}.scope-panel>.eyebrow{color:var(--lime);font-size:.75rem}.scope-panel ul{list-style:none;padding:0;margin:1.6rem 0}.scope-panel li{display:flex;align-items:flex-start;gap:.7rem;padding:.8rem 0;border-top:1px solid #47604f;line-height:1.6}.scope-panel li .icon{color:var(--lime);margin-top:.2rem}.scope-panel>p:last-child{font-size:.875rem;color:#cbd8c8}.service-detail{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;border-top:1px solid var(--line);padding-block:4.5rem}.service-detail h2{font-size:clamp(2.5rem,3.6vw,3.5rem);margin-bottom:1.6rem}.service-detail article>p:not(.eyebrow){color:var(--muted)}.service-detail h3{margin:2rem 0 .8rem;font-size:1.3rem}.service-detail a{font-weight:700;color:var(--ink)}.service-photo{margin-top:.2rem}.service-photo img{width:100%;height:auto}.service-photo figcaption{font-size:.875rem;line-height:1.6;color:var(--muted);padding-top:1rem}.related{padding-top:2rem;padding-bottom:5rem}.related h2{font-size:2.8rem;margin-bottom:1.8rem}.related-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.related-grid a{padding:1.5rem;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-decoration:none;line-height:1.5}.related-grid a+a{border-left:1px solid var(--line)}.related-grid a:hover{background:#e8efd9}.project-gallery{padding-bottom:6rem}.project{margin-bottom:4.5rem}.project-number{font-size:.8rem;letter-spacing:.09em;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:1rem;margin-bottom:1.2rem}.project>a{display:block}.project img{width:100%;height:auto}.project-caption{display:flex;justify-content:space-between;gap:3rem;align-items:center;padding-top:1.5rem}.project-caption h2{font-size:2.2rem;line-height:1.15}.project-caption p{color:var(--muted);margin-top:.4rem;font-size:1rem}.project-caption>a{white-space:nowrap;font-size:.875rem}.small-note{font-size:.875rem;line-height:1.65;color:var(--muted);max-width:44rem}.coverage{padding-bottom:5rem}.coverage-cities{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid var(--line);border-top:1px solid var(--line)}.coverage-cities article{padding:2.5rem;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.coverage-cities .eyebrow{font-size:.75rem;color:var(--muted)}.coverage-cities h2{font-size:3.5rem}.coverage-cities h2 span{color:#658058}.coverage-cities p{color:var(--muted);margin:1rem 0 1.5rem;max-width:28rem}.coverage-cities a{display:inline-flex;align-items:center;gap:1rem;font-weight:700;text-decoration:none;border-bottom:1px solid #75866c;padding-bottom:.4rem}.coverage-note{margin-top:3rem;padding:3rem;background:#e8eddf;max-width:52rem}.coverage-note h2{font-size:2.8rem;margin-bottom:1.3rem}.coverage-note p{color:var(--muted)}.coverage-note .button{margin-top:1.8rem}.contact-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:5rem;padding-top:3.5rem;padding-bottom:5rem}.contact-hero h1{font-size:clamp(3.3rem,5.1vw,5.4rem)}.contact-hero .lead{margin-top:1.4rem}.contact-methods{margin:2.5rem 0 1.4rem}.contact-methods>a{display:grid;grid-template-columns:1fr 1.4rem;gap:.3rem 1rem;align-items:center;text-decoration:none;border-top:1px solid var(--line);padding:1.3rem 0}.contact-methods>a:last-child{border-bottom:1px solid var(--line)}.contact-methods>a>span{grid-column:1;font-size:.75rem;letter-spacing:.06em;display:flex;gap:.5rem;align-items:center;color:var(--muted)}.contact-methods>a>strong{grid-column:1;font-size:1.85rem;letter-spacing:-.04em;line-height:1.4}.contact-methods>a>strong.email{font-size:1.25rem;overflow-wrap:anywhere;letter-spacing:-.015em}.contact-methods>a>.icon{grid-column:2;grid-row:1/3}.contact-methods>a:hover{color:#42742c}.contact-checklist{background:var(--forest);color:white;padding:2.7rem}.contact-checklist .eyebrow{font-size:.75rem;color:#d0ddc4}.contact-checklist h2{font-size:3.3rem}.contact-checklist em{color:var(--lime)}.contact-checklist ol{list-style:none;padding:0;margin:2rem 0;counter-reset:checklist}.contact-checklist li{counter-increment:checklist;position:relative;padding:1.25rem 0 1.25rem 2.8rem;border-top:1px solid #425947}.contact-checklist li:before{content:'0' counter(checklist);position:absolute;left:0;top:1.35rem;color:var(--lime);font-weight:700;font-size:.875rem}.contact-checklist li strong{display:block;line-height:1.5;margin-bottom:.45rem}.contact-checklist li span{font-size:.95rem;color:#cbd8c8;line-height:1.7}.contact-checklist>p:last-child{font-size:.875rem;color:#cbd8c8}.contact-location{display:flex;flex-wrap:wrap;gap:1rem 3rem;padding-bottom:4rem;color:var(--muted);font-size:.95rem}.contact-location a{display:flex;align-items:center;gap:.7rem}
@media(min-width:1500px){.hero-grid{padding-block:6.5rem}.hero h1{font-size:8rem}.hero-description{font-size:1.2rem}}
@media(max-width:1150px){.wrap{width:calc(100% - 4rem)}.brand img{width:54px;height:54px}.brand strong{font-size:2rem}.brand small{font-size:.75rem}.site-header nav{gap:1rem}.site-header nav>a{font-size:.8rem}.header-inner{gap:1rem;min-height:86px}.hero-grid{gap:2.8rem}.hero h1{font-size:6.9vw}.hero .eyebrow{font-size:.75rem}.section-heading,.work-grid,.about-grid,.area-section,.service-hero,.service-detail,.contact-hero{gap:3rem}.service-row{gap:1.2rem}.service-row h3{font-size:1.25rem}.footer-top,.footer-links{gap:2rem}.related-grid{grid-template-columns:1fr 1fr}.related-grid a:nth-child(3){border-left:0;border-top:1px solid var(--line)}.related-grid a:nth-child(4){border-top:1px solid var(--line)}}
@media(max-width:900px){.header-inner{flex-wrap:wrap;gap:0;min-height:90px;padding-block:.8rem}.site-header nav{width:100%;justify-content:space-between;gap:.7rem;padding-top:1.2rem;flex-wrap:wrap}.has-js .menu-toggle{display:flex;align-items:center;gap:.7rem;color:white;border:1px solid #5b725d;background:transparent;border-radius:4px;padding:.6rem .8rem;font-size:.875rem}.has-js nav{display:none}.has-js.menu-open nav{display:flex;padding-bottom:.7rem}.hero-grid{grid-template-columns:1fr 1fr;gap:2rem;padding-top:4.5rem;padding-bottom:4rem}.hero h1{font-size:7vw}.hero-description{font-size:1rem}.hero .eyebrow{font-size:.75rem;letter-spacing:.025em}.proof-heading{font-size:.75rem;gap:.5rem}.proof-heading span:last-child{display:none}.proof-tag{font-size:1.3rem;right:-.7rem;top:-1.5rem;padding:.8rem}.proof-footer{padding:1rem .5rem}.proof-footer strong{font-size:1.2rem}.proof-footer p{font-size:.875rem}.proof-footer a{width:40px;height:40px}.hero-actions .button{font-size:.875rem;padding:.9rem}.hero-actions .button>.icon:last-child{display:none}.hero-area{font-size:.8rem}.section{padding-block:5rem}.section-heading{gap:2rem}.service-row{grid-template-columns:2rem 1fr 2.9rem}.service-row p{grid-column:2;grid-row:2;font-size:.95rem;margin-top:-.6rem}.service-row .round-arrow{grid-column:3;grid-row:1/3}.work-grid{grid-template-columns:1fr}.work-copy{max-width:39rem}.work-copy p:not(.eyebrow){max-width:34rem}.work-section{padding-block:4.5rem}.steps{gap:1.5rem}.steps h3{font-size:1.2rem}.steps p{font-size:.95rem}.about-grid{gap:3rem;grid-template-columns:.8fr 1fr}.brand-panel{padding:.6rem}.about-section{padding-block:5rem}.area-section{gap:2rem}.city-list li{gap:1rem}.city-list strong{font-size:1.5rem}.estimate-inner{gap:2rem;grid-template-columns:1fr 1fr}.estimate-band{padding-block:4rem}.estimate-actions .button{font-size:.875rem}.estimate-actions .button .icon:last-child{display:none}.footer-top{grid-template-columns:1fr 1fr}.footer-top .footer-phone{grid-column:2;grid-row:1}.footer-top>p{grid-column:1/-1}.footer-links{grid-template-columns:1fr 1fr}.footer-links>div:last-child{grid-column:1/-1}.service-hero,.contact-hero{gap:2rem}.scope-panel,.contact-checklist{padding:1.7rem}.scope-panel h2,.contact-checklist h2{font-size:2.6rem}.service-hero h1{font-size:4.8vw}.contact-hero h1{font-size:5.2vw}.service-detail{gap:2rem}.project-caption{align-items:flex-start;flex-direction:column;gap:1rem}.coverage-cities article{padding:2rem}.coverage-cities h2{font-size:3rem}}
@media(max-width:650px){html{scroll-padding-top:6.4rem}.wrap{width:calc(100% - 2.5rem)}.topline{font-size:.75rem;letter-spacing:.035em}.topline .wrap{padding-block:.42rem;justify-content:center}.topline .wrap>span:last-child{display:none}.header-inner{min-height:80px}.brand{gap:.6rem}.brand img{width:48px;height:48px}.brand strong{font-size:1.9rem}.brand small{font-size:.75rem;line-height:1.6}.menu-toggle{flex-shrink:0}.has-js .menu-toggle{font-size:.75rem;padding:.5rem .65rem}.menu-toggle .icon{width:1rem;height:1rem}.site-header nav{display:grid;grid-template-columns:1fr 1fr;gap:0}.has-js.menu-open nav{display:grid}.site-header nav>a{padding:1rem .1rem;font-size:.95rem;border-bottom:1px solid #3c5146;white-space:normal}.site-header nav .nav-contact{grid-column:1/-1;justify-content:space-between;margin-top:.8rem;padding:1rem;border:0}.hero-grid{grid-template-columns:1fr;padding-top:3.3rem;padding-bottom:3rem;gap:3.8rem}.hero h1{font-size:clamp(3.4rem,14vw,5.5rem);letter-spacing:.005em;line-height:1.02}.hero .eyebrow{font-size:.75rem;letter-spacing:.05em;margin-bottom:1.25rem;gap:.6rem}.short-line{width:22px}.hero-description{font-size:1rem;max-width:30rem;margin-top:1.5rem}.hero-actions{margin-top:1.7rem;gap:1.1rem}.hero-actions .button{font-size:.95rem;padding:1rem;min-height:56px}.hero-actions .button>.icon:last-child{display:block}.hero-area{font-size:.8rem;margin-top:1.6rem}.hero-proof{width:calc(100% - 1rem);margin-inline:auto;margin-top:0;transform:rotate(1.4deg);border-width:6px}.proof-heading{font-size:.75rem;padding:.6rem .5rem .8rem}.proof-heading span:last-child{display:block}.proof-tag{right:-.6rem;top:-1.5rem;font-size:1.4rem}.proof-footer{padding:1.1rem .65rem 1rem}.proof-footer strong{font-size:1.4rem}.proof-footer a{width:44px;height:44px}.hero-bottom{font-size:.75rem;letter-spacing:0;padding-block:1.2rem}.hero-bottom>a{gap:.4rem;font-size:.8rem}.hero-bottom>a .icon{width:1rem}.trust-bar .wrap{grid-template-columns:1fr 1fr;gap:.8rem;padding-block:1.1rem}.trust-bar span{justify-content:flex-start;font-size:.8rem;gap:.45rem}.trust-bar span+span{border:0}.trust-bar span .icon{width:1.1rem;height:1.1rem}.section{padding-block:4.5rem}.section-heading{grid-template-columns:1fr;gap:1.5rem;margin-bottom:2rem}.section-heading h2{font-size:clamp(2.7rem,9.7vw,3.8rem)}.section-heading>p{font-size:1rem;max-width:30rem}.eyebrow{font-size:.75rem;margin-bottom:1rem}.service-row{gap:1rem;padding-block:1.5rem;grid-template-columns:1.7rem 1fr 2.5rem}.service-row h3{font-size:1.15rem;letter-spacing:-.02em}.service-row p{font-size:.875rem;line-height:1.65;max-width:22rem}.service-num{font-size:.8rem}.round-arrow{width:38px;height:38px}.service-row:hover{padding-inline:0}.service-note{font-size:.875rem}.work-section{padding-block:4rem}.work-grid{gap:2.5rem}.work-copy h2{font-size:3.3rem}.work-copy p:not(.eyebrow){font-size:1rem;margin-block:1.3rem 1.5rem}.text-link{font-size:.95rem}.work-feature figcaption{font-size:.8rem;gap:.5rem;flex-wrap:wrap}.steps{grid-template-columns:1fr;gap:1.7rem}.steps article{display:grid;grid-template-columns:3.3rem 1fr;gap:.5rem 1rem;padding-top:1.5rem}.steps article>span{grid-row:1/3;margin:0;font-size:2.9rem}.steps h3{font-size:1.25rem;margin:0}.steps p{grid-column:2;font-size:1rem;max-width:100%}.about-section{padding-block:4rem}.about-grid{grid-template-columns:1fr;gap:2.7rem}.brand-panel{max-width:260px;padding:.65rem}.about-grid h2{font-size:3.5rem}.about-grid>div>p:not(.eyebrow){font-size:1rem}.area-section{grid-template-columns:1fr;gap:2.5rem}.area-section h2{font-size:3.2rem}.area-section p:not(.eyebrow){font-size:1rem}.city-list strong{font-size:1.75rem}.estimate-inner{grid-template-columns:1fr;gap:2rem}.estimate-band{padding-block:3.5rem}.estimate-band h2{font-size:3.3rem}.estimate-band p:not(.eyebrow){font-size:1rem;margin-top:1.2rem}.estimate-actions .button{font-size:.95rem}.plain-phone{font-size:2.1rem}.footer{padding-top:3rem;padding-bottom:calc(78px + env(safe-area-inset-bottom,0px))}.footer-top{display:flex;flex-wrap:wrap;gap:1.2rem 2rem;padding-bottom:2.5rem}.footer-top>.brand{width:100%}.footer-top>p{font-size:.875rem}.footer-phone{font-size:1.3rem}.footer-links{grid-template-columns:1fr;gap:2rem;padding-bottom:2.5rem}.footer-links>div:last-child{grid-column:auto}.footer-links .eyebrow{font-size:.75rem}.footer-links a{font-size:.875rem}.footer-bottom{flex-direction:column;gap:.4rem;font-size:.75rem}.mobile-contact{display:grid;grid-template-columns:.85fr 1.25fr;position:fixed;z-index:25;bottom:0;left:0;right:0;gap:.5rem;padding:.65rem 1rem calc(.65rem + env(safe-area-inset-bottom,0px));background:var(--deep);border-top:1px solid #466041;box-shadow:0 -3px 18px #00160c26}.mobile-contact a{display:flex;align-items:center;justify-content:center;gap:.5rem;min-height:46px;text-decoration:none;font-size:.875rem;font-weight:700;color:white;border:1px solid #638351;border-radius:4px}.mobile-contact a:last-child{background:var(--lime);color:var(--deep);border-color:var(--lime)}.mobile-contact .icon{width:1.1rem;height:1.1rem}.breadcrumbs{padding-top:1.4rem;font-size:.8rem}.page-intro{padding-top:2.5rem;padding-bottom:3rem}.page-intro h1{font-size:clamp(3.2rem,11.7vw,4.4rem)}.lead{font-size:1rem}.service-hero,.contact-hero{grid-template-columns:1fr;padding-top:2.5rem;padding-bottom:3rem;gap:2.5rem}.service-hero h1,.contact-hero h1{font-size:clamp(3.1rem,11.7vw,4.4rem)}.service-hero .lead{font-size:1rem}.service-hero .button{font-size:.95rem}.service-local{font-size:.8rem;line-height:1.8}.scope-panel{padding:1.8rem}.scope-panel h2{font-size:2.7rem}.scope-panel li{font-size:1rem}.service-detail{grid-template-columns:1fr;padding-block:3rem;gap:2.5rem}.service-detail h2{font-size:2.7rem}.service-detail article>p:not(.eyebrow){font-size:1rem}.related{padding-top:.5rem;padding-bottom:3.5rem}.related h2{font-size:2.6rem}.related-grid{grid-template-columns:1fr}.related-grid a{padding:1.2rem;font-size:.95rem}.related-grid a+a{border-left:0;border-top:1px solid var(--line)}.project-gallery{padding-bottom:3.5rem}.project{margin-bottom:3rem}.project-caption{gap:1rem;padding-top:1.2rem}.project-caption h2{font-size:2rem}.project-caption p{font-size:.95rem}.project-number{font-size:.75rem}.coverage{padding-bottom:3rem}.coverage-cities{grid-template-columns:1fr}.coverage-cities article{padding:1.7rem}.coverage-cities h2{font-size:3.2rem}.coverage-note{padding:1.7rem;margin-top:2rem}.coverage-note h2{font-size:2.6rem}.contact-checklist{padding:1.8rem}.contact-checklist h2{font-size:3rem}.contact-methods>a>strong{font-size:1.7rem}.contact-methods>a>strong.email{font-size:1.15rem}.contact-location{padding-bottom:3rem;gap:1rem;font-size:.875rem}.contact-location a{align-items:flex-start;line-height:1.8}.contact-location a .icon{margin-top:.2rem}}
@media(max-width:360px){.wrap{width:calc(100% - 2rem)}.brand img{display:none}.brand strong{font-size:1.6rem}.brand small{font-size:.75rem}.hero h1{font-size:13.4vw}.hero .eyebrow{font-size:.75rem}.hero-actions .button{font-size:.85rem;gap:.45rem}.hero-actions .button>.icon:last-child{display:none}.proof-heading span:last-child{display:none}.hero-bottom{flex-direction:column;align-items:flex-start;gap:.65rem}.mobile-contact{padding-inline:.65rem}.mobile-contact a{font-size:.8rem}.city-list strong{font-size:1.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media print{.topline,.menu-toggle,.mobile-contact,.estimate-band,.hero-bottom,.footer-links{display:none!important}.site-header{position:static;background:white;color:black;border-bottom:1px solid #888}.site-header nav{display:none!important}.hero,.work-section,.about-section,.footer{background:white;color:black}.hero em,.work-section em,.about-section em,.text-link{color:black}.hero-proof{transform:none;box-shadow:none}.wrap{width:100%}.section,.work-section,.about-section{padding-block:2rem}.footer{padding-bottom:0}a[href^="tel:"]:after{content:' (' attr(href) ')';font-size:.75rem}}
/* Grouped navigation and service shortcuts. */
.topline .wrap{align-items:center;padding-block:.2rem}
.utility-links{display:flex;align-items:center;gap:1.5rem}
.utility-links a{display:inline-flex;align-items:center;min-height:36px;text-decoration:none;font-size:.875rem;letter-spacing:0}
.utility-links a:hover{text-decoration:underline;color:var(--lime)}
.header-inner{position:relative}
.site-header nav{gap:1.1rem}
.site-header nav>a{font-size:.875rem}
.nav-dropdown{position:static}
.nav-dropdown>summary{display:flex;align-items:center;gap:.4rem;min-height:44px;padding:.65rem .25rem;list-style:none;cursor:pointer;font-size:.875rem;font-weight:600;white-space:nowrap;border-radius:4px}
.nav-dropdown>summary::-webkit-details-marker{display:none}
.nav-dropdown>summary:hover,.nav-dropdown[open]>summary{color:var(--lime)}
.nav-chevron{width:1rem;height:1rem;transition:transform .18s ease}
.nav-dropdown[open]>summary .nav-chevron{transform:rotate(180deg)}
.nav-panel{position:absolute;top:calc(100% - .15rem);right:0;z-index:30;width:min(760px,calc(100vw - 4rem));padding:1.75rem;background:var(--paper);color:var(--ink);border:1px solid #d4dccf;border-top:3px solid var(--lime);border-radius:0 0 10px 10px;box-shadow:0 18px 40px #031b2530;max-height:calc(100vh - 8rem);max-height:calc(100dvh - 8rem);overflow-y:auto}
.nav-dropdown:not([open])>.nav-panel{display:none}
.nav-panel p{margin:0}
.nav-panel-label{font-size:.875rem;font-weight:700;letter-spacing:.08em;line-height:1.5}
.nav-services{display:grid;grid-template-columns:1.25fr 1fr;gap:1.6rem}
.menu-services{display:grid;margin-top:.6rem}
.menu-services>a{display:block;min-height:64px;padding:.8rem .65rem;border-bottom:1px solid var(--line);text-decoration:none;border-radius:4px}
.menu-services>a:hover,.menu-services>a[aria-current="page"]{background:#e6eddc}
.menu-services strong{display:block;font-size:1rem;line-height:1.45}
.menu-services span{display:block;color:var(--muted);font-size:.875rem;line-height:1.55;margin-top:.2rem}
.nav-overview{display:inline-flex;align-items:center;gap:.6rem;min-height:44px;margin-top:.7rem;font-size:.875rem;font-weight:700;text-decoration:none}
.nav-overview:hover{text-decoration:underline}
.nav-overview>.icon{width:1.05rem;height:1.05rem}
.nav-estimate{padding:1.5rem;background:var(--forest);color:white;border-radius:6px;align-self:stretch}
.nav-estimate .nav-panel-label{color:var(--lime)}
.nav-estimate .nav-estimate-title{font-family:var(--display);font-size:2.15rem;font-weight:400;letter-spacing:0;line-height:1.15;margin:1.15rem 0 .9rem;text-transform:uppercase}
.nav-estimate>p:not(.nav-panel-label){font-size:1rem;color:#d8e2d9;line-height:1.65}
.nav-estimate-photo{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:48px;background:var(--lime);color:var(--deep);padding:.75rem 1rem;border-radius:4px;font-size:.875rem;font-weight:700;text-decoration:none;margin-top:1.4rem}
.nav-estimate-photo:hover{background:#cbfa70}
.nav-estimate-visit{display:inline-flex;align-items:center;min-height:44px;margin-top:.6rem;font-size:.875rem;line-height:1.6}
.nav-areas{width:min(500px,calc(100vw - 4rem))}
.menu-cities{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:1rem}
.menu-cities a{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-height:48px;border:1px solid #ced8c6;border-radius:4px;padding:.65rem .8rem;text-decoration:none;font-size:.95rem;font-weight:600}
.menu-cities a span{font-size:.75rem;color:var(--muted);font-weight:400}
.menu-cities a:hover{background:#e6eddc;border-color:#91a481}
.nav-panel .nav-area-note{font-size:.875rem;color:var(--muted);line-height:1.6;margin-top:.2rem}
.site-header nav>a[aria-current="page"]:not(.nav-contact){color:var(--lime)}
.service-shortcuts{background:#eef2e9;border-bottom:1px solid #d9e1d3;color:var(--forest)}
.service-shortcuts .wrap{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem;padding-block:.65rem}
.service-shortcuts a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:.45rem 1rem;border:1px solid #bac9af;border-radius:999px;font-size:.875rem;font-weight:600;line-height:1.4;text-decoration:none;transition:background .15s ease,border-color .15s ease}
.service-shortcuts a:hover{background:#dde8ce;border-color:#839c6c}
.service-shortcuts a[aria-current="page"]{background:var(--forest);color:white;border-color:var(--forest)}
@media(max-width:1150px){.site-header nav{gap:.7rem}.nav-dropdown>summary{font-size:.875rem;gap:.3rem}.nav-services{gap:1.25rem}.nav-panel{width:min(720px,calc(100vw - 4rem))}.nav-areas{width:min(500px,calc(100vw - 4rem))}}
@media(max-width:1050px){.header-inner{flex-wrap:wrap;gap:0;min-height:90px;padding-block:.8rem}.has-js .menu-toggle{display:flex;align-items:center;gap:.7rem;color:white;border:1px solid #5b725d;background:transparent;border-radius:4px;padding:.6rem .8rem;font-size:.875rem}.site-header nav{width:100%;gap:0;display:grid;grid-template-columns:1fr 1fr;align-items:stretch}.site-header.has-js nav{display:none}.site-header.has-js.menu-open nav{display:grid}.site-header #primary-navigation{max-height:calc(100vh - 6rem);max-height:calc(100dvh - 6rem);overflow-y:auto;overscroll-behavior:contain;padding-top:.7rem}.nav-dropdown{grid-column:1/-1;border-bottom:1px solid #3c5146}.nav-dropdown>summary{justify-content:space-between;min-height:50px;padding:.8rem .1rem;font-size:.95rem}.site-header nav>a{padding:1rem .1rem;font-size:.95rem;white-space:normal;border-bottom:1px solid #3c5146}.site-header nav .nav-contact{grid-column:1/-1;justify-content:space-between;padding:1rem;margin-top:.8rem;border:0}.nav-panel{position:static;width:100%;max-height:none;margin:0 0 .9rem;padding:1.4rem;border-radius:6px;box-shadow:none}.nav-areas{width:100%}.nav-estimate{padding:1.25rem}.service-shortcuts .wrap{gap:.5rem}}
@media(max-width:650px){.header-inner{min-height:80px}.site-header .brand{min-width:0;flex-shrink:1}.site-header .brand small{max-width:11rem;line-height:1.4}.has-js .menu-toggle{font-size:.875rem;padding:.5rem .65rem}.topline .wrap{justify-content:space-between;gap:.3rem;padding-block:.15rem}.topline .utility-brand{display:inline;font-size:.75rem;letter-spacing:.015em}.utility-location,.utility-number{display:none}.utility-links{gap:.9rem}.utility-links a{font-size:.875rem;min-height:36px}.nav-services{grid-template-columns:1fr;gap:1.1rem}.nav-panel{padding:1.1rem}.nav-estimate .nav-estimate-title{font-size:1.8rem;margin:.65rem 0}.nav-estimate-photo{margin-top:1rem}.menu-services>a{padding:.75rem .4rem}.menu-cities{gap:.4rem}.menu-cities a{padding:.65rem .55rem;font-size:.875rem}.service-shortcuts .wrap{display:grid;grid-template-columns:1fr 1fr;gap:.4rem;padding-block:.6rem}.service-shortcuts a{min-width:0;min-height:44px;padding:.5rem .6rem;font-size:.875rem;text-align:center}}
@media(max-width:359px){.utility-links{gap:.7rem}.utility-brand{font-size:.75rem}.service-shortcuts a{font-size:.875rem;padding-inline:.4rem}.menu-cities{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.nav-chevron,.service-shortcuts a{transition:none}}
@media print{.service-shortcuts,.utility-links{display:none!important}}
