:root{

--primary:#7b5cff;
--green:#22c55e;
--bg:#040816;
--card:#0c1326;
--border:#1a2340;
--text:#d3d3d3;

}

*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

background:var(--bg);

color:#fff;

font-family:
Inter,
Segoe UI,
sans-serif;

}

.rstb-container{

width:95%;

max-width:1400px;

margin:auto;

}

a{
text-decoration:none;
}


.card{

background:var(--card);

border:1px solid var(--border);

border-radius:20px;

}


/* ==========================================
   FAQ SECTION
========================================== */

.faq-section{

    padding:20px;

    position:relative;
}

.faq-wrapper{

    max-width:900px;

    margin:10px auto 0;
}

/* ==========================================
   FAQ ITEM
========================================== */

.faq-item{

    margin-bottom:16px;

    border-radius:24px;

    overflow:hidden;

    background:
    linear-gradient(
    180deg,
    rgba(255,255,255,.05),
    rgba(255,255,255,.02)
    );

    border:1px solid
    rgba(255,255,255,.06);

    backdrop-filter:blur(15px);

    transition:.3s;
}

.faq-item:hover{

    border-color:
    rgba(123,92,255,.20);
}

/* ==========================================
   QUESTION
========================================== */

.faq-question{

    width:100%;

    display:flex;

    align-items:center;

    justify-content:space-between;

    padding:24px 28px;

    background:none;

    border:none;

    cursor:pointer;

    color:#fff;

    font-size:18px;

    font-weight:700;

    text-align:left;
}

.faq-question i{

    color:#b993ff;

    transition:.3s;
}

/* ==========================================
   ANSWER
========================================== */

.faq-answer{

    max-height:0;

    overflow:hidden;

    transition:.35s ease;
}

.faq-answer p{

    padding:0 28px 24px;

    color:#94a3b8;

    line-height:1.9;

    font-size:15px;
}

/* ==========================================
   ACTIVE
========================================== */

.faq-item.active{

    border-color:
    rgba(123,92,255,.25);

    box-shadow:
    0 20px 40px
    rgba(123,92,255,.08);
}

.faq-item.active .faq-answer{

    max-height:250px;
}

.faq-item.active .faq-question i{

    transform:rotate(45deg);
}

/* ==========================================
   MOBILE
========================================== */

@media(max-width:768px){

    .faq-question{

        padding:20px;

        font-size:16px;
    }

    .faq-answer p{

        padding:0 20px 20px;
    }

}


/* ==========================================
   REVIEWS SECTION
========================================== */

.reviews-section{

    padding:50px 20px;

    overflow:hidden;

    position:relative;
}

/* ==========================================
   SLIDER
========================================== */

.reviews-slider{

    overflow:hidden;

    margin-top:60px;
}

.reviews-track{

    display:flex;

    gap:24px;

    width:max-content;

    animation:
    reviewsScroll 35s linear infinite;
}

/* ==========================================
   CARD
========================================== */

.review-card{

    width:380px;

    padding:30px;

    border-radius:28px;

    flex-shrink:0;

    background:
    linear-gradient(
    180deg,
    rgba(255,255,255,.05),
    rgba(255,255,255,.02)
    );

    border:1px solid
    rgba(255,255,255,.06);

    backdrop-filter:blur(18px);

    transition:.3s;
}

.review-card:hover{

    transform:
    translateY(-8px);

    border-color:
    rgba(123,92,255,.25);

    box-shadow:
    0 20px 40px
    rgba(123,92,255,.12);
}

/* ==========================================
   STARS
========================================== */

.review-stars{

    font-size:22px;

    color:#fbbf24;

    margin-bottom:20px;
}

/* ==========================================
   TEXT
========================================== */

.review-text{

    color:#d1d5db;

    font-size:16px;

    line-height:1.9;

    margin-bottom:25px;
}

/* ==========================================
   USER
========================================== */

.review-user{

    display:flex;

    align-items:center;

    gap:14px;
}

.review-avatar{

    width:52px;

    height:52px;

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

    font-weight:800;

    color:#fff;

    background:
    linear-gradient(
    135deg,
    #7b5cff,
    #a855f7
    );
}

.review-user h4{

    color:#fff;

    margin:0 0 4px;
}

