/**
 * Nightingale Coastal Designer - Wave Background v2.8.0
 */

.ncd-wave-bg {
    position: fixed;
    inset: 0;
    overflow: hidden;
    z-index: 0;
    pointer-events: none;
}

.ncd-lava-bg {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, #1a1a2e 0%, #0d0d1a 50%, #1a2a3a 100%);
}

.ncd-wave-layer {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 200px;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cpath fill='%234A90A4' fill-opacity='0.1' d='M0,160L48,170.7C96,181,192,203,288,192C384,181,480,139,576,128C672,117,768,139,864,154.7C960,171,1056,181,1152,165.3C1248,149,1344,107,1392,85.3L1440,64L1440,320L1392,320C1344,320,1248,320,1152,320C1056,320,960,320,864,320C768,320,672,320,576,320C480,320,384,320,288,320C192,320,96,320,48,320L0,320Z'%3E%3C/path%3E%3C/svg%3E") repeat-x;
    background-size: 1440px 200px;
    animation: ncdWave 20s linear infinite;
}

.ncd-wave-layer:nth-child(2) {
    opacity: 0.5;
    animation-duration: 25s;
    animation-direction: reverse;
}

.ncd-wave-layer:nth-child(3) {
    opacity: 0.3;
    animation-duration: 30s;
}

@keyframes ncdWave {
    0% { transform: translateX(0); }
    100% { transform: translateX(-1440px); }
}

.ncd-particles {
    position: absolute;
    inset: 0;
}

.ncd-particle {
    position: absolute;
    width: 4px;
    height: 4px;
    background: rgba(74, 144, 164, 0.5);
    border-radius: 50%;
    bottom: -10px;
    animation: ncdFloat 20s ease-in-out infinite;
}

@keyframes ncdFloat {
    0% { transform: translateY(0) scale(1); opacity: 0; }
    10% { opacity: 1; }
    90% { opacity: 1; }
    100% { transform: translateY(-100vh) scale(0.5); opacity: 0; }
}
