@import url("https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap");

:root {
    --thm-font: "Inter", sans-serif;
    --thm-font-2: "reeyregular";
    --thm-base: rgb(0, 48, 73);
    --thm-primary: rgb(3, 40, 54);
    --thm-primary-rgb: 24, 41, 120;
    --thm-gray: #515151;
    --thm-gray-rgb: 81, 81, 81;
    --thm-white: #ffffff;
    --thm-white-rgb: 255, 255, 255;
    --thm-black: #202020;
    --thm-black-rgb: 32, 32, 32;
    --thm-gray-bg: #f5f5f5;
    --thm-main-bg: #202020;
}

:root {
    --swiper-theme-color: #007aff;
}


* {
    box-sizing: border-box;
}

* {
    margin: 0;
}

body {
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    font-family: var(--thm-font);
}

img,
picture,
video,
canvas,
svg {
    display: block;
    max-width: 100%;
}

input,
button,
textarea,
select {
    font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
    overflow-wrap: break-word;
}

#root,
#__next {
    isolation: isolate;
}

html {
    scroll-behavior: smooth;
}

/* HEADING */

.heading{
    width: 100%;
    height: 300px;
    background: url("../image/background-top.jpg");

    .its-cover{
        width: 100%;
        height: 100%;
        display: flex;
        background-color: rgba(53, 83, 94, 0.803);
        justify-content: center;
        align-items: center;
        color: #ffffff;
        padding-top: 100px;
        font-size: 25px;
    }
}

/* HOW IT WORKS */

.works {
    width: 100%;
    height: fit-content;
    padding: 80px 70px 30px 70px;
    background-color: var(--thm-primary);
    text-align: center;

    .top p,
    .top h2 {
        transform: translateY(-50px);
        /* Initially positioned above */
        opacity: 0;
        /* Initially hidden */
        transition: transform 0.6s ease-out, opacity 0.6s ease-out;
        /* Smooth transition */
    }

    .top p {
        font-size: 18px;
        font-weight: 700;
        color: rgb(255, 195, 0);
    }

    .top h2 {
        width: 60%;
        font-size: 45px;
        font-weight: 700;
        color: var(--thm-white);
        margin: 20px auto;
        line-height: 50px;
        background: linear-gradient(to right, rgb(108, 152, 235), rgb(125, 70, 108), rgb(237, 85, 116));
        color: transparent;
        -webkit-background-clip: text;
        background-clip: text;
    }

}

.works.visible .top p,
.works.visible .top h2 {
    transform: translateY(0);
    /* Slide in from top */
    opacity: 1;
    /* Make visible */
}

.works-down {
    width: 100%;
    display: grid;
    padding: 0px 70px 10px 70px;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    grid-gap: 20px;
    background-color: var(--thm-primary);
    overflow-x: auto;

    .work {
        border: 1px solid rgb(231, 54, 103);
        height: 300px;
        border-radius: 10px;
        background-color: rgb(16, 51, 64);
        transform: translateX(100px);
        opacity: 0;
        transition: transform 0.6s ease-out, opacity 0.6s ease-out;

        .up {
            width: 100%;
            height: 50%;
            display: flex;
            justify-content: center;
            align-items: center;

            .hold {
                width: 35%;
                height: 70%;
                display: flex;
                justify-content: center;
                align-items: center;
                background-color: rgb(231, 54, 103);
                border-radius: 10px;

                img {
                    width: 70px;
                    height: 70px;
                }
            }
        }

        .bottom {
            width: 100%;
            height: 50%;
            display: flex;
            flex-direction: column;
            /* justify-content: center; */
            align-items: center;


            h2 {
                color: var(--thm-white);
                margin-bottom: 12px;
            }


            p {
                font-size: 15px;
                font-weight: 600;
                color: rgb(117, 137, 145);
                text-align: center;
            }
        }
    }
}

.works-down.visible .work {
    transform: translateX(0);
    opacity: 1;
}

.works-down2 {
    width: 100%;
    display: grid;
    padding: 10px 70px 80px 70px;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    grid-gap: 20px;
    background-color: var(--thm-primary);
    overflow-x: auto;

    .work {
        border: 1px solid rgb(231, 54, 103);
        height: 300px;
        border-radius: 10px;
        background-color: rgb(16, 51, 64);
        transform: translateX(100px);
        opacity: 0;
        transition: transform 0.6s ease-out, opacity 0.6s ease-out;

        .up {
            width: 100%;
            height: 50%;
            display: flex;
            justify-content: center;
            align-items: center;

            .hold {
                width: 35%;
                height: 70%;
                display: flex;
                justify-content: center;
                align-items: center;
                background-color: rgb(231, 54, 103);
                border-radius: 10px;

                img {
                    width: 70px;
                    height: 70px;
                }
            }
        }

        .bottom {
            width: 100%;
            height: 50%;
            display: flex;
            flex-direction: column;
            /* justify-content: center; */
            align-items: center;


            h2 {
                color: var(--thm-white);
                margin-bottom: 12px;
            }


            p {
                font-size: 15px;
                font-weight: 600;
                color: rgb(117, 137, 145);
                text-align: center;
            }
        }
    }
}

