html,
body {
    width: 100%;
    overflow-x: hidden !important;
}

* {
    box-sizing: border-box;
}

:root {
    --accent: #0d6efd;
    --muted: #f7f9fc;
    --card1: #fff4f0;
    --card2: #f0fff6;
    --card3: #f0f7ff;
}

/* body {
            font-family: Inter, system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial;
        } */

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: 'Montserrat', sans-serif;
}

/* Body content */
body,
p,
span,
li,
input,
button {
    font-family: 'Inter', sans-serif;
}

/* Navigation */
.navbar-brand {
    font-weight: 700;
    letter-spacing: .4px
}

.hero {
    padding: 3.5rem 0;
    background: linear-gradient(to left, #bcffc2, #77e1ff);
}

.coming-badge {
    display: inline-block;
    background: linear-gradient(90deg, #ffb86b, #ff6b6b);
    color: #fff;
    padding: .35rem .6rem;
    border-radius: 999px;
    font-weight: 600
}

.hero-right {
    position: relative
}

.floating-card {
    width: 140px;
    height: 140px;
    border-radius: 16px;
    /* background: #fff; */
    box-shadow: 0 10px 30px rgba(13, 110, 253, 0.08);
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700
}

.floating-card img {
    max-width: 100%;
    border-radius: 12px
}

.float-1 {
    top: 70px;
    right: 0;
    transform: rotate(-8deg)
}

.float-2 {
    bottom: 10%;
    right: 20%;
    transform: rotate(6deg);
    width: 180px;
    height: 120px
}

.float-3 {
    top: 50%;
    left: 5%;
    transform: translateY(-50%)
}

.animate-slow {
    animation: float 6s ease-in-out infinite
}

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

    50% {
        transform: translateY(-12px)
    }

    100% {
        transform: translateY(0)
    }
}

/* Feature cards */

/* How it works */
.how-step {
    display: flex;
    gap: 1.25rem;
    align-items: flex-start;
    padding: 15px;
    border-radius: 20px;
}

.gradiant-1 {
    background-color: #e5ffe0;
}

.gradiant-2 {
    background-color: #ffead6;
}

.gradiant-3 {
    background-color: #d2f5ff;
}

.how-step img {
    max-width: 260px;
    border-radius: 12px
}

/* Testimonials */
.quote {
    font-size: 1.1rem;
    line-height: 1.6
}

/* FAQ */
.faq .accordion-button {
    background: transparent
}

/* Responsive tweaks */
@media (max-width: 991px) {
    .hero {
        padding: 3rem 0
    }

    .floating-card {
        position: relative;
        margin: .75rem auto
    }

    .hero-right {
        margin-top: 1.5rem
    }

    .how-step {
        flex-direction: column
    }

    .how-step img {
        width: 100%;
        max-width: 100%
    }
}

.t-profile img {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    border: 4px solid #fff;
    object-fit: cover;
    margin-bottom: 12px;
    animation: popIn 1.2s ease;
}

@keyframes popIn {
    0% {
        transform: scale(0.5);
        opacity: 0;
    }

    100% {
        transform: scale(1);
        opacity: 1;
    }
}

.t-stars i {
    color: #ffb400;
    margin: 0 2px;
    font-size: 18px;
}

.t-text {
    color: #4b5563;
    font-size: 1rem;
    margin: 18px 0;
    line-height: 1.6;
}

.t-name {
    color: #062244;
    font-weight: 700;
    margin-bottom: 4px;
}

.t-role {
    color: #6b7280;
    font-size: 0.9rem;
}

.swiper-pagination-bullet {
    background: #062244 !important;
    opacity: 0.3;
}

.swiper-pagination-bullet-active {
    opacity: 1 !important;
}

.app-screens img {
    border-radius: 10px;
    border: 1px solid rgba(3, 7, 18, 0.05)
}

.testimonial-card {
    border-radius: 12px;
    padding: 20px;
    background: linear-gradient(180deg, #fff, #fbfbff);
    border: 1px solid rgba(3, 7, 18, 0.04)
}

.clients img {
    max-height: 52px;
    opacity: 0.85;
    transition: transform .25s, opacity .25s
}

.clients img:hover {
    transform: translateY(-6px);
    opacity: 1
}

.axxpress-btn {
    background: #5e17eb;
    border: 1px solid #5e17eb;
    color: #fff;
}