/* Focused V4 refinements; all text sizes continue to use the shared type scale. */
#about .p2p-about-logo-art img{background:transparent!important}
#about button.p2p-about-logo-art{padding:0;border:0;border-radius:0;background:transparent;cursor:pointer;appearance:none}
#about button.p2p-about-logo-art:focus-visible{outline:2px solid #278837;outline-offset:8px}
#about .p2p-about-logo-art img{aspect-ratio:1309/1201;object-fit:fill}
#about .p2p-about-logo-art[data-logo-style="black"] img{filter:url(#p2p-logo-monochrome)}
#dust-chemistry{scroll-margin-top:60px}
#dust-control .mx-chemistry-definitions{margin:0;display:grid;gap:20px}
#dust-control .mx-chemistry-definitions dt{
 font-size:var(--p2p-type-feature);font-weight:var(--p2p-weight-feature);
 line-height:1.3;margin-bottom:6px;
}
#dust-control .mx-chemistry-definitions dd{
 font-size:var(--p2p-type-detail);line-height:var(--p2p-leading-copy);
 color:var(--mx-muted);margin:0;
}
#dust-control .mx-disclosure.is-closing .mx-toggle::after,
#water-treatment-list .mx-disclosure.is-closing .mx-toggle::after{transform:rotate(90deg)}

/* Product content reveals as one group, using the same height animation as
   Dust Control. Neutralize the older staggered CSS effects underneath it. */
#products .product-row > summary{transition:none;padding-left:26px}
#products .product-row__body-wrap{display:block;transition:none}
#products :is(.product-row__body,.product-row__desc,.product-row__spec-item,.product-row__download){
 opacity:1;filter:none;transform:none;transition:none;
}
#products .product-row__meta::before,
#products .product-row__meta::after{transform:scaleX(1);transition:none}
#products .product-row__download{transition:background-color .2s ease,color .2s ease,border-color .2s ease}
#products .product-row__chev{transition:transform .35s ease,stroke .25s ease}
#products .product-row.is-closing .product-row__chev{transform:rotate(0);stroke:#555}
#products .product-row::before{transition:transform .35s ease,opacity .25s ease}
#products .product-row.is-closing::before{transform:scaleY(0);opacity:0}
@media(max-width:768px){#products .product-row > summary{padding-left:16px}}
@media(prefers-reduced-motion:reduce){
 #products .product-row__chev,#products .product-row::before{transition:none}
}

/* Keep the complete italic phrase together. */
#water-treatment .p2p-water-opening{display:block;text-wrap:balance}
#water-treatment .p2p-water-emphasis{display:block}
#water-treatment .mx-module-heading{display:block;margin-bottom:0}
#water-treatment .mx-module-heading h2{margin-bottom:20px}
#water-treatment .mx-module-heading p{max-width:none;margin-bottom:0}
#water-treatment-list .mx-disclosure{
 transition:opacity .65s cubic-bezier(.16,1,.3,1) var(--p2p-reveal-delay,0ms),
 transform .8s cubic-bezier(.16,1,.3,1) var(--p2p-reveal-delay,0ms),
 background-color .25s ease;
}
#water-treatment-list .mx-disclosure-body{display:block;padding:0 24px 25px 0}
#water-treatment-list .mx-disclosure-body>p{font-size:var(--p2p-type-body);line-height:var(--p2p-leading-body)}
.p2p-treatment-banner{margin:0 0 48px;overflow:hidden;border-radius:4px;aspect-ratio:540/124;background:#edf0ed}
.p2p-treatment-banner img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.p2p-treatment-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(32px,5vw,80px);align-items:start}
@media(max-width:991px){
 .p2p-treatment-split{grid-template-columns:minmax(0,1fr);gap:32px}
 .p2p-treatment-banner{margin-bottom:32px}
 #water-treatment-list .mx-disclosure-body{padding-right:15px}
}
@media(max-width:767px){.p2p-treatment-banner{aspect-ratio:3}}

.p2p-matrix .mx-application-eyebrow{
 display:flex;justify-content:space-between;align-items:center;gap:20px;
 margin-bottom:var(--p2p-label-space);
}
.p2p-matrix .mx-application-eyebrow>span{
 color:#278837;font-size:var(--p2p-type-label);font-weight:600;
 letter-spacing:.045em;text-transform:uppercase;
}

/* Small refinements to the service introduction and product guide spacing. */
#work .mx-service-prompt{display:inline}
#products .product-row__guide{padding-top:24px;margin-bottom:0}

/* Share the message-field baseline with the contact-detail rules. The final
   111px is the existing 50px action gap plus the 61px send button. */
@media(min-width:992px){
 #contact .contact-info-col{margin-top:-20px;margin-bottom:111px}
 #contact .contact-info-stack{margin-top:0;justify-content:space-between}
 #contact .p2p-contact-form-col{display:flex}
 #contact form{display:flex;flex-direction:column;width:100%}
 #contact .p2p-contact-fields{flex:1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto minmax(161px,1fr)}
 #contact .p2p-contact-fields>.col-md-6{width:100%}
 #contact .p2p-contact-fields>.col-12{grid-column:1/-1;width:100%;margin-bottom:0!important}
 #contact .form-textarea,#contact textarea{height:100%;min-height:161px}
 #contact .p2p-contact-actions{margin-top:50px}
 #contact .p2p-contact-actions button{min-height:61px}
}

#water-treatment .mx-water-applications{margin-top:0;padding-top:0;border-top:0}
#water-treatment .mx-intro h2{line-height:var(--p2p-leading-editorial)}

#thermal-systems .mx-intro h2{font-size:var(--p2p-type-split);line-height:var(--p2p-leading-editorial)}