.review-user span{

    color:#94a3b8;

    font-size:13px;
}

/* ==========================================
   AUTO SCROLL
========================================== */

@keyframes reviewsScroll{

    from{
        transform:translateX(0);
    }

    to{
        transform:translateX(-50%);
    }

}

/* ==========================================
   MOBILE
========================================== */

@media(max-width:768px){

    .review-card{

        width:300px;

        padding:22px;
    }

    .review-text{

        font-size:14px;
    }

}


/* ==========================================
   HOW IT WORKS
========================================== */

.how-it-works-section{

    padding:50px 20px;

    position:relative;

    overflow:hidden;
}

/* ==========================================
   STEPS WRAPPER
========================================== */

.how-steps{

    position:relative;

    display:grid;

    grid-template-columns:
    1fr 50px
    1fr 50px
    1fr 50px
    1fr;

    align-items:center;

    margin-top:20px;
}

/* ==========================================
   CONNECTOR
========================================== */

.step-connector{

    position:relative;

    height:2px;

    background:
    linear-gradient(
    90deg,
    rgba(123,92,255,.2),
    rgba(123,92,255,.7),
    rgba(123,92,255,.2)
    );
}

.step-connector:before{

    content:"";

    position:absolute;

    top:50%;

    left:50%;

    width:10px;

    height:10px;

    border-radius:50%;

    transform:
    translate(-50%,-50%);

    background:#7b5cff;

    box-shadow:
    0 0 20px
    rgba(123,92,255,.8);
}

/* ==========================================
   CARD
========================================== */

.step-card{

    position:relative;

    padding:35px 25px;

    text-align:center;

    border-radius:28px;

    background:
    linear-gradient(
    180deg,
    rgba(255,255,255,.05),
    rgba(255,255,255,.02)
    );

    border:1px solid
    rgba(255,255,255,.06);

    backdrop-filter:blur(18px);

    transition:.4s;
}

.step-card:hover{

    transform:
    translateY(-10px);

    border-color:
    rgba(123,92,255,.25);

    box-shadow:
    0 25px 60px
    rgba(123,92,255,.12);
}

/* ==========================================
   NUMBER
========================================== */

.step-number{

    position:absolute;

    top:15px;

    right:15px;

    font-size:14px;

    font-weight:800;

    color:
    rgba(255,255,255,.2);
}

/* ==========================================
   ICON
========================================== */

.step-icon{

    width:80px;

    height:80px;

    margin:0 auto 25px;

    border-radius:24px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:28px;

    color:#b993ff;

    background:
    linear-gradient(
    135deg,
    rgba(123,92,255,.15),
    rgba(168,85,247,.08)
    );

    border:1px solid
    rgba(123,92,255,.15);

    box-shadow:
    0 10px 30px
    rgba(123,92,255,.08);
}

/* ==========================================
   CONTENT
========================================== */

.step-card h3{

    color:#fff;

    font-size:24px;

    font-weight:700;

    margin-bottom:12px;
}

.step-card p{

    color:#94a3b8;

    line-height:1.8;

    font-size:15px;
}

/* ==========================================
   MOBILE
========================================== */

@media(max-width:991px){

    .how-steps{

        grid-template-columns:1fr;

        gap:20px;
    }

    .step-connector{

        display:none;
    }

    .step-card{

        padding:30px 20px;
    }

}


/* ==========================================
   WHY CHOOSE US
========================================== */

.why-choose-section{

    padding:20px;

    position:relative;
}

/* ==========================================
   SECTION HEADING
========================================== */

.section-heading{

    text-align:center;

    max-width:760px;

    margin:0 auto;
}

.section-badge{

    display:inline-flex;

    align-items:center;

    justify-content:center;

    padding:8px 18px;

    border-radius:999px;

    background:
    rgba(123,92,255,.10);

    border:1px solid
    rgba(123,92,255,.20);

    color:#b993ff;

    font-size:13px;

    font-weight:700;

    text-transform:uppercase;

    letter-spacing:.5px;

    margin-bottom:18px;
}

.section-heading h2{

    color:#fff;

    font-size:30px;

    line-height:1.15;

    font-weight:800;

    margin-bottom:15px;
}

