:root {
    --page_bg_color: #fff;
}

html,
body {
    margin: 0;
    background-color: var(--page_bg_color);
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 100%;
    font-family: 'Inter', 'Josefin_Sans', 'Nunito', 'Open_Sans', 'Poppins';
}

.primary-button {
    width: 153px;
    height: 52px;
    padding-right: 46px;
    padding-left: 46px;
    border-radius: 56px;

    background-color: #34F8FF;
    font-weight: bold;
    border: none;
    color: #17154E;
    cursor: pointer;
    transition: transform 0.3s ease-in-out;
}

.primary-button:hover {
    transform: translateY(-5px);
}

.get-started-button {
    width: 181px;
}

.header {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;

    padding: 1rem;

    .partner_logo {
        width: 10rem;
    }
}

.page1 {
    width: 95%;
    max-width: 1000px;
    padding-block: 50px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    flex-wrap: wrap;

    .page1-content {
        display: flex;
        flex-direction: column;
        justify-content: center;
        flex: 1;

        .page1-title-text {
            font-weight: 700;
            font-size: 48px;
            line-height: 57.6px;

            color: #000;
            padding-bottom: 16px;
        }

        .page1-text-content {
            font-weight: 400;
            font-size: 16px;
            line-height: 25.6px;

            padding-bottom: 32px;
        }
    }

    .page1-image {
        flex: 1;
        display: flex;
        justify-content: flex-end;

        img {
            width: 347px;
            height: 322px;
            align-self: flex-end;
        }
    }

    @media (max-width: 500px) {
        padding-block: 40px;
    }

}

.widget_page {
    width: 100%;
    height: 100vh;
    border-top: 1px solid #E1E1E1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    @media (min-width: 325px) {
        max-height: 768px;
    }

    @media (min-width: 415px) {
        max-height: 730px;
    }

    @media (min-width: 840px) {
        max-height: 630px;
    }
}

.trustpilot-container {
    padding: 1rem;
}

.trustpilot-widget {
    width: 98%;
    height: auto;
    padding: 1rem 1rem 1rem 0;
}

.page2 {
    background-color: #F3F7FB;
    width: 100%;
    color: #000000;
    padding-block: 6rem 0;

    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    .page2-header {
        font-weight: 700;
        font-size: 28px;
        line-height: 39.2px;
        text-align: center;
    }

    .page2-cards {
        display: flex;
        justify-content: center;
        gap: 20px;
        flex-wrap: wrap;
        padding-block: 32px;
    }

    .page2-card {
        width: 322.67px;
        height: 226px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;

        padding: 32px 24px;
        border-radius: 16px;
        background: #fff;
        box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
        text-align: center;
        transition: transform 0.3s ease-in-out;
    }

    .page2-card .card-icon {
        width: 64;
        height: 64;
        margin-bottom: 24px;
    }

    .page2-card .card-header {
        font-weight: 700;
        font-size: 16px;
        line-height: 22.4px;
        text-align: center;

    }

    .page2-card .card-body {
        font-weight: 400;
        font-size: 16px;
        line-height: 22.4px;
        text-align: center;

        color: #00000099;
    }

    .page2-button {
        width: 181px;
        margin-bottom: 8px;
    }

    .card2-footer-text {
        font-weight: 400;
        font-size: 12px;
        line-height: 16.8px;
        text-align: center;
        color: #00000099;
    }

    @media (max-width: 500px) {
        padding-block: 40px;

    }
}

.page3 {
    margin-block: 0;
}

.faq {
    width: 98%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background-color: #F3F7FB;
    padding: 75px 100px;
}

.faq-container {
    width: 100%;
    max-width: 800px;
}

.faq-item {
    padding-bottom: 8px;
    border-radius: 12px;
    overflow: hidden;
}

.faq-question {
    padding: 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    background-color: #fff;
    transition: background-color 0.3s ease;
    border-radius: 12px;

    font-weight: 700;
    font-size: 16px;
    line-height: 25.6px;
}

.faq-question:hover {
    background-color: #e9ecef;
}

.faq-answer {
    display: none;
    overflow: hidden;
    padding: 0 16px;
    background-color: #ffffff;
    transition: max-height 0.3s ease, padding 0.3s ease;

    border-radius: 0 0 12px 12px;

    font-weight: 400;
    font-size: 16px;
    line-height: 25.6px;
    color: #00000099;

}

.accordion-item.active .accordion-content {
    display: block;
}


.faq-question.open {
    border-radius: 0px;
    background-color: #201E63;
    color: #fff;
}

.faq-answer.open {
    display: block;
}

.icon {
    font-size: 18px;
    transition: transform 0.3s ease;
}

.icon.open {
    transform: rotate(180deg);
}

@media (max-width: 768px) {
    .faq {
        padding: 20px 40px;
    }

    .faq-question {
        font-size: 14px;
        padding: 15px;
    }

    .faq-answer {
        font-size: 13px;
    }
}

@media (max-width: 480px) {
    .faq-container {
        max-width: 90%;
    }
}

.page4 {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 52px 10px;
    width: 100%;

    background: #201E63;

    .page4-header {
        font-weight: 700;
        font-size: 28px;
        line-height: 33.6px;
        text-align: center;
        color: #FFFFFF;

        padding-bottom: 32px;
    }

    .page4-footer-text {
        padding-top: 16px;
        font-weight: 400;
        font-size: 12px;
        line-height: 16.8px;
        text-align: center;
        color: #FFFFFF99;
    }
}

footer {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-around;
    padding: 32px 100px;
    gap: 16px;
    margin: 0;

    color: #fff;
    background-color: #17154E;

    .footer-links {
        display: flex;
        flex-direction: row;
        padding: 16px;
        gap: 16px;
        text-align: center;
        flex-wrap: wrap;
        justify-content: center;
    }


    .footer-text {
        width: 95%;
        font-size: 12px;
        text-align: justify;
    }
}

@media (max-width: 768px) {
    footer {
        padding: 32px 50px;
    }

    .footer-links {
        flex-direction: column;
        align-items: center;
    }
}

@media (max-width: 480px) {
    footer {
        padding: 32px 20px;
    }
}