@font-face{font-family:Banner Barlow Condensed;src:url(/fonts/barlow-condensed-semibold.woff2) format("woff2");font-style:normal;font-weight:600;font-display:swap}.WastewaterBannerDemo_demo__SThr9{--ink:#142b43;--muted:#5b6b79;--orange:#ed851c;--edge:#d6dde1;--machine-travel:-36px;position:relative;isolation:isolate;overflow:hidden;min-height:min(760px,calc(100svh - 132px));padding:34px clamp(20px,3vw,52px) 42px;color:var(--ink);background:#edf1f3}.WastewaterBannerDemo_backdrop__oJYz6{position:absolute;z-index:-1;inset:0;background:url(/images/banner-demo/background.webp) 50%/cover no-repeat;opacity:.9}.WastewaterBannerDemo_content___B8BQ{width:min(1740px,100%);min-height:660px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr) minmax(0,1fr);align-items:center;grid-gap:clamp(18px,2vw,36px);gap:clamp(18px,2vw,36px)}.WastewaterBannerDemo_flank__G3hhB{min-width:0;display:flex;align-items:end;justify-content:center;gap:clamp(8px,1vw,18px);align-self:end}.WastewaterBannerDemo_leftFlank__rynRa,.WastewaterBannerDemo_rightFlank__h79e3{padding:0 0 24px}.WastewaterBannerDemo_enteringFlank__bx1uC .WastewaterBannerDemo_pump__Zn4eb{animation:WastewaterBannerDemo_banner-flank-enter__hto_p .75s cubic-bezier(.22,.61,.36,1) backwards}.WastewaterBannerDemo_enteringFlank__bx1uC .WastewaterBannerDemo_pump__Zn4eb:nth-child(2){animation-delay:70ms}.WastewaterBannerDemo_enteringFlank__bx1uC .WastewaterBannerDemo_pump__Zn4eb:nth-child(3){animation-delay:.14s}.WastewaterBannerDemo_enteringFlank__bx1uC .WastewaterBannerDemo_pump__Zn4eb:nth-child(n+4){animation-delay:.21s}@keyframes WastewaterBannerDemo_banner-flank-enter__hto_p{0%{opacity:0;transform:translateX(calc(var(--machine-travel) * .6))}to{opacity:1;transform:translateX(0)}}.WastewaterBannerDemo_demo__SThr9[data-pump-count="5"] .WastewaterBannerDemo_rightFlank__h79e3 .WastewaterBannerDemo_pump__Zn4eb:first-child{flex:.7 1}.WastewaterBannerDemo_demo__SThr9[data-pump-count="5"] .WastewaterBannerDemo_rightFlank__h79e3 .WastewaterBannerDemo_pump__Zn4eb:nth-child(2){flex:1.15 1}.WastewaterBannerDemo_demo__SThr9[data-pump-count="5"] .WastewaterBannerDemo_rightFlank__h79e3 .WastewaterBannerDemo_pump__Zn4eb:nth-child(3){flex:.75 1}.WastewaterBannerDemo_demo__SThr9[data-pump-count="5"] .WastewaterBannerDemo_rightFlank__h79e3 .WastewaterBannerDemo_pump__Zn4eb:nth-child(2).WastewaterBannerDemo_tall__P61iQ .WastewaterBannerDemo_imageFrame__0WdE6{height:530px}.WastewaterBannerDemo_demo__SThr9[data-pump-count="3"] .WastewaterBannerDemo_leftFlank__rynRa .WastewaterBannerDemo_pump__Zn4eb{max-width:190px}.WastewaterBannerDemo_demo__SThr9[data-pump-count="3"] .WastewaterBannerDemo_rightFlank__h79e3 .WastewaterBannerDemo_pump__Zn4eb:first-child{flex:.9 1}.WastewaterBannerDemo_demo__SThr9[data-pump-count="3"] .WastewaterBannerDemo_rightFlank__h79e3 .WastewaterBannerDemo_pump__Zn4eb:last-child{flex:1.1 1}.WastewaterBannerDemo_pump__Zn4eb{min-width:0;flex:1 1;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:14px;text-align:center}.WastewaterBannerDemo_imageFrame__0WdE6{position:relative;width:100%;height:430px}.WastewaterBannerDemo_imageFrame__0WdE6 img{-o-object-fit:contain;object-fit:contain;-o-object-position:center bottom;object-position:center bottom}.WastewaterBannerDemo_pump__Zn4eb[data-pump-id=sf] .WastewaterBannerDemo_imageFrame__0WdE6 img,.WastewaterBannerDemo_pump__Zn4eb[data-pump-id=ss] .WastewaterBannerDemo_imageFrame__0WdE6 img{transform:scale(.9);transform-origin:center bottom}@media (min-width:761px) and (max-width:1020px){.WastewaterBannerDemo_pump__Zn4eb[data-pump-id=sf] .WastewaterBannerDemo_imageFrame__0WdE6 img{transform:scale(2.1)}}@media (min-width:1021px){.WastewaterBannerDemo_pump__Zn4eb[data-pump-id=sf] .WastewaterBannerDemo_imageFrame__0WdE6 img{transform:scale(1.6)}}.WastewaterBannerDemo_tall__P61iQ .WastewaterBannerDemo_imageFrame__0WdE6{height:500px}.WastewaterBannerDemo_medium__71kzK .WastewaterBannerDemo_imageFrame__0WdE6{height:430px}.WastewaterBannerDemo_compact__RLc1b .WastewaterBannerDemo_imageFrame__0WdE6{height:380px}.WastewaterBannerDemo_pumpCaption__rcjvK{position:relative;display:flex;align-items:center;justify-content:center;max-width:100%;height:calc(2.1em + 16px);min-height:calc(2.1em + 16px);padding:7px 8px 9px;text-wrap:balance;border-bottom:1px solid #9caab4;font-family:Banner Barlow Condensed,Inter,sans-serif;font-size:clamp(22px,1.85vw,28px);font-weight:600;letter-spacing:.025em;line-height:1.05;color:#18354c}.WastewaterBannerDemo_pumpCaption__rcjvK:after{content:"";position:absolute;bottom:-2px;width:26px;height:3px;left:calc(50% - 13px);background:#c96817}.WastewaterBannerDemo_center___1wx6{z-index:1;min-width:0;text-align:center;align-self:center;padding:22px 12px 28px}.WastewaterBannerDemo_logos___Kz3r{display:flex;align-items:center;justify-content:center;gap:16px;width:calc(100% + 144px);max-width:640px;position:relative;left:50%;transform:translateX(-50%);margin:0 0 38px}.WastewaterBannerDemo_logos___Kz3r img{display:block;width:calc((100% - 32px) / 3);max-width:200px;flex-shrink:0;height:76px;-o-object-fit:contain;object-fit:contain}.WastewaterBannerDemo_center___1wx6 h1{display:flex;align-items:center;justify-content:center;min-height:2.16em;margin:0;color:var(--ink);font-size:clamp(34px,3.2vw,56px);font-weight:650;line-height:1.08;letter-spacing:-.025em}.WastewaterBannerDemo_actions__8rDeX{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:30px}.WastewaterBannerDemo_actions__8rDeX a{min-height:48px;width:min(100%,270px);display:inline-flex;align-items:center;justify-content:center;padding:11px 18px;border:1px solid var(--ink);border-radius:4px;color:var(--ink);background:rgba(255,255,255,.78);font-size:16px;font-weight:600;line-height:1.2;text-decoration:none;transition:background-color .16s ease,border-color .16s ease}.WastewaterBannerDemo_actions__8rDeX a:hover{background:#fff;border-color:#0b1f35}.WastewaterBannerDemo_actions__8rDeX .WastewaterBannerDemo_primaryAction__Yp4JX{background:var(--orange);border-color:var(--orange);color:#1d2830}.WastewaterBannerDemo_actions__8rDeX .WastewaterBannerDemo_primaryAction__Yp4JX:hover{background:#df7812;border-color:#df7812}.WastewaterBannerDemo_actions__8rDeX .WastewaterBannerDemo_phoneAction__6pLhR{min-height:48px;border-color:#6b7b88;background:rgba(255,255,255,.78);font-size:18px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.WastewaterBannerDemo_actions__8rDeX a:focus-visible,.WastewaterBannerDemo_mobileActions__MT0TR a:focus-visible,.WastewaterBannerDemo_mobileContact____WEa a:focus-visible{outline:3px solid #1e5d92;outline-offset:3px}.WastewaterBannerDemo_mobileActions__MT0TR,.WastewaterBannerDemo_mobileContact____WEa,.WastewaterBannerDemo_mobileRailHint__mp2iD{display:none}@media (max-width:1020px) and (min-width:761px){.WastewaterBannerDemo_content___B8BQ{grid-template-columns:repeat(2,minmax(0,1fr));min-height:0}.WastewaterBannerDemo_center___1wx6{grid-column:1/-1;grid-row:1}.WastewaterBannerDemo_demo__SThr9{padding-inline:20px}.WastewaterBannerDemo_content___B8BQ{gap:12px}.WastewaterBannerDemo_imageFrame__0WdE6{height:360px}.WastewaterBannerDemo_demo__SThr9[data-pump-count="5"] .WastewaterBannerDemo_rightFlank__h79e3 .WastewaterBannerDemo_pump__Zn4eb:nth-child(2).WastewaterBannerDemo_tall__P61iQ .WastewaterBannerDemo_imageFrame__0WdE6,.WastewaterBannerDemo_tall__P61iQ .WastewaterBannerDemo_imageFrame__0WdE6{height:430px}.WastewaterBannerDemo_compact__RLc1b .WastewaterBannerDemo_imageFrame__0WdE6{height:320px}.WastewaterBannerDemo_pumpCaption__rcjvK{font-size:27px}.WastewaterBannerDemo_center___1wx6 h1{font-size:clamp(38px,4vw,50px)}.WastewaterBannerDemo_logos___Kz3r{margin-bottom:26px}}@media (max-width:760px){.WastewaterBannerDemo_demo__SThr9{--machine-travel:-16px;min-height:0;overflow:visible;padding:20px 16px calc(100px + env(safe-area-inset-bottom))}.WastewaterBannerDemo_backdrop__oJYz6{opacity:.45}.WastewaterBannerDemo_content___B8BQ,.WastewaterBannerDemo_demo__SThr9 .WastewaterBannerDemo_content___B8BQ{min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;grid-gap:24px 12px;gap:24px 12px}.WastewaterBannerDemo_center___1wx6{order:-1;grid-column:1/-1;width:100%;padding:4px 0}.WastewaterBannerDemo_logos___Kz3r{width:100%;gap:8px;margin-bottom:24px}.WastewaterBannerDemo_logos___Kz3r img{width:calc((100% - 16px) / 3);max-width:126px;height:54px}.WastewaterBannerDemo_center___1wx6 h1{font-size:clamp(30px,8vw,42px);line-height:1.05}.WastewaterBannerDemo_actions__8rDeX{display:none}.WastewaterBannerDemo_mobileContact____WEa{display:block;margin:0 0 18px;text-align:center;font-size:14px}.WastewaterBannerDemo_mobileContact____WEa a{color:var(--ink);text-underline-offset:3px}.WastewaterBannerDemo_flank__G3hhB{display:flex;justify-content:flex-start;align-items:flex-end;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#768e9f #e0e7eb;padding:0 0 10px;gap:12px}.WastewaterBannerDemo_demo__SThr9[data-pump-count] .WastewaterBannerDemo_flank__G3hhB .WastewaterBannerDemo_pump__Zn4eb:nth-child(n){flex:0 0 100%;width:100%;max-width:none;scroll-snap-align:start;scroll-snap-stop:always}.WastewaterBannerDemo_pumpLink__RLMa9:focus-visible{outline-offset:-3px}.WastewaterBannerDemo_mobileRailHint__mp2iD{display:block;grid-column:1/-1;visibility:hidden;min-height:20px;margin:0;color:#455d70;font-size:12px;line-height:20px;text-align:center}.WastewaterBannerDemo_demo__SThr9[data-pump-count="3"] .WastewaterBannerDemo_mobileRailHint__mp2iD,.WastewaterBannerDemo_demo__SThr9[data-pump-count="5"] .WastewaterBannerDemo_mobileRailHint__mp2iD{visibility:visible}.WastewaterBannerDemo_pump__Zn4eb{width:100%;gap:8px}.WastewaterBannerDemo_demo__SThr9[data-pump-count="3"] .WastewaterBannerDemo_leftFlank__rynRa .WastewaterBannerDemo_pump__Zn4eb{max-width:none}.WastewaterBannerDemo_compact__RLc1b .WastewaterBannerDemo_imageFrame__0WdE6,.WastewaterBannerDemo_demo__SThr9[data-pump-count="5"] .WastewaterBannerDemo_rightFlank__h79e3 .WastewaterBannerDemo_pump__Zn4eb:nth-child(2).WastewaterBannerDemo_tall__P61iQ .WastewaterBannerDemo_imageFrame__0WdE6,.WastewaterBannerDemo_imageFrame__0WdE6,.WastewaterBannerDemo_medium__71kzK .WastewaterBannerDemo_imageFrame__0WdE6,.WastewaterBannerDemo_tall__P61iQ .WastewaterBannerDemo_imageFrame__0WdE6{height:clamp(180px,54vw,224px)}.WastewaterBannerDemo_pumpCaption__rcjvK{font-size:24px;padding-inline:8px}.WastewaterBannerDemo_mobileActions__MT0TR{position:fixed;z-index:1000;left:0;right:0;bottom:0;display:none;grid-template-columns:1fr 1fr;gap:10px;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:rgba(245,247,248,.96);border-top:1px solid var(--edge);backdrop-filter:blur(10px)}.WastewaterBannerDemo_mobileActions__MT0TR a{min-height:48px;display:flex;align-items:center;justify-content:center;padding:10px 8px;border:1px solid var(--ink);border-radius:4px;color:var(--ink);background:#fff;font-size:14px;font-weight:650;text-decoration:none}.WastewaterBannerDemo_mobileActions__MT0TR .WastewaterBannerDemo_mobileZalo__cx3W9{border-color:var(--orange);background:var(--orange);color:#1d2830}}@media (max-width:360px){.WastewaterBannerDemo_demo__SThr9{padding-inline:12px}.WastewaterBannerDemo_pumpCaption__rcjvK{font-size:21px}.WastewaterBannerDemo_logos___Kz3r{gap:4px}.WastewaterBannerDemo_logos___Kz3r img{width:calc((100% - 8px) / 3);height:38px}}.WastewaterBannerDemo_pumpLink__RLMa9{display:flex;flex-direction:column;align-items:center;gap:14px;width:100%;color:inherit;text-decoration:none;border-radius:4px}.WastewaterBannerDemo_pumpLink__RLMa9 .WastewaterBannerDemo_imageFrame__0WdE6{transform-origin:center bottom;transition:transform .22s ease}.WastewaterBannerDemo_pump__Zn4eb:focus-within{position:relative;z-index:2}.WastewaterBannerDemo_pumpLink__RLMa9:focus-visible{outline:3px solid #1e5d92;outline-offset:6px}.WastewaterBannerDemo_pumpLink__RLMa9:focus-visible .WastewaterBannerDemo_imageFrame__0WdE6{transform:scale(1.06)}.WastewaterBannerDemo_pumpLink__RLMa9:focus-visible .WastewaterBannerDemo_pumpCaption__rcjvK{text-decoration:underline;text-underline-offset:4px}@media (hover:hover) and (pointer:fine){.WastewaterBannerDemo_pump__Zn4eb:hover{position:relative;z-index:2}.WastewaterBannerDemo_pumpLink__RLMa9:hover .WastewaterBannerDemo_imageFrame__0WdE6{transform:scale(1.06)}.WastewaterBannerDemo_pumpLink__RLMa9:hover .WastewaterBannerDemo_pumpCaption__rcjvK{text-decoration:underline;text-underline-offset:4px}}@media (max-width:760px){.WastewaterBannerDemo_pumpLink__RLMa9{gap:8px}.WastewaterBannerDemo_pumpLink__RLMa9:focus-visible{outline-offset:-3px}.WastewaterBannerDemo_pumpLink__RLMa9:focus-visible .WastewaterBannerDemo_imageFrame__0WdE6{transform:none}}@media (prefers-reduced-motion:reduce){.WastewaterBannerDemo_enteringFlank__bx1uC .WastewaterBannerDemo_pump__Zn4eb{animation:none}.WastewaterBannerDemo_pumpLink__RLMa9 .WastewaterBannerDemo_imageFrame__0WdE6{transition:none}}.BannerCarousel_carousel__mJ02X{width:100%}.BannerCarousel_toolbar__Php07{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 18px;max-width:1740px;margin:0 auto;padding:12px clamp(16px,3vw,52px);color:#263e52;background:#f7f8f8;border-bottom:1px solid #d6dde1}.BannerCarousel_notice__iuIav{flex:0 0 auto;margin:0;color:#526575;font-size:13px;line-height:1.4}.BannerCarousel_status__Qsp1d{flex:1 0 100%;min-width:0;min-height:1.4em;margin:0;color:#526575;font-size:13px;line-height:1.4;text-align:center;overflow-wrap:anywhere}.BannerCarousel_groupSelector__P27Im,.BannerCarousel_transport__a0i_U{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.BannerCarousel_transport__a0i_U{flex:0 0 auto}.BannerCarousel_controlButton__kJHz6{display:inline-flex;align-items:center;min-height:44px;padding:8px 14px;border:1px solid #8998a4;border-radius:4px;color:#263e52;background:#fff;font:inherit;font-size:14px;line-height:1.3;cursor:pointer;text-decoration:none}.BannerCarousel_controlButton__kJHz6:hover{color:#142b43;background:#edf1f3}.BannerCarousel_controlButton__kJHz6[aria-pressed=true]{color:#fff;background:#142b43;border-color:#142b43}.BannerCarousel_controlButton__kJHz6:focus-visible{outline:3px solid #1e5d92;outline-offset:3px}.BannerCarousel_transport__a0i_U{gap:0}.BannerCarousel_dot__WN_yJ,.BannerCarousel_playToggle__vKqso{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;border-radius:4px;color:#263e52;background:transparent;cursor:pointer}.BannerCarousel_dot__WN_yJ span{display:block;width:10px;height:10px;border-radius:50%;background:#b8c3cb;transition:background-color .3s ease,transform .3s ease}.BannerCarousel_dot__WN_yJ:hover span{background:#8998a4}.BannerCarousel_dot__WN_yJ[aria-current=true] span{background:#da6b1b;transform:scale(1.3)}.BannerCarousel_playToggle__vKqso{margin-left:4px}.BannerCarousel_playToggle__vKqso:hover{background:#edf1f3}.BannerCarousel_dot__WN_yJ:focus-visible,.BannerCarousel_playToggle__vKqso:focus-visible{outline:3px solid #1e5d92;outline-offset:-3px}@media (prefers-reduced-motion:reduce){.BannerCarousel_dot__WN_yJ span{transition:none}}@media (max-width:760px){.BannerCarousel_toolbar__Php07{align-items:stretch;flex-direction:column;padding:10px 12px}.BannerCarousel_groupSelector__P27Im{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.BannerCarousel_controlButton__kJHz6{padding-inline:10px}.BannerCarousel_transport__a0i_U{justify-content:center}}