/* One readable scale across the site; keep the selected industrial layout. */
:root{--header-offset:112px}
.site-header{position:sticky;top:0;z-index:40}
html{scroll-padding-top:var(--header-offset)}
.site-header #main-nav a,.menu-group>summary{text-transform:uppercase}
.product-sidebar,.article-aside{top:var(--header-offset)}
.product-chapter{scroll-margin-top:16px}
@media(min-width:801px){.product-sidebar{max-height:calc(100dvh - var(--header-offset) - 24px)}}
@media(max-width:800px){:root{--header-offset:98px}}
@media(max-width:540px){:root{--header-offset:94px}}
body{font-size:17px;line-height:1.65}
.hero h1{font-size:60px;line-height:1.08;letter-spacing:-.04em}
.hero-lead{font-size:19px;line-height:1.6}
h2,.section-heading h2{font-size:38px;line-height:1.2}
.project-grid h2,.contact-copy h2{font-size:40px;line-height:1.15}
.faq-grid h2{font-size:34px;line-height:1.2}
.product-name h3{font-size:26px;line-height:1.2}
.product-row>p,.section-heading>p{font-size:16px;line-height:1.65}
.process-grid h2{font-size:20px}.process-grid p{font-size:15px;line-height:1.65}
.button,.text-link{font-size:16px}
.eyebrow{font-size:13px;letter-spacing:.09em}
.site-header #main-nav>a,.menu-group>summary{font-size:13px}
.site-header .submenu a{font-size:14px}
.header-phone{font-size:18px}
.menu-toggle{font-size:14px}
.other-products{font-size:15px;line-height:1.65}.other-products>span{font-size:13px}
.project-grid p:not(.eyebrow),.contact-copy>p:not(.eyebrow){font-size:17px;line-height:1.7}
.project-grid figcaption,.footer-contact,.footer-inner>span{font-size:13px}
.accordion summary{font-size:17px}.accordion details>p{font-size:16px;line-height:1.7}
.inquiry-form h2{font-size:28px}.inquiry-form>p:first-of-type{font-size:15px}
.inquiry-form label{font-size:14px}.inquiry-form input:not([type=checkbox]),.inquiry-form textarea{font-size:16px}
.inquiry-form .consent,.inquiry-form .form-note{font-size:13px;line-height:1.65}
.inquiry-form .form-status{font-size:15px}
.contact-email{font-size:17px}.contact-copy address{font-size:15px}.site-footer nav{font-size:14px}
.calculator-grid h2{font-size:32px;line-height:1.25}.calculator-grid>div>p:not(.eyebrow){font-size:16px;line-height:1.65}
.calculator-form label{font-size:14px}.calculator-form input,.calculator-form select{font-size:16px}
.calculator-note{font-size:13px;line-height:1.65}.calculator-result{font-size:17px;line-height:1.65}
.page-hero h1{font-size:44px;line-height:1.15}.page-hero>p:not(.eyebrow){font-size:18px;line-height:1.7}
.breadcrumbs{font-size:14px}.prose{font-size:17px;line-height:1.8}.prose h2{font-size:30px;line-height:1.3}.prose h3{font-size:22px;line-height:1.35}
.aside-contact h2{font-size:26px}.aside-contact p:not(.eyebrow){font-size:16px}.blog-grid h2{font-size:28px;line-height:1.3}
@media(max-width:1040px){.hero h1{font-size:54px}.site-header #main-nav>a,.menu-group>summary{font-size:14px}.header-phone{font-size:16px}.product-row>p{font-size:15px}.process-grid p{font-size:14px}}
@media(max-width:800px){.hero h1{font-size:48px}.section-heading h2,.project-grid h2,.contact-copy h2{font-size:34px}.faq-grid h2{font-size:30px}.product-name h3{font-size:24px}.site-footer nav{font-size:14px}}
@media(max-width:540px){
 body{font-size:16px}.hero h1{font-size:38px;line-height:1.13}.hero-lead{font-size:17px}.hero-note{font-size:13px}
 h2,.section-heading h2,.project-grid h2,.contact-copy h2{font-size:30px;line-height:1.2}.faq-grid h2{font-size:28px}
 .product-name h3{font-size:21px}.product-row>p{font-size:15px;line-height:1.6}.process-grid h2{font-size:19px}.process-grid p{font-size:15px}
 .button,.text-link{font-size:16px}.eyebrow{font-size:12px}.header-phone{font-size:14px}.menu-toggle{font-size:0}
 .other-products{font-size:14px}.project-grid p:not(.eyebrow),.contact-copy>p:not(.eyebrow){font-size:16px}
 .accordion summary{font-size:16px}.accordion details>p{font-size:16px}.inquiry-form h2{font-size:25px}
 .form-grid{grid-template-columns:1fr;gap:0}.inquiry-form label{font-size:14px}.contact-copy address{font-size:14px}
 .calculator-grid h2{font-size:27px}.calculator-form label{font-size:14px}.calculator-result{font-size:16px}
 .page-hero h1{font-size:32px}.page-hero>p:not(.eyebrow){font-size:16px}.breadcrumbs{font-size:13px}
 .prose{font-size:16px;line-height:1.75}.prose h2{font-size:26px}.prose h3{font-size:21px}
 .blog-grid h2{font-size:25px}.site-footer p,.footer-contact,.footer-inner>span{font-size:13px}.mobile-contact a{font-size:15px}
}

.reading-links{padding:40px 0 48px;border-top:1px solid #c4cbc4}.reading-links h2{font-size:28px;margin-bottom:22px}.reading-links nav{display:flex;flex-wrap:wrap;gap:16px 30px}.reading-links a{font-size:16px;text-decoration:underline;text-underline-offset:4px}.product-quick-links{display:flex;gap:10px 24px;flex-wrap:wrap}

.product-contact-note{font-size:15px;color:#b9cbd1;margin:-12px 0 26px}.mobile-contact a:first-child{background:var(--lime);color:var(--ink)}.mobile-contact a:last-child{background:var(--ink);color:#fff}.product-actions .button{font-size:15px;min-height:52px}.hero-buttons .button{font-size:15px}@media(max-width:540px){.product-actions{gap:12px}.product-actions .button{width:100%;justify-content:center;font-size:15px}}
