/* Decorative ocean animation. Finite; respects reduced motion. */
.hero,.category-hero{isolation:isolate}
.ocean-natural{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.ocean-rise{position:absolute;bottom:-100px;mix-blend-mode:screen;pointer-events:none;opacity:0;filter:saturate(.6) brightness(1.1);animation:ocean-rise 22s linear 1 both}
.ocean-natural .manta{left:9%;width:75px;height:82px;--dx:45px;--angle:15deg}
.ocean-natural .shark{right:9%;width:42.5px;height:82px;--dx:-35px;--angle:-12deg;animation-delay:2s}
.ocean-natural .cutout{display:block;width:100%;height:100%;overflow:hidden;position:relative;animation:ocean-fin 3s ease-in-out 8 alternate both;transform-origin:50% 28%}
.ocean-natural .cutout img{position:absolute;max-width:none;height:82px;width:123px;top:0}
.ocean-natural .manta img{left:0}.ocean-natural .shark img{right:0}
.ocean-natural .fish{left:48%;width:34px;height:82px;--dx:60px;--angle:24deg;animation-delay:4s;animation-duration:20s}
.ocean-natural .fish svg{width:100%;height:100%;display:block;animation:ocean-fin 1.6s ease-in-out 15 alternate both}
@keyframes ocean-rise{0%{transform:translate(0,0) rotate(var(--angle));opacity:0}8%{opacity:.9}82%{opacity:.85}100%{transform:translate(var(--dx),-1100px) rotate(calc(var(--angle) * -1));opacity:0}}
@keyframes ocean-fin{from{transform:scaleX(.93) rotate(-2deg)}to{transform:scaleX(1.03) rotate(2deg)}}
@media(prefers-reduced-motion:reduce){.ocean-natural{display:none}.ocean-natural *{animation:none!important}}
