/* Shared visual language with the homepage; legacy layouts remain intact. */
html:has(.zz-subpage){font-size:16px!important}
body.zz-subpage{background:#f8f8f0;color:#203b2b}
.zz-subpage .material-symbols-outlined{font-size:0!important;display:inline-flex;align-items:center;justify-content:center;min-width:16px}
.zz-subpage .material-symbols-outlined:before{content:'✳';font:16px/1 Arial,sans-serif}
.zz-subpage main>section:first-of-type [class~="bg-gradient-to-br"]{background:#edf1e4;color:var(--ink);border-color:var(--line)}
.zz-subpage main>section:first-of-type [class~="bg-gradient-to-br"] [class*="text-white"],.zz-subpage main>section:first-of-type [class~="bg-gradient-to-br"] [class*="text-gray-"]{color:var(--ink)}
.zz-subpage main>section:first-of-type [class~="bg-gradient-to-br"] a[class~="bg-primary"]{color:white}
.zz-subpage main>section:first-of-type [class~="bg-gradient-to-br"] [class*="border-white"]{border-color:#c7d2bb}
.zz-subpage main>section:first-of-type [class~="bg-gradient-to-br"] [class*="bg-white/"]{background:#f8f8f0}
.zz-subpage{--zz-green:var(--green);--zz-dark:var(--ink);--zz-bg:var(--cream);--zz-line:var(--line);background:var(--cream);color:var(--ink);font:15px/1.75 'Plus Jakarta Sans',Arial,sans-serif}
.zz-subpage .header{background:rgba(248,248,240,.97);color:var(--ink)}
.zz-subpage .header a:not(.button),.zz-subpage footer a{color:inherit}
.zz-subpage .header .button{color:white}
.zz-subpage .wrap,.zz-subpage .zz-wrap{width:min(1280px,calc(100% - 80px));margin-left:auto;margin-right:auto}
.zz-subpage main{padding-top:32px;padding-bottom:76px;min-height:60vh}
.zz-subpage main>nav.zz-breadcrumb{padding-top:0;padding-bottom:0}
.zz-subpage main>nav.zz-breadcrumb+section{margin-top:30px!important}
.zz-subpage main.max-w-5xl{max-width:1080px;padding-left:40px;padding-right:40px}
.zz-subpage main>section.max-w-7xl{max-width:1360px;padding-left:40px;padding-right:40px}
.zz-subpage .zz-breadcrumb{font-size:11px;line-height:1.8;color:var(--muted);margin-top:0;margin-bottom:30px}
.zz-subpage h1{font-size:clamp(36px,4.2vw,64px);font-weight:700;letter-spacing:-.045em;line-height:1.1;margin-bottom:26px;text-wrap:balance}
.zz-subpage h2,.zz-subpage .zz-related h2,.zz-subpage .zz-cta h2{font-size:clamp(28px,3vw,42px);font-weight:700;letter-spacing:-.04em;line-height:1.18;margin-bottom:24px}
.zz-subpage h3{font-size:23px;font-weight:700;letter-spacing:-.035em;line-height:1.3}
.zz-subpage main p{line-height:1.85}
.zz-subpage .zz-detail-hero{background:#edf1e4;border:1px solid var(--line);border-radius:36px;padding:56px;margin-bottom:44px}
.zz-subpage .zz-detail-hero .zz-lead{max-width:850px;color:var(--muted);font-size:17px}
.zz-subpage .zz-eyebrow{font-size:11px;letter-spacing:.15em;font-weight:800;color:var(--green)}
.zz-subpage .zz-detail-body{max-width:920px;margin-left:auto;margin-right:auto}
.zz-subpage .zz-detail-body p,.zz-subpage .zz-detail-body li{font-size:16px;color:var(--muted)}
.zz-subpage .zz-detail-body section{margin:52px 0}
.zz-subpage .zz-cta,.zz-subpage .zz-related{border:1px solid var(--line);border-radius:24px;background:white;padding:36px;margin-top:40px;margin-bottom:40px}
.zz-subpage .zz-link-grid a{border-color:var(--line);border-radius:16px;color:var(--ink);background:var(--cream);padding:18px;transition:background .2s}
.zz-subpage .zz-link-grid a:hover{background:#edf1e4}
.zz-subpage .zz-button{background:var(--green);font-weight:700;font-size:13px;padding:15px 24px;border-radius:50px;min-height:48px}
.zz-subpage .zz-outline{background:transparent;color:var(--green)!important;border-color:var(--line)}
.zz-subpage .zz-service-photos{gap:24px;margin-bottom:48px}
.zz-subpage .zz-service-photos img,.zz-subpage .zz-manufacturer-photo img{border-radius:24px}
.zz-subpage main [class~="bg-gradient-to-br"]{background:var(--ink);border-radius:36px;box-shadow:none;border:1px solid var(--ink)}
.zz-subpage main [class~="bg-secondary"]{background-color:var(--ink)}
.zz-subpage main [class~="bg-primary"]{background-color:var(--green)}
.zz-subpage main [class~="text-primary"]{color:var(--green)}
.zz-subpage main [class~="text-secondary"]{color:var(--ink)}
.zz-subpage main [class~="bg-white"]{border-color:var(--line);box-shadow:none;border-radius:24px}
.zz-subpage main [class~="shadow-lg"],.zz-subpage main [class~="shadow-xl"],.zz-subpage main [class~="shadow-2xl"]{box-shadow:none}
.zz-subpage main a[class*="rounded-full"]{font-size:13px;font-weight:700;min-height:46px;align-items:center}
.zz-subpage main article{border-color:var(--line)}
.zz-subpage main article>h1{max-width:950px}
.zz-subpage footer{background:var(--cream);color:var(--ink);border-top:1px solid var(--line)}
.zz-subpage footer p{font-size:12px;line-height:1.8}
.zz-subpage .mobile-bar a{color:var(--ink)}
.zz-subpage .mobile-bar a:last-child{color:white}
@media(max-width:1100px){.zz-subpage .wrap,.zz-subpage .zz-wrap{width:calc(100% - 48px)}.zz-subpage main>section.max-w-7xl,.zz-subpage main.max-w-5xl{padding-left:24px;padding-right:24px}}
@media(max-width:700px){.zz-subpage .wrap,.zz-subpage .zz-wrap{width:calc(100% - 36px)}.zz-subpage main{padding-top:22px;padding-bottom:45px}.zz-subpage main>section.max-w-7xl,.zz-subpage main.max-w-5xl{padding-left:18px;padding-right:18px}.zz-subpage h1{font-size:36px;overflow-wrap:anywhere}.zz-subpage h2,.zz-subpage .zz-related h2,.zz-subpage .zz-cta h2{font-size:29px}.zz-subpage .zz-detail-hero{padding:28px 24px;border-radius:24px}.zz-subpage main article[class*="p-8"]{padding:26px 22px}.zz-subpage main [class~="bg-gradient-to-br"]{padding:30px 24px;border-radius:24px}.zz-subpage .zz-cta,.zz-subpage .zz-related{padding:25px 22px}.zz-subpage .zz-service-photos{gap:16px}.zz-subpage .zz-service-photos img{height:340px}.zz-subpage .zz-detail-body p,.zz-subpage .zz-detail-body li{font-size:15px}.zz-subpage .zz-breadcrumb{font-size:10px;margin-bottom:22px}}
@media print{.zz-subpage main>section{display:block!important}.zz-subpage main{padding:0}.zz-subpage .skip{display:none}}
.zz-subpage .service-photo-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;width:min(1100px,100%);margin:64px auto 0;padding:32px;border:1px solid var(--line);border-radius:28px;background:#edf1e4}.zz-subpage .service-photo-story img{width:100%;height:390px;object-fit:contain;border-radius:20px;background:#e3e9da}.zz-subpage .service-photo-story h2{font-size:clamp(27px,3vw,39px)}.zz-subpage .service-photo-story p{color:var(--muted)}.zz-subpage .service-photo-story .button{color:white}.zz-subpage main:not(.zz-wrap):not(.max-w-5xl)>.service-photo-story{width:calc(100% - 80px)}
@media(max-width:700px){.zz-subpage .service-photo-story{grid-template-columns:1fr;padding:20px;gap:25px;margin-top:38px}.zz-subpage .service-photo-story img{height:320px}.zz-subpage main:not(.zz-wrap):not(.max-w-5xl)>.service-photo-story{width:calc(100% - 36px)}}

.zz-subpage .zz-price-section{max-width:1100px;margin:48px auto;padding:28px;border:1px solid var(--line);border-radius:24px;background:var(--cream)}.zz-price-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px;margin:24px 0}.zz-price-grid article{padding:20px;background:white;border-radius:18px;border:1px solid var(--line)}.zz-price-grid .zz-rate{font-size:24px;font-weight:800;color:var(--ink)}.zz-price-grid h3{font-size:20px}.zz-price-section p{line-height:1.7}.zz-subpage main:not(.zz-wrap)>.zz-price-section{width:calc(100% - 36px)}
