:root {
  --navy: #062b4f;
  --navy-dark: #021e38;
  --blue: #087dcc;
  --blue-bright: #1a9fe8;
  --sky: #dff3ff;
  --ice: #f2f9fd;
  --white: #fff;
  --ink: #102b43;
  --muted: #678095;
  --line: #d9e8f0;
  --green: #2d8c72;
  --radius: 24px;
  --shadow: 0 24px 70px rgba(2, 43, 79, .12);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--ink); font-family: "DM Sans", sans-serif; background: #fff; line-height: 1.5; overflow-x: hidden; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button { color: inherit; }
svg { display: block; }
.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; }

.announcement { height: 40px; padding: 0 5.5vw; color: #dceef8; background: var(--navy-dark); display: flex; justify-content: center; align-items: center; gap: 24px; font-size: 13px; letter-spacing: .04em; }
.announcement p { margin: 0; }
.announcement a { color: #fff; font-weight: 700; border-bottom: 1px solid rgba(255,255,255,.45); }

.site-header { height: 78px; padding: 0 5.5vw; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; position: relative; z-index: 20; background: rgba(255,255,255,.95); border-bottom: 1px solid rgba(11, 73, 114, .08); }
.brand { display: inline-flex; align-items: center; gap: 10px; width: max-content; font: 800 22px/1 "Manrope", sans-serif; letter-spacing: -.06em; }
.brand > span:last-child > span { color: var(--blue); }
.brand-mark { width: 33px; height: 33px; display: grid; place-items: center; border-radius: 50%; color: white; background: var(--blue); }
.brand-mark svg { width: 21px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.main-nav { display: flex; align-items: center; gap: clamp(24px,3vw,48px); font-size: 14px; font-weight: 600; }
.main-nav a { position: relative; }
.main-nav a:after { content: ""; position: absolute; left: 0; right: 100%; bottom: -7px; height: 2px; background: var(--blue); transition: .25s ease; }
.main-nav a:hover:after { right: 0; }
.header-actions { justify-self: end; display: flex; align-items: center; gap: 5px; }
.icon-button { position: relative; border: 0; background: transparent; width: 39px; height: 39px; display: grid; place-items: center; cursor: pointer; border-radius: 50%; transition: .2s; }
.icon-button:hover { background: var(--ice); }
.icon-button svg { width: 19px; fill: none; stroke: var(--navy); stroke-width: 1.7; }
.cart-count { position: absolute; right: -3px; top: -3px; width: 22px; height: 22px; background: var(--blue); color: white; border: 2px solid white; border-radius: 50%; display: grid; place-items: center; font-size: 12px; font-weight: 700; }
.menu-toggle { display: none; }

.hero { min-height: 700px; background: linear-gradient(115deg, #f8fcff 0%, #ecf7fd 48%, #cceafb 100%); display: grid; grid-template-columns: 47% 53%; overflow: hidden; position: relative; }
.hero-content, .hero-visual { min-width: 0; }
.hero:before { content: ""; position: absolute; left: -17vw; bottom: -30vw; width: 55vw; height: 55vw; border: 1px solid rgba(16,106,166,.08); border-radius: 50%; box-shadow: 0 0 0 80px rgba(16,106,166,.025), 0 0 0 160px rgba(16,106,166,.018); }
.hero-content { position: relative; z-index: 2; padding: 120px 5vw 80px 8.5vw; }
.eyebrow, .kicker { color: var(--blue); font-size: 13px; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.eyebrow { display: flex; align-items: center; gap: 10px; }
.eyebrow span { width: 29px; height: 1px; background: var(--blue); }
h1, h2 { margin: 17px 0 24px; color: var(--navy); font: 700 clamp(48px,5.1vw,75px)/.99 "Manrope", sans-serif; letter-spacing: -.06em; }
h1 em, h2 em { color: var(--blue); font-style: normal; }
.hero-content > p { max-width: 500px; color: var(--muted); font-size: 17px; line-height: 1.75; }
.hero-actions { display: flex; align-items: center; gap: 30px; margin-top: 36px; }
.button { min-height: 54px; padding: 0 27px; display: inline-flex; align-items: center; justify-content: center; gap: 30px; border: 0; border-radius: 7px; cursor: pointer; font-weight: 700; font-size: 14px; transition: transform .2s, box-shadow .2s, background .2s; }
.button:hover { transform: translateY(-2px); }
.button-primary { color: #fff; background: var(--blue); box-shadow: 0 12px 26px rgba(8,125,204,.22); }
.button-primary:hover { background: #0670b8; box-shadow: 0 16px 32px rgba(8,125,204,.28); }
.text-link { font-size: 14px; font-weight: 700; display: inline-flex; align-items: center; gap: 16px; }
.text-link span { color: var(--blue); }
.hero-proof { margin-top: 55px; display: flex; align-items: center; gap: 14px; }
.avatars { display: flex; }
.avatars span { width: 38px; height: 38px; margin-left: -7px; border-radius: 50%; border: 2px solid white; color: white; background: var(--navy); display: grid; place-items: center; font-size: 12px; font-weight: 700; }
.avatars span:first-child { margin-left: 0; background: #3d7c9f; }
.avatars span:nth-child(2) { background: #c58354; }.avatars span:nth-child(3) { background: #6f8593; }.avatars span:last-child { background: var(--blue); }
.hero-proof p { margin: 0; font-size: 13px; color: var(--muted); line-height: 1.5; }
.hero-proof strong { color: var(--ink); }

.hero-visual { position: relative; min-height: 700px; display: grid; place-items: center; isolation: isolate; }
.hero-visual:before { content: "AQUA"; position: absolute; font: 800 15vw/1 "Manrope"; color: rgba(255,255,255,.31); letter-spacing: -.08em; transform: rotate(-90deg); right: -7vw; }
.orb { position: absolute; border-radius: 50%; filter: blur(2px); background: rgba(255,255,255,.36); box-shadow: inset -25px -20px 60px rgba(17,145,220,.14); }
.orb-one { width: 500px; height: 500px; }
.orb-two { width: 180px; height: 180px; right: 4%; bottom: 4%; }
.hero-ring { position: absolute; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; }
.ring-one { width: 620px; height: 620px; }.ring-two { width: 760px; height: 760px; }
.product-system { position: relative; z-index: 2; width: 265px; height: 445px; filter: drop-shadow(0 38px 32px rgba(4,53,88,.2)); transform: translateY(22px); }
.system-head { position: absolute; z-index: 2; top: 0; left: 25px; width: 216px; height: 95px; background: linear-gradient(150deg, #eef8fc, #b7d1df); border-radius: 35px 35px 14px 14px; border: 1px solid rgba(255,255,255,.9); box-shadow: inset 0 8px 14px white, 0 6px 16px rgba(6,43,79,.16); }
.screen { position: absolute; left: 25px; top: 23px; width: 75px; height: 44px; padding: 7px 10px; background: #0b3857; border-radius: 5px; color: #87cdf1; font-size: 5px; letter-spacing: .18em; line-height: 1; }
.screen b { color: white; font-size: 18px; line-height: 1.2; }
.dial { position: absolute; right: 28px; top: 28px; width: 37px; height: 37px; background: #dcebf2; border: 5px solid #aac2ce; border-radius: 50%; box-shadow: inset 0 0 0 3px white; }
.dial:after { content: ""; position: absolute; left: 50%; top: 3px; width: 2px; height: 9px; background: var(--blue); transform: translateX(-50%); }
.system-body { position: absolute; top: 73px; left: 10px; width: 245px; height: 335px; border-radius: 40px 40px 55px 55px; background: linear-gradient(100deg,#a5bdca 0%,#eef7f9 18%,#dcecf2 43%,#9cb5c1 100%); border: 1px solid rgba(255,255,255,.8); overflow: hidden; box-shadow: inset 12px 0 20px rgba(255,255,255,.55), inset -13px 0 25px rgba(38,83,109,.19); }
.shine { position: absolute; top: 12px; left: 38px; width: 35px; height: 290px; border-radius: 50%; background: linear-gradient(90deg,transparent,rgba(255,255,255,.78),transparent); filter: blur(3px); }
.system-logo { position: absolute; left: 0; right: 0; top: 135px; text-align: center; color: var(--navy); font: 800 17px "Manrope"; letter-spacing: -.06em; }
.system-logo i { display: inline-block; width: 9px; height: 12px; margin-right: 4px; background: var(--blue); border-radius: 9px 9px 9px 2px; transform: rotate(45deg); }
.system-label { position: absolute; left: 0; right: 0; top: 172px; color: #698291; text-align: center; font-size: 6px; letter-spacing: .22em; }
.system-base { position: absolute; z-index: -1; bottom: 0; left: 28px; width: 210px; height: 46px; background: #173d58; border-radius: 10px 10px 25px 25px; }
.floating-card { position: absolute; z-index: 4; min-width: 190px; padding: 13px 17px; border: 1px solid rgba(255,255,255,.8); border-radius: 11px; background: rgba(255,255,255,.83); box-shadow: 0 13px 30px rgba(8,70,111,.13); backdrop-filter: blur(12px); display: flex; align-items: center; gap: 11px; }
.floating-card strong, .floating-card small { display: block; }.floating-card strong { font-size: 14px; }.floating-card small { margin-top: 3px; color: var(--muted); font-size: 12px; }
.floating-icon { width: 30px; height: 30px; display: grid; place-items: center; border-radius: 50%; color: var(--blue); background: var(--sky); }
.floating-icon svg { width: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; }
.card-pure { left: 3%; top: 26%; }.card-saved { right: 4%; bottom: 20%; }
.hero-note { position: absolute; left: 5%; bottom: 7%; color: var(--navy); font-size: 12px; font-weight: 800; letter-spacing: .08em; }
.hero-note span { margin-left: 8px; padding: 4px 7px; border: 1px solid rgba(6,43,79,.17); border-radius: 20px; color: var(--blue); }

.trust-row { min-height: 105px; padding: 22px 7.5vw; display: grid; grid-template-columns: repeat(4,1fr); border-bottom: 1px solid var(--line); box-shadow: 0 8px 30px rgba(2,43,79,.03); }
.trust-row > div { display: flex; align-items: center; justify-content: center; gap: 13px; border-right: 1px solid var(--line); }
.trust-row > div:last-child { border-right: 0; }
.trust-row svg { width: 25px; fill: none; stroke: var(--blue); stroke-width: 1.5; }
.trust-row span { color: var(--muted); font-size: 13px; }.trust-row strong { display: block; margin-bottom: 3px; color: var(--ink); font-size: 15px; }

.section { width: 100%; max-width: none; margin: 0; padding: 115px 7.5vw; }
.section-heading { display: grid; grid-template-columns: 1.1fr .9fr; align-items: end; gap: 80px; margin-bottom: 57px; }
.section-heading h2, .products-top h2, .why-content h2, .solution-copy h2, .newsletter h2 { font-size: clamp(38px,4vw,57px); }
.section-heading h2 { margin-bottom: 0; }
.section-heading > p { justify-self: end; max-width: 480px; margin: 0 0 5px; color: var(--muted); line-height: 1.75; font-size: 16px; }
.categories-section { background: #fff; }
.category-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; }
.category-card { position: relative; height: auto; padding: 0; overflow: visible; background: transparent; transition: transform .35s, box-shadow .35s; }
.category-card:hover { transform: translateY(-3px); }
.category-card:after { display: none; }
.category-index { display: block; margin-bottom: 8px; padding: 0 2px; color: #8ba3b4; font-size: 12px; font-weight: 700; letter-spacing: .12em; }
.category-copy { position: static; z-index: 3; display: block; padding: 15px 2px 0; }
.category-copy small, .category-copy strong, .category-copy i { display: block; }
.category-copy small { color: var(--blue); font-size: 12px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; }
.category-copy strong { margin: 5px 0 10px; color: var(--navy); font: 700 21px "Manrope"; letter-spacing: -.04em; }
.category-copy i { padding-top: 11px; border-top: 1px solid var(--line); font-style: normal; font-size: 13px; font-weight: 700; }
.category-copy b { float: right; color: var(--blue); }
.category-art { position: absolute; z-index: 2; top: 66px; left: 50%; width: 200px; height: 190px; transform: translateX(-50%); filter: drop-shadow(0 23px 15px rgba(15,67,97,.17)); }
.category-art i, .mini-pump i, .mini-filter i, .mini-heater i, .mini-tank i { position: absolute; display: block; }
.pump-motor { width: 86px; height: 78px; left: 19px; top: 47px; border-radius: 12px 17px 17px 12px; background: linear-gradient(120deg,#1189cf,#075b9c); box-shadow: inset 12px 0 12px rgba(255,255,255,.18); }
.pump-motor:after { content:""; position:absolute; right:-12px; top:17px; width:20px; height:44px; background:#dae7eb; border-radius:4px; }
.pump-body { width: 79px; height: 79px; right: 15px; top: 48px; border-radius: 50%; background: radial-gradient(circle at 50% 50%,#183c55 0 17%,#d7e5e9 18% 32%,#6d8796 33% 37%,#edf5f7 38% 60%,#9ab1bc 61%); }
.pump-pipe { width: 30px; height: 52px; right: 39px; top: 15px; border-radius: 7px 7px 0 0; background: linear-gradient(90deg,#b4c6ce,#f1f7f9,#92aab5); }
.pump-base { width: 170px; height: 13px; left: 15px; bottom: 37px; border-radius: 3px; background: #183e59; }
.tank-art i:first-child { inset: 12px 32px 20px; border-radius: 55px 55px 25px 25px; background: repeating-linear-gradient(0deg,transparent 0 22px,rgba(5,69,110,.11) 23px 25px),linear-gradient(90deg,#d3eaf4,#f5fbfd 48%,#b7d8e6); }
.tank-art i:nth-child(2) { width: 118px; height: 13px; left: 41px; top: 17px; border-radius: 50%; background:#ecf8fb; box-shadow:0 5px 5px rgba(14,88,133,.14); }
.tank-art i:nth-child(3) { width: 26px; height: 16px; top: 5px; left: 87px; border-radius:4px; background:#a9c8d5; }
.tank-art i:nth-child(4) { width: 16px; height: 16px; right: 27px; bottom: 31px; border-radius:2px; background:#168ed0; }
.filter-art i:first-child, .filter-art i:nth-child(2), .filter-art i:nth-child(3) { width: 47px; height: 127px; top: 34px; border-radius: 12px 12px 22px 22px; background: linear-gradient(90deg,#bacdd4,#f5fafb,#a4bdc7); border-top: 13px solid #153f5b; }
.filter-art i:first-child { left: 24px; }.filter-art i:nth-child(2) { left: 76px; }.filter-art i:nth-child(3) { left: 128px; }
.filter-art i:nth-child(4) { width: 166px; height: 35px; left: 17px; top: 10px; border-radius: 9px; background: linear-gradient(#147ec0,#075487); box-shadow: inset 0 5px 8px rgba(255,255,255,.16); }
.heater-art i:first-child { width: 126px; height: 167px; left: 37px; top: 4px; border-radius: 28px; background: linear-gradient(110deg,#e5eff2,#fff 45%,#b9ccd4); box-shadow: inset -12px 0 18px rgba(22,67,92,.1); }
.heater-art i:nth-child(2) { width: 51px; height: 24px; left: 74px; top: 57px; border-radius: 3px; background:#0a3b5c; box-shadow:inset 0 0 0 5px #183145; }
.heater-art i:nth-child(2):after { content:"42°"; color:#5fcaef; font:700 8px sans-serif; position:absolute; inset:7px; text-align:center; }
.heater-art i:nth-child(3) { width: 35px; height: 35px; left: 82px; top: 101px; border: 6px solid #aabfc8; border-radius:50%; background:#eaf3f5; }

.products-section { background: var(--ice); }
.products-top { display: flex; justify-content: space-between; align-items: end; margin-bottom: 55px; }
.products-top h2 { margin-bottom: 0; }
.filters { padding: 5px; background: white; border: 1px solid var(--line); border-radius: 30px; display: flex; }
.filter { border: 0; padding: 10px 19px; border-radius: 22px; color: var(--muted); background: transparent; cursor: pointer; font-size: 12px; font-weight: 700; }
.filter.active { color: white; background: var(--navy); }
.product-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 17px; }
.product-card { transition: opacity .25s, transform .25s; }
.product-card.hidden { display: none; }
.product-image { position: relative; height: 320px; overflow: hidden; border-radius: 12px; background: #e5f3fa; display: grid; place-items: center; }
.product-image:before { content:""; width: 210px; height: 210px; border: 1px solid rgba(24,123,181,.17); border-radius:50%; box-shadow:0 0 0 38px rgba(255,255,255,.18); position:absolute; }
.badge { position:absolute; z-index:2; left:14px; top:14px; padding:7px 10px; color:#fff; background:var(--blue); border-radius:3px; font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.05em; }
.badge-new { background:var(--navy); }.badge-eco { background:var(--green); }
.heart { position:absolute; z-index:3; right:13px; top:11px; width:31px; height:31px; border:0; border-radius:50%; color:var(--navy); background:rgba(255,255,255,.76); font-size:19px; cursor:pointer; transition:.2s; }
.heart.liked { color:#e24762; background:white; }
.product-info { padding:19px 3px 0; }.product-info small { color:var(--blue); font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }.product-info h3 { margin:6px 0 7px; color:var(--navy); font:700 18px "Manrope"; letter-spacing:-.03em; }.rating { color:#f0a930; font-size:12px; letter-spacing:.08em; }.rating span { color:var(--muted); letter-spacing:0; }
.price-row { margin-top:15px; padding-top:14px; border-top:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; }.price-row strong { font:700 19px "Manrope"; }.add-cart { border:0; background:transparent; font-size:12px; font-weight:700; cursor:pointer; }.add-cart span { margin-left:8px; width:24px; height:24px; display:inline-grid; place-items:center; color:white; background:var(--navy); border-radius:50%; }
.view-all { width:max-content; margin:62px auto 0; padding-bottom:7px; border-bottom:1px solid #9bb0be; display:block; font-size:14px; font-weight:700; }.view-all span { margin-left:26px; color:var(--blue); }

.mini-pump, .mini-filter, .mini-heater, .mini-tank { position:relative; width:190px; height:185px; z-index:1; filter:drop-shadow(0 22px 15px rgba(14,66,96,.18)); }
.mini-pump i:first-child { width:83px;height:74px;left:14px;top:62px;border-radius:12px;background:linear-gradient(120deg,#168ed1,#07598e); }.mini-pump i:nth-child(2){width:74px;height:74px;right:17px;top:62px;border-radius:50%;background:radial-gradient(circle,#183c55 0 17%,#eaf3f5 18% 33%,#79909d 34% 39%,#eaf3f5 40% 65%,#8fa8b3 66%)}.mini-pump i:nth-child(3){width:29px;height:57px;right:40px;top:22px;border-radius:6px 6px 0 0;background:linear-gradient(90deg,#aac0c8,#fff,#8ca4ae)}.mini-pump i:nth-child(4){width:166px;height:13px;left:10px;bottom:28px;background:#173e59;border-radius:3px}
.mini-filter i:first-child,.mini-filter i:nth-child(2),.mini-filter i:nth-child(3){width:45px;height:126px;top:44px;border-radius:9px 9px 20px 20px;background:linear-gradient(90deg,#adc4cc,#f8fbfc,#9bb4bd);border-top:13px solid #173e59}.mini-filter i:first-child{left:20px}.mini-filter i:nth-child(2){left:72px}.mini-filter i:nth-child(3){left:124px}.mini-filter i:nth-child(4){width:164px;height:36px;left:12px;top:20px;border-radius:8px;background:linear-gradient(#158bcb,#075487)}
.mini-heater i:first-child{width:120px;height:174px;left:35px;top:5px;border-radius:28px;background:linear-gradient(105deg,#d9e7eb,#fff 46%,#b8cbd2);box-shadow:inset -14px 0 20px rgba(18,58,80,.12)}.mini-heater i:nth-child(2){width:50px;height:24px;left:70px;top:62px;border-radius:3px;background:#0d3d5b}.mini-heater i:nth-child(2):after{content:"42°";color:#70d0ee;font:700 8px sans-serif;position:absolute;inset:7px;text-align:center}.mini-heater i:nth-child(3){width:36px;height:36px;left:77px;top:108px;border:6px solid #a6bbc4;border-radius:50%;background:#edf4f6}
.mini-tank i:first-child{inset:12px 29px 4px;border-radius:56px 56px 25px 25px;background:repeating-linear-gradient(0deg,transparent 0 22px,rgba(5,69,110,.1) 23px 25px),linear-gradient(90deg,#c6e1ec,#f5fbfd 48%,#abcfdc)}.mini-tank i:nth-child(2){width:115px;height:13px;left:38px;top:17px;border-radius:50%;background:#ecf8fb}.mini-tank i:nth-child(3){width:26px;height:15px;top:4px;left:82px;background:#a9c8d5;border-radius:3px}.mini-tank i:nth-child(4){width:16px;height:16px;right:25px;bottom:14px;background:#168ed0}

.why-section { min-height: 680px; display:grid; grid-template-columns:1fr 1fr; background:var(--navy); color:white; overflow:hidden; }
.why-visual { padding:70px 30px 0 7.5vw; position:relative; }
.why-media { position:relative; height:100%; min-height:610px; overflow:hidden; border-radius:190px 190px 0 0; isolation:isolate; background:linear-gradient(155deg,#d8f2ff 0%,#68c8f4 48%,#0b83c5 100%); }
.why-media video { position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;display:block;background:#032644; }
.why-video-shade { position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(3,39,68,.04) 45%,rgba(3,39,68,.7) 100%);pointer-events:none; }
.why-placeholder-rings { position:absolute;z-index:0;inset:34% -18% -28%;border-radius:50%;background:radial-gradient(ellipse at top,rgba(255,255,255,.5),transparent 60%),repeating-radial-gradient(ellipse at center,transparent 0 28px,rgba(255,255,255,.2) 29px 31px);transform:rotate(-8deg); }
.why-placeholder-mark { position:absolute;z-index:2;inset:0;display:grid;place-content:center;justify-items:center;gap:13px;color:#075681; }
.why-placeholder-mark span { width:82px;height:82px;display:grid;place-items:center;border:1px solid rgba(255,255,255,.9);border-radius:50%;background:rgba(255,255,255,.62);box-shadow:0 16px 50px rgba(5,82,127,.18);backdrop-filter:blur(7px); }
.why-placeholder-mark svg { width:27px;height:27px;transform:translateX(2px); }
.why-placeholder-mark small { font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase; }
.why-media-caption { position:absolute;z-index:2;left:35px;bottom:34px;color:white;font:700 20px/1.2 "Manrope";letter-spacing:-.04em; }.why-media.has-video .why-media-caption { bottom:78px; }.why-media-caption em { font-style:normal;color:#b9e9ff; }
.why-content { padding:110px 8vw 85px 8%; align-self:center; }.kicker.light { color:#7dcdf4; }.why-content h2 { color:white; }.why-content h2 em { color:#7dd2f7; }.why-content > p { max-width:590px;color:#b8ccda;font-size:16px;line-height:1.8; }
.impact-grid { margin:42px 0; padding:30px 0; border-top:1px solid rgba(255,255,255,.14);border-bottom:1px solid rgba(255,255,255,.14);display:grid;grid-template-columns:repeat(3,1fr); }.impact-grid div { border-right:1px solid rgba(255,255,255,.14);padding-left:25px; }.impact-grid div:first-child{padding-left:0}.impact-grid div:last-child{border:0}.impact-grid strong{display:block;color:#83d7fa;font:700 33px "Manrope";letter-spacing:-.05em}.impact-grid span{color:#b8ccda;font-size:12px}.button-white{background:white;color:var(--navy);}

.solution-section { display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;background:#fff; }.solution-copy > p{max-width:500px;color:var(--muted);font-size:16px;line-height:1.8}.solution-copy .button{margin-top:20px}.quiz-card{padding:44px;border-radius:18px;background:linear-gradient(145deg,#eef9ff,#d9f0fb);box-shadow:0 25px 60px rgba(12,86,132,.12);position:relative;overflow:hidden}.quiz-card:after{content:"";position:absolute;right:-100px;top:-100px;width:260px;height:260px;border-radius:50%;border:1px solid rgba(6,105,166,.14);box-shadow:0 0 0 35px rgba(255,255,255,.18)}.quiz-step{color:var(--blue);font-size:12px;font-weight:800;letter-spacing:.1em}.quiz-card h3{position:relative;z-index:2;margin:14px 0 27px;color:var(--navy);font:700 24px "Manrope";letter-spacing:-.04em}.quiz-options{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;gap:10px}.quiz-options button{padding:18px;border:1px solid rgba(15,80,122,.1);border-radius:8px;background:rgba(255,255,255,.82);text-align:left;font-size:14px;font-weight:700;cursor:pointer;transition:.2s}.quiz-options button:hover,.quiz-options button.selected{color:white;background:var(--blue);transform:translateY(-2px)}.quiz-options span{margin-right:9px;color:var(--blue)}.quiz-options button:hover span,.quiz-options button.selected span{color:white}

.journal-section { background:var(--ice); }.section-heading.compact{align-items:end}.section-heading.compact .text-link{justify-self:end;margin-bottom:10px}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.journal-image{position:relative;height:270px;margin-bottom:20px;border-radius:12px;overflow:hidden;background:#dceef6}.journal-image>span{position:absolute;z-index:3;right:12px;top:12px;padding:7px 10px;border-radius:20px;background:rgba(255,255,255,.8);font-size:12px;font-weight:700}.journal-grid article>small{color:var(--blue);font-size:12px;text-transform:uppercase;font-weight:700;letter-spacing:.08em}.journal-grid h3{margin:7px 0 14px;color:var(--navy);font:700 20px "Manrope";letter-spacing:-.04em}.journal-grid article>a{font-size:13px;font-weight:700;border-bottom:1px solid #a4b8c5;padding-bottom:4px}.journal-one{background:linear-gradient(145deg,#79ccef,#d7f2fc)}.journal-two{background:linear-gradient(145deg,#1f6e9d,#b3ddeb)}.journal-three{background:linear-gradient(145deg,#b5e4f6,#f5fbfd)}.drop-scene i:first-child{position:absolute;width:90px;height:120px;left:38%;top:23%;border-radius:60% 40% 65% 35%;background:rgba(255,255,255,.76);transform:rotate(42deg);box-shadow:inset -15px -14px 28px rgba(8,118,186,.25),0 20px 40px rgba(3,92,147,.12)}.drop-scene i:nth-child(2),.drop-scene i:nth-child(3){position:absolute;border:1px solid rgba(255,255,255,.55);border-radius:50%;left:50%;bottom:-23%;transform:translateX(-50%)}.drop-scene i:nth-child(2){width:260px;height:110px}.drop-scene i:nth-child(3){width:360px;height:160px}.pipe-scene i:first-child{position:absolute;left:22%;top:20%;width:55%;height:42%;border:35px solid #c7d9df;border-left:0;border-bottom:0;border-radius:0 60px 0 0;filter:drop-shadow(0 20px 12px rgba(4,39,60,.2))}.pipe-scene i:nth-child(2){position:absolute;left:63%;top:48%;width:35px;height:90px;background:linear-gradient(90deg,#8da5ae,#eef5f6,#7b949d)}.pipe-scene i:nth-child(3){position:absolute;left:65%;bottom:7%;width:24px;height:34px;border-radius:60% 40% 65% 35%;background:#a9e6ff;transform:rotate(42deg)}.glass-scene i:first-child{position:absolute;left:34%;top:23%;width:32%;height:61%;border:4px solid rgba(255,255,255,.8);border-top:0;background:linear-gradient(transparent 30%,rgba(32,159,218,.34) 31%);transform:perspective(100px) rotateX(-4deg);box-shadow:0 18px 25px rgba(7,97,147,.12)}.glass-scene i:nth-child(2){position:absolute;width:42px;height:55px;left:46%;top:15%;border-radius:60% 40% 65% 35%;background:rgba(255,255,255,.78);transform:rotate(42deg)}.glass-scene i:nth-child(3){position:absolute;inset:68% -10% auto;height:80px;border-radius:50%;background:rgba(39,151,211,.18)}

.newsletter { padding:90px 7.5vw;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:90px;color:white;background:linear-gradient(120deg,#06355c,#0876b7);position:relative;overflow:hidden}.newsletter:before{content:"";position:absolute;right:-5%;top:-80%;width:55vw;height:55vw;border:1px solid rgba(255,255,255,.12);border-radius:50%;box-shadow:0 0 0 80px rgba(255,255,255,.025),0 0 0 160px rgba(255,255,255,.02)}.newsletter h2{margin-bottom:0;color:white}.newsletter h2 em{color:#86d8fb}.newsletter-form{position:relative;z-index:1;display:grid;grid-template-columns:1fr auto}.newsletter-form input{height:57px;padding:0 19px;border:1px solid rgba(255,255,255,.35);border-right:0;border-radius:7px 0 0 7px;color:white;background:rgba(255,255,255,.07);outline:none;font-size:15px}.newsletter-form input::placeholder{color:#c3d7e4}.newsletter-form input:focus{border-color:white}.newsletter-form button{padding:0 25px;border:0;border-radius:0 7px 7px 0;background:white;color:var(--navy);font-size:14px;font-weight:700;cursor:pointer}.newsletter-form button span{margin-left:18px;color:var(--blue)}.newsletter-form small{grid-column:1/-1;margin-top:11px;color:#bcd1de;font-size:12px}
.google-review-section{grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);gap:70px}.google-review-copy,.google-review-panel{position:relative;z-index:1}.google-review-panel{justify-self:end;width:min(100%,620px);padding:30px;border:1px solid rgba(255,255,255,.28);border-radius:8px;background:rgba(255,255,255,.08);box-shadow:0 28px 70px rgba(0,30,54,.2);backdrop-filter:blur(8px)}.review-stars{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:22px}.review-stars span{color:#ffc94d;font-size:26px;letter-spacing:.08em;text-shadow:0 10px 22px rgba(0,28,49,.18)}.review-stars small{padding:8px 12px;border-radius:999px;background:#fff;color:var(--navy);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.google-review-panel p{max-width:520px;margin:0 0 24px;color:#d1e6f2;font-size:17px;line-height:1.7}.google-review-button{min-height:58px;display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:0 26px;border-radius:7px;background:white;color:var(--navy);font-size:14px;font-weight:800;transition:.2s;box-shadow:0 18px 34px rgba(0,28,49,.16)}.google-review-button:hover{transform:translateY(-2px)}.google-review-button span{color:var(--blue)}

footer{padding:70px 7.5vw 25px;background:#021d34;color:#a9c0cf}.footer-main{display:grid;grid-template-columns:2fr repeat(3,1fr);gap:70px;padding-bottom:55px}.brand-footer{color:white}.brand-footer .brand-mark{background:#168ed1}.footer-brand p{max-width:330px;margin:22px 0;color:#a9c0cf;font-size:15px;line-height:1.75}.socials{display:flex;gap:8px}.socials a{width:34px;height:34px;border:1px solid rgba(255,255,255,.18);border-radius:50%;display:grid;place-items:center;color:white;font-size:13px;font-weight:700}.footer-main h3{margin:4px 0 19px;color:white;font-size:15px}.footer-main>div:not(:first-child) a{display:block;margin:0 0 14px;font-size:14px;transition:.2s}.footer-main>div:not(:first-child) a:hover{color:white;transform:translateX(2px)}.footer-bottom{padding-top:23px;border-top:1px solid rgba(255,255,255,.11);display:flex;justify-content:space-between;font-size:12px}.footer-bottom a{margin-left:24px}
/* Footer type guard: keep headings and links on the same font rhythm. */
.footer-main{align-items:start}.footer-main h3,.footer-main>div:not(:first-child) a,.footer-brand p,.footer-bottom{font-family:"DM Sans",sans-serif;letter-spacing:0}.footer-main h3{margin:0 0 21px;color:white;font-size:14px;font-weight:700;line-height:1.5}.footer-main>div:not(:first-child){padding-top:3px}.footer-main>div:not(:first-child) a{line-height:1.55}

.toast { position:fixed; z-index:50; right:24px; bottom:24px; min-width:265px; padding:15px 18px; border-radius:10px; color:white; background:var(--navy); box-shadow:0 15px 50px rgba(1,25,46,.28); display:flex; align-items:center; gap:12px; transform:translateY(120px); opacity:0; transition:.35s; }.toast.show{transform:translateY(0);opacity:1}.toast>span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#35a27e}.toast p{margin:0}.toast strong,.toast small{display:block}.toast strong{font-size:14px}.toast small{color:#b7cedb;font-size:12px;margin-top:2px}

@media (max-width: 1050px) {
  .site-header { grid-template-columns:1fr auto; }.main-nav { display:none; }.menu-toggle { justify-self:end;display:flex;flex-direction:column;justify-content:center;gap:4px;width:38px;height:38px;border:0;background:transparent;cursor:pointer }.menu-toggle span:not(.sr-only){width:21px;height:2px;background:var(--navy);transition:.2s}.header-actions{display:none}.main-nav.open{display:flex;position:fixed;inset:113px 0 0;flex-direction:column;align-items:flex-start;padding:45px 7vw;background:white;font-size:20px}.main-nav.open a{width:100%;padding:14px 0;border-bottom:1px solid var(--line)}
  .hero { grid-template-columns:1fr 1fr; }.hero-content { padding-left:6vw; }.hero-visual { transform:scale(.88); transform-origin:center; }.category-grid,.product-grid{grid-template-columns:repeat(2,1fr)}.category-card{height:400px}.product-image{height:370px}.why-section{grid-template-columns:.9fr 1.1fr}.why-content{padding-right:5vw}.section{padding-left:6vw;padding-right:6vw}.trust-row{padding-left:3vw;padding-right:3vw}
}

@media (max-width: 760px) {
  .announcement{justify-content:center;padding:0 18px;font-size:12px}.announcement a{display:none}.site-header{width:100%;padding:0 18px;height:67px}.main-nav.open{inset:107px 0 0}.hero{width:100%;grid-template-columns:minmax(0,1fr);min-height:auto}.hero-content{width:100%;padding:75px 22px 30px}.hero-content>p{width:100%;max-width:100%;font-size:16px}.hero-visual{width:calc(100% + 120px);min-height:570px;transform:scale(.82);transform-origin:top center;margin:-25px -60px -75px}.card-pure{left:6%}.card-saved{right:5%}.trust-row{grid-template-columns:1fr 1fr;padding:16px}.trust-row>div{justify-content:flex-start;padding:14px;border-bottom:1px solid var(--line)}.trust-row>div:nth-child(2){border-right:0}.trust-row>div:nth-child(3),.trust-row>div:nth-child(4){border-bottom:0}.section{padding:80px 20px}.section-heading,.products-top{display:block}.section-heading{margin-bottom:38px}.section-heading>p{margin-top:22px}.category-grid,.product-grid,.journal-grid{grid-template-columns:1fr}.category-card{height:390px}.product-image{height:390px}.filters{margin-top:28px;overflow-x:auto;width:max-content;max-width:100%}.why-section{grid-template-columns:1fr}.why-visual{padding:50px 20px 0}.why-media{min-height:510px;border-radius:150px 150px 0 0}.why-content{padding:75px 22px}.solution-section{grid-template-columns:1fr;gap:50px}.quiz-card{padding:28px 20px}.quiz-options{grid-template-columns:1fr}.section-heading.compact .text-link{margin-top:25px}.journal-grid{gap:45px}.newsletter{grid-template-columns:1fr;padding:75px 22px;gap:40px}.newsletter-form{grid-template-columns:1fr}.newsletter-form input{border-right:1px solid rgba(255,255,255,.35);border-radius:7px}.newsletter-form button{height:52px;margin-top:8px;border-radius:7px}.google-review-section{gap:30px}.google-review-panel{justify-self:stretch;padding:24px}.review-stars{align-items:flex-start;flex-direction:column;gap:12px}.review-stars span{font-size:22px}.google-review-panel p{font-size:15px}.google-review-button{width:100%;min-height:56px}.footer-main{grid-template-columns:1fr 1fr;gap:45px}.footer-brand{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:15px}.footer-bottom a{margin:0 20px 0 0}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-proof{margin-top:38px}
}

@media (prefers-reduced-motion: reduce) { html{scroll-behavior:auto} *,*:before,*:after{transition:none!important;animation:none!important} }
