.background-bubbles {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
    pointer-events: none;
}

.bubble {
    position: absolute;
    bottom: 0;
    border-radius: 50%;
    animation-name: floatUp;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    opacity: 0.6;


    /* Plastischer 3D-Look */
    background: radial-gradient(circle at 30% 30%, rgba(255,255,255,0.25), rgba(20,100,90,0.7));
    backdrop-filter: blur(4px);
    box-shadow: inset -4px -6px 12px rgba(255, 255, 255, 0.25),
                inset 4px 6px 12px rgba(0, 0, 0, 0.3),
                0 4px 8px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(3px);
    transition: transform 0.3s ease;
}


@keyframes floatUp {
    0% {
        transform: translateY(0) scale(1) translateX(0) rotate(0deg);
        opacity: 0;
    }
    10% {
        transform: translateY(-10vh) scale(1.05) translateX(2px) rotate(3deg);
        opacity: 0.2;
    }
    20% {
        transform: translateY(-20vh) scale(1.1) translateX(-3px) rotate(-4deg);
        opacity: 0.35;
    }
    30% {
        transform: translateY(-30vh) scale(1.2) translateX(5px) rotate(5deg);
        opacity: 0.45;
    }
    40% {
        transform: translateY(-40vh) scale(1.1) translateX(-4px) rotate(-6deg);
        opacity: 0.5;
    }
    50% {
        transform: translateY(-50vh) scale(1.25) translateX(6px) rotate(8deg);
        opacity: 0.6;
    }
    60% {
        transform: translateY(-60vh) scale(1.15) translateX(-6px) rotate(-8deg);
        opacity: 0.5;
    }
    70% {
        transform: translateY(-70vh) scale(1.3) translateX(4px) rotate(6deg);
        opacity: 0.4;
    }
    80% {
        transform: translateY(-80vh) scale(1.1) translateX(-5px) rotate(-4deg);
        opacity: 0.25;
    }
    90% {
        transform: translateY(-90vh) scale(1.05) translateX(2px) rotate(2deg);
        opacity: 0.15;
    }
    100% {
        transform: translateY(-100vh) scale(1) translateX(0) rotate(0deg);
        opacity: 0;
    }
}




