.infrastructure-page{background:var(--ws-paper);color:var(--ws-ink);font-size:var(--type-body-size);line-height:1.6;overflow:clip}.infrastructure-page :where(h1,h2,p,figure,dl,dd){margin:0}.infrastructure-page :where(h1,h2){font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;font-weight:700}.infrastructure-page h1{font-size:var(--type-display-sm-size);line-height:.98}.infrastructure-page h2{font-size:var(--type-headline-sm-size);line-height:1.03}.infrastructure-page a{color:inherit;text-underline-offset:.2em}.infrastructure-page :where(a,input):focus-visible{outline:3px solid var(--ws-teal);outline-offset:3px}.infrastructure-page [data-header-tone=dark] :where(a,input):focus-visible{outline-color:var(--ws-cyan)}.infrastructure-label{color:var(--ws-teal);font-size:var(--type-label-size);font-weight:var(--type-label-weight);line-height:var(--type-label-line-height);letter-spacing:var(--type-label-tracking);text-transform:uppercase}.infrastructure-lede{max-width:34rem;color:var(--ws-ink-soft);font-size:1.15rem;line-height:1.5}.infrastructure-fine{max-width:65ch;color:var(--ws-ink-muted);font-size:.78rem;line-height:1.5}.infrastructure-page [data-header-tone=dark] :where(.infrastructure-label){color:var(--ws-cyan)}.infrastructure-page [data-header-tone=dark] :where(.infrastructure-lede,.infrastructure-fine){color:var(--ws-cyan-bright)}.infrastructure-actions{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.infrastructure-pill{border-radius:var(--radius-pill);white-space:nowrap;min-height:2.75rem;transition:background-color var(--duration-control) var(--easing-out-quart), border-color var(--duration-control) var(--easing-out-quart);border:1px solid #0000;align-items:center;gap:.5rem;padding:.65rem 1.25rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.infrastructure-pill--solid{background:var(--ws-ink);color:var(--ws-paper)!important}.infrastructure-pill--solid:hover{background:var(--ws-navy-deep)}.infrastructure-pill--ghost{border-color:var(--ws-line-strong)}.infrastructure-pill--ghost:hover{border-color:var(--ws-ink)}.infrastructure-close .infrastructure-pill--solid{background:var(--ws-cyan);color:var(--ws-navy-deep)!important}.infrastructure-close .infrastructure-pill--solid:hover{background:var(--ws-cyan-bright)}.infrastructure-close .infrastructure-pill--ghost{border-color:color-mix(in srgb, var(--ws-paper) 40%, transparent)}.infrastructure-close .infrastructure-pill--ghost:hover{border-color:var(--ws-paper)}.infrastructure-tag{border-radius:var(--radius-pill);letter-spacing:.04em;align-items:center;min-height:1.7rem;padding:.2rem .65rem;font-size:.78rem;font-weight:600;display:inline-flex}.infrastructure-tag--concept{z-index:1;background:color-mix(in srgb, var(--ws-navy-deep) 82%, transparent);color:var(--ws-paper);position:absolute;bottom:.8rem;left:.8rem}.infrastructure-tag--investigate{border:1px solid color-mix(in srgb, var(--accent-amber) 35%, transparent);background:var(--ws-grey-soft);color:var(--accent-amber)}.infrastructure-pic{border-radius:var(--radius-media);background:var(--ws-ink);position:relative;overflow:hidden}.infrastructure-pic img{object-fit:cover}.infrastructure-hero{padding-block:calc(var(--site-header-h) + clamp(1rem, 3vw, 2rem)) clamp(2.5rem, 6vw, 4rem);gap:clamp(1.5rem,3vw,2.5rem);display:grid}.infrastructure-hero__grid{align-items:center;gap:1.5rem;display:grid}.infrastructure-hero__copy{gap:1.1rem;display:grid}.infrastructure-hero h1{max-width:12ch}.infrastructure-hero__pic{aspect-ratio:4/4.2}.infrastructure-hero__pic img{object-position:50% 62%}.infrastructure-places{gap:.7rem;display:grid}.infrastructure-places ul{gap:.8rem;margin:0;padding:0;list-style:none;display:grid}.infrastructure-place{border:1px solid var(--ws-line);border-radius:var(--radius-md);background:var(--ws-panel);min-height:2.75rem;transition:border-color var(--duration-control) var(--easing-out-quart);grid-template-columns:7.5rem 1fr;align-items:center;gap:.9rem;padding:.55rem;text-decoration:none;display:grid}.infrastructure-place:hover{border-color:var(--ws-line-strong)}.infrastructure-thumb{aspect-ratio:16/10;border-radius:var(--radius);background:var(--ws-grey-soft);display:block;position:relative;overflow:hidden}.infrastructure-thumb :where(img,svg){object-fit:cover;width:100%;height:100%;display:block}.infrastructure-place__text{gap:.1rem;display:grid}.infrastructure-place__name{font-size:var(--type-body-size);font-weight:700;line-height:1.2}.infrastructure-place__cue{color:var(--ws-ink-soft);font-size:.86rem}.infrastructure-chapter{border-top:1px solid var(--ws-line);padding-block:clamp(3rem,8vw,5.5rem)}.infrastructure-chapter--after-band{border-top:0}.infrastructure-chapter__head{gap:.8rem;max-width:42rem;margin-bottom:clamp(1.4rem,3vw,2.2rem);display:grid}.infrastructure-chapter>h2{max-width:42rem;margin-bottom:clamp(1.4rem,3vw,2.2rem)}.infrastructure-needs{flex-wrap:wrap;gap:.4rem;margin:.2rem 0 0;padding:0;list-style:none;display:flex}.infrastructure-needs li{border:1px solid var(--ws-line);border-radius:var(--radius-pill);background:var(--ws-panel);padding:.3rem .75rem;font-size:.84rem;font-weight:600}.infrastructure-story{counter-reset:infrastructure-still;gap:1rem;margin:0;padding:0;list-style:none;display:grid}.infrastructure-story li{counter-increment:infrastructure-still}.infrastructure-story figure{gap:.6rem;display:grid}.infrastructure-story__pic{aspect-ratio:16/10}.infrastructure-story figcaption{grid-template-columns:1.6rem 1fr;gap:.4rem;font-weight:600;line-height:1.35;display:grid}.infrastructure-story figcaption:before{color:var(--ws-teal);font-variant-numeric:tabular-nums;content:counter(infrastructure-still)}.infrastructure-concept-line{color:var(--ws-ink-muted);font-size:.86rem;margin-top:1rem!important}.infrastructure-concept-line a{align-items:center;gap:.3rem;min-height:2.75rem;font-weight:600;display:inline-flex}.infrastructure-tidal{background:var(--ws-navy-deep);color:var(--ws-paper);padding-block:clamp(3rem,8vw,5.5rem)}.infrastructure-tidal__set{border:0;min-width:0;margin:0;padding:0}.infrastructure-tidal__radio{opacity:0;width:1px;height:1px;margin:0;position:absolute}.infrastructure-tidal__card{border-radius:var(--radius-media);background:var(--ws-panel);overflow:hidden}.infrastructure-tidal__card svg{width:100%;height:auto;display:block}.infrastructure-tidal__key{color:var(--ws-cyan-bright);align-items:center;gap:.5rem;font-size:.78rem;display:none;margin-top:.6rem!important}.infrastructure-tidal__key:before{content:"";border-top:2px dashed;width:1.5rem}.infrastructure-tidal__controls{gap:.9rem;margin-top:1.2rem;display:grid}.infrastructure-tidal__levels{flex-wrap:wrap;align-items:center;gap:.5rem .9rem;display:flex}.infrastructure-tidal__options{flex-wrap:wrap;gap:.4rem;display:flex}.infrastructure-tidal__option{border:1px solid color-mix(in srgb, var(--ws-paper) 38%, transparent);border-radius:var(--radius-pill);cursor:pointer;min-height:2.75rem;transition:background-color var(--duration-control) var(--easing-out-quart), border-color var(--duration-control) var(--easing-out-quart);align-items:center;padding:.5rem 1.15rem;font-size:.95rem;font-weight:600;display:inline-flex}.infrastructure-tidal__option:hover{border-color:var(--ws-cyan)}.infrastructure-tidal__radio[value=lower]:checked~.infrastructure-tidal__controls .infrastructure-tidal__option[data-level=lower],.infrastructure-tidal__radio[value=equal]:checked~.infrastructure-tidal__controls .infrastructure-tidal__option[data-level=equal],.infrastructure-tidal__radio[value=higher]:checked~.infrastructure-tidal__controls .infrastructure-tidal__option[data-level=higher]{border-color:var(--ws-cyan);background:var(--ws-cyan);color:var(--ws-navy-deep)}.infrastructure-tidal__radio[value=lower]:focus-visible~.infrastructure-tidal__controls .infrastructure-tidal__option[data-level=lower],.infrastructure-tidal__radio[value=equal]:focus-visible~.infrastructure-tidal__controls .infrastructure-tidal__option[data-level=equal],.infrastructure-tidal__radio[value=higher]:focus-visible~.infrastructure-tidal__controls .infrastructure-tidal__option[data-level=higher]{outline:3px solid var(--ws-cyan);outline-offset:3px}.infrastructure-tidal__state{max-width:44rem;min-height:2.8em;font-size:1.3rem;font-weight:600;line-height:1.35}.infrastructure-tidal__caption{display:none}.infrastructure-tidal__radio[value=lower]:checked~.infrastructure-tidal__controls .infrastructure-tidal__caption[data-level=lower],.infrastructure-tidal__radio[value=equal]:checked~.infrastructure-tidal__controls .infrastructure-tidal__caption[data-level=equal],.infrastructure-tidal__radio[value=higher]:checked~.infrastructure-tidal__controls .infrastructure-tidal__caption[data-level=higher]{display:block}.infrastructure-tidal__receiving{opacity:0;transition:opacity var(--duration-state) var(--easing-out-quart)}.infrastructure-tidal__flow{fill:none;stroke:var(--ws-cyan-bright);stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:2 16;opacity:0;transition:opacity var(--duration-state) ease}.infrastructure-tidal__unit{transition:stroke var(--duration-state) ease}.infrastructure-tidal__radio[value=lower]:checked~.infrastructure-tidal__card :where(.infrastructure-tidal__receiving[data-level=lower],.infrastructure-tidal__flow),.infrastructure-tidal__radio[value=equal]:checked~.infrastructure-tidal__card .infrastructure-tidal__receiving[data-level=equal],.infrastructure-tidal__radio[value=higher]:checked~.infrastructure-tidal__card .infrastructure-tidal__receiving[data-level=higher]{opacity:1}.infrastructure-tidal__radio[value=higher]:checked~.infrastructure-tidal__card .infrastructure-tidal__unit{stroke:var(--accent-amber)}.infrastructure-tidal__set[data-inview] .infrastructure-tidal__radio[value=lower]:checked~.infrastructure-tidal__card .infrastructure-tidal__flow{animation:1.1s linear 4 infrastructure-flow}@keyframes infrastructure-flow{to{stroke-dashoffset:-36px}}.infrastructure-diagram__paper{fill:var(--ws-panel)}.infrastructure-diagram__ground{fill:var(--ws-grey);stroke:var(--ws-ink-muted);stroke-width:2px}.infrastructure-diagram__ground--fine{stroke-width:1.5px}.infrastructure-diagram__water{fill:var(--ws-cyan);fill-opacity:.85}.infrastructure-diagram__surface{stroke:var(--ws-teal);stroke-width:2.5px}.infrastructure-diagram__datum{stroke:var(--ws-ink-muted);stroke-width:1.5px;stroke-dasharray:6 6;opacity:.6}.infrastructure-diagram__text{fill:var(--ws-ink-muted);font-family:var(--font-display);font-size:13px;font-weight:600}.infrastructure-diagram__pipe{fill:none;stroke:var(--ws-ink);stroke-width:10px;stroke-linecap:round;stroke-linejoin:round}.infrastructure-diagram__pipe--thumb{stroke-width:12px}.infrastructure-diagram__unit{fill:var(--ws-panel);stroke:var(--ws-ink);stroke-width:3px}.infrastructure-diagram__groundwater{fill:none;stroke:var(--ws-teal);stroke-width:4px;stroke-dasharray:14 10}.infrastructure-diagram__collector{fill:var(--ws-panel);stroke:var(--ws-ink);stroke-width:5px}.infrastructure-diagram__unknown{fill:none;stroke:var(--accent-amber);stroke-width:5px;stroke-dasharray:12 9}.infrastructure-split{align-items:center;gap:1.6rem;display:grid}.infrastructure-split .infrastructure-chapter__head{margin-bottom:0}.infrastructure-diagram{gap:.6rem;display:grid}.infrastructure-diagram>svg{border:1px solid var(--ws-line);border-radius:var(--radius-media);width:100%;height:auto;display:block}.infrastructure-unit{aspect-ratio:1/.86;border:1px solid var(--ws-line);border-radius:var(--radius-media);background:var(--ws-panel);position:relative}.infrastructure-unit img{object-fit:contain}.infrastructure-facts{border-top:1px solid var(--ws-line-strong);margin-top:1.2rem;display:grid}.infrastructure-facts div{border-bottom:1px solid var(--ws-line-strong);grid-template-columns:6.5rem 1fr;align-items:baseline;gap:1rem;padding-block:.9rem;display:grid}.infrastructure-facts dt{color:var(--ws-teal);font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--type-label-tracking);text-transform:uppercase}.infrastructure-facts dd{font-size:1.25rem;font-weight:600;line-height:1.3}.infrastructure-brief{gap:2rem;display:grid}.infrastructure-checks{border-top:1px solid var(--ws-line-strong);margin:0 0 .9rem;padding:0;list-style:none}.infrastructure-checks li{border-bottom:1px solid var(--ws-line-strong)}.infrastructure-checks label{cursor:pointer;grid-template-columns:1.6rem 1fr;align-items:start;gap:.8rem;min-height:2.75rem;padding-block:.85rem;font-weight:500;display:grid}.infrastructure-checks input{width:1.35rem;height:1.35rem;accent-color:var(--ws-teal);margin:.12rem 0 0}.infrastructure-count-hint{color:var(--ws-ink-soft);font-size:1.15rem;margin-bottom:.6rem!important}.infrastructure-count{border-radius:var(--radius-md);background:var(--ws-ink);color:var(--ws-paper);padding:.8rem 1rem;margin-bottom:.6rem!important}.infrastructure-count strong{font-variant-numeric:tabular-nums;margin-right:.3rem;font-size:1.45rem}.infrastructure-compare{border-collapse:collapse;width:100%}.infrastructure-compare caption{text-align:left;margin-bottom:.6rem}.infrastructure-compare :where(th,td){border-bottom:1px solid var(--ws-line-strong);text-align:left;vertical-align:middle;padding:.75rem .9rem .75rem 0}.infrastructure-compare thead th{color:var(--ws-ink-muted);font-size:var(--type-label-size);font-weight:var(--type-label-weight);letter-spacing:var(--type-label-tracking);text-transform:uppercase;border-bottom-width:2px}.infrastructure-compare tbody th{font-weight:700;line-height:1.25}.infrastructure-compare td{color:var(--ws-ink-soft);font-size:.95rem;line-height:1.45}.infrastructure-compare__app{grid-template-columns:3.6rem 1fr;align-items:center;gap:.7rem;display:grid}.infrastructure-compare__app .infrastructure-thumb{aspect-ratio:1}.infrastructure-close{background:var(--ws-navy-deep);color:var(--ws-paper);padding-block:clamp(3rem,8vw,5rem)}.infrastructure-close h2{max-width:44rem}.infrastructure-close .infrastructure-fine{margin-top:.9rem}.infrastructure-steps{counter-reset:infrastructure-step;gap:.6rem;margin:1.6rem 0;padding:0;list-style:none;display:grid}.infrastructure-steps li{border-top:2px solid var(--ws-cyan);counter-increment:infrastructure-step;grid-template-columns:2rem 1fr;align-items:baseline;gap:.5rem;padding-top:.7rem;font-weight:600;line-height:1.3;display:grid}.infrastructure-steps li:before{color:var(--ws-cyan);font-variant-numeric:tabular-nums;content:counter(infrastructure-step);font-size:.9rem}@media (min-width:44rem){.infrastructure-places ul{grid-template-columns:repeat(3,minmax(0,1fr))}.infrastructure-place{grid-template-columns:1fr;gap:.6rem;padding:.55rem .55rem .9rem}.infrastructure-place__text{padding-inline:.35rem}}@media (min-width:48rem){.infrastructure-story{grid-template-columns:1fr 1fr;gap:1.4rem}}@media (max-width:47.99rem){.infrastructure-diagram__text{display:none}.infrastructure-tidal__key{display:flex!important}.infrastructure-compare thead{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.infrastructure-compare :where(tbody,tr,th,td){width:100%;display:block}.infrastructure-compare tr{border-bottom:1px solid var(--ws-line-strong);padding-block:.8rem}.infrastructure-compare :where(th,td){border:0;padding:.15rem 0}.infrastructure-compare td:before{color:var(--ws-teal);letter-spacing:.16em;text-transform:uppercase;content:attr(data-label);margin-top:.45rem;font-size:.68rem;font-weight:600;display:block}.infrastructure-compare .infrastructure-compare__check:before{color:var(--accent-amber)}}@media (min-width:52rem){.infrastructure-steps{grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem}.infrastructure-steps li{grid-template-columns:1fr;gap:.2rem}}@media (min-width:60rem){.infrastructure-hero__grid{grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:3rem}.infrastructure-hero__pic{aspect-ratio:5/5.6}.infrastructure-split{grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:3rem}.infrastructure-split--flip>:first-child{order:2}}@media (min-width:62rem){.infrastructure-brief{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:3rem}}@media (prefers-reduced-motion:reduce){.infrastructure-page *{transition:none!important;animation:none!important}}:where(:root[data-motion=reduced]) .infrastructure-page *{transition:none!important;animation:none!important}