.section-heading p{

    color:#94a3b8;

    font-size:17px;

    line-height:1.8;
    
        margin-bottom: 40px;
}

/* ==========================================
   GRID
========================================== */

.why-grid{

    display:grid;

    grid-template-columns:
    repeat(4,1fr);

    gap:24px;
}

/* ==========================================
   CARD
========================================== */

.why-card{

    position:relative;

    padding:28px;

    border-radius:22px;

    background:
    linear-gradient(
    180deg,
    rgba(255,255,255,.04),
    rgba(255,255,255,.02)
    );

    border:1px solid
    rgba(255,255,255,.06);

    transition:.35s;
}

.why-card:hover{

    transform:translateY(-8px);

    border-color:
    rgba(123,92,255,.25);

    box-shadow:
    0 20px 40px
    rgba(123,92,255,.10);
}

/* ==========================================
   ICON
========================================== */

.why-icon{

    width:64px;

    height:64px;

    border-radius:18px;

    display:flex;

    align-items:center;

    justify-content:center;

    font-size:30px;

    margin-bottom:22px;

    background:
    linear-gradient(
    135deg,
    rgba(123,92,255,.18),
    rgba(168,85,247,.12)
    );

    border:1px solid
    rgba(123,92,255,.20);
}

/* ==========================================
   CONTENT
========================================== */

.why-card h3{

    color:#fff;

    font-size:22px;

    font-weight:700;

    margin-bottom:12px;
}

.why-card p{

    color:#94a3b8;

    font-size:15px;

    line-height:1.8;
}

/* ==========================================
   TABLET
========================================== */

@media(max-width:1024px){

    .why-grid{

        grid-template-columns:
        repeat(2,1fr);
    }

    .section-heading h2{

        font-size:30px;
    }

}

/* ==========================================
   MOBILE
========================================== */

@media(max-width:768px){

    .why-choose-section{

        padding:70px 0;
    }

    .why-grid{

        grid-template-columns:1fr;

        gap:18px;
    }

    .section-heading{

        margin-bottom:35px;
    }

    .section-heading h2{

        font-size:20px;
    }

    .section-heading p{

        font-size:12px;
    }

    .why-card{

        padding:24px;
    }

}


/* ==========================================
   BRANDS SECTION
========================================== */

.brands-section{

    padding:90px 0;

    overflow:hidden;
}

/* ==========================================
   SLIDER
========================================== */

.brands-slider{

    position:relative;

    overflow:hidden;

    margin-top:40px;
}

.brands-track{

    display:flex;

    align-items:center;

    gap:16px;

    width:max-content;

    animation:
    brandScroll 25s linear infinite;
}

/* ==========================================
   CARD
========================================== */

.brand-card{

    width:170px;

    height:90px;

    flex-shrink:0;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:18px;

    background:
    linear-gradient(
    180deg,
    rgba(255,255,255,.05),
    rgba(255,255,255,.02)
    );

    border:1px solid
    rgba(255,255,255,.06);

    backdrop-filter:blur(12px);

    transition:.3s;
}

.brand-card:hover{

    transform:translateY(-4px);

    border-color:
    rgba(123,92,255,.25);

    box-shadow:
    0 15px 30px
    rgba(123,92,255,.10);
}

.brand-card img{

    max-width:100%;

    max-height:40px;

    width:auto;

    height:auto;

    object-fit:contain;

    filter:
    brightness(1.05);
}

/* ==========================================
   ANIMATION
========================================== */

@keyframes brandScroll{

    from{
        transform:translateX(0);
    }

    to{
        transform:translateX(-30%);
    }

}

/* ==========================================
   MOBILE
========================================== */

@media(max-width:768px){

    .brands-section{

        padding:70px 0;
    }

    .brand-card{

        width:130px;

        height:70px;
    }

    .brand-card img{

        max-width: 100%;
        max-height: 35px;
    }

}    


/* ==========================================
   FOOTER
========================================== */

.site-footer{

    position:relative;

    padding:100px 0 30px;

    margin-top:100px;

    overflow:hidden;

    border-top:1px solid
    rgba(255,255,255,.05);
}

/* ==========================================
   GLOW
========================================== */

