@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Protest+Riot&display=swap');


* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: "Outfit", sans-serif;
}

body {
    overflow-x: hidden;
}

.navbar {
    z-index: 2;
}

nav {
    background-color: #200A4D;

    .auth__btns {
        display: flex;
        gap: 10px;

        button {
            white-space: nowrap;
            height: max-content;
            padding: 5px 30px;
            border: none;
            outline: none;
            border-radius: 100px;
            cursor: pointer;
        }

        .signup__button,
        .login__button {
            background-color: #200A4D;
            position: relative;
            box-sizing: border-box;
            background-clip: padding-box;
            border: solid 1px transparent;
            color: white;
            transition: all 0.3s ease-in-out;
        }

        .signup__button::before,
        .login__button::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            z-index: -1;
            margin: -1px;
            border-radius: inherit;
            background: linear-gradient(to right, #00D9FF, #FF00BF, #00D9FF);
        }

        .signup__button:hover,
        .login__button:hover {
            background-color: #00C202;
            transition: all 0.3s ease-in-out;
            background-clip: unset;
        }
    }
}

nav .nav__logo {
    height: 40px;
}

nav .nav-item .nav-link {
    color: white;
    font-size: 15px;
    font-weight: 500;
}

nav .nav-item .active {
    color: rgb(252, 252, 252) !important;
}

.navbar-nav {
    gap: 20px;
}

