/* Decorative motion never controls the visibility of copy, notices or CTAs. */
.fp-editorial .fe-photo--unavailable .fe-photo-mask{mask:none!important;border-radius:20px;background:#e6f1f7;display:grid;place-items:center;padding:24px}
.fp-editorial .fe-photo--unavailable img{display:none}
.fp-editorial .fe-media-fallback{font-size:15px;line-height:1.9;margin:0;text-align:center;color:#21677a;overflow-wrap:anywhere}
.fp-editorial .fe-hero-media::after{content:'';position:absolute;inset:-8px -10px 18px 10px;border:1px solid #a4c7d9;border-radius:64% 35% 58% 40%;transform:rotate(-8deg);z-index:-1;pointer-events:none}
.fp-editorial .fe-section-heading{position:relative}
.fp-editorial .fe-section-heading::after{content:'';display:block;width:86px;height:3px;background:#8bb5cb;border-radius:2px;margin-top:25px;transform-origin:left}
.fp-editorial .fe-section-heading::before{content:'';position:absolute;right:-10px;top:12px;width:110px;height:110px;border:1px solid #9dc3d5;border-radius:67% 33% 63% 37%;transform:rotate(18deg);z-index:-1;pointer-events:none}
.fp-editorial .fe-section:nth-of-type(3n) .fe-section-heading::before{border-radius:50%;width:75px;height:75px;right:0;box-shadow:12px -8px 0 -1px var(--surface),12px -8px 0 0 #9dc3d5}
.fp-editorial :is(.fp-link,.fe-toc a,.ce-guide a,.ce-adjacent-links a){transition:color .22s ease,background-color .22s ease,padding .22s ease}
.fp-editorial .fe-toc a>i,.fp-editorial .ce-guide a>span{transition:transform .22s ease}
.fp-editorial :is(summary,.fp-button){-webkit-tap-highlight-color:#bed8e580}
.fp-editorial :is(a,summary,button,input,textarea):focus-visible{outline:3px solid #21677a;outline-offset:5px}
.fp-editorial .fe-photo--illustration .fe-photo-shadow{aspect-ratio:1.05;filter:drop-shadow(5px 7px 0 #aacbdc)}
.fp-editorial .fe-photo--illustration .fe-photo-mask{mask:none;overflow:hidden;border-radius:38% 16% 30% 13% / 19% 27% 18% 31%;background:#edf5fa}
.fp-editorial .fe-photo--illustration img{object-fit:contain;padding:4%;background:#edf5fa}
.fp-editorial .fe-photo--illustration figcaption{text-align:left}
.fp-editorial .fe-photo--valve .fe-photo-mask{mask-image:url('/flow02/leak/assets/photo-mask-lagoon.svg')}
.fp-editorial .fe-hero .fe-photo--valve .fe-photo-shadow{aspect-ratio:1.05}
.fp-editorial .fe-photo--valve img{object-position:50% 48%}
.fp-editorial .fe-photo--valve-detail .fe-photo-mask{mask:none;overflow:hidden;border-radius:22% 12% 20% 12% / 15% 22% 14% 24%}
.fp-editorial .fe-photo--valve-detail .fe-photo-shadow{aspect-ratio:1}
.fp-editorial .fe-photo--valve-detail img{object-fit:cover;object-position:center}
.fp-editorial .fe-valve-legend{display:flex;flex-wrap:wrap;gap:8px 24px;margin:22px 0 0;padding:0;list-style:none;font-size:14px;color:#21677a}
.fp-editorial .fe-valve-legend li{padding-bottom:6px;border-bottom:1px solid #94b9ce}
.fp-editorial .fe-hero-media:has(.fe-valve-legend)::after{bottom:100px}
.fp-editorial .fe-drain-step{display:grid;grid-template-columns:24px minmax(0,1fr);gap:12px;padding:13px 0;border-bottom:1px solid #b9d2de}
.fp-editorial .fe-drain-step-no{color:#21677a;font-weight:700}
.fp-editorial .fe-drain-step:last-of-type{margin-bottom:18px}
.fp-editorial .fe-valve-types{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:42px;margin-top:50px}
.fp-editorial .fe-valve-type{min-width:0}
.fp-editorial .fe-valve-type h3{margin:28px 0 15px;font-size:23px}
.fp-editorial .fe-valve-type .fe-photo{max-width:280px;margin-inline:auto}
.fp-editorial .fe-valve-type .fe-photo-mask{border-radius:30% 10% 30% 10%;background:#e6f1f7}
.fp-editorial .fe-valve-type .fe-photo img{padding:0}
@media(max-width:767px){.fp-editorial .fe-valve-types{grid-template-columns:1fr;gap:42px;margin-top:36px}.fp-editorial .fe-valve-type{border-top:1px solid #a8c9da;padding-top:28px}.fp-editorial .fe-valve-type h3{margin:26px 0 15px;font-size:23px}.fp-editorial .fe-valve-type p{font-size:16px;line-height:1.95}.fp-editorial .fe-valve-type .fe-photo{max-width:260px}.fp-editorial .fe-valve-type figcaption{font-size:12px;line-height:1.8;margin-top:16px}.fp-editorial .fe-valve-type .fe-photo-shadow{aspect-ratio:1}}
@media(hover:hover){.fp-editorial .fe-toc a:hover>i,.fp-editorial .ce-guide a:hover>span{transform:translateY(3px)}}
@media(prefers-reduced-motion:no-preference){
 .fp-editorial .fe-hero .fe-photo img,.ce-page .ce-hero .fe-photo img{animation:fe-image-settle 1.4s cubic-bezier(.2,.6,.2,1) both}
 .fp-editorial .fe-hero .fe-label,.ce-page .ce-hero .ce-eyebrow{animation:fe-rule-settle 1.1s ease-out both}
 @media(min-width:1024px){.ce-page .ce-hero>.ce-ornament{animation:fe-decoration-drift 16s ease-in-out infinite alternate}.fp-editorial .fe-hero-media::after{animation:fe-outline-drift 18s ease-in-out infinite alternate}}
}
@keyframes fe-image-settle{from{transform:scale(1.025)}to{transform:scale(1)}}
@keyframes fe-rule-settle{from{letter-spacing:.15em}to{letter-spacing:.055em}}
@keyframes fe-decoration-drift{from{transform:translateY(0) rotate(-2deg)}to{transform:translateY(-5px) rotate(2deg)}}
@keyframes fe-outline-drift{from{transform:translateY(0) rotate(-8deg)}to{transform:translateY(-4px) rotate(-6deg)}}
@media(max-width:767px){.fp-editorial .fe-section-heading::before{right:-18px;width:80px;height:80px;opacity:.65}.fp-editorial .fe-section-heading::after{width:60px;margin-top:22px}.fp-editorial .fe-hero-media::after{inset:-5px -4px 18px 4px}.fp-editorial .fe-hero .fe-photo--illustration .fe-photo-shadow{aspect-ratio:1.33}.fp-editorial .fe-valve-legend{gap:8px 15px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.fp-editorial *,.fp-editorial *::before,.fp-editorial *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
