/* Connected pipework: a continuous visual language across the page. */
.brand,.footer-brand{background:transparent}.brand{width:112px}.brand img{padding:5px}.footer-brand{width:125px}.hero-art>img{mix-blend-mode:normal;will-change:transform}
.chapter{position:relative;isolation:isolate}.chapter>.wrap{position:relative;z-index:1}
.chapter::before{content:"";position:absolute;right:5%;top:0;bottom:0;width:64px;border-left:1px solid #6896b320;border-right:1px solid #6896b320;pointer-events:none;z-index:0}
.chapter::after{content:"";position:absolute;right:calc(5% + 24px);top:-8px;width:16px;height:16px;border:3px solid #bc912f;background:#0c213b;border-radius:50%;z-index:2;pointer-events:none}
.services{background:radial-gradient(ellipse at 4% 50%,#c8dde84d,transparent 50%),#f3f5f6;padding-bottom:115px}
.services .section-heading{margin-bottom:100px}.services .section-heading h2{max-width:700px}
.service-showcase{position:relative;padding:55px 55px 110px;min-height:490px;outline-offset:10px;touch-action:pan-y}
.service-backdrop{position:absolute;inset:0;border-radius:18px;background:radial-gradient(ellipse at 15% 80%,#1e5b8d,transparent 60%),linear-gradient(115deg,#153957,#07192e 70%);box-shadow:0 28px 65px #0a244a18;overflow:hidden}
.service-backdrop::before{content:"";position:absolute;inset:0;background-image:linear-gradient(#96bddd09 1px,transparent 1px),linear-gradient(90deg,#96bddd09 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(to right,#000,transparent 80%)}
.service-backdrop span{position:absolute;width:410px;height:410px;border:1px solid #87bde52b;border-radius:50%;left:-65px;top:20px}.service-backdrop span+span{width:510px;height:510px;left:-115px;top:-30px}
.service-character{position:absolute;bottom:-20px;left:-26px;width:48%;height:calc(100% + 96px);z-index:3;pointer-events:none;will-change:transform}
.service-character img{width:100%;height:100%;object-fit:contain;object-position:center bottom;filter:drop-shadow(18px 22px 14px #0003)}
.service-deck{position:relative;z-index:4;margin-left:46%;color:#fff;min-width:0}
.service-slide h3{font-size:clamp(34px,3.5vw,52px);font-weight:600;line-height:1.1;letter-spacing:-.035em;max-width:650px}
.service-slide .service-intro{color:#fff;font-size:19px;line-height:1.5;margin:22px 0 16px}.service-slide .service-details{color:#b8cbde;font-size:15px;line-height:1.75;margin-bottom:28px}.service-slide .button{font-size:14px;padding:16px 20px;min-height:52px}
.service-slide[hidden]{display:none!important}.service-deck:not(.is-ready) .service-slide+.service-slide{margin-top:38px;padding-top:32px;border-top:1px solid #fff3}
.service-controls{position:absolute;left:calc(46% + 29px);right:55px;bottom:26px;z-index:5;display:flex;align-items:center;gap:9px;border-top:1px solid #ffffff24;padding-top:20px;color:white}
.service-controls[hidden]{display:none}.service-controls>button{border:1px solid #ffffff40;border-radius:50%;width:42px;height:42px;color:#fff;background:transparent;transition:background .2s}.service-controls>button:hover{background:var(--yellow);color:var(--navy)}.service-controls button:disabled{opacity:.3;cursor:default}.service-dots{display:flex;gap:2px;margin-right:auto;flex-wrap:wrap}.service-dots button{border:0;background:transparent;width:25px;height:34px;padding:8px;position:relative}.service-dots button::before{content:"";display:block;width:7px;height:7px;border-radius:50%;background:#859ab0;transition:background .2s,transform .2s}.service-dots button[aria-current="true"]::before{background:var(--yellow);transform:scale(1.5)}.service-counter{color:#b9cbdb;font-size:12px;margin:0 16px;white-space:nowrap;font-variant-numeric:tabular-nums}
.connection-art{max-width:360px;margin-top:48px}.connection-art svg{width:100%;height:auto;stroke:#97b3c7;stroke-width:2}.connection-art circle{fill:#f8f7f2;stroke:#cba23b;stroke-width:3}.connection-art path:first-child{stroke:#b99a47;stroke-dasharray:12 8;animation:flow-line 18s linear infinite}@keyframes flow-line{to{stroke-dashoffset:-200}}
.rental{border-radius:44px 44px 0 0;margin-top:-34px}.benefits{border-radius:0 0 44px 44px;margin-bottom:-34px;z-index:2;background:radial-gradient(ellipse at 0 90%,#d9e4ec66,transparent 50%),#f8f7f2}.leak{padding-top:34px}.area{background:radial-gradient(ellipse at 100% 100%,#dceaf299,transparent 60%),#fff}.contact{border-radius:44px 44px 0 0;margin-top:-34px}
.floating-wa{background:#20c568;color:#fff;border:1px solid #6eed9f;box-shadow:0 6px 24px #12874350;animation:wa-shadow 2.8s ease-in-out infinite}
.floating-wa::before,.floating-wa::after{content:"";position:absolute;inset:-1px;z-index:-1;border:1px solid #25d366a6;background:transparent;border-radius:50%;pointer-events:none;animation:wa-ring 2.8s ease-out infinite}.floating-wa::after{animation-delay:1.4s}.floating-wa:hover{background:#16b85b}.floating-wa svg{animation:wa-icon 2.8s ease-in-out infinite}
@keyframes wa-ring{0%{transform:scale(1);opacity:.7}80%,100%{transform:scale(1.75);opacity:0}}@keyframes wa-shadow{0%,100%{box-shadow:0 6px 22px #12874350,0 0 0 0 #25d36626}50%{box-shadow:0 8px 36px #12874388,0 0 0 8px #25d3660a}}@keyframes wa-icon{0%,100%{transform:scale(1)}50%{transform:scale(1.09)}}
@media(max-width:1100px){.service-showcase{padding:42px 35px 110px}.service-character{left:-15px;width:47%}.service-deck{margin-left:45%}.service-controls{left:calc(45% + 20px);right:35px}.service-slide h3{font-size:37px}.service-slide .service-intro{font-size:17px}}
@media(max-width:760px){.brand{width:85px}.services .section-heading{margin-bottom:50px}.service-showcase{padding:0 24px 25px;min-height:0}.service-backdrop{top:110px;border-radius:16px}.service-character{position:relative;left:auto;bottom:auto;width:100%;height:380px;margin-top:-22px;margin-bottom:20px}.service-character img{object-position:center bottom}.service-deck{margin-left:0}.service-slide h3{font-size:34px}.service-slide .service-intro{font-size:17px;margin-top:18px}.service-slide .service-details{font-size:14px}.service-slide .button{width:100%;gap:12px;font-size:13px}.service-controls{position:relative;left:auto;right:auto;bottom:auto;margin-top:30px;gap:5px}.service-counter{margin:0 5px;font-size:11px}.service-controls>button{width:38px;height:38px;flex-shrink:0}.service-dots button{width:21px;padding:7px}.services{padding-bottom:90px}.connection-art{display:block;max-width:240px;margin-top:30px}.chapter::before{right:12px;width:20px}.chapter::after{right:17px;width:10px;height:10px;top:-5px;border-width:2}.rental,.contact{border-radius:25px 25px 0 0;margin-top:-20px}.benefits{border-radius:0 0 25px 25px;margin-bottom:-20px}.leak{padding-top:20px}.footer-brand{width:85px}}
@media(prefers-reduced-motion:reduce){.floating-wa,.floating-wa::before,.floating-wa::after,.floating-wa svg,.connection-art path:first-child{animation:none!important}.floating-wa::before,.floating-wa::after{display:none}}
@media(max-width:760px){.service-controls{padding-right:56px}.service-counter{display:none}}