.footer-glow{

    position:absolute;

    top:0;

    left:50%;

    width:700px;

    height:700px;

    transform:
    translateX(-50%);

    background:
    radial-gradient(
    circle,
    rgba(123,92,255,.12),
    transparent 70%
    );

    pointer-events:none;
}

/* ==========================================
   CTA
========================================== */

.footer-cta{

    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:40px;

    padding:50px;

    margin-bottom:80px;

    border-radius:30px;

    background:
    linear-gradient(
    135deg,
    rgba(123,92,255,.15),
    rgba(168,85,247,.06)
    );

    border:1px solid
    rgba(123,92,255,.15);
}

.footer-badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:8px 16px;

    border-radius:999px;

    background:
    rgba(255,255,255,.06);

    color:#b993ff;

    margin-bottom:20px;
}

.footer-cta h2{

    font-size:40px;

    color:#fff;

    line-height:1.1;

    margin-bottom:15px;
}

.footer-cta h2 span{

    display:block;

    background:
    linear-gradient(
    135deg,
    #fff,
    #c4b5fd
    );

    -webkit-background-clip:text;

    -webkit-text-fill-color:transparent;
}

.footer-cta p{

    color:#94a3b8;

    max-width:650px;

    line-height:1.8;
}

.footer-cta-btn{

    flex-shrink:0;

    height:58px;

    padding:0 32px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:16px;

    background:
    linear-gradient(
    135deg,
    #7b5cff,
    #a855f7
    );

    color:#fff;

    font-weight:700;

    box-shadow:
    0 15px 40px
    rgba(123,92,255,.25);
}

/* ==========================================
   GRID
========================================== */

.footer-grid{

    display:grid;

    grid-template-columns:
    2fr 1fr 1fr 1fr;

    gap:50px;

    margin-bottom:70px;
}

.footer-col h4,
.footer-about h3{

    color:#fff;

    margin-bottom:20px;
}

.footer-about h3{

    font-size:34px;

    font-weight:900;
}

.footer-about p{

    color:#94a3b8;

    line-height:1.9;

    margin-bottom:25px;
}

.footer-trust{

    display:flex;

    flex-direction:column;

    gap:10px;
}

.footer-trust span{

    color:#d1d5db;
}

.footer-col ul{

    list-style:none;

    padding:0;

    margin:0;
}

.footer-col li{

    margin-bottom:14px;
}

.footer-col a{

    color:#94a3b8;

    transition:.3s;
}

.footer-col a:hover{

    color:#b993ff;

    padding-left:5px;
}

/* ==========================================
   PAYMENTS
========================================== */

.footer-payments{

    text-align:center;

    padding:40px 0;

    border-top:1px solid
    rgba(255,255,255,.05);

    border-bottom:1px solid
    rgba(255,255,255,.05);
}

.footer-payment-title{

    color:#fff;

    font-weight:700;

    margin-bottom:25px;
}

.footer-payment-logos{

    display:flex;

    justify-content:center;

    align-items:center;

    gap:20px;

    flex-wrap:wrap;
}

.footer-payment-logos img{

    height:34px;

    opacity:.85;

    transition:.3s;
}

.footer-payment-logos img:hover{

    opacity:1;

    transform:translateY(-2px);
}

/* ==========================================
   COPYRIGHT
========================================== */

.footer-bottom{

    display:flex;

    justify-content:space-between;

    align-items:center;

    gap:20px;

    padding-top:30px;

    color:#94a3b8;

    font-size:14px;
}

/* ==========================================
   TABLET
========================================== */

@media(max-width:1024px){

.footer-grid{

    grid-template-columns:
    1fr 1fr;
}

.footer-cta{

    flex-direction:column;

    text-align:center;
}

.footer-cta h2{

    font-size:30px;
}

}

/* ==========================================
   MOBILE
========================================== */

@media(max-width:768px){

.site-footer{

    padding:70px 0 20px;
}

.footer-grid{

    grid-template-columns:1fr;

    gap:35px;
    
    padding-left: 10px;
}

.footer-cta{

    padding:35px 25px;
}

.footer-cta h2{

    font-size:32px;
}

.footer-bottom{

    flex-direction:column;

    text-align:center;
}

.footer-payment-logos img{

    height:28px;
}

}