.works-down2.visible .work {
    transform: translateX(0);
    opacity: 1;
}



/* FAQ CONTAINER */

.faq-top{
    width: 100%;
    height: fit-content;
    padding: 120px 70px 20px 70px;
    background-color: var(--thm-primary);
    text-align: center;


    .top p,
    .top h2 {
        transform: translateY(-50px);
        opacity: 0;
        transition: transform 0.6s ease-out, opacity 0.6s ease-out;
    }

    .top p {
        font-size: 18px;
        font-weight: 700;
        color: rgb(255, 195, 0);
    }

    .top h2 {
        width: 60%;
        font-size: 45px;
        font-weight: 700;
        color: var(--thm-white);
        margin: 20px auto;
        line-height: 50px;
        background: linear-gradient(to right, rgb(108, 152, 235), rgb(125, 70, 108), rgb(237, 85, 116));
        color: transparent;
        -webkit-background-clip: text;
        background-clip: text;
    }
}

.faq-top.visible .top p,
.faq-top.visible .top h2 {
    transform: translateY(0);
    opacity: 1;
}

.faq-down {
    width: 100%;
    height: fit-content;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    padding: 10px 70px 100px 70px;
    background-color: var(--thm-primary);

    .faq-holder {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        transform: translateY(-80px);
        opacity: 0;
        transition: transform 0.9s ease-out, opacity 0.9s ease-out;

        .faq {
            width: 100%;
            max-width: 1000px;
            padding-bottom: 20px;
            border-bottom: 1px solid rgb(231, 54, 103);

            div {
                display: flex;
                justify-content: space-between;
                align-items: center;
                background-color: rgba(237, 85, 115, 0.322);
                padding: 15px 20px;
                cursor: pointer;

                h2 {
                    color: var(--thm-white);
                }

                i {
                    color: rgba(237, 85, 115, 0.322);
                    font-size: 25px;
                }
            }

            p {
                color: rgb(117, 137, 145);
                padding: 0 20px; /* Reduce padding when hidden */
                max-height: 0; /* Start with no height */
                opacity: 0; /* Start fully transparent */
                transition: max-height 0.9s ease-out, opacity 0.9s ease-out, padding 0.9s ease-out; /* Slow transition */
            }
            
            p.visible {
                max-height: 500px; /* Adjust based on the maximum expected height of the content */
                opacity: 1; /* Make it fully visible */
                padding: 20px; /* Restore padding when visible */
                margin-bottom: 40px;
            }
        }
    }

    .faq-holder.visible {
        transform: translateY(0);
        opacity: 1;
    }

    /* SECOND FAQ */

    .faq-holder2, .faq-holder3, .faq-holder4, .faq-holder5, .faq-holder6, .faq-holder7 {
        width: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
        transform: translateY(-80px);
        opacity: 0;
        transition: transform 0.9s ease-out, opacity 0.9s ease-out;

        .faq2, .faq3, .faq4, .faq5, .faq6, .faq7 {
            width: 100%;
            max-width: 1000px;
            padding-bottom: 20px;
            border-bottom: 1px solid rgb(231, 54, 103);

            div {
                display: flex;
                justify-content: space-between;
                align-items: center;
                background-color: rgba(237, 85, 115, 0.322);
                padding: 15px 20px;
                cursor: pointer;
                margin-top: 20px;

                h2 {
                    color: var(--thm-white);
                }

                i {
                    color: rgba(237, 85, 115, 0.322);
                    font-size: 25px;
                }
            }

            p {
                color: rgb(117, 137, 145);
                padding: 0 20px; /* Reduce padding when hidden */
                max-height: 0; /* Start with no height */
                opacity: 0; /* Start fully transparent */
                transition: max-height 0.9s ease-out, opacity 0.9s ease-out, padding 0.9s ease-out; /* Slow transition */
            }
            
            p.visible {
                max-height: 500px; /* Adjust based on the maximum expected height of the content */
                opacity: 1; /* Make it fully visible */
                padding: 20px; /* Restore padding when visible */
                margin-bottom: 40px;
            }
        }
    }

    .faq-holder2.visible, .faq-holder3.visible, .faq-holder4.visible, .faq-holder5.visible, .faq-holder6.visible, .faq-holder7.visible {
        transform: translateY(0);
        opacity: 1;
    }
}