* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html,
body {
    height: 100%;
}

body {
    font-family: "Poppins", Arial, sans-serif;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background: #0f172a;
    color: #fff;
    overflow: hidden;
}

.background-animation {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle at 20% 20%, rgba(124, 92, 255, 0.2), transparent 40%),
        radial-gradient(circle at 80% 80%, rgba(56, 214, 168, 0.15), transparent 40%),
        #0f172a;
    z-index: -1;
    animation: gradientMove 10s ease-in-out infinite alternate;
}

@keyframes gradientMove {
    0% {
        background-position: 20% 20%, 80% 80%;
    }

    100% {
        background-position: 30% 70%, 70% 30%;
    }
}

.home-button {
    position: absolute;
    top: 20px;
    left: 20px;
    text-decoration: none;
    font-weight: 600;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.15);
    padding: 10px 18px;
    border-radius: 12px;
    backdrop-filter: blur(6px);
    color: #fff;
    transition: 0.3s;
}

.home-button:hover {
    background: linear-gradient(90deg, #7c5cff, #38d6a8);
    color: #fff;
    transform: translateY(-2px);
}

.glitch-box {
    text-align: center;
}

.glitch-text {
    font-size: 5rem;
    font-weight: 900;
    position: relative;
    display: inline-block;
    color: #fff;
    text-transform: uppercase;
    animation: glitch 1.5s infinite;
}

.glitch-text::before,
.glitch-text::after {
    content: attr(data-text);
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    overflow: hidden;
}

.glitch-text::before {
    left: 2px;
    text-shadow: -2px 0 #7c5cff;
    animation: glitchTop 2s infinite linear alternate-reverse;
}

.glitch-text::after {
    left: -2px;
    text-shadow: -2px 0 #38d6a8;
    animation: glitchBottom 1.5s infinite linear alternate-reverse;
}

@keyframes glitch {
    0% {
        transform: none;
    }

    20% {
        transform: skew(0.5deg, 0.5deg);
    }

    40% {
        transform: skew(-0.5deg, -0.5deg);
    }

    60% {
        transform: skew(0.5deg, -0.5deg);
    }

    80% {
        transform: skew(-0.5deg, 0.5deg);
    }

    100% {
        transform: none;
    }
}

@keyframes glitchTop {
    0% {
        clip: rect(0, 900px, 0, 0);
    }

    20% {
        clip: rect(0, 900px, 100px, 0);
    }

    40% {
        clip: rect(0, 900px, 0, 0);
    }

    60% {
        clip: rect(0, 900px, 50px, 0);
    }

    80% {
        clip: rect(0, 900px, 0, 0);
    }

    100% {
        clip: rect(0, 900px, 75px, 0);
    }
}

@keyframes glitchBottom {
    0% {
        clip: rect(0, 900px, 0, 0);
    }

    20% {
        clip: rect(50px, 900px, 100px, 0);
    }

    40% {
        clip: rect(0, 900px, 0, 0);
    }

    60% {
        clip: rect(75px, 900px, 120px, 0);
    }

    80% {
        clip: rect(0, 900px, 0, 0);
    }

    100% {
        clip: rect(25px, 900px, 100px, 0);
    }
}

.glitch-sub {
    margin-top: 12px;
    font-size: 1.2rem;
    color: #9ca3af;
}