:root{--red:#de263a;--blue:#5ba9c1;--black:#080b0d;--ink:#10252d;--paper:#f0f5f6;--gutter:clamp(20px,5vw,76px);font-family:'Barlow',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;color-scheme:light}
@font-face{font-family:Barlow;src:url('../assets/fonts/brand-1.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:Barlow;src:url('../assets/fonts/brand-3.ttf') format('truetype');font-weight:600;font-display:swap}
@font-face{font-family:Barlow;src:url('../assets/fonts/brand-4.ttf') format('truetype');font-weight:700;font-display:swap}
@font-face{font-family:'Russo One';src:url('../assets/fonts/brand-5.ttf') format('truetype');font-weight:400;font-display:swap}
*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:5px}input:focus-visible,textarea:focus-visible{outline:2px solid #286b80;outline-offset:2px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:'Russo One',Arial,sans-serif;font-weight:400}p{line-height:1.55}[hidden]{display:none!important}.page-shell{width:min(100%,1640px);margin-inline:auto;padding-inline:var(--gutter)}
.skip-link{position:fixed;top:-80px;left:20px;padding:12px;background:white;z-index:20}.skip-link:focus{top:12px}
.catalog-header{background:#000;color:white;border-bottom:1px solid #27363c}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:116px}.catalog-brand{width:min(400px,55%)}.catalog-brand img{display:block;width:100%;height:auto}.catalog-nav{display:flex;align-items:center;gap:28px;font-weight:600;font-size:.9375rem}.catalog-nav a{padding:12px 0}.catalog-nav a:hover{color:var(--blue)}
.catalog-hero{background:#000;color:white;padding-block:48px 44px}.eyebrow{font-size:.75rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--blue);margin-bottom:12px}.catalog-hero h1{font-size:clamp(2.4rem,5vw,4.8rem);line-height:1.1;letter-spacing:-.035em}.catalog-hero h1 span{color:var(--blue)}.catalog-hero p:last-child{color:#c4d3d9;margin-top:18px;font-size:1.125rem}
.draft-notice{border-left:3px solid var(--red);padding:10px 14px;background:#e3edf1;font-size:.875rem;margin-top:28px;max-width:100%;line-height:1.45}.draft-notice strong{font-weight:700}.gallery-main{padding-bottom:72px}.gallery-toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-block:30px 26px;border-bottom:1px solid #bdcfd6}.category-filters{display:flex;gap:24px;flex-wrap:wrap}.category-filters button{border:0;border-bottom:3px solid transparent;background:transparent;color:#435d68;padding:14px 0;font-weight:600;white-space:nowrap}.category-filters button[aria-pressed=true]{color:#10252d;border-color:var(--red)}.category-filters button:hover{color:#000}.result-count{font-size:.8125rem;color:#48626b;white-space:nowrap}
.product-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px;list-style:none;margin:0;padding:0}.product-card{min-width:0;border:1px solid #cfdbdf;background:#fff}.product-card>a{display:block;height:100%}.product-visual{position:relative;display:grid;place-items:center;background:linear-gradient(130deg,#e6eef1,#f7f9f9);aspect-ratio:1.5;overflow:hidden}.product-visual>svg{display:block;width:86%;height:86%}.product-brand{position:absolute;top:14px;left:14px;display:flex;align-items:center;justify-content:center;background:#080b0d;width:136px;height:38px;padding:8px 12px;z-index:1}.product-brand img{width:100%;height:100%;object-fit:contain}.product-brand img[src$='mahlkoenig.png']{max-width:52px}.product-brand img[src$='3m.png']{max-width:44px}.visual-note{position:absolute;bottom:12px;left:14px;font-size:.6875rem;letter-spacing:.02em;color:#536c76}.product-card-copy{padding:20px}.product-type{font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#3e6978;margin-bottom:9px}.product-card h3{font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.25}.model-pending{font-size:.875rem;color:#5c7078;margin-top:8px}.view-product{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid #dce4e7;margin-top:20px;padding-top:14px;font-weight:600;font-size:.875rem}.arrow{display:block;width:18px;height:18px;min-width:18px;flex:0 0 18px;stroke-width:1.75}.product-card a:hover .view-product{color:var(--red)}.product-card a:hover{outline:1px solid var(--blue);outline-offset:-1px}
.catalog-footer{background:#080b0d;color:#bbced6;padding-block:28px;font-size:.8125rem}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}.footer-inner a{color:#fff}.footer-inner a:hover{color:var(--blue)}
.breadcrumbs{display:flex;gap:10px;flex-wrap:wrap;padding-block:24px;font-size:.875rem;color:#49646f}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.product-detail{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:clamp(30px,5vw,76px);padding-block:12px 64px;align-items:start}.product-showcase{position:relative;border:1px solid #cfdbdf;background:#e8eff2}.product-showcase>svg{display:block;width:100%;height:auto;aspect-ratio:1.25}.product-showcase .product-brand{width:180px;height:50px;top:20px;left:20px}.product-showcase figcaption{font-size:.75rem;padding:0 20px 20px;color:#536c76;line-height:1.4}.preview-label{display:inline-block;border-left:3px solid var(--red);padding:5px 9px;background:#dce9ee;font-size:.75rem;font-weight:600;margin-bottom:18px}.product-description h1{font-size:clamp(1.9rem,3.4vw,3.4rem);line-height:1.1;letter-spacing:-.035em}.product-description h1 span{display:block;color:#387e94;font-family:Barlow,Arial,sans-serif;font-weight:600;font-size:.5em;letter-spacing:0;margin-top:12px}.product-description>p{margin-top:24px;font-size:1.0625rem;color:#3e5964}.product-information{margin-block:28px;display:grid;grid-template-columns:1fr 1fr;font-size:.9375rem}.product-information dt,.product-information dd{margin:0;padding-block:12px;border-top:1px solid #c8d7dd}.product-information dt{font-weight:600}.product-information dd{text-align:right;color:#4d6873}.catalog-button{display:inline-flex;justify-content:space-between;align-items:center;gap:24px;min-height:52px;padding:14px 18px;background:var(--blue);color:#071219;border:0;border-left:3px solid var(--red);font-weight:700;font-size:.9375rem;border-radius:2px;text-align:left}.catalog-button:hover{background:#85c4d7}.price-button{width:100%;max-width:340px}.product-phone{display:inline-block;margin-top:18px;font-size:.875rem;font-weight:600;color:#395f6e}.product-phone:hover{text-decoration:underline}.product-phone-line{display:block}
.product-inquiry{border:0;border-top:4px solid var(--red);background:#f0f5f6;color:#10252d;padding:0;width:min(600px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 20px 90px #0007}.product-inquiry::backdrop{background:#000b}.dialog-content{padding:30px}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.dialog-header h2{font-size:clamp(1.4rem,3vw,1.8rem);line-height:1.2}.dialog-close{display:grid;place-items:center;border:1px solid #becfd6;background:transparent;min-width:40px;height:40px;padding:8px;margin-top:-8px;margin-right:-8px;color:#10252d}.dialog-close:hover{background:#dce9ee}.dialog-close svg{width:18px;height:18px}.selected-product{margin:18px 0 24px;padding:12px 14px;border-left:3px solid var(--blue);background:#e1ecef;line-height:1.4}.selected-product small{display:block;font-size:.75rem;color:#3f6573;margin-bottom:4px}.selected-product strong{font-size:1rem;font-weight:700}.product-inquiry form{display:grid;gap:16px}.inquiry-fields-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.product-inquiry label{display:block;font-size:.875rem;font-weight:600;margin-bottom:6px}.optional{font-weight:400;color:#5b727b}.product-inquiry input,.product-inquiry textarea{display:block;width:100%;border:1px solid #a9c0cb;background:white;color:#10252d;border-radius:2px;padding:11px 12px;min-height:46px;font-size:1rem}.product-inquiry textarea{min-height:96px;resize:vertical}.modal-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:4px}.modal-actions .catalog-button{min-width:190px}.modal-actions a{font-size:.875rem;font-weight:600;white-space:nowrap}.catalog-button:disabled{opacity:.55;cursor:not-allowed}.inquiry-feedback{font-size:.875rem;line-height:1.45;border:1px solid #a4c0cb;background:#e2edf1;padding:10px 12px}.inquiry-feedback[data-state=error]{border-color:#a12b3b;color:#79202d;background:#ffeff1}.inquiry-feedback[data-state=success]{border-color:#5a9588;color:#173f35;background:#e6f4ef}
@media(min-width:1800px){:root{--gutter:76px}}
@media(max-width:1100px){.product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.product-detail{gap:30px}.product-description h1{font-size:2.1rem}.catalog-nav{gap:18px}.header-inner{min-height:100px}}
@media(max-width:700px){.catalog-brand{width:min(340px,65%)}.catalog-nav{font-size:.8125rem;gap:16px}.catalog-nav a:first-child{display:none}.header-inner{min-height:88px;gap:14px}.catalog-hero{padding-block:30px}.catalog-hero p:last-child{font-size:1rem}.gallery-toolbar{display:block}.category-filters{gap:18px}.category-filters button{font-size:.875rem}.result-count{padding-bottom:14px}.product-detail{grid-template-columns:minmax(0,1fr);padding-block:0 40px;gap:28px}.product-showcase>svg{aspect-ratio:1.55}.product-description h1{font-size:2rem}.product-description h1 span{font-size:.55em}.product-information{margin-block:22px}.price-button{max-width:none}.footer-inner{flex-wrap:wrap;gap:14px}.dialog-content{padding:22px}.product-inquiry{width:calc(100% - 24px);max-height:calc(100dvh - 24px)}.modal-actions{flex-wrap:wrap}.modal-actions .catalog-button{width:100%}.modal-actions>a{display:block;padding:6px 0}.dialog-header h2{font-size:1.4rem}}
@media(max-width:480px){.product-grid{grid-template-columns:minmax(0,1fr);gap:22px}.product-visual{aspect-ratio:1.5}.gallery-toolbar{margin-top:20px}.category-filters{gap:16px}.category-filters button{font-size:.8125rem}.inquiry-fields-row{grid-template-columns:minmax(0,1fr);gap:16px}.catalog-nav{gap:12px}.catalog-hero h1{font-size:2.4rem}.product-card h3{font-size:1.2rem}}
.product-brand img[src$='.svg']{filter:brightness(0) invert(1)}
.product-visual{background:#fff}
.product-visual>.product-photo{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:contain;padding:24px}
.product-card-copy{display:flex;flex-direction:column;min-height:176px}
.card-summary{font-size:.875rem;color:#5c7078;margin-top:8px;margin-bottom:auto}
.product-showcase{background:#fff}
.product-showcase>.product-photo{display:block;width:100%;height:auto;aspect-ratio:1.16;object-fit:contain;padding:24px}
.product-showcase figcaption{padding-top:12px;border-top:1px solid #e2e9ec}
.product-features{padding:0;list-style:none;margin:20px 0 0;color:#3e5964;font-size:.9375rem;line-height:1.5}
.product-features li{padding:8px 0 8px 16px;border-top:1px solid #d0dfe5;position:relative}
.product-features li::before{content:'–';color:#b31f30;position:absolute;left:0}
.manufacturer-link{display:inline-flex;align-items:center;gap:12px;margin-top:24px;font-size:.8125rem;color:#395f6e;text-decoration:underline;text-underline-offset:4px}
.manufacturer-link .arrow{width:14px;height:14px;min-width:14px;flex-basis:14px}
.empty-category{padding:40px 0 70px;color:#49646f;border-top:1px solid #c8d7dd}
@media(max-width:700px){.product-showcase>.product-photo{aspect-ratio:1.25}.product-card-copy{min-height:168px}}
body:has(.product-inquiry[open]){overflow:hidden}
html{scrollbar-gutter:stable}
@media(max-height:700px){.header-inner{min-height:88px}.catalog-hero{padding-block:24px}.catalog-hero h1{font-size:2.75rem}.catalog-hero p:last-child{font-size:1rem;margin-top:12px}.draft-notice{margin-top:20px}.gallery-toolbar{margin-block:20px}}

.water-category-intro{border-left:3px solid var(--blue);padding:6px 0 8px 22px;margin:0 0 30px;max-width:1040px}
.water-category-intro h2{font-size:clamp(1.3rem,2.2vw,1.8rem);line-height:1.2;margin-bottom:12px}
.water-category-intro p{color:#3e5964;font-size:.9375rem;max-width:95ch}
.water-category-intro .water-application-note{font-size:.8125rem;margin-top:10px}
.product-description>p.water-specialty{font-weight:600;color:#245b70;margin-top:14px;font-size:.9375rem}
.water-examples{padding-block:0 64px;border-top:1px solid #bdcfd6}
.water-examples-intro{padding-top:30px;max-width:1020px}
.water-examples-intro h2{font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.2;margin-bottom:14px}
.water-examples-intro p{font-size:1rem;color:#3e5964}
.water-examples-intro .water-application-note{font-size:.875rem;color:#49646f;margin-top:12px}
.water-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:30px 0 0;gap:24px}
.water-example-grid>li{min-width:0;background:#fff;border:1px solid #cfdbdf}
.water-example-photo{position:relative;aspect-ratio:1.4;background:white}
.water-example-photo>.product-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;padding:22px}
.water-example-copy{padding:20px}
.water-example-copy h3{font-size:1.05rem;line-height:1.3;margin:0 0 9px}
.water-example-copy p{font-size:.875rem;line-height:1.5;color:#49646f}
@media(max-width:1000px){.water-example-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.water-example-grid{grid-template-columns:minmax(0,1fr)}.water-category-intro{padding-left:16px}.water-examples{padding-bottom:40px}.water-example-photo{aspect-ratio:1.5}}

/* One equipment choice, with a quiet row of relevant brand logos. */
.catalog-hero{padding-block:26px 28px}
.catalog-hero h1{font-size:clamp(2.4rem,4vw,3.6rem);letter-spacing:-.03em}
.catalog-lead{display:flex;align-items:baseline;justify-content:space-between;gap:18px;margin-top:12px}
.catalog-lead>p{font-size:1rem;color:#c4d3d9;line-height:1.5}
.setup-planning{color:#8cc3d3;font-size:1.25rem;font-weight:700;line-height:1.35;text-decoration:underline;text-underline-offset:5px;white-space:nowrap}
.setup-planning:hover{color:white}
.header-inner{min-height:96px}
.gallery-toolbar{display:block;margin-block:20px 22px;border:0}
.gallery-filters{display:grid;gap:16px}
.category-filters{display:flex;align-items:center;gap:clamp(24px,4vw,52px);flex-wrap:wrap;border-bottom:1px solid #c5d6dd}
.category-filters button{font-family:'Russo One',Arial,sans-serif;font-size:clamp(1.2rem,2vw,1.6rem);font-weight:400;line-height:1.2;border:0;border-bottom:3px solid transparent;background:transparent;color:#64808d;padding:12px 0 16px;white-space:nowrap}
.category-filters button[aria-pressed=true]{color:#10252d;border-bottom-color:var(--red)}
.category-filters button:hover{color:#10252d}
.brand-filters{display:flex;align-items:center;flex-wrap:wrap;gap:16px clamp(28px,4vw,64px);background:transparent;padding:12px 0;width:100%;max-width:100%}
.brand-filters button{display:flex;align-items:center;justify-content:center;min-height:42px;background:transparent;color:#48626b;border:0;border-bottom:2px solid transparent;padding:6px 4px;opacity:.64;transition:opacity .15s ease}
.brand-filters button:hover,.brand-filters button[aria-pressed=true]{opacity:1}
.brand-filters button[aria-pressed=true]{border-bottom-color:var(--blue);color:var(--ink)}
.brand-filters button[data-brand-filter=all]{font:600 .8125rem/1.3 'Barlow',Arial,sans-serif;margin-right:8px;white-space:nowrap}
.brand-filters button.logo-filter{width:160px;height:60px;padding:10px 4px}
.logo-filter img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.logo-filter img{filter:brightness(0)}
/* Preserve the badge's white lettering and red field. */
.logo-filter img[src$='mahlkoenig.png']{max-width:112px;filter:none}
.brand-filters button.logo-filter[data-brand-filter='mahlkonig']{padding:2px 4px}
.logo-filter img[src$='3m.png']{max-width:44px}
.result-count{font-size:.75rem;color:#55717d;margin-top:16px}
.equipment-group-heading{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.equipment-group-description{max-width:90ch;color:#49646f;font-size:.875rem;margin:0 0 22px}
@media(max-width:700px){
 .catalog-hero{padding-block:22px}.catalog-hero h1{font-size:2.4rem}.header-inner{min-height:88px}
 .catalog-lead{display:block}.catalog-lead>p{font-size:.9375rem}.setup-planning{display:inline-block;margin-top:14px;font-size:1.125rem;white-space:normal}
 .category-filters{gap:28px;flex-wrap:nowrap;justify-content:space-between}.category-filters button{font-size:1.2rem;padding-block:10px 13px}
 .gallery-filters{gap:16px}.brand-filters{width:100%;gap:14px;padding:10px 0}
 .brand-filters button[data-brand-filter=all]{flex:0 0 100%;justify-content:flex-start;min-height:28px;margin:0;font-size:.75rem;border-bottom:0;padding:3px 5px}
 .brand-filters button.logo-filter{width:calc((100% - 28px)/3);height:52px;min-height:52px;padding:8px 4px}
 .result-count{margin-top:12px}
}
@media(prefers-reduced-motion:reduce){.brand-filters button{transition:none}}

@media(min-width:481px) and (max-width:800px){.product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Typography: bold equipment headings, readable labels, minimal controls. */
.brand-filters button[data-brand-filter=all]{font:400 .9375rem/1.3 'Russo One',Arial,sans-serif;letter-spacing:.045em;text-transform:uppercase;min-height:44px;margin-right:6px;padding-inline:0}
.brand-filters button[data-brand-filter=all][aria-pressed=true]{color:var(--ink)}
.catalog-nav{font-weight:700;letter-spacing:.025em}
.catalog-lead{flex-wrap:wrap;gap:16px 30px}
.catalog-lead>p{max-width:65ch;font-size:1.0625rem;font-weight:600}
.result-count{font-size:.8125rem;font-weight:700;letter-spacing:.065em;text-transform:uppercase;color:#47616c}
.product-type{font-size:.8125rem;letter-spacing:.055em;color:#365f6d}
.product-card h3{font-size:clamp(1.125rem,1.35vw,1.3rem);letter-spacing:-.015em}
.view-product{font-size:.9375rem;font-weight:700;letter-spacing:.015em}
.card-summary{font-size:.9375rem;line-height:1.45;color:#4b6570}
.equipment-group-description{font-weight:600;font-size:1rem;line-height:1.5}
.product-description>p.product-local-support{font-size:.9375rem;font-weight:600;color:#28647a;margin-top:14px}
.catalog-service-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:22px;padding-top:18px;border-top:1px solid #26383f;font-weight:600}
.catalog-service-links a{padding-block:4px;color:#c4d3d9}
.catalog-service-links a:hover{color:white;text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.brand-filters button[data-brand-filter=all]{font-size:.875rem;min-height:32px}.catalog-lead>p{font-size:1rem}.catalog-service-links{gap:8px 20px}.product-type{font-size:.75rem}}

.product-description>.manufacturer-link{display:flex;width:fit-content}