/* hero section */
.hero__section {
    background-image: url("../images/hero_bg.png");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    color: white;

    .container {
        padding-block: 60px;
    }

    .row {
        align-items: center;

        span {
            color: #07E6FF;
        }

        h2 {
            font-size: 35px;
            font-weight: 600;
            margin-bottom: 20px;
        }

        h1 {
            font-size: 50px;
            margin-bottom: 30px;
            font-family: "Protest Riot", sans-serif;

            span {
                font-family: "Protest Riot", sans-serif;
            }
        }

        p {
            font-size: 14px;
            font-weight: 300;
        }

        .hero__image {
            text-align: center;
        }

        .hero__image img {
            width: 90%;
        }
    }

    button {
        position: absolute;
        bottom: -35px;
        left: 50%;
        transform: translateX(-50%);
        background-image: linear-gradient(to right, #FCA407, #F78A32, #FBB609);
        padding: 15px 50px;
        border: 2px solid white;
        border-radius: 100px;
        color: white;
        font-size: 22px;
        font-weight: 600;
        display: flex;
        align-items: center;
        gap: 20px;

        img {
            height: 20px;
        }
    }
}

/* how does it works */
.how__it__work {
    padding-top: 80px;
    padding-bottom: 60px;
    text-align: center;

    h2 {
        font-family: "Protest Riot", sans-serif;
        font-size: 40px;
        margin-bottom: 40px;

        span {
            font-family: "Protest Riot", sans-serif;
            color: #5819DB;
            position: relative;
        }

        img {
            position: absolute;
            max-width: 100%;
            bottom: -5px;
            left: 0;
        }
    }

    .section__card {
        background-color: #5A1AE2;
        height: 100%;
        text-align: start;
        color: white;
        padding: 25px;
        border-radius: 20px;
        box-shadow: 5px 10px 15px rgba(0, 0, 0, 0.4);

        .heading__section {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-bottom: 20px;

            img {
                height: 50px;
            }

            h3 {
                font-family: "Protest Riot", sans-serif;
                font-size: 26px;
                text-shadow:
                    4px 4px 0 #30206c,
                    2px 2px 0 #000;
            }
        }

        .description__section {
            ul {
                margin-bottom: 0px;

                li {
                    font-size: 14px;
                    font-weight: 300;

                    strong {
                        font-weight: 600;
                    }
                }

                li:first-child {
                    margin-bottom: 10px;
                }
            }
        }
    }
}

/* why choose section */
.why__choose__section {
    padding-top: 60px;
    padding-bottom: 50px;
    text-align: center;
    overflow: hidden;
    background-image: linear-gradient(#2B1767, #060312);

    h2 {
        font-family: "Protest Riot", sans-serif;
        font-size: 40px;
        margin-bottom: 40px;
        color: white;
        margin-bottom: 80px;

        span {
            font-family: "Protest Riot", sans-serif;
            color: #07E6FF;
            position: relative;
        }

        img {
            position: absolute;
            max-width: 100%;
            bottom: -5px;
            left: 0;
        }
    }

    .content__section {
        position: relative;

        .bg__image {
            position: absolute;
            bottom: 0;
            left: 0;
            z-index: 1;
            object-fit: contain;
            max-height: 600px;
            top: -130px;
            max-width: 100%;
            width: 100%;
        }

        .subheader {
            z-index: 2;
            font-weight: 300;
            position: relative;
            margin-inline: auto;
            font-family: 'Outfit', sans-serif;
            background: -webkit-linear-gradient(0deg, #202A7E 30%, #FFFFFF 40%, #202A7E 80%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            margin-bottom: 60px;
        }

        .row {
            position: relative;
            z-index: 2;

            .card__content {
                position: relative;
                background-color: #5A1AE2;
                color: white;
                padding: 20px;
                border-radius: 20px;

                img {
                    position: absolute;
                    top: -25px;
                    height: 50px;
                    left: 50%;
                    transform: translateX(-50%);
                }

                h4 {
                    margin-top: 15px;
                    margin-bottom: 15px;
                    font-family: "Protest Riot", sans-serif;
                    font-size: 22px;
                    text-shadow:
                        4px 4px 0 #30206c,
                        2px 2px 0 #000;
                }

                p {
                    font-size: 14px;
                    margin-bottom: 0;
                }
            }
        }
    }
}

/* testimonial__section */

.testimonial__section {
    padding-top: 80px;
    padding-bottom: 60px;
    text-align: center;

    h2 {
        font-family: "Protest Riot", sans-serif;
        font-size: 40px;
        margin-bottom: 0px;

        span {
            font-family: "Protest Riot", sans-serif;
            color: #5819DB;
            position: relative;
        }

        img {
            position: absolute;
            max-width: 100%;
            bottom: -5px;
            left: 0;
        }
    }
}

.slider {
    margin: 40px auto 10px auto;
}

.swiper-container {
    padding-bottom: 20px;
}

.swiper-scrollbar {
    background: #aaaaaa;
    border-radius: 10px;
}

.swiper-scrollbar-drag {
    background-color: #5300FF;
}

.swiper-scrollbar {
    border-radius: 50px;
    height: 4px;
    width: 100%;
}

.swiper-wrapper img {
    /* height: 150px; */
    width: 100%;
    object-fit: contain;
    border-radius: 20px;
}

.swiper__btn {
    display: flex;
    gap: 15px;
    align-items: center;
}

.swiper__btn .swiper-button-prev,
.swiper__btn .swiper-button-next {
    position: static;
    margin: 0;
    color: white;
    background-color: #5300FF;
    height: 2.5% !important;
    width: 2.5% !important;
    aspect-ratio: 1/1;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.swiper__btn .swiper-button-next:after,
.swiper__btn .swiper-button-prev:after {
    font-size: 12px;
    font-weight: 800;
    line-height: normal;
}

/* FAQ */
.faq__section {
    background-image: url("../images/faq_bg.webp");
    margin-bottom: 70px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 40px;
    padding-bottom: 40px;
    text-align: center;

    h2 {
        font-family: "Protest Riot", sans-serif;
        font-size: 40px;
        margin-bottom: 40px;
        color: white;

        span {
            font-family: "Protest Riot", sans-serif;
            color: #07E6FF;
            position: relative;
        }

        img {
            position: absolute;
            max-width: 100%;
            bottom: -5px;
            left: 0;
        }
    }

    --bs-body-bg : #ffffff20 !important;
    --bs-primary-text-emphasis : #ffffff !important;
    --bs-primary-bg-subtle : #ffffff20 !important;
    --bs-body-color : #ffffff !important;

    .accordion-body {
        color: white !important;
    }

    .accordion-button::after {
        filter: invert();
    }
}

/* CTA */
.cta__section {
    background-image: url("../images/cta-bg.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 20px;
    padding: 20px 60px;
    text-align: center;
    margin-bottom: 60px;

    h2 {
        font-family: "Protest Riot", sans-serif;
        font-size: 40px;
        margin-bottom: 20px;
        color: white;

        span {
            font-family: "Protest Riot", sans-serif;
            color: #07E6FF;
            position: relative;
        }

        img {
            position: absolute;
            max-width: 100%;
            bottom: -5px;
            left: 0;
        }
    }

    p {
        color: white;
        font-size: 18px;
    }

    button {
        padding: 12px 100px;
        color: #5A1AE2;
        font-size: 22px;
        font-weight: 600;
        border: none;
        outline: none;
        border-radius: 12px;
    }
}

/* footer */
footer {
    background-image: url("../images/footer-bg.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #20114D;
    color: white;
    padding-top: 40px;
    padding-bottom: 30px;

    .footer__logo {
        img {
            height: 50px;
            margin-bottom: 20px;
        }

        h5 {
            color: #07E6FF;
        }

        p {
            font-size: 16px;
            font-weight: 300;
        }
    }

    .contact__section {
        h5 {
            font-size: 18px;
        }

        a {
            text-decoration: none;
            color: #00D9FF;
        }

        h5,
        h4 {
            color: #07E6FF;
        }

        h4 {
            margin-top: 40px;
        }

        h4:last-of-type {
            margin-top: 0;
            color: white;
        }

        p {
            margin-bottom: 5px;
            font-size: 14px;
        }

    }

    .company__section {
        h5 {
            color: #07E6FF;
        }

        ul {
            list-style: none;
            padding-left: 0;
            margin-bottom: 40px;

            a {
                color: white;
                text-decoration: none;
                font-size: 18px;
            }
        }

        .social__icons {
            display: flex;
            gap: 10px;

            img {
                height: 45px;
                width: 45px;
                object-fit: cover;
            }
        }
    }
}

.footer__bottom__section {
    text-align: center;
    padding-top: 15px;
    padding-bottom: 15px;

    p {
        margin-bottom: 0;
    }
}


/* about us */
.about__us {
    padding-top: 80px;
    padding-bottom: 80px;

    h1 {
        text-align: center;
        font-family: "Protest Riot", sans-serif;
        font-size: 40px;
        margin-bottom: 40px;
        color: #5819DB;
    }
}



@media only screen and (max-width: 600px) {

    .row {
        gap: 20px;
    }

    .auth__btns {
        margin-top: 20px;
        margin-bottom: 20px;
        justify-content: center;
    }

    .hero__section {
        h2 {
            font-size: 24px !important;
        }

        h1 {
            font-size: 30px !important;
        }

        p {
            font-size: 12px !important;
        }

        button {
            padding: 10px 30px !important;
            font-size: 16px !important;
            width: max-content;
            bottom: -24px;
        }
    }

    .how__it__work {
        .section__card {
            img {
                height: 40px !important;
            }

            h3 {
                font-size: 24px !important;
            }
        }
    }

    .why__choose__section {
        .section__header {
            margin-bottom: 30px;
        }

        .row {
            gap: 40px;
        }

        .bg__image {
            display: none;
        }

        .subheader {
            color: white !important;
            background-image: none !important;
            -webkit-text-fill-color: white !important;
        }
    }

    .cta__section {
        button {
            padding: 12px 22px !important;
            font-size: 16px !important;
        }
    }

    .section__header {
        font-size: 28px !important;
    }

    .swiper__btn .swiper-button-prev,
    .swiper__btn .swiper-button-next {
        height: 10% !important;
        width: 10% !important;
        font-size: 12px !important;
    }
}