/* Shared, optional reading setting for the current site and the new design. */
html[data-reading-size="large"]{font-size:130%}
.reading-bar{background:var(--cream,var(--paper,#faf9f3));border-bottom:1px solid var(--line,#d7ddcc);color:var(--ink,#263d2e)}
.reading-bar[hidden]{display:none!important}
.reading-enabled .reading-bar[hidden]{display:block!important;visibility:hidden}
.reading-bar-inner{display:flex;justify-content:flex-end;align-items:center;min-height:48px}
.reading-toggle{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:5px 4px;border:0;border-radius:8px;background:transparent;color:inherit;font-size:max(.875rem,14px);font-weight:650;line-height:1.4;cursor:pointer;touch-action:manipulation}
.reading-toggle:focus-visible{outline:3px solid #426047;outline-offset:2px}
.reading-toggle:hover{color:#334b36}
.reading-sample{font-size:1.15em;font-weight:800;letter-spacing:-.045em}
.reading-track{display:inline-flex;align-items:center;flex:0 0 46px;width:46px;height:26px;border:1px solid #82917c;border-radius:20px;background:#e7ebdf;padding:3px;transition:background 0.288s,border-color 0.288s}
.reading-track::before{content:"";display:block;width:18px;height:18px;flex:0 0 18px;border-radius:50%;background:#43543f;transform:translateX(0);transition:transform 0.288s}
.reading-toggle[aria-checked="true"] .reading-track{background:#334b36;border-color:#334b36}
.reading-toggle[aria-checked="true"] .reading-track::before{background:#dff177;transform:translateX(20px)}
html.reading-enabled{scroll-padding-top:calc(var(--reading-header-height,142px) + 16px)}
html[data-reading-size="large"] .header-inner{height:auto;min-height:94px;flex-wrap:wrap;gap:12px 24px;padding-block:12px}
html[data-reading-size="large"] .main-nav{flex-wrap:wrap;gap:.5rem 1.25rem}
html[data-reading-size="large"] main :is(p,h1,h2,h3,li,summary,label,a,button){overflow-wrap:break-word}
html[data-reading-size="large"] :is(.hero-copy,.hero-heading,.service-story-copy,.contact-info,.contact-card,.price-calculator,.field){min-width:0}
html[data-reading-size="large"] :is(.hero-actions,.price-callout,.price-base){flex-wrap:wrap}
html[data-reading-size="large"] .calculator-result{grid-template-columns:1fr}
html[data-reading-size="large"] .hero-service-name{white-space:normal}
@media(max-width:900px){
 html[data-reading-size="large"] .footer-inner{flex-wrap:wrap}
 html[data-reading-size="large"] .footer-main{grid-template-columns:1fr 1fr}
 html[data-reading-size="large"] .hero-at-home{max-width:100%;width:fit-content}
}
@media(max-width:760px){
 html.reading-enabled .main-nav{max-height:calc(100dvh - var(--reading-header-height,142px));overflow-y:auto}
 html[data-reading-size="large"] .header-inner{min-height:78px;gap:12px}
 html[data-reading-size="large"] .header-inner .brand{max-width:42%}
 html[data-reading-size="large"] .service-row{grid-template-columns:1fr}
 html[data-reading-size="large"] .service-row figure{height:230px}
 html[data-reading-size="large"] :is(.contact-card,.price-calculator,.price-inner){padding:1.3rem}
 html[data-reading-size="large"] .hero-service-details{grid-template-columns:1fr}
 html[data-reading-size="large"] .hero-service-details>p:last-child{padding-left:0;border-left:0}
}
@media(max-width:560px){
 .reading-bar-inner{min-height:46px}
 .reading-toggle{gap:10px}
 html[data-reading-size="large"] .footer-main{grid-template-columns:1fr}
 html[data-reading-size="large"] .footer-area{grid-column:auto}
}
@media(prefers-reduced-motion:reduce){.reading-track,.reading-track::before{transition:none}}
@media print{.reading-bar{display:none!important}}
/* Fluid body text must grow too, including where the normal size uses viewport units. */
html[data-reading-size="large"]{--heading-h1:clamp(2.55rem,4.55vw,3.7rem);--heading-h2:clamp(2.15rem,4.68vw,3.65rem);--heading-h3:clamp(1.4rem,3.25vw,2rem)}
html[data-reading-size="large"] .hero-intro{font-size:clamp(1.15rem,2.21vw,1.5rem)}
html[data-reading-size="large"] .page-hero>p:last-child{font-size:clamp(1.15rem,2.34vw,1.45rem)}
html[data-reading-size="large"] .intro{font-size:clamp(1.08rem,1.82vw,1.23rem)}
html[data-reading-size="large"] .home-hero-service .intro{font-size:clamp(1.1rem,1.755vw,1.25rem)}
html[data-reading-size="large"] .lead{font-size:clamp(1.22rem,2.34vw,1.65rem)}
@media(max-width:760px){
 html[data-reading-size="large"]{--heading-h1:2.05rem;--heading-h2:2.05rem;--heading-h3:1.4rem}
 html[data-reading-size="large"] .lead{font-size:1.22rem}
 html[data-reading-size="large"] .home-hero-service .intro{font-size:1.07rem}
 html[data-reading-size="large"] .page-intro .intro{font-size:1.06rem}
}
@media(max-width:640px){html[data-reading-size="large"] .hero-intro{font-size:1.12rem}}
@media(max-width:560px){html[data-reading-size="large"] .home-hero-service .intro{font-size:1.04rem}}

html[data-reading-size="large"] .values-grid>article{min-width:0}
