/* Stilteaquarium scene only. All selectors use sa- prefix to avoid affecting Stilteboom. */
.sa-stage{position:relative;width:100%;height:100%;min-height:1px;overflow:hidden;isolation:isolate;background:#8fcddc;user-select:none;-webkit-user-select:none}
.sa-stage img{display:block;user-select:none;pointer-events:none;-webkit-user-drag:none;max-width:none}
.sa-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}
.sa-fish-layer{position:absolute;inset:0;pointer-events:none;overflow:visible}
.sa-fish-far{z-index:4}.sa-fish-mid{z-index:7}
.sa-fish{position:absolute;left:0;top:0;transform-origin:center center;will-change:transform,opacity}
.sa-fish img{width:100%;height:auto}
.sa-decoration{position:absolute;inset:0;z-index:10;pointer-events:none;overflow:hidden}
.sa-decor{position:absolute;bottom:0;transform-origin:bottom center;}
.sa-coral-left{width:20.4%;left:-1.6%;bottom:1.1%;animation:sa-sway-left 8s ease-in-out infinite alternate}
.sa-cave{width:25.8%;left:67%;bottom:.2%}
.sa-coral-right{width:19%;right:-1%;bottom:1.2%;animation:sa-sway-right 7s ease-in-out infinite alternate}
.sa-bubbles{position:absolute;inset:0;z-index:9;pointer-events:none}
.sa-bubble{position:absolute;top:0;left:0;border:1px solid rgba(247,255,255,.70);border-radius:50%;box-shadow:inset -1px -1px 3px rgba(130,221,241,.22),inset 1px 1px 2px rgba(255,255,255,.55);opacity:0;will-change:transform;}
/* Vaste extreem lichte waterwaas en een langzaam verschuivende lichtbreking. */
.sa-water-haze{position:absolute;inset:0;pointer-events:none;z-index:20;
 background:linear-gradient(to bottom,rgba(211,251,255,.048) 0%,rgba(32,130,165,.036) 56%,rgba(14,83,123,.077) 100%),
 radial-gradient(ellipse 65% 78% at 44% 5%,rgba(240,255,250,.11),transparent 90%);
 mix-blend-mode:soft-light;}
.sa-water-ripple{position:absolute;inset:-10%;pointer-events:none;z-index:21;
 background:repeating-linear-gradient(108deg,transparent 0px,transparent 104px,
 rgba(255,255,255,.08) 146px,transparent 191px,transparent 290px),
 radial-gradient(ellipse at 38% 12%,rgba(242,253,255,.10),transparent 65%);
 filter:blur(19px);opacity:.20;mix-blend-mode:screen;
 animation:sa-water-drift 26s ease-in-out infinite alternate;will-change:transform;}
@keyframes sa-water-drift{from{transform:translate3d(-2%,-1%,0) skewX(-1deg)}to{transform:translate3d(2%,1%,0) skewX(1deg)}}
@keyframes sa-sway-left{from{transform:rotate(-.6deg)}to{transform:rotate(.7deg)}}
@keyframes sa-sway-right{from{transform:rotate(.65deg)}to{transform:rotate(-.55deg)}}
@media(prefers-reduced-motion:reduce){.sa-coral-left,.sa-coral-right,.sa-water-ripple{animation:none}}
