:root{font-family:Inter,Arial,sans-serif;color:#152c3f;background:#fff;font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;--blue:#0084ff}
*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #0075dc;outline-offset:6px}a{color:inherit;text-decoration:none}button{color:inherit}svg{display:block;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}button{border:0}html{scroll-behavior:smooth}.page{position:relative;max-width:1600px;margin:auto;min-height:100svh;overflow:clip;background:#fff}.ambient{position:absolute;inset:0;pointer-events:none;overflow:hidden}.ambient span{position:absolute;border-radius:50%;filter:blur(95px)}.ambient span:first-child{width:610px;height:490px;left:-270px;top:-325px;background:#60b1ff;opacity:.5}.ambient span:last-child{width:490px;height:310px;left:90px;top:-280px;background:#319aff;opacity:.3}
.glass-nav{position:sticky;top:30px;z-index:30;display:flex;align-items:center;gap:48px;width:fit-content;max-width:calc(100% - 48px);margin:30px auto 0;padding:10px 12px 10px 27px;border:1px solid rgba(0,0,0,.1);border-radius:16px;background:rgba(255,255,255,.3);backdrop-filter:blur(50px);-webkit-backdrop-filter:blur(50px);box-shadow:inset 0 4px 4px rgba(255,255,255,.25),0 8px 24px rgba(34,92,146,.025)}.brand{font-family:Fustat,Arial,sans-serif;font-size:28px;font-weight:700;letter-spacing:-1.5px;white-space:nowrap}.brand-dot{color:var(--blue)}nav{display:flex;align-items:center;gap:29px}.nav-link{font-size:14px;font-weight:500;color:#64707b;background:none;padding:12px 0;transition:color .2s}.nav-link.active,.nav-link:hover{color:#0e2235}.install-button{display:flex;align-items:center;justify-content:center;gap:16px;background:rgba(255,255,255,.4);border:1px solid rgba(0,0,0,.1);border-radius:11px;padding:14px 17px;font-size:14px;font-weight:500;box-shadow:inset 0 4px 4px rgba(255,255,255,.5);transition:background .2s,transform .2s}.install-button:hover{background:rgba(232,245,255,.8);transform:translateY(-1px)}.install-button svg{width:18px;height:18px}.menu-button{display:none}
main{position:relative;z-index:10}.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:710px;padding:90px 7.1% 86px;gap:16px}.hero-copy{position:relative;z-index:3;padding-top:4px}.eyebrow{display:flex;align-items:center;gap:9px;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;font-weight:500;color:#6b8296;margin:0 0 28px}.tiny-drop{display:block;width:8px;height:11px;border:1.2px solid #0084ff;border-radius:70% 30% 60% 45%;transform:rotate(-35deg)}h1{font-family:Fustat,Arial,sans-serif;font-size:75px;line-height:1.05;font-weight:700;letter-spacing:-2px;margin:0 0 28px;max-width:650px;color:#122b3d}.description{max-width:415px;font-size:18px;line-height:1.65;letter-spacing:-1px;margin:0 0 31px;color:#6a7985}.description em{font-style:italic;color:#177ccc}.primary-button{display:inline-flex;align-items:center;gap:28px;border:1px solid rgba(0,111,239,.13);border-radius:16px;background:rgba(0,132,255,.8);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px);color:#fff;box-shadow:inset 0 4px 4px rgba(255,255,255,.35),0 6px 18px rgba(0,132,255,.12);padding:15px 16px 15px 24px;font-size:16px;font-weight:500;transition:transform .25s,background .25s,box-shadow .25s}.primary-button:hover{transform:scale(1.02);background:rgba(0,124,245,.9);box-shadow:inset 0 4px 4px rgba(255,255,255,.35),0 8px 24px rgba(0,132,255,.2)}.arrow-circle{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:white;color:#258dff}.arrow-circle svg{width:18px;height:18px}.hero-note{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:-.1px;color:#93a0aa;margin-top:20px}.hero-note>span{font-size:18px;color:#8196a6}
.hero-art{position:relative;min-width:0;aspect-ratio:1;align-self:center;isolation:isolate;transform:translate(26px,-10px)}
.hero-footer{position:relative;z-index:10;margin:0 7.1%;padding:26px 0 30px;border-top:1px solid #eaf0f4;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#92a0ab;letter-spacing:.15px}.footer-wordmark{display:flex;align-items:center;gap:12px;color:#5e7688}.footer-wordmark svg{width:14px;height:17px;stroke:#77b9f1}
dialog{position:fixed;inset:0;padding:40px;max-width:min(480px,calc(100vw - 32px));width:480px;border:1px solid rgba(255,255,255,.7);border-radius:24px;color:#152c3f;background:rgba(255,255,255,.94);box-shadow:0 24px 100px #1b59812b;backdrop-filter:blur(40px)}dialog::backdrop{background:rgba(26,62,88,.2);backdrop-filter:blur(9px)}.close-button{position:absolute;right:17px;top:17px;border-radius:50%;background:#edf5fa;padding:7px}.close-button svg{width:18px;height:18px}.dialog-kicker{font-family:Fustat,sans-serif;font-weight:800;font-size:22px;margin-bottom:27px}.dialog-kicker span{color:#0084ff}h2{font-family:Fustat,sans-serif;font-size:34px;line-height:1.1;letter-spacing:-1px;margin:0 0 18px}#dialog-content{font-size:16px;line-height:1.6;color:#667a8a}#dialog-content p{margin:0 0 17px}#dialog-content ol{padding-left:22px}#dialog-content li{padding:5px 0}#dialog-content .primary-button{margin-top:9px;color:#fff;line-height:1.4}.dialog-small{font-size:13px;color:#8196a6}
@media(min-width:1440px){.hero{min-height:750px;padding-top:106px;padding-bottom:105px}.hero-art{transform:translate(27px,-8px)}}
@media(min-width:1600px){.page{min-height:900px}.hero{min-height:755px}}
@media(max-width:1100px){.hero{padding-left:6%;padding-right:6%;min-height:660px;gap:0}h1{font-size:62px;letter-spacing:-1.8px}.hero-art{transform:translate(15px,-5px)}.glass-nav{gap:30px}nav{gap:23px}.eyebrow{font-size:11px;letter-spacing:1.1px}.hero-footer{margin:0 6%}}
@media(width < 768px){.glass-nav{top:18px;margin-top:18px;max-width:calc(100% - 32px);width:calc(100% - 32px);padding:10px 12px 10px 18px;gap:14px}.brand{font-size:26px;margin-right:auto}.install-button{padding:11px 13px;font-size:12px;gap:9px}.install-button svg{width:16px;height:16px}.menu-button{display:flex;flex-direction:column;justify-content:center;gap:5px;background:none;width:31px;height:35px;padding:6px}.menu-button span{width:18px;height:1.5px;background:#203d53;transition:transform .2s}.menu-button[aria-expanded=true] span:first-child{transform:translateY(3.25px) rotate(45deg)}.menu-button[aria-expanded=true] span:last-child{transform:translateY(-3.25px) rotate(-45deg)}nav{display:none;position:absolute;top:calc(100% + 9px);left:0;right:0;padding:12px 20px;background:rgba(248,252,255,.98);border:1px solid #dce9f3;border-radius:16px;box-shadow:0 10px 30px #2b679818}nav.is-open{display:flex;justify-content:space-between;gap:12px}.nav-link{font-size:13px}.hero{grid-template-columns:1fr;padding:70px 8% 70px;gap:14px;min-height:auto}.hero-copy{padding:0}h1{font-size:clamp(44px,8.6vw,64px);letter-spacing:-1.6px;line-height:1.06;margin-bottom:23px}.eyebrow{font-size:10px;letter-spacing:1.25px;margin-bottom:23px}.description{font-size:18px;max-width:400px;margin-bottom:25px}.primary-button{font-size:15px;padding:14px 15px 14px 21px;gap:25px}.hero-note{font-size:11px;margin-top:16px}.hero-art{width:100%;max-width:520px;justify-self:center;transform:translate(0,0);margin-top:20px}.hero-footer{margin:0 8%;font-size:10px;padding:24px 0;gap:15px;align-items:flex-start}.footer-wordmark{gap:7px;white-space:nowrap}.footer-wordmark svg{width:11px;height:14px}.hero-footer>span:first-child{max-width:175px;line-height:1.7}.ambient span:first-child{width:440px;height:380px;top:-245px;left:-260px}.ambient span:last-child{left:-90px;top:-280px}dialog{padding:32px 26px}}


/* The opening scene fills the viewport; the story follows in normal flow. */
main{margin-top:-100px}
.hero{height:100svh;min-height:720px;padding:145px 7.1% 100px}

.hero-art{width:min(100%,64svh);justify-self:center}



.ambient{bottom:auto;height:100svh}

.scroll-cue{position:absolute;bottom:29px;left:50%;display:flex;align-items:center;gap:11px;padding:12px 18px;border:1px solid rgba(0,0,0,.1);border-radius:999px;background:rgba(255,255,255,.3);box-shadow:inset 0 4px 4px rgba(255,255,255,.25);backdrop-filter:blur(50px);-webkit-backdrop-filter:blur(50px);font-size:12px;font-weight:500;color:#526f84;translate:-50% 0;opacity:1;transition:opacity .35s ease}
.scroll-cue svg{width:16px;height:16px}
.scroll-cue.is-dismissed{opacity:0;pointer-events:none}
section[id]{scroll-margin-top:125px}
.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}
.proof-strip{position:relative;padding:31px 7.1% 43px;border-top:1px solid #e6edf3;border-bottom:1px solid #e6edf3;background:#fafcfe}
.preview-label{font-size:12px;line-height:1.5;letter-spacing:.15px;color:#6f8291}
.proof-strip>.section-kicker{margin:0 0 25px;text-align:center;font-size:11px;color:#6f8799}
.stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.stat{display:flex;flex-direction:column;align-items:center;text-align:center;padding:6px 22px;gap:9px}
.stat+.stat{border-left:1px solid #dce7ef}
.stat-value{display:flex;justify-content:center;align-items:baseline;font-family:Fustat,Arial,sans-serif;font-size:48px;font-weight:700;line-height:1.15;letter-spacing:-1.7px;color:#153b57;font-variant-numeric:tabular-nums}
.stat-star{font-size:30px;align-self:center;margin-left:4px;color:#78b9ef}
.stat-label{font-size:14px;line-height:1.5;color:#687d8d}
.story-section{position:relative;padding:110px 7.1%}
.section-intro{max-width:690px;margin-bottom:51px}
.section-kicker{margin:0 0 16px;color:#4585b6;font-size:12px;line-height:1.5;font-weight:500;text-transform:uppercase;letter-spacing:1.7px}
.story-section h2{font-family:Fustat,Arial,sans-serif;font-weight:700;font-size:40px;line-height:1.14;letter-spacing:-1.3px;margin:0 0 17px}
.section-description{font-size:17px;line-height:1.65;color:#6a7e8e;max-width:530px;margin:0 0 14px}
.section-intro .preview-label{margin:0}
.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:64px}
.step{position:relative;border-top:1px solid #dfeaf2;padding-top:23px}
.step-number{display:block;font-family:Fustat,Arial,sans-serif;font-size:57px;font-weight:700;letter-spacing:-2px;line-height:1.1;color:rgba(0,132,255,.3);margin:0 0 27px}
.step h3,.feature-card h3{font-family:Inter,Arial,sans-serif;font-size:18px;line-height:1.4;font-weight:500;letter-spacing:-.45px;margin:0 0 12px}
.step p,.feature-card p{font-size:16px;line-height:1.75;color:#6b7f8e;letter-spacing:-.25px;margin:0;max-width:330px}
.features-section{padding-top:29px;padding-bottom:119px}
.features-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch;background:#f9fcfe;border-radius:16px}
.feature-card{padding:34px 30px 37px;background:rgba(255,255,255,.3);backdrop-filter:blur(50px);-webkit-backdrop-filter:blur(50px);border-radius:16px;border:1px solid rgba(0,0,0,.1);box-shadow:inset 0 4px 4px rgba(255,255,255,.25);transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s cubic-bezier(.22,1,.36,1)}
.feature-icon{display:grid;place-items:center;width:43px;height:43px;margin-bottom:38px;border:1px solid #ddeefa;border-radius:13px;background:rgba(227,243,255,.65);color:#328ede}
.feature-icon svg{width:23px;height:23px;stroke-width:1.5}
.feature-card:hover{transform:translateY(-4px);box-shadow:inset 0 4px 4px rgba(255,255,255,.6)}
.final-cta{position:relative;overflow:hidden;isolation:isolate;padding:106px 7.1% 112px;text-align:center;border-top:1px solid #e9f0f5}
.cta-glow{position:absolute;width:min(750px,110vw);height:290px;left:50%;top:115px;transform:translateX(-50%);z-index:-1;background:radial-gradient(ellipse,rgba(96,177,255,.16),rgba(49,154,255,.05) 50%,transparent 74%);filter:blur(45px);pointer-events:none}
.cta-content{position:relative}
.final-cta h2{font-family:Fustat,Arial,sans-serif;font-size:48px;font-weight:700;line-height:1.12;letter-spacing:-1.5px;margin:0 0 20px}
.final-cta .cta-content>p:not(.section-kicker){font-size:17px;line-height:1.6;color:#718595;margin:0 0 30px}
.mobile-break{display:none}
.hero-footer{margin:0 7.1%;font-size:12px}

/* One opt-in reveal treatment. Without JavaScript, everything is visible. */
@media(prefers-reduced-motion:no-preference){
  .motion-enabled .scroll-cue:not(.is-ready):not(.is-dismissed){opacity:0;pointer-events:none}
  .motion-enabled .scroll-cue.is-ready svg{animation:cue-bounce 1.4s ease-in-out 3}
  .motion-enabled [data-reveal]:not([data-reveal="group"]),
  .motion-enabled [data-reveal="group"]>*{opacity:0;transform:translateY(40px);transition:opacity .8s cubic-bezier(.22,1,.36,1),transform .8s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay,0s)}
  .motion-enabled [data-reveal].is-revealed:not([data-reveal="group"]),
  .motion-enabled [data-reveal="group"].is-revealed>*{opacity:1;transform:translateY(0)}
  .motion-enabled [data-reveal="group"].reveal-complete>.feature-card{transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s cubic-bezier(.22,1,.36,1);transition-delay:0s}
  .motion-enabled [data-reveal="group"].reveal-complete>.feature-card:hover{transform:translateY(-4px);box-shadow:inset 0 4px 4px rgba(255,255,255,.6)}
}
@keyframes cue-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(6px)}}
@media(min-width:1600px){.page{min-height:100svh}.hero{height:100svh;min-height:780px}}
@media(max-width:1100px) and (width >= 768px){.hero{padding-left:6%;padding-right:6%;min-height:720px}.steps-grid{gap:32px}.feature-card{padding:28px 23px}.stat{padding:6px 14px}.stat-value{font-size:42px}.story-section{padding-left:6%;padding-right:6%}}
@media(max-height:790px) and (width >= 768px){.hero{padding-top:125px;padding-bottom:85px;min-height:690px}.hero h1{font-size:62px}.hero .eyebrow{margin-bottom:20px}.hero .description{margin-bottom:23px}.hero-art{width:min(100%,61svh)}}
@media(width < 768px){
  main{margin-top:-80px}
  .hero{height:auto;min-height:100svh;padding:141px 8% 106px;gap:14px}
  .hero-art{width:min(100%,410px);margin-top:29px}
  
  .scroll-cue{bottom:21px;padding:11px 16px;font-size:12px;white-space:nowrap}
  section[id]{scroll-margin-top:104px}
  .proof-strip{padding:30px 8% 34px}
  .proof-strip>.preview-label{max-width:235px;margin:0 auto 22px}
  .stats-grid{grid-template-columns:1fr;gap:27px}
  .stat{padding:5px 0;gap:6px}
  .stat+.stat{border-left:0}
  .stat-value{font-size:44px}
  .stat-label{font-size:14px}
  .story-section{padding:74px 8%}
  .section-intro{margin-bottom:37px}
  .story-section h2{font-size:34px;letter-spacing:-1px}
  .section-description{font-size:16px}
  .steps-grid{grid-template-columns:1fr;gap:32px}
  .step{display:grid;grid-template-columns:60px 1fr;column-gap:18px;padding-top:26px}
  .step-number{grid-row:1/3;font-size:43px;margin:0}
  .step h3{margin:1px 0 9px}
  .step p{max-width:none}
  .features-section{padding-top:6px;padding-bottom:75px}
  .features-grid{grid-template-columns:1fr;gap:17px}
  .feature-card{padding:28px}
  .feature-icon{margin-bottom:28px}
  .feature-card p{max-width:none}
  .final-cta{padding:77px 8% 83px}
  .final-cta h2{font-size:38px;letter-spacing:-1.1px}
  .final-cta .section-kicker{font-size:11px;letter-spacing:1.3px}
  .final-cta .cta-content>p:not(.section-kicker){font-size:16px}
  .cta-glow{top:74px}
  .mobile-break{display:block}
  .hero-footer{margin:0 8%;font-size:11px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important}
  .hero-art,.hero-copy,.ambient,
  [data-reveal],[data-reveal]>*{transform:none!important;opacity:1!important;will-change:auto!important}
  .scroll-cue:not(.is-dismissed){opacity:1!important;pointer-events:auto!important}
  .scroll-cue svg,.feature-card:hover,.primary-button:hover,.install-button:hover{transform:none!important}
  .hero-copy,[data-reveal],[data-reveal]>*,.feature-card,.primary-button,.install-button{transition:opacity .2s ease!important;transition-delay:0s!important}
}

.purchase-options{display:grid;gap:14px;margin:23px 0}.purchase-options section{padding:19px;border:1px solid #dce9f3;border-radius:14px;background:#f5faff}.purchase-options h3{font-size:16px;font-weight:500;color:#224762;margin:0 0 7px}#dialog-content .purchase-options p{font-size:14px;margin:0;line-height:1.65}

/* The product story follows the water. */
.product-intro{max-width:820px;margin:0 auto 48px;text-align:center}
.proof-strip{padding-top:66px;padding-bottom:43px}
.development-tag{display:inline-flex;align-items:center;gap:7px;padding:7px 11px;margin-bottom:25px;border:1px solid #d7e6ee;border-radius:99px;background:#fff;color:#6d8393;font-size:10px;font-weight:500;letter-spacing:.5px}
.development-tag>span{width:5px;height:5px;background:#60a8d8;border-radius:50%}
.product-intro .section-kicker{margin-bottom:13px}
.product-intro h2{font-size:55px;font-weight:700;letter-spacing:-1.8px;line-height:1.08;margin-bottom:20px}
.product-intro>p:not(.section-kicker){max-width:490px;margin:0 auto 21px;font-size:17px;line-height:1.6;color:#6b8090;letter-spacing:-.35px}
.text-link{display:inline-flex;gap:17px;align-items:center;font-size:14px;font-weight:500;color:#167ed1}
.text-link:hover{color:#005bac}.text-link span{font-size:24px}
.stats-grid{border-top:1px solid #e0eaf1;padding-top:32px}
.how-section{padding-bottom:85px}
.reuse-section{padding-top:35px}
.reuse-heading{display:flex;justify-content:space-between;gap:45px;align-items:flex-end;margin-bottom:32px}
.reuse-heading .section-description{max-width:340px;margin-bottom:19px;font-size:16px}
.reuse-cinema{display:grid;grid-template-columns:205px minmax(0,1fr);gap:0 29px}
.reuse-tabs{display:flex;flex-direction:column;gap:8px;align-self:start}
.reuse-tab{display:flex;align-items:center;gap:12px;text-align:left;padding:18px 14px;border:1px solid transparent;border-radius:14px;background:transparent;color:#9aabba;font-size:11px;transition:background .2s,color .2s}
.reuse-tab span{font-size:14px;font-weight:500;color:#657e90}
.reuse-tab svg{width:14px;height:14px;margin-left:auto}
.reuse-tab[aria-selected=true]{border-color:#d3e8f7;background:#eef7fe;color:#3b8ac5;box-shadow:inset 0 3px 5px #fff}
.reuse-tab[aria-selected=true] span{color:#174b72}
.reuse-tab:hover{background:#f4f9fd}
.reuse-panel{min-width:0;grid-column:2;grid-row:1}
.reuse-panel[hidden]{display:none}
.film-frame{position:relative;border-radius:20px;overflow:hidden;background:#dce9e7;aspect-ratio:16/9;isolation:isolate}
.reuse-video,.reuse-image{display:block;width:100%;height:100%;object-fit:cover}
.reuse-image{object-position:65% center}
.film-badge{position:absolute;left:22px;top:21px;pointer-events:none;padding:9px 13px;border:1px solid #ffffff70;border-radius:99px;background:#ffffffd9;backdrop-filter:blur(20px);font-size:11px;font-weight:500;letter-spacing:.2px;color:#315850}
.film-caption{display:flex;gap:24px;justify-content:space-between;align-items:baseline;padding:20px 1px 0}
.film-caption h3{margin:0;font-size:17px;line-height:1.4;font-weight:500;letter-spacing:-.4px}
.film-caption p{max-width:260px;font-size:13px;line-height:1.6;color:#728797;margin:0}
.film-context,.film-error{grid-column:2;margin:15px 0 0;font-size:11px;line-height:1.6;color:#8c9ca8}
.film-error{color:#476b83}.film-error a{text-decoration:underline}
.impact-section{display:grid;grid-template-columns:1fr 1fr;gap:76px;align-items:center;padding-top:28px;padding-bottom:110px}
.impact-copy .section-description{font-size:16px}
.impact-controls{margin-top:31px;max-width:440px}
.impact-controls label{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:13px;color:#6c8191;margin-bottom:13px}
.impact-controls output{font-family:Fustat,sans-serif;font-size:22px;font-weight:700;color:#1e547b;white-space:nowrap}
.impact-controls input[type=range]{display:block;width:100%;height:5px;margin:0 0 30px;appearance:none;-webkit-appearance:none;border-radius:999px;background:#daeaf5;accent-color:#0084ff;cursor:pointer}
.impact-controls input[type=range]::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:22px;height:22px;border:4px solid white;border-radius:50%;background:#2f99ef;box-shadow:0 0 0 1px #9fcef1,0 3px 8px #1988de30}
.impact-controls input[type=range]::-moz-range-thumb{width:14px;height:14px;border:4px solid white;border-radius:50%;background:#2f99ef;box-shadow:0 0 0 1px #9fcef1}
.impact-controls input:focus-visible{outline:2px solid #0075dc;outline-offset:9px}
.estimate-note{font-size:11px;line-height:1.7;color:#8295a4;max-width:430px;margin:0}
.impact-result{position:relative;min-height:405px;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden;isolation:isolate;border-radius:25px;border:1px solid #d4e8f7;background:#f1f9ff;box-shadow:inset 0 4px 8px #fff;--water-level:.3}
.water-vessel{position:absolute;inset:15px;border:1px solid #d7eaf8;border-radius:16px;overflow:hidden;pointer-events:none;z-index:-1}
.vessel-fill{position:absolute;inset:0;background:linear-gradient(180deg,#78caff99,#99d9ff66);transform:scaleY(var(--water-level));transform-origin:bottom;transition:transform .35s cubic-bezier(.22,1,.36,1);box-shadow:inset 0 3px 0 #ffffffad}
.water-surface{position:absolute;top:-9px;left:-5%;width:110%;height:26px;border:2px solid #a4dfff;border-radius:50%;background:#d1efffe6}
.vessel-marks{position:absolute;inset:26px 18px;z-index:1;border-left:1px solid #b9d8ec;background:repeating-linear-gradient(to bottom,#b9d8ec 0,#b9d8ec 1px,transparent 1px,transparent 32px);width:9px}
.vessel-label{position:absolute;bottom:24px;left:0;right:0;text-align:center;font-size:10px;letter-spacing:1.2px;text-transform:uppercase;color:#4c92c2}
.impact-number{display:flex;flex-direction:column;align-items:center;gap:1px;color:#174c74;font-family:Fustat,sans-serif}
.impact-overline{font-family:Inter,sans-serif;color:#678ca7;font-size:12px;letter-spacing:.3px;margin-bottom:17px}
#annual-water{font-size:86px;line-height:1;font-weight:700;letter-spacing:-3.5px;font-variant-numeric:tabular-nums}
.impact-unit{font-size:25px;font-weight:500;letter-spacing:-.8px;margin-top:2px}
.impact-formula{font-size:12px;color:#5b86a3;margin:19px 0 24px}
.company-section{display:grid;grid-template-columns:1fr 1fr;gap:86px;border-top:1px solid #e5edf3;padding-top:85px;padding-bottom:85px}
.company-section h2{max-width:470px}
.company-section .section-description{font-size:16px;max-width:360px}
.company-facts{display:grid;gap:24px}
.company-facts>div{padding-bottom:22px;border-bottom:1px solid #e5edf3}
.company-facts>div:last-child{padding-bottom:0;border-bottom:0}
.company-facts span{font-size:11px;font-weight:500;color:#4b8cbf;letter-spacing:.5px;text-transform:uppercase}
.company-facts p{font-size:15px;line-height:1.65;margin:9px 0 0;color:#6b8292;max-width:410px}
.media-credits{max-width:1600px;padding:0 7.1% 24px;margin:auto;font-size:10px;color:#8fa1af}
.media-credits details{max-width:700px}.media-credits summary{cursor:pointer}.media-credits p{line-height:1.8}.media-credits a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:1100px){.reuse-cinema{grid-template-columns:175px minmax(0,1fr);gap:0 20px}.impact-section,.company-section{gap:40px}.film-caption{flex-direction:column;gap:8px}.film-caption p{max-width:none}.impact-result{min-height:385px}}
@media(width < 768px){
  .proof-strip{padding-top:42px}.product-intro{margin-bottom:33px}.product-intro h2{font-size:38px;letter-spacing:-1.2px}.product-intro>p:not(.section-kicker){font-size:15px}.development-tag{margin-bottom:22px}
  .stats-grid{padding-top:27px}.how-section{padding-bottom:65px}.reuse-section{padding-top:0;padding-bottom:68px}
  .reuse-heading{display:block;margin-bottom:22px}.reuse-heading .section-description{font-size:15px;margin-top:14px;max-width:100%}
  .reuse-cinema{display:block}.reuse-tabs{flex-direction:row;gap:8px;margin-bottom:17px}.reuse-tab{flex:1;gap:8px;padding:13px 10px}.reuse-tab span{font-size:12px}.reuse-tab svg{display:none}
  .film-frame{border-radius:15px;aspect-ratio:4/3}.film-badge{top:12px;left:12px;padding:7px 9px;font-size:9px}.film-caption{padding-top:15px}.film-caption h3{font-size:16px}.film-caption p{font-size:13px}.film-context{font-size:10px}
  .impact-section{grid-template-columns:1fr;gap:27px;padding-top:0;padding-bottom:77px}.impact-result{min-height:350px}.impact-controls{max-width:none}.estimate-note{font-size:10px}#annual-water{font-size:76px}
  .company-section{grid-template-columns:1fr;gap:29px;padding-top:58px;padding-bottom:65px}.company-facts{gap:20px}.company-facts p{font-size:14px}.company-section .section-description{font-size:15px}
  .media-credits{padding-left:8%;padding-right:8%;font-size:9px}
}
@media(prefers-reduced-motion:reduce){.vessel-fill{transition:none}.reuse-tab{transition:none}}

/* Blue light follows the edges; the white canvas stays quiet. */
:root{--neon-edge:#71caff;--neon-shadow:0 0 0 1px #b4eaff85,0 0 22px #42b8ff18}
.reading-progress{position:fixed;inset:0 0 auto;height:3px;z-index:60;pointer-events:none;background:linear-gradient(90deg,#0084ff,#69e4ff);transform:scaleX(var(--reading-progress,0));transform-origin:left;box-shadow:0 0 9px #34baff80}
.story-section::before{content:"";position:absolute;top:14px;left:7.1%;right:7.1%;height:1px;background:linear-gradient(90deg,#128eff,#72dcff 60%,transparent);transform:scaleX(var(--section-progress,1));transform-origin:left;opacity:.55;pointer-events:none}
.feature-card,.company-facts>div,.impact-controls,.purchase-options section{position:relative;border:1px solid #99d5fa;border-radius:16px;box-shadow:inset 0 1px 0 #fff,var(--neon-shadow);background:linear-gradient(135deg,#ffffffad,#f4fbff7a);transition:transform .35s cubic-bezier(.22,1,.36,1),box-shadow .35s,border-color .35s}
.feature-card::after,.impact-controls::after,.company-facts>div::after{content:"";position:absolute;inset:-1px;border-radius:inherit;border:1px solid #37bbff;box-shadow:0 0 18px #2eaeff30,inset 0 0 14px #74d9ff15;opacity:0;pointer-events:none;transition:opacity .3s}
.impact-controls{padding:24px 23px 8px;margin-bottom:18px}
.company-facts{gap:15px}.company-facts>div,.company-facts>div:last-child{padding:21px 24px;border:1px solid #b4dffa}.company-facts p{max-width:none}
.feature-card:focus-within::after,.impact-controls:focus-within::after{opacity:1}
.step::before{content:"";position:absolute;top:-1px;left:0;width:100%;height:2px;background:linear-gradient(90deg,#47b8ff,#8edfff,transparent);transform:scaleX(0);transform-origin:left;transition:transform 1s cubic-bezier(.22,1,.36,1)}
.steps-grid.is-revealed .step::before{transform:scaleX(1);transition-delay:var(--reveal-delay,0s)}
.feature-icon{box-shadow:inset 0 2px 5px #fff,0 0 16px #4fbeff12;transition:transform .4s cubic-bezier(.22,1,.36,1),box-shadow .3s}
.text-link span,.arrow-circle svg,.install-button svg,.reuse-tab svg{transition:transform .3s cubic-bezier(.22,1,.36,1)}
.nav-link{position:relative}.nav-link::after{content:"";position:absolute;bottom:5px;left:0;right:0;height:2px;border-radius:2px;background:#54bdff;box-shadow:0 0 7px #54bdff70;transform:scaleX(0);transform-origin:left;transition:transform .3s}
.reuse-tab{border-color:#c3e6fb}.reuse-tab[aria-selected=true]{border-color:#72c8ff;box-shadow:inset 0 2px 4px #fff,0 0 15px #4bbfff20}
.film-frame{border:1px solid #a6d6f6;box-shadow:0 0 0 4px #ecf8ff,0 15px 42px #2875a00e}
.reuse-video{pointer-events:none}.reuse-video::-webkit-media-controls{display:none!important}
@media(hover:hover) and (prefers-reduced-motion:no-preference){
  .feature-card:hover,.motion-enabled [data-reveal="group"].reveal-complete>.feature-card:hover{transform:translateY(-6px);border-color:#52beff;box-shadow:inset 0 4px 4px #ffffffb3,0 14px 28px #208fce12,0 0 20px #48c5ff25}
  .feature-card:hover::after,.company-facts>div:hover::after,.impact-controls:hover::after{opacity:1}
  .company-facts>div:hover{transform:translateX(4px)}
  .feature-card:hover .feature-icon{transform:translateY(-3px) rotate(-6deg);box-shadow:0 0 20px #5cccff40}
  .text-link:hover span{transform:translate(4px,3px)}
  .primary-button:hover .arrow-circle svg,.install-button:hover svg,.reuse-tab:hover svg{transform:translateX(3px)}
  .nav-link:hover::after,.nav-link:focus-visible::after{transform:scaleX(1)}
}
@media(width < 768px){.impact-controls{padding:21px 18px 5px}.company-facts>div,.company-facts>div:last-child{padding:19px 20px}.story-section::before{left:8%;right:8%;top:5px}}
@media(prefers-reduced-motion:reduce){
  .reading-progress{display:none}.story-section::before,.step::before{transform:none;transition:none}
  .company-facts>div,.feature-icon,.text-link span,.arrow-circle svg,.install-button svg,.reuse-tab svg{transform:none!important;transition:none!important}
  .feature-card,.impact-controls,.company-facts>div{transition:opacity .2s!important}
}

/* A drop's journey: normal-flow sections lead into a scrubbed garden finale. */
.journey-canvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:14}
.hero-track,.motion-enabled .hero-track{height:auto}
.hero,.motion-enabled .hero{position:relative;height:100svh;min-height:740px;padding-top:140px;padding-bottom:100px;grid-template-columns:1.05fr 1fr}
.hero h1{font-size:clamp(54px,5.2vw,78px);line-height:1.02;letter-spacing:-2.6px}
.hero h1 em{font-style:normal;color:#278ac2}
.hero .description{font-size:18px;letter-spacing:-.45px;max-width:390px;line-height:1.7}
.shower-scene{width:100%;height:100%;max-height:590px;aspect-ratio:auto;align-self:stretch;margin:0;transform:none;position:relative;isolation:isolate}
.shower-head{position:absolute;width:100%;max-width:none;height:auto;left:0%;top:-17%;object-fit:contain;z-index:2}
.shower-halo{position:absolute;inset:5% -5% 16%;background:radial-gradient(ellipse,#d8f2ff8a,transparent 66%);filter:blur(28px);z-index:-1}
.shower-caption{position:absolute;bottom:4%;left:0%;max-width:150px;z-index:3}.shower-caption>span{font-size:10px;letter-spacing:1.3px;color:#75a7bf}.shower-caption p{font-size:14px;line-height:1.5;letter-spacing:-.2px;color:#6e8b9e;margin:9px 0}
.concept-label{position:absolute;right:0;bottom:0;font-size:10px;color:#96a9b7;letter-spacing:.2px}
.scroll-cue{bottom:25px;font-size:12px}
.life-section{position:relative;height:100svh;min-height:740px;background:#eef4f0;--growth:1;isolation:isolate}
.motion-enabled .life-section{height:210svh;min-height:1450px}
.life-frame{position:sticky;top:0;height:100svh;min-height:690px;overflow:hidden;background:linear-gradient(180deg,#f5f8f6 0%,#edf4f0 66%,#e4ece5 100%)}
.life-frame::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at 50% 78%,#cce1c965,transparent 57%);opacity:var(--growth);pointer-events:none}
.life-copy{position:absolute;top:15%;left:7.1%;right:7.1%;text-align:center;z-index:2}
.life-copy .section-kicker{font-size:11px;letter-spacing:2px;color:#699187;margin-bottom:20px}
.life-copy h2{font-family:Fustat,sans-serif;font-size:clamp(38px,4.3vw,64px);font-weight:700;letter-spacing:-2px;line-height:1.04;margin-bottom:16px;color:#193c34}
.life-copy h2 em{font-style:normal;color:#4f8059}
.life-copy>p:last-child{font-size:15px;color:#6e857d;line-height:1.6;margin:0}
.ecosystem{position:absolute;left:7%;right:7%;bottom:21.5%;height:37%;isolation:isolate;z-index:1}
.garden-row{position:absolute;inset:0 0 0;display:flex;justify-content:center;align-items:flex-end;z-index:2}
.garden-plant{position:relative;width:16%;height:100%;flex-shrink:0;transform-origin:50% 100%;transform:scaleY(var(--plant-height,1)) rotate(var(--lean,0deg));filter:saturate(calc(.12 + var(--green,1)*.88)) sepia(calc(.38 - var(--green,1)*.38));--plant-height:1;--leaf-width:1;--green:1;--bloom:1}
.garden-plant:nth-child(2n){height:79%;margin:0 -3%;z-index:3}.garden-plant:nth-child(3n){height:88%}.garden-plant:nth-child(4){height:107%}
.plant-body{width:100%;height:100%;object-fit:fill;object-position:center bottom;transform:scaleX(calc(var(--leaf-width,1)*var(--mirror,1)));transform-origin:50% 100%;mix-blend-mode:multiply}
.plant-bloom{position:absolute;top:2%;left:50%;width:38%;height:auto;transform:translate(-50%,-50%) perspective(300px) rotateX(calc(70deg - var(--bloom,1)*70deg)) scale(var(--bloom,1)) rotate(var(--turn,0deg));transform-origin:50% 50%;opacity:var(--bloom,1);filter:drop-shadow(1px 3px 2px #294b2510)}
.garden-plant:nth-child(2n) .plant-bloom{width:32%;transform:translate(-50%,-50%) perspective(300px) rotateX(calc(70deg - var(--bloom,1)*70deg)) scale(var(--bloom,1)) rotate(-19deg)}
.soil-bed{position:absolute;left:7%;right:7%;bottom:-9px;height:25px;border-radius:50%;background:radial-gradient(ellipse at 35% 20%,#8a807a66,transparent 65%),radial-gradient(ellipse at 68% 40%,#786e6277,transparent 70%),linear-gradient(180deg,#a6a18e85,#84775c50);filter:blur(1.2px);opacity:calc(.48 + var(--growth)*.4);z-index:1}
.soil-light{position:absolute;left:0;right:0;bottom:-26px;height:95px;border-radius:50%;background:radial-gradient(ellipse,#87b49145,transparent 66%);opacity:var(--growth);z-index:0}
.life-action{position:absolute;bottom:7%;left:0;right:0;z-index:3;text-align:center}.life-action .primary-button{font-size:14px;background:#28735fdf;box-shadow:inset 0 4px 4px #ffffff35,0 8px 24px #376d4820;border-color:#39766040}.life-action .arrow-circle{color:#2b755b}.life-action>p{font-size:11px;color:#85968b;margin:12px 0 0}
.life-progress{position:absolute;left:7%;right:7%;bottom:2.8%;display:flex;align-items:center;gap:15px;font-size:9px;letter-spacing:1.8px;color:#799289}.life-progress-line{height:1px;flex:1;background:#cddcd2;position:relative}.life-progress-line::after{content:"";position:absolute;inset:0;background:#639783;transform:scaleX(var(--growth));transform-origin:left}
@media(width < 768px){
  .hero,.motion-enabled .hero{height:100svh;min-height:790px;padding:127px 8% 74px;grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:0}
  .hero h1{font-size:clamp(43px,10.7vw,64px);letter-spacing:-1.8px;margin-bottom:20px}.hero .eyebrow{font-size:9px;margin-bottom:17px}.hero .description{font-size:16px;line-height:1.6;margin-bottom:20px;max-width:330px}.hero-note{display:none}
  .shower-scene{justify-self:end;width:100%;height:100%;min-height:245px;max-height:none;margin:0}.shower-head{width:88%;left:15%;top:-17%}.shower-caption{left:0;bottom:15%;max-width:115px}.shower-caption>span{font-size:8px}.shower-caption p{font-size:12px}.concept-label{font-size:8px;bottom:1%;right:0}.shower-halo{inset:-10% 0 0 20%}
  .motion-enabled .life-section{height:205svh;min-height:1450px}.life-frame{min-height:690px}.life-copy{top:15%;left:7%;right:7%}.life-copy h2{font-size:40px;letter-spacing:-1.5px}.life-copy .section-kicker{font-size:9px;letter-spacing:1.6px}.life-copy>p:last-child{font-size:13px;max-width:280px;margin:auto}
  .ecosystem{left:-8%;right:-8%;height:29%;bottom:21.5%}.garden-plant{width:20%}.garden-plant:nth-child(1),.garden-plant:nth-child(7){display:none}.garden-plant:nth-child(2n){margin:0 -2%}.life-action{bottom:7.5%}.life-action .primary-button{font-size:12px;padding:12px 13px 12px 18px;gap:15px}.life-action>p{font-size:10px}.life-progress{font-size:8px}
}
@media(prefers-reduced-motion:reduce){
  .journey-canvas{display:none}.life-section,.motion-enabled .life-section{height:100svh;min-height:740px}.life-frame{position:relative;height:100%;min-height:740px}.garden-plant,.plant-body,.plant-bloom{transition:none!important}.life-progress-line::after{transform:none}
}

.garden-plant:nth-child(1){--lean:-4deg;--turn:-14deg}.garden-plant:nth-child(2){--lean:5deg;--mirror:-1}.garden-plant:nth-child(3){--lean:-2deg;--turn:17deg}.garden-plant:nth-child(5){--lean:3deg;--mirror:-1;--turn:-9deg}.garden-plant:nth-child(6){--lean:-5deg}.garden-plant:nth-child(7){--lean:4deg;--turn:14deg}

/* The tank is the middle chapter of one page-long water journey. */
.storage-track{position:relative;scroll-margin-top:0;background:#f5faff}
.storage-section{position:relative;min-height:740px;height:100svh;padding:140px 10% 80px 7.1%;display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;overflow:hidden}
.motion-enabled .storage-track{height:calc(100svh + 850px)}
.motion-enabled .storage-section{position:sticky;top:0}
.storage-copy h2{font-size:clamp(38px,4.5vw,64px);line-height:1.08;letter-spacing:-1.8px}
.storage-copy>p:not(.section-kicker){font-size:17px;line-height:1.7;color:#748a9b;max-width:335px}
.storage-stage{display:flex;align-items:center;gap:15px;margin-top:32px;color:#467f9f;font-size:13px;line-height:1.5}
.stage-number{border:1px solid #bdd7e5;border-radius:50%;width:35px;height:35px;display:grid;place-items:center;font-size:10px;flex-shrink:0}
.storage-art{position:relative;align-self:center;justify-self:center;width:min(100%,38svh);max-width:380px}
.saving-tank{position:relative;width:100%}
.tank-image{display:block;width:100%;height:auto;aspect-ratio:1122/1402}
.tank-status{font-size:12px;text-align:center;color:#7893a6;margin:18px 0 0}
.tank-static-water{position:absolute;inset:0;clip-path:polygon(4.6% 49.6%,70.2% 56.3%,70.3% 94.7%,4.6% 82.4%);background:linear-gradient(#b8e4f766,#70b6d675);pointer-events:none}
.journey-ready .tank-static-water{display:none}
@media(width < 768px){
  .storage-section{padding:118px 10% 65px 8%;grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:18px;min-height:700px}
  .motion-enabled .storage-track{height:calc(100svh + 650px)}
  .storage-copy h2{font-size:36px;letter-spacing:-1.2px;margin-bottom:12px}.storage-copy .section-kicker{font-size:10px;margin-bottom:13px}
  .storage-copy>p:not(.section-kicker){font-size:14px;line-height:1.6;max-width:290px;margin:0}.storage-stage{font-size:11px;margin-top:15px;gap:10px}.stage-number{width:28px;height:28px}
  .storage-art{width:min(66%,29svh);max-width:250px;align-self:center}.tank-status{font-size:10px;margin-top:13px}
}
@media(prefers-reduced-motion:reduce){
  .storage-track,.motion-enabled .storage-track{height:auto}
  .storage-section,.motion-enabled .storage-section{position:relative}
  .journey-ready .tank-static-water{display:block}
}
/* Supplied identity, framed directly from the original logo image. */
.brand{display:flex;align-items:center;gap:8px;line-height:1}
.brand-symbol,.brand-name{position:relative;display:block;overflow:hidden;flex-shrink:0}
.brand-symbol{width:30px;height:33px}.brand-symbol img{position:absolute;width:88px;height:88px;max-width:none;left:-28px;top:-21px;mix-blend-mode:multiply}
.brand-name{width:112px;height:22px}.brand-name img{position:absolute;width:153px;height:153px;max-width:none;left:-20px;top:-97px;mix-blend-mode:multiply}
.product-brand{position:relative;width:180px;height:139px;overflow:hidden;margin:0 auto 21px}
.product-brand img{position:absolute;width:225px;height:225px;max-width:none;left:-22px;top:-50px;mix-blend-mode:multiply}
@media(width < 768px){.brand{gap:5px}.brand-symbol{width:23px;height:26px}.brand-symbol img{width:69px;height:69px;left:-22px;top:-17px}.brand-name{width:86px;height:18px}.brand-name img{width:118px;height:118px;left:-16px;top:-75px}.product-brand{margin-bottom:16px}}
.brand-symbol,.brand-name,.product-brand{mix-blend-mode:multiply}
/* A render-time alpha filter removes white paper even inside a glass surface,
   where mix-blend alone cannot see through the backdrop-filter isolation. */
.brand{mix-blend-mode:normal;background:transparent}
.brand-symbol,.brand-name{mix-blend-mode:normal;background:transparent}
.brand-symbol img,.brand-name img,.product-brand img{mix-blend-mode:normal;filter:url("assets/logo-filter.svg#paper-to-alpha")}
.product-brand{mix-blend-mode:normal;background:transparent}
.brand-symbol{width:25px;height:40px}.brand-symbol img{width:112px;height:112px;left:-44px;top:-23px}
.brand-name{width:112px;height:22px}.brand-name img{width:160px;height:160px;left:-23px;top:-92px}
.product-brand{width:180px;height:145px}.product-brand img{width:250px;height:250px;left:-36px;top:-51px}
@media(width < 768px){.brand-symbol{width:21px;height:32px}.brand-symbol img{width:95px;height:95px;left:-38px;top:-19px}.brand-name{width:86px;height:17px}.brand-name img{width:123px;height:123px;left:-18px;top:-71px}}
.tank-product-link{display:block;width:fit-content;margin:15px auto 0;font-size:12px;color:#377fa8;border-bottom:1px solid #b3d3e6;padding-bottom:4px}
@media(width < 768px){nav.is-open{flex-wrap:wrap;justify-content:space-around;row-gap:2px}.glass-nav{gap:12px}}
@media(min-width:768px) and (max-width:980px){.glass-nav{gap:20px;padding-left:16px}.glass-nav nav{gap:14px}.nav-link{font-size:12px}.install-button{font-size:12px;padding:11px 12px;gap:10px}}
