/* Small local behavior and responsive repairs. Historical styles take precedence. */
html{scroll-behavior:smooth}img{max-width:100%}.custom-background-color{background-color:#008000}.text-font-color{color:white}.content[hidden]{display:none!important}
.gallery-arrow{position:absolute;top:45%;z-index:2;border:0;background:#fff;color:#111;font-size:2rem;line-height:1;padding:8px 12px}.gallery-arrow.prev{left:2px}.gallery-arrow.next{right:2px}
@media(max-width:575px){.navbar-brand{max-width:42vw}.nav-logo{max-width:100%;height:auto}.phone-nav-mobile{white-space:nowrap}.modal-dialog{margin:10px}.navbar .d-flex{max-width:100%}.accessibility-img{position:static!important;align-self:flex-end;background:transparent!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.parallax-image{transition:none!important}}
/* Approved one-page presentation, retaining the original fonts and green brand. */
#pages{--abc-green:#008000;--abc-ink:#344039;--abc-line:#dfe7dd;--abc-soft:#f2f7ef}
#pages>.content:not(#homePage){min-height:0!important;margin:0!important;padding:60px 0!important;color:var(--abc-ink);background:#fafbf8;border-top:1px solid var(--abc-line)}
#pages>#aboutPage,#pages>#imageryPage,#pages>#contactPage{background:#f2f5f0}
#pages .content>.container{max-width:1140px}
#home-archive-2021{padding:48px 24px!important;background:#f2f5f0}
#home-archive-2021>.container{padding:0}
#home-archive-2021 .row{display:grid;grid-template-columns:2fr 1fr;gap:24px;margin:0}
#home-archive-2021 .row>section{width:auto;max-width:none;padding:30px!important;text-align:left;background:#fff;border:1px solid var(--abc-line);border-radius:12px}
#home-archive-2021 .section-header{font-size:1.8rem;letter-spacing:2px;color:var(--abc-ink)}
#home-company-description{line-height:1.8}
#home-services-list a{display:inline-block;padding:12px 18px;background:var(--abc-soft);border:1px solid #c9dec3;border-radius:8px;color:#006500;text-decoration:none}
#home-services-list a:hover{background:#e6f1e0}
#home-location{display:grid;grid-template-columns:1.4fr 1fr;grid-template-rows:auto 1fr auto;overflow:hidden;padding:0!important;margin:0 auto 56px;border:1px solid var(--abc-line);border-radius:12px;background:#fff;color:var(--abc-ink);text-align:left!important}
#home-location>div{grid-column:1;grid-row:1/4;margin:0!important}
#home-map{height:100%;min-height:410px}
#home-location-name{grid-column:2;margin:30px 30px 16px!important;font-size:1.9rem;letter-spacing:1px}
#home-location-hours{grid-column:2;margin:0 30px 20px!important;font-size:16px;line-height:1.85}
#home-location-address{grid-column:2;margin:0!important;padding:19px 30px;background:var(--abc-soft);border-top:1px solid var(--abc-line);font-size:16px}
#pages>.content:not(#homePage) h1,#pages>.content:not(#homePage) h3{letter-spacing:1px;color:var(--abc-ink)}
#pages>.content:not(#homePage)>.container>h1:first-child,#pages>.content:not(#homePage)>.container>h3:first-child{font-size:2.3rem;margin:0 0 28px!important}
#pages>.content:not(#homePage)>.container>h1:first-child:after,#pages>.content:not(#homePage)>.container>h3:first-child:after{content:'';display:block;width:48px;height:3px;background:var(--abc-green);margin:16px auto 0}
#aboutPage>.about-layout{display:grid;grid-template-columns:1.65fr 1fr;gap:36px;text-align:left!important}
.about-copy{padding:6px 0}
.about-copy h1{font-size:2rem}
.about-copy h3{font-size:1.25rem;margin:18px 0 12px!important;color:#006500!important}
.about-copy p{font-size:17px;line-height:1.85;margin:0}
.about-facts{background:#fff;border:1px solid var(--abc-line);border-radius:12px;padding:28px}
.about-facts h1{font-size:1.4rem;margin:0 0 16px}
.about-facts p{margin:14px 0 10px}
.about-facts ul{padding-left:20px;margin:0!important}
#servicesPage .container>p{margin:18px 0 10px}
#servicesPage .container>ul:not(.service-catalog){list-style:none;margin:0!important;padding:0}
#servicesPage .container>ul:not(.service-catalog) li{display:inline-block;padding:7px 16px;background:#e9f2e3;color:#285727;border:1px solid #d5e5cd;border-radius:30px;font-size:15px}
.service-catalog{display:grid;grid-template-columns:1fr 1fr;gap:18px;list-style:none;margin:20px 0 0!important;padding:0;text-align:left;counter-reset:document}
.service-catalog li{padding:22px 24px;background:#fff;border:1px solid var(--abc-line);border-radius:10px;line-height:1.7}
.service-catalog li:nth-child(-n+2){font-size:19px;font-weight:600;border-top:3px solid var(--abc-green);padding-top:24px}
.service-catalog li:nth-child(3){grid-column:1/-1;padding:15px 0 0;background:transparent;border:0;font-size:1.3rem;font-weight:600}
.service-catalog li:last-child{grid-column:1/-1;background:var(--abc-soft);border-left:3px solid #709765}
#imageryPage .container>.d-flex{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
#imageryPage button{width:100%;max-width:none;flex:none;padding:0!important;border:1px solid var(--abc-line);border-radius:10px;overflow:hidden;background:#fff;transition:transform .18s ease,box-shadow .18s ease}
#imageryPage button img{display:block;width:100%;height:220px;object-fit:cover}
#imageryPage button:hover{transform:translateY(-3px);box-shadow:0 8px 20px #21482516}
#testimonialsPage>.container{max-width:930px}
#testimonialsPage p{position:relative;text-align:left;background:#fff;border:1px solid var(--abc-line);border-left:4px solid var(--abc-green);border-radius:10px;padding:30px 34px;margin:0;font-size:18px;line-height:1.9}
#testimonialsPage p strong{display:block;font-size:15px;line-height:1.5;color:#41683a;margin-bottom:4px}
.contact-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px;text-align:left}
.contact-panel{min-width:0;padding:26px;background:#fff;border:1px solid var(--abc-line);border-radius:10px;line-height:1.85}
.contact-panel h3{font-size:1.3rem;margin:0 0 16px}
.contact-panel p{margin:0 0 18px;overflow-wrap:anywhere}
.contact-panel p:last-child{margin-bottom:0}
.contact-panel a{color:#006b00;text-underline-offset:3px}
.contact-links>a{display:block;padding:9px 0;border-bottom:1px solid #edf0eb}
.contact-links>br{display:none}
.contact-links h3:not(:first-child){margin-top:25px}
.contact-hours .hours{font-size:15px;line-height:1.9}
#pages a:focus-visible,#pages button:focus-visible{outline:3px solid #008000;outline-offset:4px}
@media(max-width:991px){#home-archive-2021 .row,#aboutPage>.about-layout{grid-template-columns:1fr}.contact-grid{grid-template-columns:1fr 1fr}.contact-hours{grid-column:1/-1}#home-location{width:calc(100% - 48px);margin-left:24px;margin-right:24px}#home-location-name{font-size:1.6rem;margin:24px 22px 12px!important}#home-location-hours{margin:0 22px 16px!important;font-size:15px}#home-location-address{padding:16px 22px}}
@media(max-width:767px){#pages>.content:not(#homePage){padding:36px 0!important}#home-archive-2021{padding:28px 20px!important}#home-archive-2021 .row{gap:16px}#home-archive-2021 .row>section{padding:24px!important}#home-location{display:block;width:calc(100% - 40px);margin:0 20px 36px}#home-map{height:300px;min-height:0}#home-location-name{margin:24px 24px 14px!important}#home-location-hours{margin:0 24px 22px!important}#home-location-address{padding:18px 24px}.service-catalog,.contact-grid{grid-template-columns:1fr}.contact-hours{grid-column:auto}.service-catalog li{padding:20px}.service-catalog li:nth-child(3),.service-catalog li:last-child{grid-column:auto}#imageryPage .container>.d-flex{grid-template-columns:1fr 1fr;gap:12px}#imageryPage button img{height:170px}#testimonialsPage p{padding:24px;font-size:17px}.about-facts{padding:24px}#pages>.content:not(#homePage)>.container>h1:first-child,#pages>.content:not(#homePage)>.container>h3:first-child{font-size:1.9rem}}
@media(max-width:420px){#imageryPage .container>.d-flex{grid-template-columns:1fr}#imageryPage button img{height:220px}}
@media(prefers-reduced-motion:reduce){#imageryPage button{transition:none}}

#applicationPage{max-width:1100px;margin:200px auto 56px;padding:32px;background:#fff;border:1px solid #dfe7dd;border-radius:12px}#application-form{min-height:620px;max-width:100%}#application-form iframe{max-width:100%}@media(max-width:767px){#applicationPage{width:calc(100% - 32px);margin:156px 16px 36px;padding:20px}}
