/* Durchgehendes Wasserlicht. Inhalte, Navigation und Dialoge liegen darüber. */
body{isolation:isolate}
main,.site-footer,.hosting-banner{position:relative;z-index:1}
.water-backdrop{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 68% 20%,#10262b 0%,#0b171c 45%,#0b0c0e 100%)}
.water-canvas{display:block;width:100%;height:100%;opacity:0;transition:opacity 1.2s ease}
.water-backdrop.is-ready .water-canvas{opacity:1}
.water-fallback{position:absolute;inset:-8%;background:url('water-caustics.svg') center/100% 100%;opacity:.48;animation:water-drift 22s ease-in-out infinite alternate;transition:opacity 1s ease}
.water-backdrop.is-ready .water-fallback{opacity:0;animation:none}
.water-backdrop::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,12,14,.55),rgba(11,12,14,.1) 65%,rgba(11,12,14,.24)),radial-gradient(ellipse at 50% 40%,transparent 20%,rgba(11,12,14,.28) 100%)}
.water-mouse-light{position:absolute;inset:0;z-index:1;background:radial-gradient(310px circle at var(--mouse-x,70%) var(--mouse-y,30%),rgba(98,198,222,.105),rgba(98,198,222,.035) 38%,transparent 72%);opacity:var(--mouse-presence,0);transition:opacity .6s ease}
.pulse-dot{animation:water-pulse 3.4s ease-in-out infinite}
.viewport{background:rgba(13,20,24,.84);border-color:rgba(98,198,222,.2);box-shadow:0 0 38px rgba(98,198,222,.035);transition:transform .3s var(--ease),border-color .4s ease,box-shadow .4s ease}
.js.is-loaded .viewport{transform:perspective(1100px) rotateX(var(--panel-x,0deg)) rotateY(var(--panel-y,0deg))}
.viewport.is-pointed{border-color:rgba(98,198,222,.38);box-shadow:0 0 42px rgba(98,198,222,.065)}
.lv-mouse{transform-box:view-box;transform-origin:820px 200px;transform:rotate(var(--lever-tilt,0deg));transition:transform .3s ease-out}
.lv-pivot{filter:drop-shadow(0 0 7px rgba(98,198,222,.45))}
.lv-load{animation:water-load-glow 5s ease-in-out infinite}
.service{background:rgba(11,12,14,.25)}
.btn-primary{box-shadow:0 0 24px rgba(98,198,222,.07);transition:box-shadow .3s ease,background-color .2s ease,transform .2s var(--ease)}
.btn-primary:hover{box-shadow:0 0 30px rgba(98,198,222,.2)}
.hosting-banner-inner{background:rgba(22,25,29,.94)}
.site-footer{background:rgba(11,12,14,.25)}
@keyframes water-pulse{0%,100%{box-shadow:0 0 8px rgba(98,198,222,.3),0 0 0 3px rgba(98,198,222,.1)}50%{box-shadow:0 0 18px rgba(98,198,222,.7),0 0 0 9px rgba(98,198,222,0)}}
@keyframes water-load-glow{0%,100%{fill:rgba(98,198,222,.08);stroke-opacity:.7}50%{fill:rgba(98,198,222,.18);stroke-opacity:1}}
@keyframes water-drift{0%{transform:translate(-2%,-1%) scale(1.04);filter:brightness(.85)}50%{filter:brightness(1.15)}100%{transform:translate(3%,2%) scale(1.12);filter:brightness(.95)}}
html.water-paused .pulse-dot,html.water-paused .lv-load,html.water-paused .water-fallback{animation-play-state:paused}
@media(max-width:720px){.water-backdrop::after{background:linear-gradient(90deg,rgba(11,12,14,.48),rgba(11,12,14,.18)),linear-gradient(0deg,rgba(11,12,14,.2),transparent)}.water-mouse-light{display:none}}
@media(prefers-reduced-motion:reduce){.water-fallback{animation:none}.water-canvas,.water-fallback,.lv-mouse,.viewport{transition:none}.water-mouse-light{display:none}.js.is-loaded .viewport,.lv-mouse{transform:none}}
