:root{--lake:#1b6fae;--lake-hover:#155a8e;--lake-deep:#0b4a73;--mist:#eaf4fa;--aqua:#9ed3ee;--sand:#f5efe4;--paper:#fcfaf6;--white:#fff;--stone:#e3d8c5;--stone-line:#d2c4ac;--brick:#a8402b;--brick-deep:#8a3423;--ink:#1a2633;--ink-soft:#4a5868;--star:#b7791f;--rule:#1a263324;--rule-strong:#1a26334d;--font-display:"Zilla Slab", "Rockwell", Georgia, serif;--font-body:"Source Sans 3", "Source Sans Pro", system-ui, -apple-system, "Segoe UI", sans-serif;--gutter:16px;--max:1160px;--measure:64ch;--section-y:clamp(56px, 9vw, 112px);--header-h:68px;--focus:var(--lake-deep);color-scheme:light}@media (width>=768px){:root{--gutter:32px;--header-h:76px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--white);color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:1.0625rem;font-weight:400;line-height:1.6;overflow-x:clip}@media (width>=768px){body{font-size:1.125rem}}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.012em;text-wrap:balance;color:var(--lake-deep);margin:0 0 .5em;font-weight:700;line-height:1.08}h1{letter-spacing:-.02em;font-size:clamp(2.375rem,6.2vw,4.25rem)}h2{font-size:clamp(1.875rem,3.8vw,2.75rem)}h3{font-size:clamp(1.25rem,2vw,1.5rem);font-weight:600;line-height:1.2}p{text-wrap:pretty;margin:0 0 1em}ul,ol{margin:0 0 1em;padding-left:1.25em}li+li{margin-top:.35em}a{color:var(--lake);text-underline-offset:.18em;text-decoration-thickness:1px}a:hover{color:var(--lake-hover);text-decoration-thickness:2px}strong{font-weight:600}img,svg{max-width:100%;height:auto}:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;background:var(--lake-deep);color:var(--white);border-radius:4px;padding:10px 16px;position:absolute;top:-100px;left:16px}.skip-link:focus{color:var(--white);--focus:var(--white);top:12px}.container{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto}.measure{max-width:var(--measure)}.lede{color:var(--ink-soft);max-width:58ch;font-size:clamp(1.125rem,1.6vw,1.3125rem);line-height:1.55}.small{font-size:.9375rem}.muted{color:var(--ink-soft)}.source{color:var(--ink-soft);font-size:.875rem}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--lake);margin:0 0 10px;font-size:.8125rem;font-weight:700}.btn{background:var(--brick);min-height:48px;color:var(--white);font-family:var(--font-body);text-align:center;cursor:pointer;border:0;border-radius:4px;justify-content:center;align-items:center;gap:.5em;padding:.7em 1.3em;font-size:1.0625rem;font-weight:700;line-height:1.2;text-decoration:none;transition:background-color .15s;display:inline-flex}.btn:hover{background:var(--brick-deep);color:var(--white);text-decoration:none}.btn-light{background:var(--white);color:var(--lake-deep)}.btn-light:hover{background:var(--mist);color:var(--lake-deep)}.btn-outline{color:var(--lake);box-shadow:inset 0 0 0 2px var(--lake);background:0 0}.btn-outline:hover{background:var(--lake);color:var(--white)}.btn-block{width:100%;display:flex}.text-link{font-weight:600}.top-strip{background:var(--mist);color:var(--lake-deep);border-bottom:1px solid var(--stone-line);--focus:var(--lake-deep);font-size:.9375rem}.top-strip .container{justify-content:space-between;align-items:center;gap:16px;min-height:40px;padding-block:6px;display:flex}.top-strip a{color:var(--lake-deep);text-decoration:none}.top-strip a:hover{color:var(--lake-deep);text-decoration:underline}.promo-text strong{color:var(--lake-deep);font-weight:700}.promo-more{display:none}@media (width>=640px){.promo-more{display:inline}}.top-info{white-space:nowrap;gap:24px;display:none}@media (width>=900px){.top-info{display:flex}}.site-header{z-index:50;background:var(--white);color:var(--ink);border-bottom:1px solid var(--stone-line);--focus:var(--lake-deep);position:sticky;top:0}.header-row{min-height:var(--header-h);justify-content:space-between;align-items:center;gap:16px;display:flex}.brand{color:var(--lake-deep);flex-shrink:1;align-items:center;gap:10px;min-width:0;text-decoration:none;display:inline-flex}.brand:hover{color:var(--lake-deep)}.brand .logo-mark{flex-shrink:0}.brand-name{font-family:var(--font-display);letter-spacing:-.01em;font-size:1.375rem;font-weight:700;line-height:1}.brand-text{flex-direction:column;gap:4px;min-width:0;display:flex}.brand-descriptor{font-family:var(--font-body);letter-spacing:.01em;color:var(--ink-soft);text-wrap:balance;font-size:.75rem;font-weight:600;line-height:1.2}.nav{align-items:center;gap:4px;display:none}.nav a,.nav summary{min-height:44px;color:var(--ink);cursor:pointer;border-radius:4px;align-items:center;gap:6px;padding:0 12px;font-size:1rem;font-weight:600;text-decoration:none;display:inline-flex}.nav a:hover,.nav summary:hover,.nav a[aria-current=page],.nav summary[aria-current=true]{color:var(--lake)}.nav a:hover,.nav summary:hover{text-underline-offset:.4em;text-decoration:underline 1px}.nav a[aria-current=page]{text-underline-offset:.4em;text-decoration:underline 2px}.nav-dd{position:relative}.nav-dd summary,.mnav summary{list-style:none}.nav-dd summary::-webkit-details-marker,.mnav summary::-webkit-details-marker,.faq summary::-webkit-details-marker{display:none}.chev{width:10px;height:10px;transition:transform .15s}.nav-dd[open] .chev{transform:rotate(180deg)}.nav-dd-panel{background:var(--white);border:1px solid var(--stone-line);--focus:var(--lake-deep);border-radius:6px;width:300px;padding:8px;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 18px 40px -18px #0b4a7373}.nav-dd-panel a{min-height:0;padding:10px 12px;display:block}.nav .nav-dd-panel a{color:var(--ink)}.nav .nav-dd-panel a:hover,.nav .nav-dd-panel a[aria-current=page]{background:var(--mist);color:var(--lake-deep)}.nav-dd-panel span{color:var(--ink-soft);font-size:.9375rem;font-weight:400;display:block}.header-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.header-cta{display:none}.header-phone{color:var(--lake-deep);white-space:nowrap;font-weight:700;text-decoration:none;display:none}.header-phone:hover{color:var(--lake);text-decoration:underline}.icon-btn{border:1.5px solid var(--lake-deep);min-width:44px;min-height:44px;color:var(--lake-deep);cursor:pointer;background:0 0;border-radius:4px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-size:.9375rem;font-weight:700;text-decoration:none;display:inline-flex}.icon-btn:hover{background:var(--mist);color:var(--lake-deep)}.icon-btn svg{flex-shrink:0;width:18px;height:18px}.mnav{position:static}.mnav-panel{max-height:calc(100vh - var(--header-h));background:var(--white);color:var(--ink);border-bottom:1px solid var(--stone-line);padding:8px var(--gutter) 24px;--focus:var(--lake-deep);position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 24px 40px -24px #0b4a7373}.mnav-panel a:not(.btn){border-bottom:1px solid var(--rule);min-height:52px;color:var(--ink);align-items:center;font-size:1.125rem;font-weight:600;text-decoration:none;display:flex}.mnav-panel a:not(.btn):hover{color:var(--lake)}.mnav-panel .mnav-group{font-family:var(--font-display);color:var(--ink-soft);margin:16px 0 0;font-size:1rem;font-weight:600}.mnav-panel .btn{margin-top:20px}.mnav-open-label,.mnav[open] .mnav-closed-label{display:none}.mnav[open] .mnav-open-label{display:inline}@media (width<=399.98px){.header-row{gap:12px}.call-btn{display:none}.brand{gap:8px}.brand-name{font-size:1.1875rem}.brand-descriptor{letter-spacing:0;font-size:.6875rem}}@media (width<=359.98px){.mnav .mnav-closed-label,.mnav[open] .mnav-open-label{display:none}}@media (width>=640px){.header-phone{display:inline}.call-btn{display:none}}@media (width>=1080px){.nav{display:flex}.header-cta{display:inline-flex}.mnav,.header-phone{display:none}}@media (width>=1240px){.header-phone{display:inline}}.band-mist{background:var(--mist)}.band-sand{background:var(--sand)}.band-lake{--focus:var(--white);isolation:isolate;background-color:var(--lake);color:var(--white);position:relative}.band-lake:before{content:"";z-index:-1;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='400' height='120' viewBox='0 0 400 120' fill='none' stroke='%239ED3EE' stroke-width='1.6' stroke-linecap='round'%3E%3Cg stroke-opacity='.18' transform='translate(0 0)'%3E%3Cpath d='M-400 30C-334 14 -267 14 -200 30S-67 46 0 30S133 14 200 30S333 46 400 30S533 14 600 30S733 46 800 30'/%3E%3C/g%3E%3Cg stroke-opacity='.14' transform='translate(130 0)'%3E%3Cpath d='M-400 60C-334 44 -267 44 -200 60S-67 76 0 60S133 44 200 60S333 76 400 60S533 44 600 60S733 76 800 60'/%3E%3C/g%3E%3Cg stroke-opacity='.12' transform='translate(260 0)'%3E%3Cpath d='M-400 90C-334 74 -267 74 -200 90S-67 106 0 90S133 74 200 90S333 106 400 90S533 74 600 90S733 106 800 90'/%3E%3C/g%3E%3C/svg%3E");background-repeat:repeat-x;background-size:400px 120px;background-position:0 calc(100% - var(--wave-h,0px));pointer-events:none;position:absolute;inset:0}.band-lake h1,.band-lake h2,.band-lake h3,.band-lake a:not(.btn){color:var(--white)}.band-lake a:not(.btn):hover{color:var(--white);text-decoration-thickness:2px}.band-deep{--focus:var(--white);background:var(--lake-deep);color:var(--white)}.band-deep h2,.band-deep h3,.band-deep a:not(.btn){color:var(--white)}.band-deep .lede,.band-deep .muted{color:var(--aqua)}.wave{height:var(--wave-h);pointer-events:none;line-height:0;position:absolute;bottom:-1px;left:0;right:0}.wave svg{fill:currentColor;width:100%;max-width:none;height:100%;display:block}.wave-white{color:var(--white)}.wave-sand{color:var(--sand)}.wave-mist{color:var(--mist)}.hero,.page-hero{--wave-h:clamp(28px, 4vw, 56px)}.hero{padding-block:clamp(36px, 6vw, 80px) calc(clamp(40px, 6vw, 72px) + var(--wave-h))}.hero-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"head""plaque""form""badges";gap:28px;display:grid}.hero-head{grid-area:head}.hero-head h1{color:var(--white);margin-bottom:.4em}.hero-head .lede{color:var(--white);margin:0}.hero-head .eyebrow{color:var(--white);margin:0 0 10px}.hero-plaque{grid-area:plaque}.hero-form{grid-area:form}.hero-badges{grid-area:badges}@media (width>=980px){.hero-grid{grid-template:"head form""plaque form""badges form"1fr/minmax(0,1.12fr) minmax(380px,.88fr);gap:32px clamp(40px,5vw,72px)}}.page-hero{background:var(--mist);color:var(--ink);padding-block:clamp(40px, 6vw, 72px) calc(clamp(20px, 3vw, 40px) + var(--wave-h));position:relative}.page-hero h1{color:var(--lake-deep);max-width:20ch}.page-hero .eyebrow{color:var(--lake)}.page-hero .lede{color:var(--ink);margin:0}.plaque{background:var(--white);max-width:520px;color:var(--ink);border-radius:8px;padding:22px 26px 20px;position:relative;box-shadow:0 20px 36px -22px #0b4a73a6}.plaque-label{color:var(--ink-soft);text-wrap:balance;margin:0 0 2px;font-size:.9375rem;font-weight:700}.plaque-price{font-family:var(--font-display);letter-spacing:-.02em;color:var(--brick);margin:0;font-size:clamp(2.75rem,7vw,4rem);font-weight:700;line-height:1}.plaque-price small{letter-spacing:0;color:var(--ink);margin-left:.25em;font-size:.42em;font-weight:600}.plaque-desc{color:var(--ink-soft);margin:10px 0 0;font-size:1rem;line-height:1.45}.plaque-promo{border-top:1px dashed var(--stone-line);margin:14px 0 0;padding-top:12px;font-size:.9375rem;line-height:1.4}.plaque-promo strong{color:var(--brick)}.badges{gap:10px;margin:0;padding:0;list-style:none;display:grid}.badges li{align-items:flex-start;gap:10px;margin:0;font-weight:600;line-height:1.35;display:flex}.badges svg{flex-shrink:0;width:20px;height:20px;margin-top:1px}.badges svg rect{fill:var(--white);fill-opacity:.16}.badges svg path{fill:none;stroke:var(--aqua);stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round}.lead-card{--focus:var(--lake-deep);background:var(--white);color:var(--ink);border:1px solid var(--stone-line);border-top:4px solid var(--lake);border-radius:6px;padding:24px 20px;box-shadow:0 30px 60px -30px #0b4a738c}@media (width>=480px){.lead-card{padding:28px}}.lead-card a:not(.btn){color:var(--lake)!important}.lead-card a:not(.btn):hover{color:var(--lake-hover)!important}.lead-card .lf-title{color:var(--lake-deep)}.lf-title{margin:0 0 4px;font-size:1.625rem;font-weight:700}.lf-sub{color:var(--ink-soft);margin:0 0 18px;font-size:1rem;line-height:1.45}.lf{gap:14px;display:grid}.lf-field label,.lf legend{margin-bottom:6px;padding:0;font-size:.9375rem;font-weight:700;display:block}.lf-field .opt{color:var(--ink-soft);font-weight:400}.lf input[type=text],.lf input[type=tel],.lf input[type=email],.lf select{border:1.5px solid var(--stone-line);background:var(--white);width:100%;min-height:48px;color:var(--ink);font:inherit;border-radius:4px;padding:10px 12px;font-size:1.0625rem}.lf input:focus,.lf select:focus{border-color:var(--lake);outline:none;box-shadow:0 0 0 3px #1b6fae47}.lf-pair{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:12px;display:grid}.lf fieldset{border:0;min-width:0;margin:0;padding:0}.lf-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.lf-options.two{grid-template-columns:repeat(2,minmax(0,1fr))}.lf-option{border:1.5px solid var(--stone-line);background:var(--white);cursor:pointer;border-radius:4px;align-items:center;gap:8px;min-height:46px;padding:8px 10px;font-size:.9375rem;font-weight:600;line-height:1.2;display:flex}.lf-option:has(input:checked){border-color:var(--lake);background:var(--mist)}.lf-option:has(input:focus-visible){outline:3px solid var(--lake-deep);outline-offset:2px}.lf input[type=radio],.lf input[type=checkbox]{accent-color:var(--lake);flex-shrink:0;width:18px;height:18px;margin:0}.lf-consent{color:var(--ink-soft);cursor:pointer;align-items:flex-start;gap:10px;font-size:.8125rem;line-height:1.45;display:flex}.lf-consent input{margin-top:2px!important}.lf .btn{min-height:54px;margin-top:2px;font-size:1.125rem}.lf-alt{color:var(--ink-soft);margin:-4px 0 0;font-size:.8125rem;line-height:1.45}.lf-note{color:var(--ink-soft);text-align:center;margin:0;font-size:.875rem;line-height:1.4}.hp{width:1px;height:1px;overflow:hidden;position:absolute!important;left:-9999px!important}.section{padding-block:var(--section-y)}.section-head{max-width:760px;margin-bottom:clamp(32px,5vw,56px)}.section-head h2{margin-bottom:.35em}.section-head .lede{margin:0}.section-foot{margin-top:clamp(28px,4vw,44px)}.prose{max-width:68ch}.prose h2{margin-top:1.6em;font-size:clamp(1.625rem,3vw,2.125rem)}.prose h2:first-child{margin-top:0}.prose h3{margin-top:1.4em}.prose ul li::marker{color:var(--ink-soft)}.split{gap:clamp(32px,5vw,72px);display:grid}@media (width>=900px){.split{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:start}.split.even{grid-template-columns:repeat(2,minmax(0,1fr))}}.aside-note{border-left:4px solid var(--lake);padding:4px 0 4px 20px}.aside-note h3{margin-bottom:.35em}.aside-note p:last-child{margin-bottom:0}.ticks{margin:0 0 1em;padding:0;list-style:none}.ticks li{padding-left:30px;position:relative}.ticks li:before{content:"";background:var(--lake) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.5 9.5l3 3 6-7' fill='none' stroke='%23FFFFFF' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;border-radius:3px;width:18px;height:18px;position:absolute;top:.32em;left:0}.paths{gap:40px;display:grid}@media (width>=860px){.paths{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.path+.path{border-left:1px solid var(--rule-strong);padding-left:clamp(32px,4vw,56px)}.path:first-child{padding-right:clamp(32px,4vw,56px)}}.path h3{margin-bottom:.25em}.path-figure{font-family:var(--font-display);color:var(--lake-deep);align-items:baseline;gap:10px;margin:14px 0 6px;display:flex}.path-figure b{letter-spacing:-.02em;font-size:clamp(3rem,6vw,4rem);font-weight:700;line-height:1}.path-figure span{color:var(--ink);font-size:1.125rem;font-weight:600}.path .source{margin-bottom:18px}.hardness{--scale:40;margin:0;padding:0;list-style:none;position:relative}.hardness li{border-bottom:1px solid var(--rule);grid-template-columns:7rem minmax(0,1fr) 5.5rem;align-items:center;gap:12px;margin:0;padding:9px 0;display:grid}.hardness .town{font-weight:600;line-height:1.2}.hardness .town a{color:var(--ink)}.hardness .town small{color:var(--ink-soft);font-size:.8125rem;font-weight:400;display:block}.hardness .track{background:var(--mist);border-radius:2px;height:16px;position:relative}.hardness .track:after{content:"";z-index:2;top:-3px;bottom:-3px;left:calc(var(--limit) * 1%);background:var(--brick);width:2px;box-shadow:0 0 0 2px var(--white);border-radius:1px;margin-left:-1px;position:absolute}.hardness .bar{z-index:1;height:100%;width:calc(var(--v) * 1%);background:var(--lake);border-radius:2px;display:block;position:relative}.hardness .bar.over{background:var(--lake-deep)}.hardness .val{text-align:right;font-family:var(--font-display);white-space:nowrap;font-size:1.0625rem;font-weight:700;line-height:1.15}.hardness .val small{font-family:var(--font-body);color:var(--ink-soft);font-size:.75rem;font-weight:600;display:block}.hardness-key{color:var(--ink-soft);flex-wrap:wrap;gap:8px 24px;margin-top:14px;font-size:.875rem;display:flex}.hardness-key span{align-items:center;gap:8px;display:inline-flex}.hardness-key i{background:var(--lake);border-radius:2px;width:14px;height:14px;display:inline-block}.hardness-key i.over{background:var(--lake-deep)}.hardness-key i.limit{background:var(--brick);width:2px;height:16px;box-shadow:0 0 0 2px var(--white);border-radius:0}.pricing{gap:32px;display:grid}@media (width>=960px){.pricing{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);align-items:start;gap:clamp(40px,5vw,72px)}}.quote-sheet{background:var(--paper);border:1px solid var(--stone-line);border-top:4px solid var(--lake);border-radius:3px;padding:24px 20px}@media (width>=560px){.quote-sheet{padding:32px 36px}}.quote-top{border-bottom:2px solid var(--lake);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:8px 24px;padding-bottom:18px;display:flex}.quote-top h3{margin:0;font-size:clamp(1.5rem,2.6vw,1.875rem);font-weight:700}.quote-top p{color:var(--ink-soft);margin:4px 0 0;font-size:1rem}.quote-top>div:first-child{flex:16rem;min-width:0}.nowrap{white-space:nowrap}.quote-price{font-family:var(--font-display);color:var(--brick);letter-spacing:-.02em;white-space:nowrap;font-size:clamp(2.5rem,5vw,3.25rem);font-weight:700;line-height:1}.quote-price small{color:var(--ink);letter-spacing:0;font-size:.4em;font-weight:600}.quote-lines{margin:0;padding:0;list-style:none}.quote-lines li{border-bottom:1px dotted var(--rule-strong);grid-template-columns:22px minmax(0,1fr);gap:12px;margin:0;padding:14px 0;line-height:1.45;display:grid}.quote-lines li:before{content:"";background:var(--lake) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 18'%3E%3Cpath d='M4.5 9.5l3 3 6-7' fill='none' stroke='%23FFFFFF' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;border-radius:3px;width:18px;height:18px;margin-top:3px}.quote-lines b{font-weight:700;display:block}.quote-lines span{color:var(--ink-soft);font-size:1rem}.quote-terms{color:var(--ink-soft);margin:18px 0 0;font-size:1rem}.quote-promo{background:var(--mist);border-radius:3px;margin:18px 0 0;padding:14px 16px;font-size:1rem;line-height:1.45}.quote-actions{flex-wrap:wrap;align-items:center;gap:12px 24px;margin-top:24px;display:flex}.price-side{gap:0;display:grid}.price-item{border-top:2px solid var(--lake);padding:24px 0}.price-item+.price-item{border-top-width:1px;border-top-color:var(--rule-strong)}.price-item h3{margin-bottom:4px}.price-item .amount{font-family:var(--font-display);color:var(--brick);margin:6px 0 10px;font-size:2rem;font-weight:700;line-height:1.1}.price-item .amount small{color:var(--ink);font-size:.55em;font-weight:600}.price-item p:last-child{margin-bottom:0}.price-item.price-card{background:var(--paper);border:1px solid var(--stone-line);border-top:4px solid var(--lake);border-radius:3px;padding:24px 20px 22px}@media (width>=560px){.price-item.price-card{padding:28px 32px 26px}}@media (width>=960px){.price-item.price-card{padding:24px 22px 22px}}.addon{background:var(--mist);border-left:4px solid var(--lake);border-radius:0 4px 4px 0;grid-template-columns:28px minmax(0,1fr);gap:12px;margin-top:22px;padding:16px 18px 16px 16px;display:grid}.addon-plus{background:var(--lake);border-radius:50%;place-items:center;width:28px;height:28px;margin-top:1px;display:grid}.addon-plus svg{fill:none;width:16px;height:16px;stroke:var(--white);stroke-width:2.4px;stroke-linecap:round}.addon-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--lake-deep);margin:0 0 2px;font-size:.8125rem;font-weight:700}.addon-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:2px 16px;display:flex}.addon-title{margin:0;font-size:1.25rem;line-height:1.2}.addon-price{font-family:var(--font-display);color:var(--brick);white-space:nowrap;margin:0;font-size:1.5rem;font-weight:700;line-height:1.1}.addon-text{color:var(--ink-soft);margin:6px 0 8px;font-size:1rem;line-height:1.45}.addon-link{margin:0}@media (width<=479px){.addon{grid-template-columns:24px minmax(0,1fr);gap:10px;padding:14px 14px 14px 12px}.addon-plus{width:24px;height:24px}.addon-plus svg{width:14px;height:14px}.addon-title{font-size:1.125rem}.addon-price{font-size:1.375rem}}.compare{border-collapse:collapse;width:100%;font-size:1rem;line-height:1.4}.compare caption{text-align:left;color:var(--ink-soft);caption-side:bottom;padding-top:14px;font-size:.875rem}.compare th,.compare td{text-align:left;vertical-align:top;border-bottom:1px solid var(--stone-line);padding:14px 16px}.compare thead th{background:var(--white);font-family:var(--font-display);border-bottom:2px solid var(--lake);vertical-align:bottom;font-size:1.0625rem;font-weight:600}.compare tbody th{width:22%;font-weight:700}.compare .us{background:var(--white);font-weight:600}.compare thead .us{color:var(--lake-deep);border-top:4px solid var(--lake)}.compare .cell{align-items:flex-start;gap:8px;display:flex}.compare .mark{fill:none;stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:18px;height:18px;margin-top:2px}.compare .mark-yes{stroke:var(--lake)}.compare .mark-no{stroke:var(--ink-soft)}@media (width<=759px){.compare thead{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.compare,.compare tbody,.compare tr,.compare th,.compare td{width:100%;display:block}.compare tr{border-top:2px solid var(--lake);padding:18px 0}.compare tbody th{width:100%;font-family:var(--font-display);border:0;padding:0 0 8px;font-size:1.1875rem}.compare td{grid-template-columns:9.5rem minmax(0,1fr);gap:12px;padding:9px 0;display:grid}.compare td:before{content:attr(data-label);color:var(--ink-soft);font-size:.9375rem;font-weight:600}.compare caption{width:100%;display:block}.compare td.us{border-left:4px solid var(--lake);width:calc(100% + 20px);margin-inline:-10px;padding:9px 10px}}.standard-grid{gap:40px;display:grid}@media (width>=900px){.standard-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(40px,5vw,72px)}}.checklist{margin:0;padding:0;list-style:none}.checklist li{border-bottom:1px solid var(--stone-line);grid-template-columns:22px minmax(0,1fr);gap:14px;margin:0;padding:12px 0;line-height:1.45;display:grid}.checklist li:before{content:"";border:2px solid var(--lake);border-radius:2px;width:18px;height:18px;margin-top:3px}.checklist span{color:var(--ink-soft);font-size:.9375rem;display:block}.checklist-title{border-bottom:2px solid var(--lake);align-items:baseline;gap:12px;margin:0;padding-bottom:12px;display:flex}.checklist-title b{font-family:var(--font-display);color:var(--lake);font-size:2.75rem;line-height:1}.promises{border-top:1px solid var(--stone-line);gap:24px;margin-top:clamp(40px,5vw,64px);padding-top:32px;display:grid}@media (width>=760px){.promises{grid-template-columns:repeat(3,minmax(0,1fr))}}.promises h3{margin-bottom:.3em;font-size:1.25rem}.promises p{color:var(--ink-soft);margin:0;font-size:1rem}.steps{counter-reset:step;gap:32px;margin:0;padding:0;list-style:none;display:grid}@media (width>=900px){.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(32px,4vw,56px)}}.steps>li{border-top:2px solid var(--lake);counter-increment:step;margin:0;padding-top:18px}.steps>li:before{content:counter(step);background:var(--lake);width:52px;height:52px;color:var(--white);font-family:var(--font-display);border-radius:50%;place-items:center;margin-bottom:14px;font-size:1.75rem;font-weight:700;line-height:1;display:grid}.steps h3{margin-bottom:.4em}.steps p:last-child{margin-bottom:0}.step-meta{color:var(--ink-soft);font-size:1rem;font-weight:600}.story{align-items:center;gap:36px;display:grid}@media (width>=900px){.story{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(48px,6vw,96px)}}.story-art{margin:0}.owner-photo{max-width:420px;margin:0}.owner-photo picture{display:block}.owner-photo img{background:var(--mist);border-radius:14px;width:100%;height:auto;display:block;box-shadow:0 18px 40px -22px #0b4a7380}.owner-photo.is-small{max-width:300px}.story-art .owner-photo{margin-inline:auto}.signoff{font-family:var(--font-display);color:var(--lake-deep);font-size:1.25rem;font-weight:600}.faq{border-top:2px solid var(--lake);max-width:860px}.faq details{border-bottom:1px solid var(--rule-strong)}.faq summary{cursor:pointer;font-family:var(--font-display);justify-content:space-between;align-items:center;gap:20px;padding:20px 0;font-size:clamp(1.125rem,1.8vw,1.3125rem);font-weight:600;line-height:1.3;list-style:none;display:flex}.faq summary:hover{color:var(--lake)}.faq-icon{flex-shrink:0;width:20px;height:20px;position:relative}.faq-icon:before,.faq-icon:after{content:"";background:var(--lake);height:2px;transition:transform .18s;position:absolute;top:9px;left:2px;right:2px}.faq-icon:after{transform:rotate(90deg)}.faq details[open] .faq-icon:after{transform:rotate(0)}.faq-a{max-width:68ch;padding:0 0 20px}.faq-a ul li::marker{color:var(--ink-soft)}.faq-a p:last-child,.faq-a ul:last-child{margin-bottom:0}.cta-grid{gap:36px;display:grid}@media (width>=980px){.cta-grid{grid-template-columns:minmax(0,1fr) minmax(380px,.85fr);align-items:start;gap:clamp(48px,6vw,88px)}}.band-lake .cta-grid h2,.band-lake .cta-grid .lede{color:var(--white)}.contact-list{grid-template-columns:5.5rem minmax(0,1fr);gap:12px 16px;margin:20px 0 0;font-size:1.125rem;display:grid}.contact-list dt{color:var(--ink-soft);font-weight:700}.contact-list dd{overflow-wrap:anywhere;margin:0}.contact-list a{font-weight:600}.next-list{counter-reset:nx;margin:28px 0 0;padding:0;list-style:none}.next-list li{counter-increment:nx;margin:0;padding:0 0 18px 48px;position:relative}.next-list li:before{content:counter(nx);width:32px;height:32px;font-family:var(--font-display);border:2px solid;border-radius:50%;place-items:center;font-size:1rem;font-weight:700;display:grid;position:absolute;top:-2px;left:0}.next-list b{display:block}.county-grid{gap:0 clamp(32px,4vw,56px);display:grid}@media (width>=720px){.county-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1040px){.county-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.county{border-top:2px solid var(--lake);padding:22px 0}.county h3{margin-bottom:2px}.county .water{color:var(--ink-soft);margin:0 0 10px;font-size:.9375rem;font-weight:600}.town-list{flex-wrap:wrap;gap:4px 0;margin:0;padding:0;list-style:none;display:flex}.town-list li{margin:0}.town-list li:not(:last-child):after{content:",";margin-right:.35em}.site-footer{padding-block:clamp(48px,7vw,80px) 32px;font-size:1rem}.site-footer a{color:var(--white);text-decoration:none}.site-footer a:hover{color:var(--white);text-decoration:underline}.footer-grid{gap:36px;display:grid}@media (width>=760px){.footer-grid{grid-template-columns:1.4fr 1fr 1fr 1fr}}.brand-reversed,.brand-reversed:hover{color:var(--white)}.brand-reversed .brand-descriptor{color:var(--aqua)}.site-footer .footer-tagline{font-family:var(--font-display);color:var(--white);margin:12px 0 16px;font-size:1.125rem;font-weight:600}.footer-nap{overflow-wrap:anywhere;font-style:normal;line-height:1.7}.site-footer .footer-col h2{color:var(--white);letter-spacing:0;margin:0 0 12px;font-size:1.0625rem;font-weight:600}.footer-col ul{margin:0;padding:0;list-style:none}.footer-col li+li{margin-top:8px}.site-footer .footer-bottom{color:var(--aqua);border-top:1px solid #ffffff38;gap:10px;margin-top:44px;padding-top:22px;font-size:.875rem;display:grid}.footer-bottom p{max-width:90ch;margin:0}.mcta{z-index:40;padding:10px var(--gutter) calc(10px + env(safe-area-inset-bottom));background:var(--white);border-top:1px solid var(--stone-line);grid-template-columns:1fr 1.6fr;gap:8px;display:grid;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -10px 24px -16px #0b4a7373}.mcta .btn{min-height:46px;padding-inline:.8em;font-size:1rem}body.has-mcta{padding-bottom:76px}body:has(.lf :focus) .mcta,body:has(.mnav[open]) .mcta{display:none}@media (width>=768px){.mcta{display:none}body.has-mcta{padding-bottom:0}}.done-list{counter-reset:done;max-width:760px;margin:0;padding:0;list-style:none}.done-list li{counter-increment:done;margin:0;padding:0 0 28px 64px;position:relative}.done-list li:before{content:counter(done);background:var(--lake);width:44px;height:44px;color:var(--white);font-family:var(--font-display);border-radius:50%;place-items:center;font-size:1.25rem;font-weight:700;display:grid;position:absolute;top:-4px;left:0}.done-list li:not(:last-child):after{content:"";background:var(--stone-line);width:2px;position:absolute;top:46px;bottom:4px;left:21px}.done-list h2,.done-list h3{margin-bottom:.25em;font-size:1.375rem;font-weight:700}.done-list p{margin:0}.system{gap:clamp(28px,5vw,56px);display:grid}@media (width>=900px){.system{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:start}}.system-fig{background:var(--paper);border:1px solid var(--stone-line);border-top:4px solid var(--lake);border-radius:3px;margin:0;padding:12px 12px 16px}@media (width>=560px){.system-fig{padding:20px 24px}}.system-note{color:var(--ink-soft);text-align:center;margin:12px 0 0;font-size:.9375rem;line-height:1.45}.sys-svg{width:100%;max-width:480px;height:auto;margin-inline:auto;display:block}.sys-zone{fill:var(--sand);stroke:var(--stone-line);stroke-width:2px}.sys-zone-title{fill:var(--ink-soft);letter-spacing:.08em;font-size:14px;font-weight:700}.sys-label{fill:var(--ink);font-size:17px;font-weight:700}.sys-note{fill:var(--ink-soft);font-size:15px;font-weight:600}.sys-pipe{fill:none;stroke:var(--lake-deep);stroke-width:7px;stroke-linejoin:round}.sys-pipe-soft{fill:none;stroke:var(--lake);stroke-width:7px;stroke-linejoin:round}.sys-pipe-thin{fill:none;stroke:var(--ink-soft);stroke-width:3px;stroke-linecap:round;stroke-dasharray:1 7}.sys-pipe-drink{fill:none;stroke:var(--brick);stroke-width:5px;stroke-dasharray:10 6}.sys-arrow{fill:var(--lake-deep)}.sys-arrow-soft{fill:var(--lake)}.sys-arrow-drink{fill:var(--brick)}.sys-valve{fill:var(--lake-deep)}.sys-tank,.sys-ro{fill:var(--mist);stroke:var(--lake-deep);stroke-width:3px}.sys-resin{fill:var(--lake)}.sys-carbon{fill:var(--ink)}.sys-lid{fill:var(--lake-deep)}.sys-brine{fill:var(--stone);stroke:var(--lake-deep);stroke-width:3px}.sys-salt{fill:var(--paper)}.sys-counter{fill:var(--stone);stroke:var(--stone-line);stroke-width:1px}.sys-cabinet{fill:var(--paper);stroke:var(--stone-line);stroke-width:2px}.sys-can{fill:var(--paper);stroke:var(--lake-deep);stroke-width:2.5px}.sys-faucet{fill:none;stroke:var(--brick);stroke-width:6px;stroke-linecap:round;stroke-linejoin:round}.sys-badge{fill:var(--lake);stroke:var(--paper);stroke-width:2px}.sys-badge-light{fill:var(--paper);stroke:var(--lake)}.sys-badge-n{fill:var(--white);font-family:var(--font-display);text-anchor:middle;dominant-baseline:central;font-size:16px;font-weight:700}.sys-badge-n-dark{fill:var(--lake-deep)}.sys-legend{color:var(--ink);flex-wrap:wrap;justify-content:center;gap:8px 20px;margin:14px 0 0;padding:0;font-size:.875rem;font-weight:600;list-style:none;display:flex}.sys-legend li{align-items:center;gap:8px;margin:0;display:inline-flex}.sys-legend svg{flex-shrink:0;width:30px;height:8px}.sys-legend line{stroke-width:5px;fill:none}.sys-legend .lg-main{stroke:var(--lake-deep)}.sys-legend .lg-soft{stroke:var(--lake)}.sys-legend .lg-drink{stroke:var(--brick);stroke-dasharray:8 5}.parts{counter-reset:part;margin:0;padding:0;list-style:none}.parts>li{border-bottom:1px dotted var(--rule-strong);counter-increment:part;grid-template-columns:34px minmax(0,1fr);column-gap:14px;margin:0;padding:16px 0;display:grid}.parts>li:first-child{border-top:2px solid var(--lake)}.parts>li:before{content:counter(part);background:var(--lake);width:32px;height:32px;color:var(--white);font-family:var(--font-display);border-radius:50%;grid-row:1/span 2;place-items:center;font-size:1.0625rem;font-weight:700;display:grid}.parts h3{margin:2px 0 .2em;font-size:1.25rem}.parts p{color:var(--ink-soft);margin:0;font-size:1rem;line-height:1.5}.system-foot{color:var(--ink-soft);margin:20px 0 0;font-size:1rem}.product-photos{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px;display:grid}.product-photos figure{margin:0}.product-photos img{aspect-ratio:4/3;object-fit:contain;background:var(--sand);border:1px solid var(--stone-line);border-radius:3px;width:100%;display:block}.product-photos figcaption{margin-top:8px;font-size:.9375rem;line-height:1.4}.product-photos .credit{color:var(--ink-soft);font-size:.8125rem;display:block}.proof-photos{--row-h:260px;flex-wrap:wrap;align-items:flex-start;gap:20px;margin:0;padding:0;list-style:none;display:flex}.proof-photos figure{flex:var(--ar) 1 calc(var(--ar) * var(--row-h));min-width:0;margin:0}.proof-photos picture{display:block}.proof-photos img{background:var(--mist);border-radius:10px;width:100%;height:auto;display:block;box-shadow:0 14px 30px -20px #0b4a7380}.proof-photos figcaption{color:var(--ink-soft);margin-top:12px;font-size:.9375rem;line-height:1.45}.proof-photos figcaption b{color:var(--ink)}@media (width>=1040px){.proof-photos{--row-h:340px}}@media (width<=759px){.proof-photos figure{flex:100%}.proof-photos figure.is-portrait img{aspect-ratio:4/5;object-fit:cover;object-position:50% 45%}}.proof-note{max-width:68ch;color:var(--ink-soft);margin:24px 0 0;font-size:1rem}.proof-block+.proof-block{margin-top:clamp(36px,5vw,56px)}.proof-sub{margin:0 0 clamp(16px,2.5vw,24px)}.reviews-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 40px;margin-bottom:clamp(28px,4vw,44px);display:flex}.reviews-head .section-head{margin-bottom:0}.reviews-note{max-width:30ch;color:var(--ink-soft);margin:0;font-size:.875rem;line-height:1.4}@media (width>=900px){.reviews-note{text-align:right}}.reviews{grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr));gap:20px;margin:0;padding:0;list-style:none;display:grid}.reviews>li{margin:0}.review{background:var(--paper);border:1px solid var(--stone-line);border-top:4px solid var(--lake);border-radius:3px;flex-direction:column;height:100%;padding:20px;display:flex}.review-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.review-source{letter-spacing:.04em;color:var(--ink-soft);font-size:.8125rem;font-weight:700}.stars{width:100px;height:20px;display:block}.star-on{fill:var(--star)}.star-off{fill:var(--stone-line)}.review blockquote{margin:14px 0 16px}.review blockquote p{margin:0;font-size:1.0625rem;line-height:1.5}.review-photo{aspect-ratio:4/3;object-fit:cover;background:var(--stone);border-radius:3px;width:100%;margin:0 0 12px;display:block}.review-by{border-top:1px solid var(--stone-line);color:var(--ink-soft);gap:2px;margin:auto 0 0;padding-top:14px;font-size:.9375rem;display:grid}.review-by b{color:var(--ink)}.reviews-foot{margin-top:clamp(24px,3vw,36px)}.jingle{color:var(--white);background:#0b4a7366;border:1px solid #ffffff59;border-radius:10px;margin-top:20px;padding:16px 18px}.jingle-title{color:var(--white);margin:0 0 10px;font-size:1.0625rem;font-weight:700;line-height:1.3}.jingle-audio{width:100%;height:44px;display:block}.jingle-draft{color:var(--white);border:1px dashed #ffffffb3;border-radius:6px;margin:0;padding:6px 10px;font-size:.875rem;line-height:1.4;display:inline-block}.jingle-lyrics{color:var(--white);margin:12px 0 0;font-size:.9375rem;line-height:1.5}.jingle-lyrics span{display:block}.jingle-more{margin:12px 0 0;font-size:.9375rem}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.crumbs{margin-top:18px;font-size:.9375rem}.crumbs ol{flex-wrap:wrap;gap:2px 0;margin:0;padding:0;list-style:none;display:flex}.crumbs li+li{margin-top:0}.crumbs li:not(:last-child):after{content:"/";opacity:.7;margin:0 .55em}.county-group{margin-bottom:clamp(32px,5vw,48px)}.county-group h3{margin-bottom:12px}.fit-links{margin:24px 0 0}.episode{border-top:2px solid var(--lake);padding:22px 0}.episode audio{width:100%;margin-top:12px;display:block}.glance{background:var(--paper);border:1px solid var(--stone-line);border-left:4px solid var(--lake);border-radius:3px;padding:22px 20px}@media (width>=560px){.glance{padding:30px 36px}}.glance-section{padding-block:clamp(32px,5vw,60px)}.glance h2{margin-bottom:.4em;font-size:clamp(1.5rem,2.6vw,1.875rem)}.glance-lede{max-width:72ch;margin:0 0 18px;font-size:clamp(1.0625rem,1.5vw,1.1875rem);line-height:1.55}.glance-list{margin:0}.glance-row{border-top:1px solid var(--stone-line);gap:2px 28px;padding:12px 0;display:grid}@media (width>=760px){.glance-row{grid-template-columns:11rem minmax(0,1fr)}}.glance-list dt{color:var(--lake-deep);font-weight:700}.glance-list dd{margin:0}.glance-dates{border-top:1px solid var(--stone-line);margin:14px 0 0;padding-top:12px}.q-list h3{margin-bottom:.3em}.q-list .look{margin:0}.q-list .ours{background:var(--mist);border-left:4px solid var(--lake);border-radius:3px;margin:10px 0 0;padding:10px 14px}.q-list .ours>:last-child{margin-bottom:0}.table-lede{max-width:72ch;margin:0 0 20px}.hardness-table caption{caption-side:top;color:var(--ink);padding:0 0 10px;font-size:1rem;font-weight:600}.hardness-table tbody th{width:34%}.hardness-table tbody th small{color:var(--ink-soft);font-weight:400;display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}@media print{.top-strip,.site-header,.mcta,.lead-card,.wave{display:none!important}.band-lake,.band-deep,.page-hero{color:var(--ink);background:0 0}.band-lake:before{display:none}.band-lake h1,.band-lake h2,.band-lake h3,.page-hero h1{color:var(--ink)}}
