/* Keep content inside its column; wide data belongs to a local scroll region. */
body .article-content{width:100%;min-width:0;max-width:960px;overflow-wrap:anywhere}
body main :is(.article-table,.solution-table,.product-table,.mobile-table-scroll){min-width:0;max-width:100%;box-sizing:border-box}
body .mobile-table-scroll{overflow-x:auto;overscroll-behavior-x:contain}
body .mobile-table-scroll table{border-collapse:separate;border-spacing:0}
body .mobile-table-scroll tr>:first-child{position:sticky;left:0;z-index:1;background:var(--paper,#fff);box-shadow:1px 0 0 var(--line,#D9E1E4);overflow-wrap:anywhere}
body .mobile-table-scroll thead tr>:first-child,
body .mobile-table-scroll tr>th:first-child{z-index:2;background:var(--ground,#F4F6F6)}
body main :is(.callback,.enquiry-submit,.solution-button,.solution-hero-cta){min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:center}
@media(max-width:800px){
 body main :is(p,li,dd,a){overflow-wrap:anywhere}
 body main :is(h1,h2,h3){min-width:0;max-width:100%}
 body .article-content{max-width:100%}
 body .mobile-table-scroll{width:100%;max-width:100%;min-width:0}
 body .mobile-table-scroll tr>:first-child{width:clamp(120px,38vw,220px);max-width:clamp(120px,38vw,220px);white-space:normal}
}

/* Headings wrap at word boundaries, never through letters. */
body main :is(h1,h2,h3,h4,h5,h6),
body main :is(h1,h2,h3,h4,h5,h6) *{overflow-wrap:normal!important;word-break:normal!important;hyphens:none!important;white-space:normal!important}
/* Each solution uses its own text height instead of the longest other page. */
body .solutions-page .solution-hero-copy{display:flex;flex-direction:column;gap:24px}
body .solutions-page .solution-hero-copy>.solution-hero-cta{margin-top:36px!important}
@media(max-width:1200px){
 body main h1,body .solutions-page .solution-hero h1{font-size:35px!important;line-height:1.2!important}
}
@media(max-width:800px){
 body main h1,body .solutions-page .solution-hero h1{font-size:27px!important;line-height:1.25!important;letter-spacing:-.4px}
 body main h2{font-size:25px!important;line-height:1.3!important}
 body main h3{font-size:17px!important;line-height:1.4!important}
 body main .application-card h3{font-size:17px!important}
 body main .refill-grid.refill-three{grid-template-columns:minmax(0,1fr)}
 body .solutions-page .solution-hero-copy>.solution-hero-cta{margin-top:16px!important}
}
@media(max-width:600px){
 body main .product-applications{grid-template-columns:minmax(0,1fr)}
 body .home-service-list .service-row h3{grid-column:1/-1}
}
@media(max-width:1100px){
 body main .refill-card h3{font-size:17px!important;line-height:1.4!important}
}
@media(min-width:601px) and (max-width:1000px){
 body main .company-story-copy h2{font-size:21px!important;line-height:1.3!important}
 body main .company-heading-tagline{font-size:inherit;line-height:inherit}
}
@media(max-width:360px){
 body main h1,body .solutions-page .solution-hero h1{font-size:23px!important}
 body main h2{font-size:21px!important}
}
