.living-ocean{--ocean-width:1000px;--ocean-height:500px}.living-ocean .ocean-atmosphere{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.ocean-surface{opacity:.6;height:28%;position:absolute;top:-10%;left:-10%;right:-10%}.ocean-surface i{background:radial-gradient(at 48% 0,#c3ffff70,#b2f8ff0a 53%,#0000 72%);animation:15s ease-in-out infinite alternate ocean-surface-roll;position:absolute;inset:0}.ocean-surface i+i{transform-origin:50% 0;background:repeating-radial-gradient(at 50% -150%,#0000 0 18px,#d2ffff44 22px,#0000 26px 45px);animation-duration:19s;animation-delay:-8s}.ocean-sunlight{position:absolute;inset:-12% -8% -15%}.ocean-shaft{transform-origin:50% 0;clip-path:polygon(30% 0,56% 0,100% 100%,0 100%);background:linear-gradient(#dff6,#b6f7ff25 45%,#0000 94%);height:112%;animation:18s ease-in-out infinite alternate ocean-light-drift;display:block;position:absolute;top:-5%}.ocean-caustics{opacity:.1;transform-origin:50% 100%;width:130%;height:85%;animation:19s ease-in-out infinite alternate ocean-caustic-drift;position:absolute;top:39%;left:-15%;-webkit-mask-image:linear-gradient(#0000,#000 65%,#0000);mask-image:linear-gradient(#0000,#000 65%,#0000)}.ocean-schools,.ocean-particles{position:absolute;inset:0}.ocean-school{width:155px;height:65px;animation:40s linear infinite ocean-school-cross;position:absolute;left:-165px}.ocean-school-members{width:100%;height:100%;position:relative}.ocean-school.school-west{animation-direction:reverse}.school-west .ocean-school-members{transform:scaleX(-1)}.ocean-school-fish{aspect-ratio:1.3;height:auto;animation:1.8s ease-in-out infinite alternate ocean-small-fish;position:absolute}.ocean-mote{opacity:.25;background:#d6ffff;border-radius:50%;animation:18s ease-in-out infinite alternate ocean-current-drift;position:absolute}.living-ocean .ocean-bubble{opacity:.4}.living-ocean .living-kelp{transform-origin:50% 97%;animation:7s ease-in-out infinite alternate ocean-kelp-sway}.living-ocean .living-coral{transform-origin:50% 95%;animation:9s ease-in-out infinite alternate ocean-coral-sway}.living-ocean .living-jelly{animation:6s ease-in-out infinite alternate ocean-jelly-float}.living-ocean .swimmer:hover,.living-ocean .swimmer:focus-visible{z-index:16!important}.living-ocean .swimmer-body{animation:4s ease-in-out infinite alternate ocean-body-drift;animation-delay:var(--swim-delay,0s);display:block;position:absolute;inset:0}.living-ocean .swimmer .fish-sprite{transition:filter .2s}.living-ocean .swim-dart{animation-duration:1.8s}.living-ocean .swim-glide{animation-duration:5.5s}.living-ocean .swim-hover{animation-duration:3.6s}.living-ocean .swim-pulse{animation-name:ocean-jelly-pulse;animation-duration:2.2s}.living-ocean .swim-bottom{animation-duration:6s}.living-ocean .food{pointer-events:none}.living-ocean[data-motion=paused] *,.living-ocean[data-motion=paused] :before,.living-ocean[data-motion=paused] :after{animation-play-state:paused!important}@keyframes ocean-surface-roll{0%{opacity:.55;transform:translate(-2%)scaleX(.97)}to{opacity:.88;transform:translate(3%)scaleX(1.04)}}@keyframes ocean-light-drift{0%{transform:rotate(var(--shaft-angle)) skewX(-3deg);opacity:.42}to{transform:rotate(calc(var(--shaft-angle) + 8deg)) skewX(3deg);opacity:.8}}@keyframes ocean-caustic-drift{0%{opacity:.08;transform:translate(-2%,1%)scale(1.04,.82)skew(-8deg)}to{opacity:.16;transform:translate(3%,-1%)scale(1.12,.9)skew(6deg)}}@keyframes ocean-school-cross{0%{transform:translateY(-10px)}50%{transform:translate3d(calc((var(--ocean-width) + 330px) / 2), 12px, 0)}to{transform:translate3d(calc(var(--ocean-width) + 330px), -6px, 0)}}@keyframes ocean-small-fish{0%{transform:translateY(-1px)rotate(-3deg)}to{transform:translateY(2px)rotate(3deg)}}@keyframes ocean-current-drift{0%{opacity:.14;transform:translate(-18px,12px)}to{opacity:.45;transform:translate(35px,-19px)}}@keyframes ocean-bubble-rise{0%{opacity:0;transform:translate(0,0)}12%{opacity:.52}75%{opacity:.4}to{transform:translate3d(32px, calc(-1 * var(--ocean-height) - 50px), 0);opacity:0}}@keyframes ocean-kelp-sway{0%{transform:rotate(-2.6deg)skew(-1.5deg)}to{transform:rotate(2.6deg)skew(1.5deg)}}@keyframes ocean-coral-sway{0%{transform:rotate(-1.1deg)scaleY(.995)}to{transform:rotate(1.1deg)scaleY(1.012)}}@keyframes ocean-jelly-float{0%{transform:translateY(-7px)rotate(-2deg)}to{transform:translateY(8px)rotate(2deg)}}@keyframes ocean-body-drift{0%{transform:translateY(-2px)rotate(-1deg)}to{transform:translateY(2px)rotate(1deg)}}@keyframes ocean-jelly-pulse{0%{transform:translateY(3px)scale(.98,1.02)}to{transform:translateY(-4px)scale(1.035,.97)}}@keyframes ocean-food-fall{to{transform:translateY(calc(var(--ocean-height) * .87));opacity:0}}@media (max-width:600px){.ocean-school-fish{max-width:22px}.ocean-school{opacity:.32!important}.ocean-shaft{opacity:.45}}@media (prefers-reduced-motion:reduce){.living-ocean *,.living-ocean :before,.living-ocean :after{transition:none!important;animation-play-state:paused!important}}
