:root{--forest:#123d42;--night:#0b3035;--green:#1a6261;--mint:#d4ece4;--mist:#eef4f0;--cream:#faf9f5;--ink:#173f43;--grey:#687879}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font-family:'DM Sans',sans-serif}a{text-decoration:none;color:inherit}button{cursor:pointer}.container{width:min(1320px,calc(100% - 100px));margin:auto}.concept-note{background:#d4eadf;color:#245a54;height:27px;padding:6px 50px;font:700 10px 'Plus Jakarta Sans',sans-serif;letter-spacing:.15em}.concept-note span{float:right}.site-header{height:84px;background:#fff;position:relative;z-index:10}.header-inner{display:flex;align-items:center;height:100%;gap:55px}.logo{display:flex;align-items:center;gap:8px;color:#153e43}.logo svg{width:37px;height:37px;color:#2a8d85}.logo>span{font:800 20px/.9 'Plus Jakarta Sans',sans-serif;letter-spacing:.08em}.logo small,.footer-brand small{display:block;font-size:8px;letter-spacing:.4em;margin-top:6px}.site-header nav{display:flex;gap:32px;margin-left:auto}.site-header nav a{font-size:12px;font-weight:700;color:#52686a}.site-header nav a:hover,.site-header nav .active{color:#13766f}.header-button{background:var(--night);color:#fff;padding:16px 19px;font-size:11px;font-weight:700;white-space:nowrap}.header-button span{margin-left:22px}.menu{display:none}.hero{height:632px;position:relative;background:#163e42;overflow:hidden;color:#fff}.hero-image{position:absolute;inset:0;background-image:url('assets/water-treatment-concept.png');background-size:cover;background-position:center 52%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#092b30ec 0%,#092b30d2 29%,#092b30a0 47%,#092b3020 74%),linear-gradient(0deg,#092b306d 0%,transparent 30%)}.hero-inner{height:100%;position:relative;display:flex;flex-direction:column;justify-content:center}.hero-content{max-width:670px;margin-top:-20px}.kicker,.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:800;color:#1c857b}.kicker{color:#bde7d7;display:flex;align-items:center;gap:12px}.kicker i{width:22px;height:1px;background:#bde7d7}.hero h1{font:700 clamp(58px,5.35vw,83px)/1.12 'Plus Jakarta Sans',sans-serif;letter-spacing:-.065em;margin:29px 0 20px}.hero h1 em,.section h2 em,.approach h2 em{font:italic 400 1em Georgia,serif;letter-spacing:-.055em;color:#c5e6d7}.hero p{font-size:16px;line-height:1.8;color:#e1eae5;max-width:475px;margin:0}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:35px}.btn{display:inline-flex;align-items:center;gap:45px;padding:19px 23px;font-size:12px;font-weight:800}.btn-light{background:#e8f1e9;color:#143c3e}.btn span{font-size:17px}.hero-video{font-size:12px;font-weight:700;display:flex;align-items:center;gap:11px}.hero-video span{width:39px;height:39px;border:1px solid #bcd5cf;border-radius:50%;display:grid;place-items:center;font-size:18px}.hero-caption{position:absolute;bottom:30px;left:0;right:0;display:flex;justify-content:space-between;color:#d0ddd9;font-size:9px;letter-spacing:.16em;font-weight:700}.trust-strip{background:#f0f5f0;border-bottom:1px solid #e0e9e2}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr);min-height:118px;align-items:center}.trust-grid>div{display:flex;flex-direction:column;gap:8px;padding-left:26px;border-left:1px solid #ceddd4}.trust-grid>div:first-child{padding-left:0;border:0}.trust-grid strong{font:700 21px 'Plus Jakarta Sans',sans-serif;letter-spacing:-.04em}.trust-grid span{font-size:11px;color:#6d807b}.section{padding:112px 0}.about{background:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.about-visual{height:500px;position:relative;padding:0 75px 40px 0}.about-visual .photo{width:100%;height:100%;background:url('assets/water-treatment-concept.png') 35% center/cover;filter:saturate(.75)}.image-label{position:absolute;bottom:0;right:0;background:#dbece4;padding:28px 30px;width:280px;box-shadow:0 20px 35px #122d3021}.image-label b{display:block;font-size:11px;letter-spacing:.1em}.image-label span{font-size:12px;color:#6c807c;display:block;margin-top:8px}.decor-circle{position:absolute;width:130px;height:130px;border:1px solid #accac1;border-radius:50%;top:-28px;left:-29px;z-index:1}.about-content h2,.section-heading h2,.contact h2{font:700 clamp(42px,3.7vw,56px)/1.18 'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em;margin:21px 0 27px}.section h2 em{color:#3e897d}.about-content p{color:#687a79;line-height:1.85;font-size:14px;max-width:520px}.line-link{display:inline-flex;gap:37px;align-items:center;border-bottom:1px solid #23877d;padding:9px 0;font-size:12px;font-weight:800;color:#176d68;margin-top:17px}.line-link span{font-size:17px}.solutions{background:#f3f6f1}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:38px}.section-heading h2{margin-bottom:0}.section-heading p{max-width:340px;color:#74817b;font-size:13px;line-height:1.8;margin-bottom:8px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.service-card{background:#fff;overflow:hidden;border:1px solid #e5ebe4}.service-index{display:block;padding:24px 25px 0;font-size:10px;font-weight:800;letter-spacing:.16em;color:#288d83}.service-graphic{height:225px;position:relative;display:grid;place-items:center;background:radial-gradient(circle,#e4f0e9 0,#f6f9f5 60%,#fff 100%);overflow:hidden}.graphic-one .tank{position:absolute;top:48px;width:64px;height:124px;border:2px solid #55958e;border-radius:33px 33px 13px 13px;background:linear-gradient(90deg,#d5e8e3,#f9fffd 40%,#9cc9c2);box-shadow:8px 12px 14px #2b605320}.graphic-one .t1{left:38%}.graphic-one .t2{left:54%;top:58px;height:114px}.graphic-one .pipe{position:absolute;top:63px;left:36%;width:44%;height:77px;border-top:4px solid #78aaa3;border-right:4px solid #78aaa3;border-radius:0 12px 0 0}.graphic-two .drop{width:113px;height:144px;border-radius:85% 0 80% 80%;transform:rotate(-45deg);background:linear-gradient(135deg,#9ecdc2,#effaf4 65%,#60a99f);box-shadow:inset -12px -12px 18px #257c721d,15px 22px 28px #285c4f20;z-index:1}.graphic-two .halo{position:absolute;width:210px;height:210px;border:1px solid #abcfc6;border-radius:50%}.graphic-three .basin{position:absolute;bottom:38px;width:195px;height:75px;background:linear-gradient(#c4e5d9,#91c9bc);border:2px solid #79aca0;border-radius:5px 5px 80px 80px}.graphic-three .rain{position:absolute;top:35px;width:10px;height:24px;border-radius:60% 0 60% 60%;background:#7fb8aa;transform:rotate(-45deg)}.graphic-three .r1{left:39%}.graphic-three .r2{left:52%;top:49px}.graphic-three .r3{left:62%;top:30px}.service-body{padding:22px 25px 27px;position:relative}.service-body h3{font:700 19px 'Plus Jakarta Sans',sans-serif;letter-spacing:-.045em;margin:0 0 10px}.service-body p{font-size:12px;color:#778680;line-height:1.7;max-width:260px;margin:0}.circle-arrow{position:absolute;right:22px;bottom:30px;border:1px solid #c8ddd4;border-radius:50%;width:31px;height:31px;display:grid;place-items:center;color:#226e67}.section-tail{text-align:center;margin-top:28px}.approach{background:#0d3438;color:#fff;padding:100px 0;position:relative;overflow:hidden}.approach:after{content:'';width:570px;height:570px;border-radius:50%;border:1px solid #c5e6d521;position:absolute;right:-200px;top:-180px;box-shadow:0 0 0 90px #c5e6d508,0 0 0 180px #c5e6d506}.approach-inner{display:grid;grid-template-columns:1fr 1fr;gap:130px;position:relative;z-index:1}.eyebrow.light{color:#a2d8ca}.approach h2{font:700 clamp(40px,4vw,60px)/1.18 'Plus Jakarta Sans',sans-serif;letter-spacing:-.06em;margin:22px 0}.approach p{color:#bbd0ca;max-width:420px;font-size:14px;line-height:1.8}.approach .btn{margin-top:18px}.approach-steps{border-top:1px solid #6e9290;padding-top:10px}.approach-steps div{display:grid;grid-template-columns:46px 1fr;gap:6px 20px;padding:22px 0;border-bottom:1px solid #6385805c}.approach-steps div span{grid-row:1/3;color:#a0d1c2;font-size:12px}.approach-steps strong{font:700 17px 'Plus Jakarta Sans',sans-serif}.approach-steps small{color:#a6c0b9;font-size:11px}.contact{background:#fff}.contact-grid{display:grid;grid-template-columns:1fr 300px;gap:100px;align-items:center}.contact h2{margin-bottom:20px}.contact p{color:#71827b;font-size:14px;max-width:440px;line-height:1.8}.contact-action{height:205px;background:#dcefe4;display:flex;flex-direction:column;justify-content:space-between;padding:26px}.contact-action>span:first-child{font-size:10px;letter-spacing:.18em;font-weight:800;color:#2b7970}.contact-action strong{font:700 24px 'Plus Jakarta Sans',sans-serif;letter-spacing:-.06em}.contact-arrow{align-self:end;font-size:30px}footer{background:#082d32;color:#b2c9c1;padding:38px 0}.footer-inner{display:flex;align-items:center;gap:45px}.footer-brand{font:800 17px 'Plus Jakarta Sans',sans-serif;letter-spacing:.1em;color:#fff}.footer-inner p{font-size:12px}.footer-inner>span{margin-left:auto;font-size:9px;letter-spacing:.12em}@media(max-width:1050px){.container{width:calc(100% - 56px)}.site-header nav{gap:17px}.header-inner{gap:20px}.header-button{display:none}.about-grid,.approach-inner{gap:55px}}@media(max-width:760px){.container{width:calc(100% - 36px)}.concept-note{padding:7px 18px}.site-header{height:68px}.logo>span{font-size:17px}.logo svg{width:30px}.menu{display:flex;flex-direction:column;gap:5px;margin-left:auto;padding:10px;border:0;background:transparent}.menu span{height:2px;width:23px;background:#123d42}.site-header nav{display:none;position:absolute;top:68px;left:0;right:0;background:#fff;padding:12px 20px 22px;box-shadow:0 15px 20px #0002}.site-header nav.open{display:flex;flex-direction:column;gap:0}.site-header nav a{padding:12px;border-bottom:1px solid #e3eee8}.hero{height:650px}.hero-image{background-position:54% center}.hero-shade{background:linear-gradient(90deg,#092b30eb,#092b30a5 75%,#092b307d),linear-gradient(0deg,#092b3090,transparent 40%)}.hero-content{margin-top:-35px}.hero h1{font-size:clamp(48px,9vw,70px)}.hero p{font-size:14px;max-width:400px}.hero-caption{font-size:8px}.trust-grid{grid-template-columns:1fr 1fr;padding:24px 0;gap:24px}.trust-grid>div,.trust-grid>div:first-child{border-left:1px solid #ceddd4;padding-left:14px}.trust-grid strong{font-size:17px}.section{padding:72px 0}.about-grid,.approach-inner,.contact-grid{grid-template-columns:1fr;gap:42px}.about-visual{height:360px;max-width:550px}.about-content h2,.section-heading h2,.contact h2{font-size:42px}.section-heading{align-items:start;flex-direction:column;gap:8px}.service-grid{grid-template-columns:1fr 1fr}.service-grid article:last-child{grid-column:1/-1}.service-graphic{height:180px}.approach{padding:75px 0}.contact-action{max-width:420px}.footer-inner{flex-wrap:wrap;gap:15px}.footer-inner>span{margin-left:0;width:100%}}@media(max-width:510px){.hero{height:650px}.hero h1{font-size:48px}.hero-actions{align-items:flex-start;flex-direction:column;gap:22px}.hero-caption span:last-child{display:none}.trust-grid{gap:22px 9px}.trust-grid strong{font-size:15px}.trust-grid span{font-size:10px}.about-visual{height:290px;padding-right:40px}.image-label{width:210px;padding:20px}.image-label b{font-size:9px}.image-label span{font-size:10px}.decor-circle{width:75px;height:75px;left:-9px;top:-14px}.about-content h2,.section-heading h2,.contact h2{font-size:38px}.service-grid{grid-template-columns:1fr}.service-grid article:last-child{grid-column:auto}.service-graphic{height:190px}.approach h2{font-size:40px}.contact-grid{gap:22px}.footer-inner p{width:100%;margin:0}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Full-screen carousel and sticky navigation */
.site-header{position:sticky;top:0;z-index:100;box-shadow:0 1px 0 #dce7e0}
html{scroll-padding-top:84px}
.carousel{height:calc(100vh - 84px);height:calc(100svh - 84px);min-height:560px;max-height:1080px;isolation:isolate}
.slides,.slide{position:absolute;inset:0}
.slide{background-image:var(--slide-image);background-size:cover;background-position:center;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s ease;pointer-events:none}
.slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}
.slide-inner{height:100%;position:relative;display:flex;flex-direction:column;justify-content:center}
.slide .hero-content{position:relative;z-index:2;max-width:740px;margin-top:-18px}
.slide .hero-shade{background:linear-gradient(90deg,#092b30f5 0%,#092b30dd 27%,#092b30a8 51%,#092b3040 82%),linear-gradient(0deg,#092b3080,transparent 25%)}
.slide .hero-caption{bottom:35px;padding-right:120px}
.carousel-controls{position:absolute;z-index:5;left:50%;bottom:25px;transform:translateX(-50%);display:flex;justify-content:space-between;pointer-events:none}
.carousel-controls>*{pointer-events:auto}
.carousel-pagination{display:flex;align-items:center;gap:8px}
.dot{width:35px;height:28px;padding:10px 1px;background:transparent;border:0}
.dot span{display:block;height:2px;background:#ffffff80;width:100%;transition:background .2s}
.dot.is-active span{background:#e7fff3}
.carousel-arrows{display:flex;gap:9px}
.carousel-arrow{width:38px;height:38px;border:1px solid #ffffff94;border-radius:50%;background:#092b3040;color:#fff;font-size:17px}
.carousel-arrow:hover,.carousel-arrow:focus-visible{background:#e8f1e9;color:#153b3c}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:760px){html{scroll-padding-top:68px}.carousel{height:calc(100vh - 68px);height:calc(100svh - 68px);min-height:570px;max-height:none}.slide{background-position:56% center}.slide .hero-shade{background:linear-gradient(90deg,#092b30eb,#092b30bd 70%,#092b3080),linear-gradient(0deg,#092b3094,transparent 40%)}.slide .hero-content{margin-top:-44px}.slide .hero-caption{bottom:88px;padding-right:0}.carousel-controls{bottom:24px}.carousel-arrow{width:42px;height:42px}}
@media(max-width:510px){.carousel{min-height:560px}.slide .hero-content{margin-top:-28px}.slide .hero-caption{bottom:84px}.slide .hero-caption span:last-child{display:none}.slide .hero-shade{background:linear-gradient(90deg,#092b30e8,#092b30b8 75%,#092b3090),linear-gradient(0deg,#092b30a3,transparent 45%)}.slide h1{font-size:clamp(39px,11.3vw,48px)}.slide p{font-size:13px;line-height:1.7}.slide .hero-actions{gap:16px;margin-top:25px}.slide .btn{padding:15px 18px}.slide .hero-video span{width:33px;height:33px}}
@media(max-height:650px){.carousel{min-height:500px}.slide h1{font-size:clamp(38px,5vw,65px);margin:16px 0}.slide .hero-actions{margin-top:20px}.slide .hero-content{margin-top:-18px}}
@media(prefers-reduced-motion:reduce){.slide{transition:none}}
/* Keep the first screen to the header and hero even on short displays. */
.carousel{min-height:0}
@media(max-width:760px){.carousel{min-height:0}}
@media(max-width:510px){.carousel{min-height:0}}
@media(max-height:650px){.carousel{min-height:0}.slide .hero-caption{display:none}.slide .hero-content{margin-top:-25px}.slide .hero-video{display:none}}
@media(max-height:520px){.slide h1{font-size:36px}.slide p{font-size:12px;line-height:1.45}.slide .hero-content{margin-top:-12px}.slide .hero-actions{margin-top:12px}.slide .btn{padding:10px 15px}.kicker{font-size:8px}}
/* Keep slide label clear of carousel pagination at every width. */
.slide .hero-caption{bottom:92px}
@media(max-width:760px){.slide .hero-caption{bottom:96px}}
@media(max-width:510px){.slide .hero-caption{bottom:94px}}
/* Approved-logo concept: retain the mark's own lettering and tagline. */
.site-header .logo img{display:block;width:auto;height:60px;max-width:235px}
.footer-logo{background:#fff;padding:8px 12px;display:flex;align-items:center}
.footer-logo img{display:block;width:210px;height:auto}
@media(max-width:760px){.site-header .logo img{height:48px;max-width:180px}}
@media(max-width:510px){.site-header .logo img{height:42px;max-width:158px}.footer-logo img{width:180px}}
/* Products menu */
.site-header nav .nav-products{position:relative;display:flex;align-items:center;height:84px}
.nav-products summary{list-style:none;cursor:pointer;font-size:12px;font-weight:700;color:#52686a;white-space:nowrap;display:flex;align-items:center;gap:8px}
.nav-products summary::-webkit-details-marker{display:none}
.nav-products summary:hover,.nav-products[open] summary{color:#13766f}
.nav-products .chevron{height:7px;width:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-top:-4px}
.product-submenu{position:absolute;display:none;top:84px;left:-23px;width:340px;padding:11px;background:#fff;box-shadow:0 18px 34px #082d3230;border-top:3px solid #158d85;z-index:120}
.site-header nav .product-submenu a{display:block;padding:12px 13px;font-size:12px;font-weight:600;line-height:1.45;color:#4e6768;border-bottom:1px solid #edf1ee}
.site-header nav .product-submenu a:last-child{border-bottom:0}
.site-header nav .product-submenu a:hover,.site-header nav .product-submenu a:focus-visible{background:#edf6f1;color:#0d716e}
@media(min-width:761px){.nav-products:hover .product-submenu,.nav-products:focus-within .product-submenu,.nav-products[open] .product-submenu{display:block}}
@media(max-width:760px){.site-header nav .nav-products{height:auto;display:block;border-bottom:1px solid #e3eee8}.nav-products summary{padding:12px;font-size:14px;justify-content:space-between}.product-submenu{position:static;width:auto;padding:0 0 8px 10px;box-shadow:none;border:0;background:#f7faf7}.site-header nav .nav-products[open] .product-submenu{display:block}.site-header nav .product-submenu a{font-size:13px;padding:11px 12px}.site-header nav.open{max-height:calc(100svh - 68px);overflow-y:auto}}
/* Destination list for the seven referenced products. */
.product-range{margin-top:70px;border-top:1px solid #d7e5dd;padding-top:38px}
.product-range-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:20px}
.product-range-heading h3{margin:0;font:700 28px 'Plus Jakarta Sans',sans-serif;letter-spacing:-.05em}
.product-range-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.product-range-grid article{background:#fff;border:1px solid #e2ebe4;padding:19px 20px;display:grid;grid-template-columns:34px 1fr auto;gap:16px;align-items:center;scroll-margin-top:110px;min-height:76px}
.product-range-grid article>span{font-size:11px;color:#339082;font-weight:800}
.product-range-grid h4{margin:0;font:700 14px 'Plus Jakarta Sans',sans-serif;letter-spacing:-.025em}
.product-range-grid article>a{font-size:11px;font-weight:800;color:#13766f;white-space:nowrap}
.product-range-grid article>a:hover{text-decoration:underline}
@media(max-width:1050px){.site-header nav{gap:12px}.site-header nav>a,.nav-products summary{font-size:11px}.site-header .logo img{max-width:198px;height:52px}}
@media(max-width:760px){.product-range-grid{grid-template-columns:1fr}.product-range-grid article{scroll-margin-top:82px}.site-header .logo img{height:48px}}
@media(max-width:510px){.product-range-heading{display:block}.product-range-heading h3{margin-top:12px;font-size:24px}.product-range-grid article{grid-template-columns:22px 1fr;gap:10px}.product-range-grid article>a{grid-column:2}.site-header .logo img{height:42px}}
/* Keep every top-level item vertically centred in the sticky header. */
.site-header nav{align-items:center;height:100%;flex-wrap:nowrap}
.site-header nav>a,.nav-products summary{white-space:nowrap}
.site-header nav .nav-products{flex:0 0 auto}
@media(max-width:1480px){.header-inner{gap:24px}.site-header nav{gap:19px}.header-button{padding:15px 15px}.header-button span{margin-left:10px}}
@media(max-width:1280px){.header-button{display:none}.site-header nav{gap:17px}}
@media(max-width:950px){.site-header .menu{display:flex;flex-direction:column;gap:5px;margin-left:auto;padding:10px;border:0;background:transparent}.site-header .menu span{height:2px;width:23px;background:#123d42}.site-header nav{display:none;position:absolute;top:84px;left:0;right:0;height:auto;background:#fff;padding:12px 28px 22px;box-shadow:0 15px 20px #0002;align-items:stretch;max-height:calc(100svh - 84px);overflow-y:auto}.site-header nav.open{display:flex;flex-direction:column;gap:0}.site-header nav>a{padding:12px;border-bottom:1px solid #e3eee8;font-size:14px}.site-header nav .nav-products{height:auto;display:block;border-bottom:1px solid #e3eee8}.nav-products summary{padding:12px;font-size:14px;justify-content:space-between}.product-submenu{position:static;width:auto;padding:0 0 8px 10px;box-shadow:none;border:0;background:#f7faf7}.site-header nav .nav-products[open] .product-submenu{display:block}.site-header nav .product-submenu a{font-size:13px;padding:11px 12px}.site-header nav .nav-products:hover:not([open]) .product-submenu{display:none}}
@media(max-width:760px){.site-header nav{top:68px;max-height:calc(100svh - 68px);padding:12px 20px 22px}}
.why-section{background:#fff}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.why-grid article{padding:30px;background:#f4f8f4;border:1px solid #e4ede6;min-height:210px}.why-grid article>span{font-size:11px;color:#368d82;font-weight:800}.why-grid h3{font:700 18px 'Plus Jakarta Sans',sans-serif;letter-spacing:-.04em;margin:25px 0 10px}.why-grid p{font-size:12px;line-height:1.75;color:#6e817b;margin:0}
.gallery-section{background:#f1f6f1}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.gallery-grid figure{margin:0;background:#fff}.gallery-grid img{display:block;width:100%;height:245px;object-fit:cover}.gallery-grid figcaption{padding:18px;font-size:13px;font-weight:800;display:flex;flex-direction:column;gap:5px}.gallery-grid figcaption span{font-size:9px;letter-spacing:.13em;color:#679086}
.clients-section{background:#fff}.clients-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.clients-grid h2{font:700 clamp(40px,4vw,56px)/1.18 'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em;margin:20px 0}.clients-grid h2 em{font:italic 400 1em Georgia,serif;color:#3e897d}.clients-grid p{font-size:14px;color:#6e817b;line-height:1.8;max-width:480px}.client-sectors{display:grid;grid-template-columns:1fr 1fr;gap:12px}.client-sectors span{padding:22px 18px;border:1px solid #dce9e1;background:#f9fbf8;font:700 13px 'Plus Jakarta Sans',sans-serif}
@media(max-width:760px){.why-grid,.gallery-grid{grid-template-columns:1fr 1fr}.gallery-grid figure:last-child{grid-column:1/-1}.clients-grid{grid-template-columns:1fr;gap:25px}}
@media(max-width:510px){.why-grid,.gallery-grid,.client-sectors{grid-template-columns:1fr}.gallery-grid figure:last-child{grid-column:auto}.gallery-grid img{height:220px}.why-grid article{min-height:0}}
/* Consultation CTA remains visible at desktop widths after menu simplification. */
.site-header nav .menu-consultation{display:none}
@media(min-width:951px){.site-header .header-button{display:inline-flex;align-items:center;justify-content:space-between;gap:10px;flex:0 0 auto}.site-header nav{gap:25px}.header-inner{gap:28px}}
@media(max-width:1200px) and (min-width:951px){.site-header nav{gap:17px}.site-header .logo img{height:48px;max-width:185px}.site-header .header-button{padding:14px 12px;font-size:10px}}
@media(max-width:950px){.site-header .header-button{display:none}.site-header nav .menu-consultation{display:flex;align-items:center;justify-content:space-between;margin-top:15px;padding:16px 17px;background:#0b3035;color:#fff;border:0;font-size:12px;font-weight:800}.site-header nav .menu-consultation:hover{background:#195c61;color:#fff}}
/* Magazine feature shown on every page load. */
.feature-modal[hidden]{display:none!important}
.feature-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:22px}
.feature-backdrop{position:absolute;inset:0;background:#09282fe0;backdrop-filter:blur(6px)}
.feature-dialog{position:relative;display:grid;grid-template-columns:minmax(220px,42%) 1fr;width:min(900px,100%);max-height:min(92dvh,800px);background:#fff;box-shadow:0 28px 85px #0006;overflow:auto;outline:none}
.feature-close{position:absolute;z-index:2;right:14px;top:14px;width:38px;height:38px;display:grid;place-items:center;background:#fff;color:#143c3e;border:1px solid #dbe6df;border-radius:50%;font:400 29px/1 Arial,sans-serif;cursor:pointer}
.feature-close:hover,.feature-close:focus-visible{background:#0b3035;color:#fff}
.feature-image{background:#e9f0ee;padding:22px;display:grid;place-items:center;min-width:0}
.feature-image img{display:block;width:auto;max-width:100%;height:auto;max-height:min(79dvh,650px);object-fit:contain;box-shadow:0 9px 24px #0d333524}
.feature-content{padding:clamp(36px,5vw,70px) clamp(28px,4vw,55px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.feature-eyebrow{font-size:10px;font-weight:800;letter-spacing:.18em;color:#217d73}
.feature-content h2{font:700 clamp(30px,3vw,43px)/1.18 'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em;margin:23px 0}
.feature-content h2 em{font:italic 400 1em Georgia,serif;color:#378a7f}
.feature-content>p:not(.feature-footnote){font-size:15px;line-height:1.8;color:#405a5a;margin:0 0 28px}
.feature-content strong{font-weight:600}
.feature-link{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;background:#0b3035;color:#fff;padding:17px 20px;font-size:12px;font-weight:800}
.feature-link:hover,.feature-link:focus-visible{background:#1a6665;color:#fff}
.feature-footnote{font-size:10px;color:#7c8b86;margin:17px 0 0}
body.feature-open{overflow:hidden}
@media(max-width:680px){.feature-modal{padding:12px}.feature-dialog{display:flex;flex-direction:column;max-height:calc(100dvh - 24px)}.feature-image{padding:16px;max-height:43dvh;overflow:hidden}.feature-image img{height:39dvh;max-height:360px;width:auto;max-width:100%}.feature-content{padding:22px 24px 27px}.feature-content h2{font-size:29px;margin:12px 0}.feature-content>p:not(.feature-footnote){font-size:13px;line-height:1.6;margin-bottom:17px}.feature-close{right:9px;top:9px}.feature-link{padding:14px 17px}}
@media(max-height:560px) and (min-width:681px){.feature-dialog{max-height:96dvh}.feature-image{padding:12px}.feature-image img{max-height:86dvh}.feature-content{padding:28px}.feature-content h2{font-size:28px;margin:12px 0}.feature-content>p:not(.feature-footnote){font-size:12px;margin-bottom:15px}}
/* Brief entrance and exit for the feature dialog. */
.feature-modal{opacity:0;pointer-events:none;transition:opacity .3s ease}
.feature-modal.is-visible{opacity:1;pointer-events:auto}
.feature-dialog{transform:translateY(18px) scale(.985);transition:transform .3s cubic-bezier(.2,.75,.25,1)}
.feature-modal.is-visible .feature-dialog{transform:translateY(0) scale(1)}
@media(prefers-reduced-motion:reduce){.feature-modal,.feature-dialog{transition:none;transform:none}}
/* Dedicated About page */
.about-page{overflow:hidden}.about-page .section{padding-top:110px;padding-bottom:110px}.about-page h1,.about-page h2{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em}.about-page h2{font-size:clamp(36px,4vw,60px);line-height:1.15;margin:22px 0}.about-page h2 em,.about-page h1 em{font:italic 400 1em Georgia,serif;color:#398b80}.about-page p{line-height:1.85}.about-hero{background:#0b3035;color:#fff}.about-hero-grid{display:grid;grid-template-columns:1.03fr .97fr;min-height:min(740px,calc(100svh - 84px))}.about-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:85px 8% 100px 0}.breadcrumbs{display:flex;gap:12px;font-size:12px;color:#bcd4cc;margin-bottom:70px}.breadcrumbs a:hover{text-decoration:underline}.about-page .eyebrow.light{color:#9ed5c4}.about-hero h1{font-size:clamp(47px,5.6vw,88px);line-height:1.08;margin:22px 0}.about-hero h1 em,.about-capability h2 em,.about-reach h2 em{color:#b9e4d1}.about-hero-copy>p{font-size:17px;color:#d0e1da;max-width:560px;margin:0 0 32px}.about-hero-image{background:linear-gradient(0deg,#09282c88,transparent 44%),url('assets/water-treatment-concept.png') center/cover;min-height:540px;position:relative}.about-hero-image>span{position:absolute;bottom:24px;right:27px;font-size:10px;font-weight:800;letter-spacing:.16em;color:#fff}.about-intro{background:#faf9f5}.about-intro-grid,.about-purpose-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.about-intro-text{padding-top:38px;color:#536b69;font-size:16px}.about-intro-text p:first-child{margin-top:0}.about-timeline{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cbdcd3;margin-top:65px}.about-timeline>div{padding:30px 35px 0 0}.about-timeline>div+div{border-left:1px solid #d9e4de;padding-left:35px}.about-timeline span{display:block;color:#268177;font-size:13px;font-weight:800;letter-spacing:.12em;margin-bottom:23px}.about-timeline strong{display:block;font:700 19px/1.4 'Plus Jakarta Sans',sans-serif}.about-timeline p{color:#657a76;font-size:14px;margin:9px 0 0}.about-capability{background:#103b3f;color:#fff}.about-capability-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:9%;align-items:center}.about-capability-image{min-height:640px;background:linear-gradient(0deg,#0b303588,transparent 45%),url('assets/commercial-purification-concept.png') center/cover;position:relative}.about-capability-image span{position:absolute;bottom:24px;left:26px;font-size:10px;letter-spacing:.18em;font-weight:800}.about-capability-grid>div:last-child>p{color:#d0e0dc;max-width:580px}.about-process{list-style:none;padding:0;margin:36px 0 0}.about-process li{display:flex;gap:28px;padding:17px 0;border-top:1px solid #ffffff29}.about-process li:last-child{border-bottom:1px solid #ffffff29}.about-process span{font-size:11px;color:#9fd6c2;font-weight:800}.about-process strong{font-size:15px}.about-sectors{background:#eef4f0}.about-sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.about-sector-grid article{background:#fff;padding:38px;min-height:250px}.about-sector-grid article>span{font-size:12px;font-weight:800;color:#28877c}.about-sector-grid h3{font:700 22px 'Plus Jakarta Sans',sans-serif;margin:34px 0 10px}.about-sector-grid p{color:#647976;font-size:14px;margin:0}.about-purpose-grid>div:last-child{padding-top:36px;color:#516b68;font-size:17px}.about-purpose-grid p:first-child{margin-top:0}.about-reach{background:#0b3035;color:white}.about-reach-grid{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center}.about-reach-grid p{color:#d2e2dd;max-width:530px}.about-reach-art{height:390px;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;isolation:isolate}.reach-ring{position:absolute;border:1px solid #a8d7c37a;border-radius:50%;z-index:-1}.reach-ring.one{width:140px;height:140px}.reach-ring.two{width:255px;height:255px;border-color:#a8d7c34d}.reach-ring.three{width:370px;height:370px;border-color:#a8d7c32c}.reach-dot{width:17px;height:17px;border-radius:50%;background:#b3e2cc;box-shadow:0 0 28px #b3e2cc;position:absolute;top:40%;transform:translateY(-50%)}.about-reach-art strong{margin-top:73px;letter-spacing:.15em;font-size:13px}.about-reach-art small{letter-spacing:.18em;font-size:10px;color:#a8cfbf;margin-top:8px}
@media(max-width:900px){.about-hero-grid{min-height:0}.about-hero-copy{padding:75px 6% 75px 0}.breadcrumbs{margin-bottom:45px}.about-hero-image{min-height:450px}.about-capability-grid{gap:5%}.about-capability-image{min-height:520px}.about-page .section{padding-top:85px;padding-bottom:85px}}
@media(max-width:700px){.about-hero-grid,.about-intro-grid,.about-capability-grid,.about-purpose-grid,.about-reach-grid{grid-template-columns:1fr}.about-hero-copy{padding:52px 0 58px}.about-hero h1{font-size:clamp(44px,11vw,65px)}.breadcrumbs{margin-bottom:38px}.about-hero-image{min-height:330px;margin:0 -25px}.about-intro-text,.about-purpose-grid>div:last-child{padding-top:0}.about-timeline{grid-template-columns:1fr;margin-top:35px}.about-timeline>div,.about-timeline>div+div{border:0;border-top:1px solid #d9e4de;padding:22px 0}.about-timeline span{margin-bottom:9px}.about-capability-image{min-height:340px;order:2}.about-capability-grid>div:last-child{order:1}.about-sector-grid{grid-template-columns:1fr}.about-sector-grid article{min-height:0}.about-sector-grid h3{margin-top:18px}.about-reach-art{height:310px}.reach-ring.three{width:290px;height:290px}.about-page .section{padding-top:68px;padding-bottom:68px}}
/* Shared multi-column footer */
.site-footer{background:#082b30;color:#c0d0cb;padding:0}.site-footer .footer-main{display:grid;grid-template-columns:1.45fr .72fr 1.18fr 1fr;gap:clamp(24px,4vw,70px);padding:80px 0 70px}.site-footer .footer-brand-block{max-width:340px}.site-footer .footer-logo{display:inline-flex;background:#fff;padding:10px 13px}.site-footer .footer-logo img{display:block;width:205px;height:auto}.site-footer .footer-brand-block p{font-size:14px;line-height:1.8;color:#adbfba;margin:24px 0}.site-footer .footer-email{display:inline-flex;gap:22px;align-items:center;border-bottom:1px solid #80b7a8;padding-bottom:9px;color:#e0f1e7;font-size:13px;font-weight:700}.site-footer h2{font:700 11px 'Plus Jakarta Sans',sans-serif;text-transform:uppercase;letter-spacing:.16em;color:#91caba;margin:9px 0 26px}.site-footer .footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.site-footer .footer-links h2{margin-bottom:13px}.site-footer .footer-links a{font-size:13px;line-height:1.5}.site-footer .footer-location p{font-size:13px;line-height:1.7;margin:0 0 13px}.site-footer .footer-location a{display:inline-flex;gap:12px;margin-top:12px;font-size:13px;font-weight:700;color:#d9f0e5}.site-footer a:hover,.site-footer a:focus-visible{color:#a6dfc7;text-decoration:underline;text-underline-offset:4px}.site-footer .footer-bottom{display:flex;align-items:center;gap:24px;border-top:1px solid #ffffff24;padding:22px 0 25px;font-size:11px;color:#91aaa3}.site-footer .footer-bottom>a:nth-child(2){margin-left:auto}.site-footer .footer-top{border-left:1px solid #ffffff30;padding-left:24px}.site-footer .footer-bottom a{color:#b4cbc2}
@media(max-width:1000px){.site-footer .footer-main{grid-template-columns:1.2fr 1fr;gap:50px 35px}.site-footer .footer-brand-block{max-width:none}}
@media(max-width:650px){.site-footer .footer-main{grid-template-columns:1fr 1fr;gap:42px 24px;padding:60px 0 50px}.site-footer .footer-brand-block{grid-column:1/-1}.site-footer .footer-location{grid-column:1/-1}.site-footer .footer-bottom{flex-wrap:wrap;gap:12px 20px}.site-footer .footer-bottom>span{width:100%}.site-footer .footer-bottom>a:nth-child(2){margin-left:0}.site-footer .footer-top{margin-left:auto}.site-footer .footer-logo img{width:185px}}
@media(max-width:380px){.site-footer .footer-main{grid-template-columns:1fr}.site-footer .footer-brand-block,.site-footer .footer-location{grid-column:auto}}
/* Expertise cards lead to the matching product rows. */
.solutions .service-card{display:block;color:inherit;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.solutions .service-card:hover,.solutions .service-card:focus-visible{transform:translateY(-5px);box-shadow:0 20px 38px #123d4218;border-color:#b6d8ca;outline:none}
.solutions .service-card:focus-visible{outline:3px solid #218b80;outline-offset:3px}
.solutions .service-body{min-height:170px;display:flex;flex-direction:column;align-items:flex-start}
.solutions .service-body p{max-width:330px;font-size:13px;color:#617772}
.solutions .service-action{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;margin-top:auto;padding-top:24px;font-size:11px;font-weight:800;letter-spacing:.03em;color:#13766f}
.solutions .service-action .circle-arrow{position:static;flex:none;display:grid;place-items:center}
.solutions .service-card:hover .circle-arrow,.solutions .service-card:focus-visible .circle-arrow{background:#146b66;color:#fff;border-color:#146b66}
.solutions .product-range-grid article:target{outline:2px solid #278579;outline-offset:2px;background:#f4fbf8}
@media(prefers-reduced-motion:reduce){.solutions .service-card{transition:none}}
/* Concept photography makes each expertise category concrete. */
.solutions .service-photo{height:clamp(210px,17vw,300px);position:relative;overflow:hidden;background:#dce9e4}
.solutions .service-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;transition:transform .45s ease}
.solutions .service-card:hover .service-photo img,.solutions .service-card:focus-visible .service-photo img{transform:scale(1.035)}
.solutions .service-photo>span{position:absolute;right:14px;bottom:14px;background:#082b30d9;color:#fff;padding:7px 9px;font-size:9px;letter-spacing:.14em;font-weight:700}
@media(max-width:760px){.solutions .service-photo{height:clamp(205px,45vw,300px)}}
@media(prefers-reduced-motion:reduce){.solutions .service-photo img{transition:none}}
/* Give the expertise introduction a distinct pause before its cards. */
.solutions>.container>.section-heading{margin-bottom:68px}
@media(max-width:950px){.solutions>.container>.section-heading{margin-bottom:48px}}
@media(max-width:600px){.solutions>.container>.section-heading{margin-bottom:38px}}
/* Expertise spacing: reduce the section's lead-in and separate card labels from photos. */
.solutions.section{padding-top:76px}
.solutions>.container>.section-heading{margin-bottom:38px}
.solutions .service-index{padding-bottom:18px}
@media(max-width:950px){.solutions.section{padding-top:64px}.solutions>.container>.section-heading{margin-bottom:34px}}
@media(max-width:600px){.solutions.section{padding-top:56px}.solutions>.container>.section-heading{margin-bottom:30px}.solutions .service-index{padding-bottom:16px}}
/* Rain Water Harvesting product page */
.rwh-page{overflow:hidden}.rwh-page .section{padding:100px 0}.rwh-page h1,.rwh-page h2,.rwh-page h3{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em}.rwh-page h2{font-size:clamp(37px,4.15vw,62px);line-height:1.16;margin:20px 0 25px}.rwh-page h2 em,.rwh-page h1 em{font:italic 400 1em Georgia,serif;color:#388b80}.rwh-page p{line-height:1.8}.rwh-page .eyebrow.light{color:#b5e3d2}.rwh-hero{min-height:min(690px,calc(100svh - 84px));color:white;background:linear-gradient(90deg,#092e32f5 0%,#092e32d8 36%,#092e3250 76%),url('assets/expertise-rainwater.webp') center 43%/cover}.rwh-hero-inner{min-height:inherit;position:relative;padding-top:45px;padding-bottom:70px;display:flex;flex-direction:column}.rwh-hero .breadcrumbs{margin:0;color:#d8e9df}.rwh-hero-copy{max-width:750px;margin:auto 0;padding:70px 0}.rwh-hero h1{font-size:clamp(54px,6vw,94px);line-height:1.04;margin:25px 0}.rwh-hero h1 em,.rwh-system h2 em{color:#b8e2d0}.rwh-hero-copy>p{max-width:580px;color:#e3eee8;font-size:17px}.rwh-hero-actions{display:flex;align-items:center;gap:29px;margin-top:32px}.rwh-text-link{font-size:13px;font-weight:700;color:#e2f4e9;border-bottom:1px solid #e2f4e9;padding-bottom:7px}.rwh-image-credit{position:absolute;right:0;bottom:24px;background:#0b3035bc;padding:7px 10px;font-size:9px;font-weight:800;letter-spacing:.15em}.rwh-intro{background:#faf9f5}.rwh-intro-grid,.rwh-faq-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:9%;align-items:start}.rwh-intro-grid>div:last-child{padding-top:27px;color:#526c68;font-size:16px}.rwh-intro-grid p:first-child{margin-top:0}.rwh-flow{background:#eef4f0}.rwh-section-head{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:48px}.rwh-section-head>p{max-width:315px;color:#607773}.rwh-flow-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.rwh-flow-grid li{background:#fff;padding:30px;min-height:305px;border:1px solid #e0ebe3}.rwh-step{display:block;color:#278477;font-size:12px;font-weight:800;letter-spacing:.12em}.rwh-flow-icon{width:65px;height:65px;border:1px solid #c9ded2;border-radius:50%;display:grid;place-items:center;color:#298679;font:400 29px Georgia,serif;margin:27px 0}.rwh-flow-grid h3{font-size:19px;margin:0 0 12px}.rwh-flow-grid p{color:#607773;font-size:13px;margin:0}.rwh-services{background:#faf9f5}.rwh-services-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:8%;align-items:center}.rwh-services-visual{position:relative;height:620px}.rwh-services-visual img{width:100%;height:100%;display:block;object-fit:cover;object-position:50% 50%}.rwh-services-visual span{position:absolute;bottom:18px;right:18px;background:#0b3035e0;color:#fff;padding:8px 10px;font-size:9px;letter-spacing:.12em;font-weight:800}.rwh-services-grid>div:last-child>p{color:#5a716c}.rwh-service-list{list-style:none;padding:0;margin:29px 0 0}.rwh-service-list li{border-top:1px solid #d7e5dc;padding:16px 0;display:grid;grid-template-columns:145px 1fr;gap:15px}.rwh-service-list li:last-child{border-bottom:1px solid #d7e5dc}.rwh-service-list strong{font-size:14px}.rwh-service-list span{font-size:13px;line-height:1.6;color:#607773}.rwh-system{background:#103b40;color:white}.rwh-system-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:10%;align-items:center}.rwh-system-grid>div:first-child>p{max-width:620px;color:#d5e5df;margin-bottom:33px}.rwh-system-panel{background:#ffffff10;border:1px solid #ffffff32;padding:35px 40px}.rwh-system-panel>span{display:block;font-size:10px;letter-spacing:.2em;color:#b9e2d2;font-weight:800;margin-bottom:25px}.rwh-system-panel>div{display:grid;grid-template-columns:40px 1fr;gap:4px 15px;padding:18px 0;border-top:1px solid #ffffff2b}.rwh-system-panel b{grid-row:span 2;color:#a7d8c4;font-size:12px}.rwh-system-panel strong{font-size:16px}.rwh-system-panel small{font-size:12px;color:#b8d0c8}.rwh-faq{background:#faf9f5}.rwh-faq-list{border-top:1px solid #cfdfd5}.rwh-faq-list details{border-bottom:1px solid #cfdfd5;padding:21px 0}.rwh-faq-list summary{list-style:none;cursor:pointer;font-weight:700;font-size:16px;padding-right:35px;position:relative}.rwh-faq-list summary::-webkit-details-marker{display:none}.rwh-faq-list summary:after{content:'+';position:absolute;right:0;top:-5px;color:#278477;font-size:25px;font-weight:400}.rwh-faq-list details[open] summary:after{content:'−'}.rwh-faq-list p{font-size:14px;color:#5c746e;margin:15px 35px 0 0}
@media(max-width:950px){.rwh-flow-grid{grid-template-columns:repeat(2,1fr)}.rwh-services-grid{gap:5%}.rwh-services-visual{height:510px}.rwh-service-list li{grid-template-columns:1fr;gap:4px}}
@media(max-width:700px){.rwh-page .section{padding:70px 0}.rwh-hero{min-height:610px;background-position:62% center}.rwh-hero-inner{padding-top:27px;padding-bottom:45px}.rwh-hero-copy{padding:75px 0}.rwh-hero h1{font-size:clamp(46px,11vw,64px)}.rwh-hero-copy>p{font-size:15px}.rwh-hero-actions{align-items:flex-start;flex-direction:column;gap:24px}.rwh-intro-grid,.rwh-faq-grid,.rwh-services-grid,.rwh-system-grid{grid-template-columns:1fr}.rwh-intro-grid>div:last-child{padding:0}.rwh-section-head{display:block;margin-bottom:30px}.rwh-flow-grid{gap:10px}.rwh-flow-grid li{padding:22px;min-height:260px}.rwh-services-visual{height:360px}.rwh-services-grid>div:last-child{padding-top:20px}.rwh-system-panel{padding:26px}.rwh-faq-list{margin-top:20px}}
@media(max-width:470px){.rwh-flow-grid{grid-template-columns:1fr}.rwh-flow-grid li{min-height:0}.rwh-flow-icon{margin:18px 0}.rwh-image-credit{right:0}.rwh-page h2{font-size:36px}}
/* Mobile Rain Water Harvesting introduction: keep the heading with its copy. */
@media(max-width:700px){.rwh-intro-grid{row-gap:0}.rwh-intro-grid h2{margin-bottom:14px}.rwh-intro-grid>div:last-child p:first-child{margin-top:0}}
/* Korean Alkaline Water Ionizer page */
.ion-page{overflow:hidden}.ion-page .section{padding:100px 0}.ion-page h1,.ion-page h2,.ion-page h3{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em}.ion-page h2{font-size:clamp(38px,4.1vw,62px);line-height:1.15;margin:20px 0 24px}.ion-page h2 em,.ion-page h1 em{font:italic 400 1em Georgia,serif;color:#398c80}.ion-page p{line-height:1.8}.ion-hero{background:#eef4f0}.ion-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:7%;min-height:620px}.ion-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:35px 0 80px}.ion-hero .breadcrumbs{margin:0 0 75px;color:#657c74}.ion-hero .breadcrumbs a:hover{text-decoration:underline}.ion-hero h1{font-size:clamp(48px,5.3vw,82px);line-height:1.08;margin:22px 0}.ion-hero-copy>p{max-width:600px;color:#56706b;font-size:16px;margin:0}.ion-hero-actions{display:flex;align-items:center;gap:25px;margin-top:32px}.ion-hero-actions .btn{background:#0b3035;color:#fff}.ion-hero-actions>a:last-child{font-size:13px;font-weight:700;color:#186d65;border-bottom:1px solid #186d65;padding-bottom:6px}.ion-hero-art{display:grid;place-items:center;position:relative;padding:60px 0}.ion-hero-art:before{content:'';position:absolute;width:min(95%,550px);aspect-ratio:1;border:1px solid #b5d9cb;border-radius:50%}.ion-product-stage{position:relative;width:min(100%,540px);padding:30px 28px 45px;background:#fff;box-shadow:0 24px 80px #143e3e13}.ion-product-stage img{display:block;width:100%;height:430px;object-fit:contain;background:#fff}.ion-product-stage span{display:block;margin-top:8px;color:#448a7a;font-size:10px;font-weight:800;letter-spacing:.14em}.ion-explain{background:#faf9f5}.ion-explain-grid,.ion-faq-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:9%}.ion-explain-grid>div:last-child{padding-top:23px;color:#536b67;font-size:16px}.ion-explain-grid p:first-child{margin-top:0}.ion-process{display:grid;grid-template-columns:repeat(4,1fr);margin-top:52px;border-top:1px solid #cdded4}.ion-process>div{padding:25px 24px 0 0}.ion-process>div+div{padding-left:24px;border-left:1px solid #d8e4dd}.ion-process span{display:block;color:#228377;font-size:12px;font-weight:800;margin-bottom:20px}.ion-process strong{display:block;font:700 19px 'Plus Jakarta Sans',sans-serif}.ion-process p{font-size:13px;color:#617671;margin:8px 0 0}.ion-models{background:#edf4f0}.ion-section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.ion-section-head>p{max-width:355px;color:#5c736d}.ion-model-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.ion-model-card{background:#fff;border:1px solid #dce9e1;display:grid;grid-template-columns:43% 57%;min-height:345px;scroll-margin-top:110px}.ion-model-card:target{outline:2px solid #258b7b;outline-offset:3px}.ion-model-image{background:#f9faf8;display:grid;place-items:center;padding:24px}.ion-model-image img{width:100%;height:285px;object-fit:contain;display:block}.ion-model-copy{padding:30px;display:flex;flex-direction:column;align-items:flex-start}.ion-model-copy>span{font-size:10px;letter-spacing:.14em;font-weight:800;color:#27877a}.ion-model-copy h3{font-size:clamp(20px,2vw,29px);line-height:1.2;margin:25px 0 12px}.ion-model-copy p{font-size:13px;color:#5c736e;margin:0}.ion-model-copy a{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;border-top:1px solid #d8e7de;padding-top:15px;margin-top:auto;color:#176f65;font-size:12px;font-weight:800}.ion-model-copy a:hover{text-decoration:underline}.ion-model-copy b{font-size:20px;font-weight:400}.ion-image-note{font-size:11px;color:#71877f;margin:20px 0 0}.ion-choice{background:#103b40;color:#fff}.ion-choice-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:12%;align-items:center}.ion-choice .eyebrow.light{color:#adddcc}.ion-choice h2 em{color:#bce4d1}.ion-choice-grid>div:first-child>p{color:#d0e2d9;max-width:620px;margin-bottom:30px}.ion-choice-list>div{display:grid;grid-template-columns:35px 1fr;gap:4px 15px;padding:22px 0;border-top:1px solid #ffffff30}.ion-choice-list>div:last-child{border-bottom:1px solid #ffffff30}.ion-choice-list span{grid-row:span 2;color:#adddcc;font-size:12px;font-weight:800}.ion-choice-list strong{font-size:17px}.ion-choice-list small{font-size:13px;color:#bed4cb}.ion-faq{background:#faf9f5}.ion-faq-list .rwh-faq-list{margin-top:12px}
@media(max-width:1050px){.ion-model-card{grid-template-columns:1fr}.ion-model-image img{height:240px}.ion-model-copy{min-height:245px}}
@media(max-width:700px){.ion-page .section{padding:70px 0}.ion-hero-grid,.ion-explain-grid,.ion-choice-grid,.ion-faq-grid{grid-template-columns:1fr;gap:0}.ion-hero-copy{padding:35px 0 28px}.ion-hero .breadcrumbs{margin-bottom:55px}.ion-hero h1{font-size:clamp(43px,10vw,65px)}.ion-hero-actions{align-items:flex-start;flex-direction:column}.ion-hero-art{padding:20px 0 65px}.ion-product-stage{width:min(100%,420px);padding:18px 18px 28px}.ion-product-stage img{height:300px}.ion-explain-grid>div:last-child{padding-top:0}.ion-explain-grid h2{margin-bottom:14px}.ion-process{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:35px}.ion-process>div,.ion-process>div+div{border-left:0;padding:17px 0 0}.ion-section-head{display:block;margin-bottom:28px}.ion-model-grid{grid-template-columns:1fr}.ion-model-card{min-height:0}.ion-model-image img{height:260px}.ion-model-copy{min-height:220px}.ion-choice-list{margin-top:30px}.ion-faq-grid .rwh-faq-list{margin-top:18px}}
@media(max-width:420px){.ion-process{grid-template-columns:1fr}.ion-process>div{border-top:1px solid #d8e4dd}.ion-model-copy{padding:25px}.ion-product-stage img{height:250px}.ion-page h2{font-size:35px}}
/* Installation gallery sourced from Sshashvat's existing page. */
.ion-gallery{background:#faf9f5}.ion-gallery-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:38px}.ion-gallery-head>p{max-width:355px;color:#627871}.ion-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.ion-gallery-grid a{display:flex;flex-direction:column;background:#fff;border:1px solid #dce9e1;color:#174841;transition:transform .2s ease,box-shadow .2s ease;min-width:0}.ion-gallery-grid a:hover,.ion-gallery-grid a:focus-visible{transform:translateY(-4px);box-shadow:0 15px 30px #143e3e19;outline:2px solid #2b8d80;outline-offset:2px}.ion-gallery-grid img{width:100%;height:clamp(190px,18vw,280px);object-fit:cover;display:block;background:#eaf2ed}.ion-gallery-grid a>span{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:18px 16px;font-size:10px;font-weight:800;letter-spacing:.12em}.ion-gallery-grid b{font-size:20px;font-weight:400}.ion-gallery-note{color:#74867e;font-size:11px;margin:21px 0 0}
@media(max-width:950px){.ion-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ion-gallery-grid img{height:260px}}
@media(max-width:700px){.ion-gallery-head{display:block;margin-bottom:26px}.ion-gallery-grid img{height:210px}}
@media(max-width:470px){.ion-gallery-grid{grid-template-columns:1fr}.ion-gallery-grid img{height:320px}}
@media(prefers-reduced-motion:reduce){.ion-gallery-grid a{transition:none}}
/* In-page installation image viewer. */
.ion-lightbox[hidden]{display:none!important}.ion-lightbox{position:fixed;inset:0;z-index:1100;display:grid;place-items:center;padding:22px}.ion-lightbox-backdrop{position:absolute;inset:0;background:#071e22e8;backdrop-filter:blur(5px)}.ion-lightbox-dialog{position:relative;width:min(1050px,100%);max-height:calc(100dvh - 44px);display:flex;flex-direction:column;background:#fff;box-shadow:0 30px 90px #0008;outline:none}.ion-lightbox-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:13px 18px;background:#fff;border-bottom:1px solid #dfebe4}.ion-lightbox-title{font-size:10px;letter-spacing:.15em;color:#276d63;font-weight:800}.ion-lightbox-toolbar>div{display:flex;gap:8px}.ion-lightbox-toolbar button{background:#0b3035;color:#fff;border:0;padding:10px 13px;font:700 11px 'DM Sans',sans-serif;cursor:pointer;white-space:nowrap}.ion-lightbox-toolbar button:hover,.ion-lightbox-toolbar button:focus-visible{background:#257a6f;outline:2px solid #83cbb5;outline-offset:2px}.ion-lightbox-viewport{overflow:auto;display:grid;place-items:center;background:#e9f1ed;min-height:0;flex:1}.ion-lightbox-viewport img{display:block;max-width:100%;max-height:calc(100dvh - 160px);width:auto;height:auto;object-fit:contain}.ion-lightbox-viewport.is-zoomed{display:block}.ion-lightbox-viewport.is-zoomed img{max-width:none;max-height:none;width:180%;height:auto;cursor:zoom-out}.ion-lightbox-caption{padding:11px 18px;margin:0;font-size:11px;letter-spacing:.08em;color:#526e66}.ion-lightbox-open{overflow:hidden}@media(max-width:600px){.ion-lightbox{padding:8px}.ion-lightbox-dialog{max-height:calc(100dvh - 16px)}.ion-lightbox-toolbar{padding:10px}.ion-lightbox-title{font-size:8px;letter-spacing:.08em}.ion-lightbox-toolbar button{padding:9px;font-size:10px}.ion-lightbox-viewport img{max-height:calc(100dvh - 115px)}.ion-lightbox-viewport.is-zoomed img{width:230%}}
/* Industrial water treatment page */
.ind-page{overflow:hidden}.ind-page .section{padding:100px 0}.ind-page h1,.ind-page h2,.ind-page h3{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em}.ind-page h2{font-size:clamp(38px,4.15vw,62px);line-height:1.15;margin:20px 0 25px}.ind-page h2 em,.ind-page h1 em{font:italic 400 1em Georgia,serif;color:#3b8e82}.ind-page p{line-height:1.8}.ind-hero{min-height:min(710px,calc(100svh - 84px));background:linear-gradient(90deg,#082c32f5 0%,#082c32d5 41%,#082c3270 75%),url('assets/expertise-industrial.webp') center/cover;color:#fff}.ind-hero-inner{min-height:inherit;display:flex;flex-direction:column;position:relative;padding-top:42px;padding-bottom:70px}.ind-hero .breadcrumbs{color:#d0e4dc;margin:0}.ind-hero-copy{margin:auto 0;padding:80px 0;max-width:800px}.ind-hero .eyebrow.light,.ind-flow .eyebrow.light{color:#afe1cb}.ind-hero h1{font-size:clamp(51px,5.9vw,91px);line-height:1.07;margin:24px 0}.ind-hero h1 em,.ind-flow h2 em{color:#c0e5d3}.ind-hero-copy>p{max-width:620px;color:#e0eee8;font-size:17px}.ind-hero-actions{display:flex;align-items:center;gap:30px;margin-top:31px}.ind-hero-actions>a:last-child{color:#dcf0e4;font-size:13px;font-weight:700;border-bottom:1px solid #dcf0e4;padding-bottom:7px}.ind-concept{position:absolute;right:0;bottom:22px;font-size:9px;letter-spacing:.13em;font-weight:800;background:#082e32b9;padding:7px 10px}.ind-intro{background:#faf9f5}.ind-intro-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:10%}.ind-intro-grid>div:last-child{padding-top:22px;color:#58716d;font-size:16px}.ind-intro-grid p:first-child{margin-top:0}.ind-tech{background:#eef4f0}.ind-section-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.ind-section-head>p{max-width:360px;color:#5d746f}.ind-tech-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.ind-tech-grid article{min-height:270px;background:#fff;border:1px solid #dce8df;padding:30px;display:flex;flex-direction:column}.ind-tech-grid span{font-size:10px;letter-spacing:.14em;font-weight:800;color:#27877a}.ind-tech-grid h3{font-size:22px;line-height:1.23;margin:auto 0 12px;padding-top:35px}.ind-tech-grid p{font-size:13px;color:#617872;margin:0}.ind-flow{background:#103b40;color:#fff}.ind-flow-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:12%;align-items:center}.ind-flow-grid>div>p{max-width:560px;color:#d3e5db;margin-bottom:30px}.ind-flow-grid ol{list-style:none;padding:0;margin:0}.ind-flow-grid li{display:grid;grid-template-columns:35px 1fr;gap:4px 17px;border-top:1px solid #ffffff30;padding:19px 0}.ind-flow-grid li:last-child{border-bottom:1px solid #ffffff30}.ind-flow-grid li span{grid-row:span 2;color:#aaddc5;font-size:12px;font-weight:800}.ind-flow-grid li strong{font-size:16px}.ind-flow-grid li small{font-size:13px;color:#bdd5ca}.ind-video{background:#faf9f5}.ind-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.ind-video-grid article{background:#fff;border:1px solid #dce9e1}.ind-video-frame{aspect-ratio:16/9;background:#082e32}.ind-video-frame iframe{border:0;width:100%;height:100%;display:block}.ind-video-grid article>div:last-child{padding:22px 25px 28px}.ind-video-grid span{color:#27877a;font-size:10px;letter-spacing:.15em;font-weight:800}.ind-video-grid h3{font-size:22px;margin:12px 0 0}.ind-applications{background:#edf4f0}.ind-app-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.ind-app-grid>div:first-child>p{max-width:550px;color:#607770}.ind-app-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.ind-app-list span{display:flex;align-items:center;background:#fff;border:1px solid #dbe9df;padding:21px 23px;min-height:85px;font-size:14px;font-weight:700}
@media(max-width:1050px){.ind-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ind-tech-grid article{min-height:230px}}
@media(max-width:700px){.ind-page .section{padding:70px 0}.ind-hero{min-height:640px;background-position:58% center}.ind-hero-inner{padding-top:27px;padding-bottom:45px}.ind-hero h1{font-size:clamp(45px,10.5vw,65px)}.ind-hero-copy{padding:75px 0}.ind-hero-copy>p{font-size:15px}.ind-hero-actions{align-items:flex-start;flex-direction:column;gap:24px}.ind-intro-grid,.ind-flow-grid,.ind-app-grid{grid-template-columns:1fr;gap:0}.ind-intro-grid h2{margin-bottom:14px}.ind-intro-grid>div:last-child{padding-top:0}.ind-section-head{display:block;margin-bottom:28px}.ind-flow-grid ol{margin-top:35px}.ind-video-grid{grid-template-columns:1fr}.ind-app-list{margin-top:30px}}
@media(max-width:470px){.ind-tech-grid,.ind-app-list{grid-template-columns:1fr}.ind-tech-grid article{min-height:0}.ind-tech-grid h3{margin:30px 0 12px;padding:0}.ind-page h2{font-size:35px}}
/* Keep technology names on one line at desktop widths without overflowing cards. */
@media(min-width:1051px){.ind-tech-grid article{padding:26px}.ind-tech-grid h3{font-size:clamp(16px,1.12vw,19px);letter-spacing:-.06em;white-space:nowrap}}
@media(min-width:1251px){.ind-tech-grid h3{white-space:nowrap}}
@media(max-width:1250px) and (min-width:701px){.ind-tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ind-tech-grid h3{white-space:normal}}
@media(max-width:700px){.ind-tech-grid h3{white-space:normal}}
/* Residential purifier collection */
.res-page{overflow:hidden}.res-page h1,.res-page h2,.res-page h3{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em}.res-page h2{font-size:clamp(38px,4.2vw,62px);line-height:1.14;margin:18px 0 23px}.res-page h1 em,.res-page h2 em{font:italic 400 1em Georgia,serif;color:#319284}.res-page .section{padding:92px 0}.res-hero{background:radial-gradient(circle at 78% 55%,#dceee9 0,#f4f7f1 38%,#f9faf6 70%);min-height:calc(100svh - 84px)}.res-hero .breadcrumbs{padding:37px 0 0;color:#67827b}.res-hero-layout{min-height:580px;display:grid;grid-template-columns:1fr 1fr;gap:5%;align-items:center}.res-hero h1{font-size:clamp(54px,6vw,88px);line-height:1.07;margin:20px 0}.res-hero-layout>div:first-child{padding:55px 0}.res-hero-layout p{max-width:510px;font-size:17px;line-height:1.8;color:#5c746c;margin-bottom:32px}.res-hero-display{height:490px;position:relative;background:linear-gradient(135deg,#e4f1ea,#cde4dd);border-radius:50% 50% 12px 12px;display:flex;align-items:center;justify-content:center;isolation:isolate}.res-display-orbit{position:absolute;inset:42px;border:1px solid #ffffffb5;border-radius:50%;z-index:-1}.res-hero-product{position:absolute;object-fit:contain;filter:drop-shadow(0 20px 16px #25534829)}.res-hero-product.first{width:42%;height:68%;left:14%;top:18%}.res-hero-product.second{width:43%;height:70%;right:9%;top:15%}.res-display-caption{position:absolute;bottom:18px;right:22px;color:#28675c;font-size:10px;font-weight:800;letter-spacing:.14em}.res-intro{background:#fff}.res-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:11%;align-items:center}.res-intro-grid>p{font-size:17px;line-height:1.9;color:#5b746b}.res-models{background:#f1f6f1}.res-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}.res-heading>p{max-width:350px;color:#5b746b;line-height:1.8}.res-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.res-card{background:#fff;border:1px solid #dae7df;box-shadow:0 12px 30px #133c2d09;display:flex;flex-direction:column;min-width:0}.res-card-image{height:255px;display:grid;place-items:center;background:linear-gradient(160deg,#fff,#f2f7f4);padding:10px}.res-card-image img{max-width:92%;max-height:100%;object-fit:contain;mix-blend-mode:multiply}.res-card-body{padding:23px 23px 25px;display:flex;flex-direction:column;flex:1}.res-card-kicker{font-size:10px;letter-spacing:.13em;font-weight:800;color:#288774}.res-card h3{font-size:29px;margin:8px 0 20px}.res-card-highlights{display:grid;grid-template-columns:1fr 1fr;border-block:1px solid #dce9e1;padding:16px 0;gap:10px}.res-card-highlights strong,.res-card-highlights span{display:block}.res-card-highlights strong{font-size:18px;color:#103d39}.res-card-highlights span{font-size:11px;color:#71867d;line-height:1.4;margin-top:5px}.res-card details{margin-top:18px}.res-card summary{cursor:pointer;list-style:none;font-size:13px;font-weight:700;color:#164d43;display:flex;justify-content:space-between}.res-card summary::-webkit-details-marker{display:none}.res-card details[open] summary span{transform:rotate(45deg)}.res-card dl{font-size:12px;margin:14px 0 0}.res-card dl div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #e4eee7;padding:9px 0}.res-card dt{color:#72877f}.res-card dd{margin:0;text-align:right;font-weight:700;color:#174a43}.res-card-link{display:flex;justify-content:space-between;color:#126f60;font-size:13px;font-weight:800;margin-top:auto;padding-top:26px}.res-consider{background:#fff}.res-consider-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.res-consider-grid>div:first-child>p{color:#607a70;line-height:1.8;max-width:510px;margin-bottom:28px}.res-consider-points>div{border-top:1px solid #d9e7df;padding:22px 0 18px;display:grid;grid-template-columns:40px 1fr;gap:0 12px}.res-consider-points>div:last-child{border-bottom:1px solid #d9e7df}.res-consider-points span{grid-row:span 2;color:#208773;font-weight:800;font-size:12px}.res-consider-points strong{color:#173f39}.res-consider-points p{color:#71857c;font-size:13px;margin:6px 0 0;line-height:1.6}
@media(max-width:1100px){.res-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.res-hero-display{height:410px}}
@media(max-width:700px){.res-page .section{padding:65px 0}.res-hero{min-height:0}.res-hero-layout,.res-intro-grid,.res-consider-grid{grid-template-columns:1fr;gap:20px}.res-hero-layout{min-height:0}.res-hero-layout>div:first-child{padding:40px 0 10px}.res-hero h1{font-size:clamp(48px,11vw,68px)}.res-hero-display{height:330px;margin-bottom:35px}.res-heading{display:block}.res-heading>p{max-width:500px}.res-card-grid{gap:13px}.res-card-image{height:225px}}
@media(max-width:500px){.res-card-grid{grid-template-columns:1fr}.res-card-image{height:290px}.res-hero-display{height:270px}.res-page h2{font-size:37px}.res-hero-product.first{left:10%;width:44%}.res-hero-product.second{right:5%;width:45%}}
/* Residential page refinements */
.res-hero-layout{min-height:540px}.res-hero-layout>div:first-child{padding:18px 0 45px}.res-hero .breadcrumbs{padding-top:30px}.res-card-title{padding:25px 23px 15px}.res-card-title h3{margin:6px 0 0;font-size:27px}.res-card-image{height:235px}.res-card-body{padding-top:17px}.res-hero-product{mix-blend-mode:normal}
@media(max-width:700px){.res-hero-layout{min-height:0}.res-hero-layout>div:first-child{padding:28px 0 8px}.res-card-image{height:225px}}
@media(max-width:500px){.res-card-image{height:270px}}
/* Residential visual hierarchy */
.res-hero-layout{align-items:start}.res-hero-layout>div:first-child{padding-top:64px;padding-bottom:42px}.res-hero-display{align-self:center}.res-card-title{text-align:center}.res-card-title .res-card-kicker{display:block}.res-page #res-contact{background:#e8f2ed}
@media(max-width:700px){.res-hero-layout>div:first-child{padding-top:35px;padding-bottom:8px}.res-hero-display{align-self:auto}}
/* Residential hero and product image containment */
.res-hero .breadcrumbs{margin:0;padding-top:30px}.res-hero-layout>div:first-child{padding-top:30px}.res-card-image{height:270px;min-height:270px;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:16px 20px 20px;flex:0 0 auto}.res-card-image img{display:block;width:auto;height:100%;max-width:100%;max-height:100%;object-fit:contain;flex:0 1 auto}.res-card-body{position:relative;background:#fff;z-index:1}
@media(max-width:700px){.res-hero-layout>div:first-child{padding-top:26px}.res-card-image{height:245px;min-height:245px}}
@media(max-width:500px){.res-card-image{height:280px;min-height:280px}}
/* Commercial water purifiers */
.com-page{overflow:hidden}.com-page .section{padding:92px 0}.com-page h1,.com-page h2,.com-page h3{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em}.com-page h1 em,.com-page h2 em{font:italic 400 1em Georgia,serif;color:#338d80}.com-page h2{font-size:clamp(38px,4.2vw,62px);line-height:1.14;margin:18px 0 23px}.com-page p{line-height:1.8}.com-hero{background:#edf4ef}.com-hero-grid{display:grid;grid-template-columns:1.06fr .94fr;gap:6%;min-height:620px}.com-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:35px 0 80px}.com-hero .breadcrumbs{margin:0 0 75px;color:#617a70}.com-hero h1{font-size:clamp(50px,5.8vw,87px);line-height:1.07;margin:20px 0}.com-hero-copy>p{max-width:560px;color:#5b746b;font-size:16px;margin:0}.com-hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.com-hero-actions>a:last-child{font-size:13px;font-weight:700;color:#136e61;border-bottom:1px solid;padding-bottom:5px}.com-hero-art{position:relative;display:grid;place-items:center;padding:60px 20px}.com-hero-ring{position:absolute;width:min(90%,540px);aspect-ratio:1;border-radius:50%;background:#d8eae0}.com-hero-art img{position:relative;display:block;width:min(67%,350px);height:460px;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(0 24px 16px #27443526)}.com-hero-note{position:absolute;bottom:56px;right:0;font-size:10px;color:#287768;font-weight:800;letter-spacing:.13em}.com-intro{background:#fff}.com-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.com-intro-grid>div:last-child{color:#60766e;font-size:16px}.com-jump{display:flex;gap:20px;flex-wrap:wrap;margin-top:20px}.com-jump a{color:#0a6d60;font-size:13px;font-weight:800;border-bottom:1px solid;padding-bottom:6px}.com-collection{background:#eff5f1}.com-collection-alt{background:#f9faf6}.com-section-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:35px}.com-section-head>p{max-width:370px;color:#5b756c}.com-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.com-card{min-width:0;background:#fff;border:1px solid #dce9e1;display:flex;flex-direction:column}.com-card-top{text-align:center;padding:24px 20px 18px;min-height:104px}.com-card-top span{color:#258777;font-size:10px;letter-spacing:.14em;font-weight:800}.com-card h3{font-size:22px;line-height:1.2;margin:7px 0 0}.com-card-visual{height:245px;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(135deg,#fff,#f3f8f4);padding:14px 26px}.com-card-visual img{display:block;width:auto;height:100%;max-width:100%;object-fit:contain;mix-blend-mode:multiply}.com-card-info{padding:18px 25px 25px;display:flex;flex-direction:column;flex:1;background:#fff}.com-metrics{display:grid;grid-template-columns:1fr 1fr;gap:12px;border-block:1px solid #dce8df;padding:17px 0}.com-metrics strong,.com-metrics small{display:block}.com-metrics strong{font-size:16px;line-height:1.3}.com-metrics small{font-size:11px;color:#71887c;margin-top:5px}.com-card details{margin-top:18px}.com-card summary{list-style:none;cursor:pointer;font-size:13px;font-weight:700;color:#16554b;display:flex;justify-content:space-between}.com-card summary::-webkit-details-marker{display:none}.com-card details[open] summary span{transform:rotate(45deg)}.com-card dl{font-size:12px;margin:15px 0 0}.com-card dl div{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #e3ece7;padding:9px 0}.com-card dt{color:#698075}.com-card dd{margin:0;text-align:right;font-weight:700}.com-card-info>a{color:#087869;font-size:13px;font-weight:800;display:flex;justify-content:space-between;margin-top:auto;padding-top:26px}.com-advice{background:#fff}.com-advice-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.com-advice-grid p{color:#627b70;max-width:570px}.com-advice-list>div{border-top:1px solid #d8e5dc;padding:22px 0;display:flex;gap:30px;font-weight:700}.com-advice-list>div:last-child{border-bottom:1px solid #d8e5dc}.com-advice-list span{font-size:12px;color:#238b76}.com-page #com-contact{background:#e6f1eb}
@media(max-width:1050px){.com-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.com-hero-art img{height:390px}}
@media(max-width:700px){.com-page .section{padding:65px 0}.com-hero-grid,.com-intro-grid,.com-advice-grid{grid-template-columns:1fr;gap:25px}.com-hero-copy{padding:35px 0 15px}.com-hero .breadcrumbs{margin-bottom:48px}.com-hero h1{font-size:clamp(46px,11vw,65px)}.com-hero-art{padding:20px 0 55px}.com-hero-art img{height:310px}.com-hero-note{bottom:18px}.com-section-head{display:block}.com-section-head>p{max-width:580px}.com-card-visual{height:225px}}
@media(max-width:500px){.com-grid{grid-template-columns:1fr}.com-page h2{font-size:37px}.com-hero-actions{align-items:flex-start;flex-direction:column}.com-card-visual{height:260px}}
.com-hero-art img{mix-blend-mode:normal;filter:drop-shadow(0 24px 18px #2744353a)}
/* Packaged drinking water plant */
.pdw-page{overflow:hidden}.pdw-page .section{padding:100px 0}.pdw-page h1,.pdw-page h2,.pdw-page h3{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em}.pdw-page h2{font-size:clamp(38px,4.2vw,62px);line-height:1.14;margin:20px 0 24px}.pdw-page h1 em,.pdw-page h2 em{font:italic 400 1em Georgia,serif;color:#3a9385}.pdw-page p{line-height:1.8}.pdw-hero{min-height:min(760px,calc(100svh - 84px));color:#fff;background:linear-gradient(90deg,#092d33f0 0%,#092d33d9 34%,#092d3375 64%,#092d3312 100%),url('assets/packaged-drinking-plant-concept.webp') center/cover}.pdw-hero-inner{min-height:inherit;position:relative;display:flex;flex-direction:column;padding-top:42px;padding-bottom:65px}.pdw-hero .breadcrumbs{margin:0;color:#d6e9df}.pdw-hero-copy{max-width:850px;margin:auto 0;padding:64px 0}.pdw-hero .eyebrow.light{color:#b5e4d2}.pdw-hero h1{font-size:clamp(52px,6vw,91px);line-height:1.06;margin:24px 0}.pdw-hero h1 em{color:#bbe7d5}.pdw-hero-copy>p{max-width:560px;color:#e3f1e9;font-size:17px}.pdw-hero-actions{display:flex;align-items:center;gap:30px;margin-top:30px}.pdw-hero-actions>a:last-child{font-size:13px;font-weight:700;color:#e2f2e9;border-bottom:1px solid;padding-bottom:6px}.pdw-concept{position:absolute;bottom:20px;right:0;font-size:9px;letter-spacing:.13em;font-weight:800;background:#092d33c9;padding:8px 11px}.pdw-intro{background:#faf9f5}.pdw-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.pdw-intro-grid>div:last-child{padding-top:20px;color:#59746c;font-size:16px}.pdw-intro-grid p:first-child{margin-top:0}.pdw-process{background:#eaf2ed}.pdw-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:42px}.pdw-heading>p{max-width:350px;color:#5d756c}.pdw-process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}.pdw-process-grid article{min-height:300px;background:#fff;padding:29px;border:1px solid #dce7df;display:flex;flex-direction:column}.pdw-process-grid span{font-size:10px;letter-spacing:.15em;color:#268576;font-weight:800}.pdw-process-grid h3{font-size:21px;line-height:1.25;margin:auto 0 11px;padding-top:45px}.pdw-process-grid p{font-size:13px;color:#60796e;margin:0}.pdw-process-note{font-size:12px;color:#688077;margin:19px 0 0}.pdw-scope{background:#fff}.pdw-scope-grid{display:grid;grid-template-columns:.94fr 1.06fr;gap:10%;align-items:center}.pdw-scope-image{min-height:600px;background:linear-gradient(0deg,#072a3280,transparent 45%),url('assets/packaged-drinking-plant-concept.webp') 70% center/cover;position:relative}.pdw-scope-image span{position:absolute;bottom:20px;left:22px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.13em}.pdw-scope-grid>div:last-child>p{color:#5b766e;max-width:600px}.pdw-scope-grid ul{padding:0;margin:30px 0 0;list-style:none}.pdw-scope-grid li{display:grid;grid-template-columns:36px 1fr;gap:3px 15px;border-top:1px solid #dbe9df;padding:18px 0}.pdw-scope-grid li:last-child{border-bottom:1px solid #dbe9df}.pdw-scope-grid li span{grid-row:span 2;color:#2a917c;font-size:12px;font-weight:800}.pdw-scope-grid li strong{color:#143e37}.pdw-scope-grid li small{color:#6a8178;line-height:1.55;font-size:13px}.pdw-fit{background:#113b3e;color:#fff}.pdw-fit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.pdw-fit h2 em{color:#b4dfce}.pdw-fit-grid p{color:#c9ded3;max-width:560px}.pdw-fit-list>div{display:flex;gap:20px;border-top:1px solid #ffffff36;padding:19px 0;font-weight:700}.pdw-fit-list>div:last-child{border-bottom:1px solid #ffffff36}.pdw-fit-list span{font-size:12px;color:#a9ddc3}.pdw-page #pdw-contact{background:#f6faf5}
@media(max-width:1050px){.pdw-process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pdw-process-grid article{min-height:245px}}
@media(max-width:700px){.pdw-page .section{padding:67px 0}.pdw-hero{min-height:620px;background-position:65% center}.pdw-hero-inner{padding-top:29px;padding-bottom:50px}.pdw-hero-copy{padding:70px 0}.pdw-hero h1{font-size:clamp(46px,11vw,65px)}.pdw-hero-actions{align-items:flex-start;flex-direction:column}.pdw-intro-grid,.pdw-scope-grid,.pdw-fit-grid{grid-template-columns:1fr;gap:25px}.pdw-intro-grid>div:last-child{padding-top:0}.pdw-heading{display:block;margin-bottom:30px}.pdw-scope-image{min-height:360px}.pdw-scope-grid>div:last-child{padding-top:10px}}
@media(max-width:500px){.pdw-process-grid{grid-template-columns:1fr}.pdw-process-grid article{min-height:0}.pdw-process-grid h3{margin:30px 0 10px;padding:0}.pdw-page h2{font-size:37px}.pdw-hero{min-height:620px}}

.pdw-hero{background-image:linear-gradient(90deg,#092d33f2 0%,#092d33d9 34%,#092d3375 64%,#092d3312 100%),url('assets/packaged-bottling-concept.webp')}
/* Solar system page */
.sol-page{overflow:hidden}.sol-page .section{padding:100px 0}.sol-page h1,.sol-page h2,.sol-page h3{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em}.sol-page h2{font-size:clamp(38px,4.2vw,62px);line-height:1.14;margin:20px 0 24px}.sol-page h1 em,.sol-page h2 em{font:italic 400 1em Georgia,serif;color:#3a9283}.sol-page p{line-height:1.8}.sol-hero{min-height:min(730px,calc(100svh - 84px));color:#fff;background:linear-gradient(90deg,#092e34f2 0%,#092e34dc 36%,#092e347a 69%,#092e3419 100%),url('assets/solar-rooftop-concept.webp') center/cover}.sol-hero-inner{min-height:inherit;position:relative;display:flex;flex-direction:column;padding-top:42px;padding-bottom:65px}.sol-hero .breadcrumbs{margin:0;color:#d7e9e1}.sol-hero-copy{max-width:840px;margin:auto 0;padding:65px 0}.sol-hero .eyebrow.light{color:#b9e6d1}.sol-hero h1{font-size:clamp(53px,6vw,92px);line-height:1.07;margin:24px 0}.sol-hero h1 em{color:#c5e7d4}.sol-hero-copy>p{color:#dfede7;font-size:17px;max-width:590px}.sol-hero-actions{display:flex;gap:30px;align-items:center;margin-top:30px}.sol-hero-actions>a:last-child{font-size:13px;font-weight:700;color:#e2f3e9;border-bottom:1px solid;padding-bottom:6px}.sol-concept{position:absolute;bottom:20px;right:0;font-size:9px;font-weight:800;letter-spacing:.14em;background:#092e34c7;padding:8px 11px}.sol-intro{background:#faf9f5}.sol-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.sol-intro-grid>div:last-child{padding-top:20px;color:#59746c;font-size:16px}.sol-intro-grid p:first-child{margin-top:0}.sol-how{background:#edf4ee}.sol-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:40px}.sol-heading>p{max-width:330px;color:#5e756b}.sol-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.sol-flow article{background:#fff;min-height:320px;padding:27px;border:1px solid #dce9df;position:relative}.sol-number{font-size:10px;color:#288977;font-weight:800;letter-spacing:.15em}.sol-flow-icon{height:100px;margin:20px 0 15px;color:#278d79;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:36px}.sol-flow-icon.sun{font-size:88px;color:#d4a34b}.sol-flow-icon.panel{display:grid;grid-template-columns:repeat(2,26px);grid-template-rows:repeat(2,24px);gap:2px;align-content:center;transform:skew(-9deg)}.sol-flow-icon.panel i{background:#164c61;border:2px solid #85bac0}.sol-flow-icon.inverter{font-size:19px;border:2px solid #b4d9c9;height:70px;margin:35px auto 30px;max-width:140px}.sol-flow-icon.building{font-size:90px}.sol-flow h3{font-size:21px;margin:0 0 10px}.sol-flow p{font-size:13px;color:#62796f;margin:0}.sol-flow-note{font-size:12px;color:#6b8076;margin:18px 0 0}.sol-types{background:#fff}.sol-types-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:9%;align-items:center}.sol-types-grid>div:first-child>p{color:#59766c;max-width:550px}.sol-types-image{min-height:470px;background:linear-gradient(0deg,#062d3380,transparent 50%),url('assets/solar-rooftop-concept.webp') 74% center/cover;position:relative}.sol-types-image span{position:absolute;bottom:20px;left:23px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.14em}.sol-plan{background:#123b3f;color:#fff}.sol-plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.sol-plan h2 em{color:#b5dfce}.sol-plan-grid>div:first-child>p{color:#cde0d8;max-width:530px}.sol-plan-list>div{display:grid;grid-template-columns:35px 1fr;gap:3px 15px;border-top:1px solid #ffffff34;padding:17px 0}.sol-plan-list>div:last-child{border-bottom:1px solid #ffffff34}.sol-plan-list span{grid-row:span 2;color:#a9dec4;font-size:12px;font-weight:800}.sol-plan-list strong{font-size:15px}.sol-plan-list p{margin:0;color:#bcd6c9;font-size:13px}.sol-page #sol-contact{background:#f5faf5}
@media(max-width:1050px){.sol-flow{grid-template-columns:repeat(2,minmax(0,1fr))}.sol-flow article{min-height:280px}}
@media(max-width:700px){.sol-page .section{padding:67px 0}.sol-hero{min-height:620px;background-position:60% center}.sol-hero-inner{padding-top:29px;padding-bottom:55px}.sol-hero-copy{padding:70px 0}.sol-hero h1{font-size:clamp(45px,11vw,65px)}.sol-hero-actions{align-items:flex-start;flex-direction:column}.sol-intro-grid,.sol-types-grid,.sol-plan-grid{grid-template-columns:1fr;gap:25px}.sol-intro-grid>div:last-child{padding-top:0}.sol-heading{display:block;margin-bottom:30px}.sol-types-image{min-height:330px}}
@media(max-width:500px){.sol-flow{grid-template-columns:1fr}.sol-flow article{min-height:0}.sol-flow-icon{height:70px;margin:15px 0}.sol-page h2{font-size:37px}}
/* Services page */
.svc-page{overflow:hidden}.svc-page .section{padding:100px 0}.svc-page h1,.svc-page h2,.svc-page h3{font-family:'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em}.svc-page h2{font-size:clamp(38px,4.2vw,62px);line-height:1.14;margin:20px 0 24px}.svc-page h1 em,.svc-page h2 em{font:italic 400 1em Georgia,serif;color:#398e81}.svc-page p{line-height:1.8}.svc-hero{min-height:min(730px,calc(100svh - 84px));color:#fff;background:linear-gradient(90deg,#082e33ec 0%,#082e33df 36%,#082e3376 70%,#082e3320 100%),url('assets/services-maintenance-concept.webp') center/cover}.svc-hero-inner{min-height:inherit;position:relative;display:flex;flex-direction:column;padding-top:42px;padding-bottom:65px}.svc-hero .breadcrumbs{margin:0;color:#d5e9df}.svc-hero-copy{max-width:840px;margin:auto 0;padding:65px 0}.svc-hero .eyebrow.light{color:#b6e4cf}.svc-hero h1{font-size:clamp(52px,5.9vw,89px);line-height:1.07;margin:24px 0}.svc-hero h1 em{color:#c0e6d4}.svc-hero-copy>p{font-size:17px;max-width:630px;color:#dfeee8}.svc-hero-actions{display:flex;gap:30px;align-items:center;margin-top:31px}.svc-hero-actions>a:last-child{color:#e4f3e9;font-size:13px;font-weight:700;border-bottom:1px solid;padding-bottom:6px}.svc-concept{position:absolute;right:0;bottom:20px;font-size:9px;letter-spacing:.14em;font-weight:800;background:#082e33ca;padding:8px 11px}.svc-intro{background:#faf9f5}.svc-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.svc-intro-grid>div:last-child{padding-top:20px;color:#5a766c;font-size:16px}.svc-intro-grid p:first-child{margin-top:0}.svc-offerings{background:#eaf2ed}.svc-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:36px}.svc-heading>p{max-width:340px;color:#5c786d}.svc-offer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.svc-offer-grid article{background:#fff;border:1px solid #dce9df;padding:42px 45px;display:flex;flex-direction:column;min-height:540px}.svc-offer-no{color:#278b79;font-size:11px;font-weight:800;letter-spacing:.14em}.svc-offer-grid h3{font-size:clamp(32px,3vw,43px);line-height:1.17;margin:42px 0 15px}.svc-offer-grid p{color:#5f796f;max-width:480px;margin:0}.svc-offer-grid ul{padding:23px 0 0;margin:22px 0 0;list-style:none;border-top:1px solid #deebe2}.svc-offer-grid li{position:relative;padding:8px 0 8px 19px;color:#355d51;font-size:14px}.svc-offer-grid li:before{content:'↗';position:absolute;left:0;color:#278d79}.svc-offer-grid a{display:flex;justify-content:space-between;align-items:center;color:#0d7364;font-size:14px;font-weight:800;border-top:1px solid #deebe2;padding-top:22px;margin-top:auto}.svc-process{background:#103a3e;color:#fff}.svc-process-grid{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.svc-process h2 em{color:#b5dfce}.svc-process-grid>div>p{color:#d0e1d9;max-width:530px}.svc-process ol{list-style:none;padding:0;margin:0}.svc-process li{display:grid;grid-template-columns:35px 1fr;gap:15px;padding:21px 0;border-top:1px solid #ffffff35}.svc-process li:last-child{border-bottom:1px solid #ffffff35}.svc-process li>span{font-size:12px;color:#a5d8c1;font-weight:800}.svc-process li strong,.svc-process li small{display:block}.svc-process li small{font-size:13px;color:#bdd4c9;margin-top:7px;line-height:1.6}.svc-questions{background:#faf9f5}.svc-questions-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;align-items:start}.svc-questions-grid>div:first-child>p{color:#607b70;max-width:500px}.svc-question-list details{border-bottom:1px solid #d6e5dc}.svc-question-list details:first-child{border-top:1px solid #d6e5dc}.svc-question-list summary{list-style:none;display:flex;justify-content:space-between;gap:15px;cursor:pointer;font-weight:700;padding:21px 0;color:#133e39}.svc-question-list summary::-webkit-details-marker{display:none}.svc-question-list details[open] summary span{transform:rotate(45deg)}.svc-question-list details p{font-size:14px;color:#60776e;margin:0 0 22px}.svc-page #svc-contact{background:#e6f1eb}
@media(max-width:700px){.svc-page .section{padding:68px 0}.svc-hero{min-height:620px;background-position:62% center}.svc-hero-inner{padding-top:29px;padding-bottom:53px}.svc-hero-copy{padding:65px 0}.svc-hero h1{font-size:clamp(45px,11vw,65px)}.svc-hero-actions{align-items:flex-start;flex-direction:column}.svc-intro-grid,.svc-process-grid,.svc-questions-grid{grid-template-columns:1fr;gap:25px}.svc-intro-grid>div:last-child{padding-top:0}.svc-heading{display:block}.svc-offer-grid{grid-template-columns:1fr}.svc-offer-grid article{min-height:0;padding:33px}.svc-offer-grid h3{margin-top:27px}.svc-offer-grid a{margin-top:30px}}
@media(max-width:500px){.svc-page h2{font-size:37px}.svc-offer-grid article{padding:28px}.svc-offer-grid h3{font-size:34px}}
/* Five reasons for choosing Sshashvat */
.why-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.why-grid article{grid-column:span 2;min-height:225px;padding:32px}.why-grid article:nth-child(n+4){grid-column:span 3;min-height:200px}.why-grid h3{font-size:19px}.why-grid p{font-size:13px}
@media(max-width:760px){.why-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.why-grid article,.why-grid article:nth-child(n+4){grid-column:auto;min-height:0}.why-grid article:last-child{grid-column:1/-1}}
@media(max-width:510px){.why-grid{grid-template-columns:1fr}.why-grid article,.why-grid article:nth-child(n+4),.why-grid article:last-child{grid-column:auto}}
/* Project gallery */
.home-gallery-card{display:block;background:#fff;overflow:hidden;position:relative}.home-gallery-card img{width:100%;height:245px;object-fit:cover;display:block;transition:transform .35s ease}.home-gallery-card:hover img,.home-gallery-card:focus-visible img{transform:scale(1.045)}.home-gallery-card>span{display:flex;flex-direction:column;gap:5px;padding:18px;font-size:13px;font-weight:800}.home-gallery-card small{font-size:9px;letter-spacing:.13em;color:#679086}.home-gallery-card:focus-visible,.project-card:focus-visible{outline:3px solid #278d80;outline-offset:3px}.project-gallery-hero{background:#0c3539;color:#fff;padding:42px 0 92px}.project-gallery-hero .breadcrumbs{margin-bottom:58px}.project-gallery-hero-grid{display:grid;grid-template-columns:1fr 46%;align-items:center;gap:7%}.project-gallery-hero h1{font:700 clamp(46px,5.2vw,78px)/1.09 'Plus Jakarta Sans',sans-serif;letter-spacing:-.067em;margin:22px 0}.project-gallery-hero h1 em,.project-gallery-intro em{font-style:normal;color:#a7d7c5}.project-gallery-hero p{max-width:500px;font-size:15px;line-height:1.8;color:#c3d8d1;margin-bottom:34px}.project-gallery-hero-image{position:relative;background:#174a4b;padding:16px 16px 46px;box-shadow:22px 22px 0 #5e9a8960}.project-gallery-hero-image img{display:block;width:100%;height:390px;object-fit:cover}.project-gallery-hero-image span{display:block;padding:14px 3px 0;font-size:9px;letter-spacing:.16em;color:#c1e7d8}.project-gallery-content{background:#f6f8f3}.project-gallery-intro,.project-gallery-group-head{display:flex;justify-content:space-between;gap:40px;align-items:end}.project-gallery-intro h2{font:700 clamp(37px,4vw,57px)/1.15 'Plus Jakarta Sans',sans-serif;letter-spacing:-.06em;margin:18px 0 0}.project-gallery-intro em{color:#529582}.project-gallery-intro p,.project-gallery-group-head p{max-width:360px;color:#647c73;font-size:14px;line-height:1.75;margin:0}.project-gallery-jump{display:flex;flex-wrap:wrap;gap:10px;border-block:1px solid #d5e3d9;margin:46px 0 70px;padding:19px 0}.project-gallery-jump a{padding:11px 16px;border:1px solid #b9d0c5;background:#fff;font-size:11px;font-weight:700;letter-spacing:.03em}.project-gallery-jump a:hover{background:#0e4949;color:#fff}.project-gallery-group{margin:0 0 82px;scroll-margin-top:105px}.project-gallery-group:last-child{margin-bottom:0}.project-gallery-group-head{margin-bottom:26px}.project-gallery-group h2{font:700 clamp(26px,3vw,38px)/1.2 'Plus Jakarta Sans',sans-serif;letter-spacing:-.05em;margin:12px 0 0}.project-gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.project-card{display:grid;grid-template-columns:1fr auto;align-content:start;background:#fff;border:1px solid #e0e9e1;transition:transform .2s,box-shadow .2s;overflow:hidden}.project-card:hover{transform:translateY(-4px);box-shadow:0 15px 30px #153c351a}.project-card img{grid-column:1/-1;width:100%;height:235px;object-fit:cover;display:block;background:#e1e9e3}.project-card span{padding:17px 0 18px 16px;font-size:11px;font-weight:700;line-height:1.4}.project-card b{padding:15px;font-size:18px;font-weight:400;color:#2b8977}
@media(max-width:1000px){.project-gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-gallery-hero-image img{height:310px}}@media(max-width:760px){.project-gallery-hero{padding:25px 0 65px}.project-gallery-hero .breadcrumbs{margin-bottom:36px}.project-gallery-hero-grid{grid-template-columns:1fr;gap:40px}.project-gallery-hero-image{max-width:590px}.project-gallery-intro,.project-gallery-group-head{display:block}.project-gallery-intro p,.project-gallery-group-head p{margin-top:17px}.project-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.home-gallery-card img{height:220px}}@media(max-width:510px){.project-gallery-hero h1{font-size:44px}.project-gallery-hero-image img{height:260px}.project-gallery-jump{margin:35px 0 50px}.project-gallery-jump a{width:100%}.project-gallery-group{margin-bottom:60px}.project-gallery-grid{grid-template-columns:1fr}.project-card img{height:270px}.home-gallery-card img{height:220px}}
@media(prefers-reduced-motion:reduce){.home-gallery-card img,.project-card{transition:none}}

.project-gallery-hero-image img{object-fit:contain;background:#fff}
/* Client portfolio and homepage preview */
.client-page-hero{background:#0b3438;color:#fff;padding:42px 0 100px}.client-page-hero .breadcrumbs{margin-bottom:75px}.client-page-hero-inner{display:flex;justify-content:space-between;align-items:end;gap:60px}.client-page-hero h1{font:700 clamp(45px,5.1vw,76px)/1.1 'Plus Jakarta Sans',sans-serif;letter-spacing:-.065em;margin:24px 0 0}.client-page-hero h1 em{font:italic 400 1em Georgia,serif;color:#b2dccc}.client-page-hero-inner p{max-width:390px;color:#c4d9d1;font-size:15px;line-height:1.8;margin:0 0 7px}.client-portfolio{background:#f5f8f3}.client-portfolio-heading,.clients-preview-head{display:flex;justify-content:space-between;align-items:end;gap:55px;margin-bottom:42px}.client-portfolio-heading h2,.clients-preview-head h2{font:700 clamp(38px,4vw,56px)/1.18 'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em;margin:20px 0 0}.client-portfolio-heading h2 em,.clients-preview-head h2 em{font:italic 400 1em Georgia,serif;color:#3e897d}.client-portfolio-heading p,.clients-preview-head p{font-size:14px;color:#6e817b;line-height:1.8;max-width:390px;margin:0 0 8px}.clients-preview-head .text-link{display:inline-block;margin-top:12px}.client-portfolio-grid,.clients-preview-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.client-logo-card{min-width:0;min-height:180px;background:#fff;border:1px solid #dce9e1;display:flex;flex-direction:column;align-items:center;justify-content:space-between;gap:12px;padding:24px 13px 17px}.client-logo-image{height:92px;width:100%;display:flex;align-items:center;justify-content:center}.client-logo-image img{display:block;max-width:100%;max-height:90px;width:auto;height:auto;object-fit:contain}.client-logo-card>span{font-size:10px;line-height:1.35;text-align:center;color:#647b74;font-weight:700}.client-wordmark{color:#153777;font:800 19px 'Plus Jakarta Sans',sans-serif;letter-spacing:.02em}.client-portfolio-divider{display:flex;align-items:center;gap:25px;color:#557970;font-size:10px;font-weight:800;letter-spacing:.16em;margin:60px 0 24px}.client-portfolio-divider:after{content:'';height:1px;background:#c6dcd0;flex:1}.client-portfolio-note{font-size:11px;line-height:1.7;color:#789086;margin:32px 0 0}.clients-preview-grid .client-logo-card{min-height:160px}.clients-preview-grid .client-logo-image{height:75px}.clients-preview-grid .client-logo-image img{max-height:74px}
@media(max-width:1100px){.client-portfolio-grid,.clients-preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.client-page-hero{padding:28px 0 68px}.client-page-hero .breadcrumbs{margin-bottom:45px}.client-page-hero-inner,.client-portfolio-heading,.clients-preview-head{display:block}.client-page-hero-inner p,.client-portfolio-heading p,.clients-preview-head p{margin-top:22px}.client-portfolio-grid,.clients-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-logo-card{min-height:155px;padding:18px 10px 15px}.client-logo-image{height:80px}.client-logo-image img{max-height:76px}}@media(max-width:420px){.client-wordmark{font-size:16px}.client-page-hero h1{font-size:42px}}
/* Full-range cards lead to the corresponding product pages. */
.product-range-grid article{display:block;padding:0;min-height:0}
.product-range-grid .product-range-link{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:16px;align-items:center;padding:19px 20px;min-height:76px;color:var(--ink)}
.product-range-grid .product-range-number{font-size:11px;color:#339082;font-weight:800}
.product-range-grid .product-range-action{font-size:11px;font-weight:800;color:#13766f;white-space:nowrap}
.product-range-grid .product-range-link:hover,.product-range-grid .product-range-link:focus-visible{background:#f4fbf8;outline:2px solid #278579;outline-offset:2px}
@media(max-width:510px){.product-range-grid .product-range-link{grid-template-columns:22px minmax(0,1fr);gap:10px}.product-range-grid .product-range-action{grid-column:2}}
.product-range-grid .product-range-link:hover{text-decoration:none}
/* Contact page */
.contact-page-hero{background:#0b3438;color:#fff;padding:40px 0 84px}.contact-page-hero .breadcrumbs{margin-bottom:52px}.contact-page-hero-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:end}.contact-page-hero h1{font:700 clamp(42px,5vw,72px)/1.12 'Plus Jakarta Sans',sans-serif;letter-spacing:-.06em;margin:22px 0 0}.contact-page-hero h1 em{font:italic 400 1em Georgia,serif;color:#b2dccc}.contact-page-hero-grid>p{max-width:380px;font-size:15px;line-height:1.8;color:#c4d9d1;margin:0 0 6px}.contact-page-main{background:#f3f7f1}.contact-page-layout{display:grid;grid-template-columns:.8fr 1.3fr;gap:clamp(40px,7vw,100px);align-items:start}.contact-details h2,.contact-form-panel h2{font:700 clamp(30px,3vw,43px)/1.18 'Plus Jakarta Sans',sans-serif;letter-spacing:-.055em;margin:20px 0}.contact-details h2 em,.contact-form-panel h2 em{font:italic 400 1em Georgia,serif;color:#3e897d}.contact-details>p,.contact-form-panel>p{color:#6e817b;font-size:14px;line-height:1.8;max-width:430px}.contact-detail-block{display:flex;flex-direction:column;align-items:start;gap:10px;border-top:1px solid #cdded2;padding:25px 0}.contact-detail-block>span{font-size:10px;font-weight:800;letter-spacing:.15em;color:#428678}.contact-detail-block a{font-size:17px;font-weight:700;overflow-wrap:anywhere}.contact-detail-block small{font-size:12px;line-height:1.7;color:#72847b}.contact-form-panel{padding:clamp(24px,3.5vw,48px);background:#fff;border:1px solid #dce7dc;scroll-margin-top:105px}.enquiry-form{margin-top:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 20px}.form-field{min-width:0}.form-field-wide{grid-column:1/-1}.form-field label{display:block;font-size:12px;font-weight:700;margin-bottom:10px}.form-field label>span{color:#278776}.form-field label small{font-size:10px;font-weight:400;color:#7c8e84;margin-left:5px}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #cbded0;background:#fbfcfa;color:#173f43;border-radius:0;padding:14px;font:14px 'DM Sans',sans-serif;min-height:48px}.form-field textarea{resize:vertical;line-height:1.7}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:2px solid #2a8a78;outline-offset:2px}.form-field [aria-invalid=true]{border-color:#a74836}.form-error{display:block;color:#a74836;font-size:11px;margin-top:8px;line-height:1.5}.contact-form-bottom{display:flex;align-items:center;justify-content:space-between;gap:22px;margin-top:28px}.contact-form-bottom p{font-size:11px;line-height:1.7;color:#70867b;margin:0}.contact-form-bottom p span{font-size:10px}.contact-form-bottom .btn{border:0;font-family:inherit;cursor:pointer}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-notice{padding:18px;background:#fff2e9;border-left:3px solid #a74836;color:#743829;margin:24px 0}.form-notice strong{font-size:14px}.form-notice p{font-size:12px;line-height:1.7;margin:8px 0 0}.form-success{background:#edf7ee;border-color:#278776;color:#245b48}.contact-offices{background:#faf9f5}.contact-office-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.contact-office-grid article{background:#fff;border:1px solid #dce7dc;padding:30px}.contact-office-grid article>span{font-size:9px;letter-spacing:.15em;color:#4b8c7c;font-weight:800}.contact-office-grid h3{font:700 25px 'Plus Jakarta Sans',sans-serif;letter-spacing:-.04em;margin:20px 0}.contact-office-grid p{font-size:13px;line-height:1.9;color:#6d8178;min-height:100px}.contact-office-grid a{display:block;margin-top:15px;font-size:12px;font-weight:700;color:#26786b}.contact-detail-block a:hover,.contact-office-grid a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:950px){.contact-page-layout{grid-template-columns:.8fr 1.2fr;gap:30px}.contact-page-hero-grid{gap:35px}.contact-office-grid article{padding:23px}}@media(max-width:760px){.contact-page-hero{padding:26px 0 60px}.contact-page-hero .breadcrumbs{margin-bottom:35px}.contact-page-hero-grid,.contact-page-layout{grid-template-columns:1fr;gap:32px}.contact-office-grid{grid-template-columns:1fr}.contact-office-grid p{min-height:0}.contact-details{max-width:550px}.contact-form-panel{scroll-margin-top:84px}}@media(max-width:510px){.form-grid{grid-template-columns:1fr;gap:20px}.contact-form-bottom{display:block}.contact-form-bottom .btn{margin-top:20px;width:100%;justify-content:space-between}.contact-form-panel{padding:24px 20px}.contact-page-hero h1{font-size:41px}}
.contact-page-hero .breadcrumbs{color:#b4cdc3}.contact-page-hero .breadcrumbs a{color:#d9ebe3}
/* Separate the homepage enquiry section from the white client portfolio. */
#contact.contact{background:#eef4f0;border-top:1px solid #d6e5dc}
#contact.contact .contact-action{background:#d4e9dc;border:1px solid #bfd9c9}
.home-contact-phone{display:inline-flex;align-items:center;flex-wrap:wrap;gap:10px 16px;margin-top:16px;padding:13px 0;border-bottom:1px solid #94bcaa}.home-contact-phone>span:first-child{font-size:10px;letter-spacing:.14em;color:#488276;font-weight:800}.home-contact-phone strong{font-size:19px;letter-spacing:-.025em}.home-contact-phone:hover strong{text-decoration:underline;text-underline-offset:4px}.enquiry-popup{padding:0;border:0;width:min(780px,calc(100% - 36px));max-width:none;height:min(840px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);background:#fff;box-shadow:0 25px 100px #0005;overflow:hidden;color:#173f43}.enquiry-popup[open]{display:flex;flex-direction:column;animation:enquiry-enter .22s ease-out}.enquiry-popup::backdrop{background:#071e22d9;backdrop-filter:blur(4px)}.enquiry-popup-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:15px 22px;border-bottom:1px solid #dae8df;background:#eef4f0;flex-shrink:0}.enquiry-popup-toolbar>span{font-size:10px;letter-spacing:.13em;font-weight:800;color:#37786b}.enquiry-popup-toolbar button{border:0;background:#0b3438;color:#fff;padding:10px 14px;font:700 12px 'DM Sans',sans-serif;cursor:pointer}.enquiry-popup iframe{border:0;width:100%;flex:1;min-height:0;background:#fff}.enquiry-popup-open{overflow:hidden}.enquiry-popup.is-closing{animation:enquiry-exit .18s ease-in forwards}.contact-embedded .site-header,.contact-embedded .site-footer,.contact-embedded .contact-page-hero,.contact-embedded .contact-details,.contact-embedded .contact-offices{display:none}.contact-embedded .contact-page-main{padding:0;background:#fff}.contact-embedded .contact-page-layout{display:block;width:100%;margin:0}.contact-embedded .contact-form-panel{border:0;padding:28px 32px;scroll-margin-top:0}.contact-embedded .contact-form-panel h2{font-size:34px;margin:14px 0}.contact-embedded .contact-form-panel>.eyebrow{display:none}.contact-embedded .enquiry-form{margin-top:23px}@keyframes enquiry-enter{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes enquiry-exit{to{opacity:0;transform:translateY(12px)}}@media(max-width:510px){.enquiry-popup{width:calc(100% - 16px);height:calc(100dvh - 20px);max-height:calc(100dvh - 20px)}.enquiry-popup-toolbar{padding:12px 16px}.contact-embedded .contact-form-panel{padding:24px 20px}.home-contact-phone strong{font-size:18px}}@media(prefers-reduced-motion:reduce){.enquiry-popup[open],.enquiry-popup.is-closing{animation:none}}
/* Consistent bottom enquiry sections across the website. */
.enquiry-section.contact{background:#eef4f0;border-top:1px solid #d6e5dc}
.enquiry-section.contact .contact-action{background:#d4e9dc;border:1px solid #bfd9c9}
.res-hero-product.combined{position:relative;width:96%;height:88%;object-fit:contain;filter:none;mix-blend-mode:normal;margin-bottom:20px}
/* Larger mobile header mark, with room for the menu control. */
@media(max-width:760px){.site-header .header-inner{gap:18px}.site-header .logo{flex:0 1 auto;min-width:0}.site-header .logo img{width:clamp(195px,57vw,225px);height:auto;max-width:100%;max-height:63px}.site-header .menu{flex-shrink:0}}

/* Circular floating back-to-top arrow. */
.back-to-top{position:fixed;right:28px;bottom:28px;z-index:80;width:52px;height:52px;display:grid;place-items:center;border:1px solid #c7dfd2;border-radius:50%;background:#0b3438;color:#fff;box-shadow:0 6px 22px rgba(11,52,56,.25);cursor:pointer;transition:background .2s ease,transform .2s ease,box-shadow .2s ease}
.back-to-top[hidden]{display:none}
.back-to-top:hover{background:#37786b;transform:translateY(-3px);box-shadow:0 9px 26px rgba(11,52,56,.3)}
.back-to-top:focus-visible{outline:3px solid #88bfa0;outline-offset:4px}
.feature-open .back-to-top,.ion-lightbox-open .back-to-top,.enquiry-popup-open .back-to-top{visibility:hidden}
@media(max-width:760px){.back-to-top{width:46px;height:46px;right:18px;bottom:calc(18px + env(safe-area-inset-bottom,0px))}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}.back-to-top:hover{transform:none}}

/* Contact hero with the approved customer-support image. */
.contact-page-hero{position:relative;isolation:isolate;overflow:hidden;min-height:560px;padding:40px 0 74px;display:flex;align-items:center;background:#0b3438}
.contact-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-1}
.contact-page-hero>.container{position:relative}
.contact-page-hero-grid{display:block;max-width:650px}
.contact-page-hero h1{font-size:clamp(42px,4.5vw,64px)}
.contact-page-hero-grid>p{max-width:440px;margin:26px 0 0;color:#d9ebe3}
@media(max-width:1000px) and (min-width:761px){.contact-page-hero{min-height:490px}.contact-page-hero-grid{max-width:53%}.contact-page-hero h1{font-size:44px}.contact-hero-image{object-position:60% center}}
@media(max-width:760px){.contact-page-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:26px 0 0}.contact-page-hero>.container{order:0;padding-bottom:34px}.contact-page-hero-grid{max-width:none}.contact-page-hero h1{font-size:clamp(35px,8vw,46px)}.contact-page-hero-grid>p{margin-top:20px}.contact-hero-image{position:relative;inset:auto;order:1;width:100%;height:300px;object-fit:cover;object-position:right center;z-index:0}.contact-page-hero .breadcrumbs{margin-bottom:28px}}
@media(max-width:510px){.contact-hero-image{height:260px}}

/* Clients hero: partnership image with a clear heading area. */
.client-page-hero{position:relative;isolation:isolate;overflow:hidden;min-height:560px;padding:40px 0 74px;display:flex;align-items:center;background:#0b3438}
.client-hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.client-page-hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,52,56,.5),rgba(11,52,56,.15) 42%,transparent 65%);z-index:-1;pointer-events:none}
.client-page-hero>.container{position:relative}
.client-page-hero .breadcrumbs{margin-bottom:45px}
.client-page-hero-inner{display:block;max-width:520px}
.client-page-hero h1{font-size:clamp(42px,4.2vw,60px)}
.client-page-hero-inner p{max-width:410px;margin:26px 0 0;color:#d9ebe3}
@media(max-width:1000px) and (min-width:761px){.client-page-hero{min-height:490px}.client-page-hero-inner{max-width:45%}.client-page-hero h1{font-size:42px}.client-hero-image{object-position:60% center}}
@media(max-width:760px){.client-page-hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:26px 0 0}.client-page-hero::before{display:none}.client-page-hero>.container{order:0;padding-bottom:34px}.client-page-hero-inner{max-width:none}.client-page-hero h1{font-size:clamp(35px,8vw,46px)}.client-page-hero-inner p{margin-top:20px}.client-hero-image{position:relative;inset:auto;order:1;width:100%;height:300px;object-fit:cover;object-position:right center;z-index:0}.client-page-hero .breadcrumbs{margin-bottom:28px}}
@media(max-width:510px){.client-hero-image{height:260px}}
