
body {
    background-image: linear-gradient(135deg, #1a2a6c, #b21f1f, #fdcf6a, #fdcf6a, #b21f1f, #1a2a6c);
    background-size: 400% 400%;
    animation: gradientMove 15s ease infinite;
}

.effect-glass {
    background-color: rgba(255, 255, 255, 0.05);
    border-radius: 24px;
    backdrop-filter: blur(16px);
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 8px 32px 0 rgba(0,0,0,0.37);
    transition: all 0.3s cubic-bezier(.5,.25,.1,1.2);
}

.gradient {
    background: linear-gradient(to right, #5b9cf5, #5b9cf599);
    background-size: 200% 200%;
    animation: gradientMove 10s ease infinite;
}

@keyframes gradientMove {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

.reveal {
    opacity: 0;
    transform: translateY(20px);
    animation: revealAnim 0.8s ease forwards;
}

@keyframes revealAnim {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.floaty {
    transition: all 0.3s cubic-bezier(.68,-0.55,.27,1.55);
}

.floaty:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.4);
}

.pulse {
    animation: pulseAnim 1s infinite;
    animation-direction: alternate;
}

@keyframes pulseAnim {
    from { transform: scale(1); }
    to { transform: scale(1.05); }
}

.effect-glass h2 {
    background: linear-gradient(45deg, #3772ff, #9523ff);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

section.effect-glass {
    border: 1px solid rgba(255, 255, 255, 0.05);
    transition: all 0.4s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

footer {
    border-top: 1px solid rgba(255,255,255,0.05);
    backdrop-filter: blur(8px);
}

