/* Atmospheric water enhancement over the current live site's hero design. */
.hero{isolation:isolate;background:#071528}
.hero::before,.hero::after{display:none}
.hero-water{position:absolute;inset:var(--header-h) 0 0;z-index:1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 76% 0%,#27608d 0%,#12395c 32%,#08182c 70%)}
.hero-water canvas{display:block;width:100%;height:100%;max-width:none;opacity:0;transition:opacity .8s}
.hero-water[data-water-ready=true] canvas{opacity:1}
.hero-water::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#060c17 0%,transparent 19%);z-index:3}
.hero-scrim{background:linear-gradient(103deg,rgba(5,12,23,.79),rgba(5,12,23,.5) 33%,rgba(5,12,23,.12) 60%,transparent 82%),linear-gradient(0deg,rgba(5,12,23,.38),transparent 23%)}
.water-fallback{position:absolute;inset:-20% -14%;transform:rotate(-13deg);transform-origin:72% 0;opacity:.65;background:repeating-conic-gradient(from 166deg at 72% 0%,transparent 0deg 6deg,#9de2ff12 7deg 10deg,transparent 13deg 20deg);filter:blur(9px);mask-image:linear-gradient(#000,transparent 90%)}
.hero-water[data-water-ready=true] .water-fallback{display:none}
.water-bubbles{position:absolute;inset:0;z-index:2;overflow:hidden;mask-image:linear-gradient(transparent,#000 17% 83%,transparent)}
.water-bubble{position:absolute;left:var(--x);top:110%;width:var(--size);height:var(--size);border-radius:50%;border:1px solid #c4efff3b;background:radial-gradient(circle at 30% 24%,#d6f6ffa3 0%,#94deff22 24%,transparent 60%);box-shadow:inset -1px -1px 2px #79c9ff26,0 0 9px #67caff18;opacity:0;animation:tn-water-rise var(--duration) var(--delay) linear infinite;animation-play-state:paused;will-change:transform}
.hero-water[data-water-running=true] .water-bubble{animation-play-state:running}
@keyframes tn-water-rise{0%{transform:translate(0,0);opacity:0}12%{opacity:var(--alpha)}50%{transform:translate(var(--sway),-55vh)}85%{opacity:var(--alpha)}100%{transform:translate(0,-115vh);opacity:0}}
.hero-water-control{position:absolute;bottom:20px;right:var(--gut);z-index:5;display:inline-flex;gap:9px;align-items:center;min-height:44px;padding:9px 13px;color:#c4ddeb;border:1px solid #7ba6c040;border-radius:6px;background:#061628a8;backdrop-filter:blur(8px);font:500 .875rem/1.4 var(--fb);transition:border-color .2s,background .2s}
.hero-water-control:hover{background:#102c43;border-color:#8fcaff85}
.hero-water-control svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.8}
.hero-water-control[hidden]{display:none!important}
.hero-frame{box-shadow:0 28px 65px -24px #000c,0 0 35px -20px #69c9fb7a}
@media(min-width:900px){.hero-water{top:var(--header-tall)}}
@media(max-width:599px){.hero-water-control{bottom:16px;right:var(--gut)}.water-bubble:nth-child(2n){display:none}}
@media(prefers-reduced-motion:reduce){.hero-water canvas{transition:none}.water-bubble{animation:none;opacity:.12;top:var(--still-y)}.hero-water-control{display:none}}

/* The retained RPZ demonstration stays in its own backflow section. */
.tn-wrap{width:100%;max-width:1200px;padding-inline:var(--gut);margin-inline:auto}
.tn-backflow-band{padding-block:clamp(65px,7vw,105px);color:#e4f0f7;background:radial-gradient(ellipse at 15% 48%,#133e5226,transparent 60%),#091923}
.tn-backflow-intro{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:40px}
.tn-backflow-intro h2{font:650 clamp(1.9rem,3.4vw,2.8rem)/1.2 var(--fd);letter-spacing:-.035em;color:#ebf5f9}
.tn-backflow-intro p:not(.tn-eyebrow){color:#a8c0cf;font-size:1rem;line-height:1.8;max-width:495px}
.tn-eyebrow{display:flex;align-items:center;gap:12px;font:500 .75rem/1.6 var(--fb);letter-spacing:.1em;text-transform:uppercase;color:#a5c4d3;margin-bottom:18px}
.tn-eyebrow>span{width:25px;height:2px;background:#6fb0ff;flex:none}
.tn-text-link{display:inline-flex;align-items:center;gap:17px;min-height:44px;font-size:.875rem;color:#74c9ed;text-decoration:underline;text-underline-offset:5px;margin-top:12px}
.tn-text-link:hover{color:#fff}
.tn-backflow-service{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:30px;font-size:.875rem;color:#a5bfcc}
.tn-backflow-service p{display:inline-flex;align-items:center;gap:10px}.tn-backflow-service p::before{content:'✓';color:#60c6e8}
.tn-backflow-service a{min-height:44px;display:inline-flex;align-items:center;color:#d2e5ef;border-bottom:1px solid #537185}
.tn-form-note{font-size:.875rem;color:#a5bdcf;margin-top:15px}
.tn-preview-badge{position:fixed;z-index:999;bottom:12px;left:12px;background:#071725ed;border:1px solid #557384;border-radius:30px;padding:7px 12px;color:#bcd4e2;font:12px Inter,Arial,sans-serif}
@media(max-width:850px){.tn-backflow-intro{grid-template-columns:1fr;gap:23px;margin-bottom:30px}.tn-backflow-service{gap:14px 25px}}
