:where([class^="ri-"])::before {
    content: "\f3c2";
}

body {
    font-family: 'Inter', sans-serif;
}

.gradient-bg {
    background: linear-gradient(135deg, #6b21a8 0%, #9333ea 100%);
}

@keyframes float {
    0% {
        transform: translateY(0px);
    }

    50% {
        transform: translateY(-20px);
    }

    100% {
        transform: translateY(0px);
    }
}

@keyframes fadeInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

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

.animate-fade-in-up {
    animation: fadeInUp 1s ease-out forwards;
}

.animate-fade-in-delay {
    opacity: 0;
    animation: fadeInUp 1s ease-out 0.5s forwards;
}

.animate-fade-in-delay-2 {
    opacity: 0;
    animation: fadeInUp 1s ease-out 1s forwards;
}

.floating-dots {
    position: absolute;
    width: 100%;
    height: 100%;
    background-image: radial-gradient(circle, rgba(255, 255, 255, 0.1) 1px, transparent 1px);
    background-size: 50px 50px;
    animation: float 6s ease-in-out infinite;
}

.animated-line {
    position: absolute;
    height: 2px;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    width: 100%;
    transform-origin: left;
}

.line-1 {
    top: 20%;
    animation: moveLine1 15s linear infinite;
}

.line-2 {
    top: 50%;
    animation: moveLine2 20s linear infinite;
}

.line-3 {
    top: 80%;
    animation: moveLine3 25s linear infinite;
}

@keyframes moveLine1 {
    0% {
        transform: translateX(-100%) rotate(0deg);
    }

    45% {
        transform: translateX(100%) rotate(0deg);
    }

    50% {
        transform: translateX(100%) rotate(180deg);
    }

    95% {
        transform: translateX(-100%) rotate(180deg);
    }

    100% {
        transform: translateX(-100%) rotate(360deg);
    }
}

@keyframes moveLine2 {
    0% {
        transform: translateX(-100%) rotate(0deg);
    }

    65% {
        transform: translateX(100%) rotate(0deg);
    }

    70% {
        transform: translateX(100%) rotate(180deg);
    }

    95% {
        transform: translateX(-100%) rotate(180deg);
    }

    100% {
        transform: translateX(-100%) rotate(360deg);
    }
}

@keyframes moveLine3 {
    0% {
        transform: translateX(-100%) rotate(0deg);
    }

    35% {
        transform: translateX(100%) rotate(0deg);
    }

    40% {
        transform: translateX(100%) rotate(180deg);
    }

    95% {
        transform: translateX(-100%) rotate(180deg);
    }

    100% {
        transform: translateX(-100%) rotate(360deg);
    }
}

/* Carousel Styles */
.carousel-container {
    position: relative;
    width: 100%;
    overflow: hidden;
}

.carousel-inner {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

.carousel-slide {
    min-width: 100%;
}

.carousel-slide img {
    width: 100%;
    height: 500px;
    object-fit: cover;
}
