/* Accessibility improvements retain the site's forest, cream and brass palette. */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #10291c;outline-offset:4px;box-shadow:0 0 0 7px #fff}
.skip:focus{position:fixed;top:12px;left:12px;color:#213d32;background:#fff;z-index:1000}
#main:focus{outline:none}
.estimate-grid>form input,.estimate-grid>form select,.estimate-grid>form textarea{border-color:#75887b}
.estimate-grid>form .upload input::file-selector-button{border-color:#75887b;font-size:14px;min-height:44px}
.estimate-grid>form .privacy,.estimate-grid>form .form-status,small{font-size:14px;line-height:1.65}
#form-instructions{font-size:14px;color:#43594b;margin-bottom:18px}
.field-error{color:#8c2424;font-size:14px;font-weight:600;line-height:1.5;margin:8px 0 0}
[aria-invalid="true"]{border:2px solid #8c2424!important}
.form-error-summary{grid-column:1/-1;padding:16px;border:2px solid #8c2424;color:#8c2424;background:#fff7f7;font-size:15px;line-height:1.6}
.form-error-summary[hidden]{display:none}
.form-error-summary p{color:inherit;margin:0 0 8px;font-weight:700}.form-error-summary ul{color:inherit;margin:0}.form-error-summary a{text-decoration:underline}
.phone-contact a{padding-top:6px;padding-bottom:6px}.header-service-panel a{min-height:44px}
.footer-bottom{flex-wrap:wrap}.footer-bottom>a{padding:8px 0;text-decoration:underline;text-underline-offset:4px}
.service-offering-grid span{color:#765a2b}
.accessibility-statement{max-width:960px;padding-top:64px}.accessibility-statement h1{font-size:clamp(40px,5vw,64px);margin-bottom:22px}.accessibility-statement h2{font-size:30px;margin:40px 0 18px}.accessibility-statement p{font-size:17px;line-height:1.8}.accessibility-statement a{text-decoration:underline;text-underline-offset:4px;font-weight:600}.accessibility-statement .statement-date{font-size:14px}
@media(max-width:760px){.header .brand-logo{max-width:calc(100% - 92px)}.main-nav{max-width:100%}.hero-actions .button{min-width:0}.craft .hero-copy{padding-bottom:150px}.craft .hero-caption{max-width:calc(100% - 40px)}.accessibility-statement{padding-top:42px}}
@media(prefers-reduced-motion:reduce){html:focus-within,:root{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media(forced-colors:active){a,button,input,select,textarea,summary{forced-color-adjust:auto}input,select,textarea,.button{border:1px solid ButtonText!important}:focus-visible{outline:3px solid Highlight!important}.header .brand-mark{filter:none;background:Canvas}}

.service-related-intro .eyebrow{color:#355c49}
.service-card:focus-within{outline:3px solid #213d32;outline-offset:4px;box-shadow:0 0 0 7px #fff}

.phone-contact a{display:inline-flex;align-items:center;justify-content:center;min-width:24px;min-height:24px}

.service-related-arrow{color:#355c49}

.estimate-grid>form .privacy a{text-decoration:underline;text-underline-offset:3px;font-weight:600}
