*{
margin:0;
padding:0;
box-sizing:border-box;
}

body{

font-family: "Quicksand", sans-serif!important;

background:#fff;

color:#222;

overflow-x:hidden;

}

a{
text-decoration:none;
}

ul{
list-style:none;
}

img{

max-width:100%;

display:block;

}

.container{

width:1320px;

margin:auto;

}

/*=============================
TOP BAR
=============================*/

.top-bar{

background:#0B57D0;

color:#fff;

height:42px;

display:flex;

align-items:center;

}

.top-flex{

display:flex;

justify-content:space-between;

align-items:center;

height:42px;

}

.top-item{

display:flex;

align-items:center;

gap:8px;

font-size:14px;

font-weight:500;

}

.top-item i{

font-size:14px;

}



/*=============================
HEADER
=============================*/

header{

background:#fff;

box-shadow:0 2px 12px rgba(0,0,0,.05);

}

.nav-wrapper{

height:95px;

display:flex;

align-items:center;

justify-content:space-between;

}

.logo img{

height:58px;

}

nav ul{

display:flex;

gap:42px;

}

nav ul li{

list-style:none;

}

nav ul li a{

color:#222;

font-weight:600;

font-size:17px;

transition:.3s;

position:relative;

}

nav ul li a:hover{

color:#0B57D0;

}

nav ul li a.active{

color:#0B57D0;

}

nav ul li a.active::after{

content:'';

position:absolute;

left:0;

bottom:-15px;

width:100%;

height:3px;

background:#0B57D0;

border-radius:20px;

}



.call-btn a{

background:#0B57D0;

color:#fff;

display:flex;

align-items:center;

gap:15px;

padding:15px 24px;

border-radius:10px;

transition:.3s;

}

.call-btn a:hover{

background:#0847ad;

}

.call-btn i{

font-size:22px;

}

.call-btn span{

display:block;

font-size:14px;

}

.call-btn strong{

font-size:18px;

font-weight:700;

}

/*============================
HERO
============================*/

.hero{

padding:70px 0;

background:#f7fbff;

}

.hero-wrapper{

display:flex;

align-items:center;

justify-content:space-between;

}

.hero-left{

width:48%;

}

.hero-right{

width:48%;

text-align:right;

}

.hero-right img{

width:100%;

}

.hero h1{

font-size:55px;

font-weight:990;

line-height:1.1;

color:#0b2348;

margin-bottom:25px;

}

.hero h1 span{

display:block;

color:#1565ff;

}

.hero p{

font-size:28px;

line-height:42px;

margin-bottom:35px;

color:#444;

}

.hero-list{

margin-bottom:20px;
padding-left: 0px;

}

.hero-list li{

    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:5px;
    font-size: 21px;
    font-weight: 800;
    color: #000;

}

.hero-list i{

color:#1565ff;

font-size:22px;

}

.support-btn{

display:inline-flex;

align-items:center;

gap:15px;

background:#1cbc42;

color:#fff;

padding:20px 36px;

border-radius:10px;

font-size:22px;

font-weight:700;

transition:.3s;

}

.support-btn:hover{

background:#119b33;

}

.hero-call{

margin-top:25px;

font-size:26px;

}

.hero-call a{

font-weight:700;

color:#1565ff;

}

/*==================
STATS
===================*/

.stats{

margin-top:-40px;

position:relative;

z-index:99;

}

.stats-wrapper{

background:#fff;

border-radius:18px;

display:grid;

grid-template-columns:repeat(4,1fr);

box-shadow:0 10px 35px rgba(0,0,0,.08);

overflow:hidden;

}

.stat-box{

padding:12px;

display:flex;

align-items:center;

gap:18px;

border-right:1px solid #ececec;

}

.stat-box:last-child{

border:none;

}

.stat-box .icon{

width:65px;

height:65px;

background:#eef5ff;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

}

.stat-box i{

font-size:28px;

color:#1565ff;

}

.stat-box h3{

font-size:34px;

font-weight:800;

color:#1565ff;

margin-bottom:6px;

}

.stat-box p{
    font-size: 14px;
    color: #000;
    font-weight: 600;
    margin-bottom: 10px
}

/*====================
SERVICES
=====================*/

.services{

padding:80px 0;

background:#f8fbff;

}

.section-title{

text-align:center;

margin-bottom:45px;

}

.section-title h2{

font-size:42px;

font-weight:800;

color:#0b2348;

}

.service-grid{

display:grid;

grid-template-columns:repeat(5,1fr);

gap:25px;

}

.service-card{

background:#fff;

padding:15px 10px;

border-radius:16px;

text-align:center;

transition:.35s;

box-shadow:0 5px 18px rgba(0,0,0,.06);

cursor:pointer;

}

.service-card:hover{

transform:translateY(-10px);

}

.service-card i{

font-size:48px;

color:#1565ff;

margin-bottom:20px;

}

.service-card h4{

    font-size: 16px;
    margin-bottom: 15px;
    font-weight: 700;

}

.service-card p{

color: #000;
    line-height: 24px;
    font-weight: 600;
    font-size: 15px;

}

.testimonials{

padding:50px 0;

}

.testimonial-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.testimonial-card{

    background: #fff;
    padding: 35px;
    border-radius: 18px;
    box-shadow: 0 0px 9px #0b57d0;
    transition: .35s;

}

.testimonial-card:hover{

transform:translateY(-10px);

}

.stars{

    font-size: 22px;
    color: #ffb400;
    margin-bottom: 1px;
    font-weight: 600;

}

.testimonial-card p{

    line-height: 28px;
    color: #000;
    margin-bottom: 14px;
    font-size: 14px;
    text-align: justify;
    font-weight: 600;

}

.client{

display:flex;

align-items:center;

gap:15px;

}

.client img{

width:65px;

height:65px;

border-radius:50%;

object-fit:cover;

}

.client h4{

font-size:18px;

}

.client span{

font-size:14px;

color:#777;

}

.faq{

background:#f8fbff;

padding:90px 0;

}

.faq-box{

width:850px;

margin:auto;

}

.faq-item{

margin-bottom:18px;

background:#fff;

border-radius:12px;

overflow:hidden;

box-shadow:0 5px 15px rgba(0,0,0,.05);

}

.faq-btn{

width:100%;

padding:24px;

background:#fff;

border:none;

display:flex;

justify-content:space-between;

font-size:20px;

font-weight:600;

cursor:pointer;

}

.faq-content{

display:none;

padding:0 24px 24px;

line-height:30px;

color:#666;

}

footer{

background:#0B57D0;

color:#fff;

padding-top:80px;

}

.footer-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:40px;

padding-bottom:50px;

}

footer h3{

font-size:30px;

margin-bottom:20px;

}

footer h4{

    margin-bottom: 18px;
    font-size: 20px;
    font-weight: 800;
    line-height: 30px;

}

footer ul{

padding:0;

}

footer li{

    margin-bottom: 12px;
    font-size: 16px;
    font-weight: 600;

}

footer p{

    line-height: 28px;
    font-size: 16px;
    font-weight: 600;
    text-align: justify;
    padding-top: 10px;
    margin-bottom: 0px;

}

.copyright{

    border-top: 1px solid rgba(255, 255, 255, .2);
    text-align: center;
    padding: 11px 0px;
    font-size: 18px;
    font-weight: 600;

}

header{

position:sticky;

top:0;

left:0;

width:100%;

z-index:9999;

background:#fff;

transition:.35s;

box-shadow:0 3px 15px rgba(0,0,0,.06);

}


header.sticky{

box-shadow:0 10px 25px rgba(0,0,0,.12);

}

html{

scroll-behavior:smooth;

}

.support-btn,
.call-btn a{

transition:.35s;

}

.support-btn:hover,
.call-btn a:hover{

transform:translateY(-4px);

box-shadow:0 15px 30px rgba(21,101,255,.25);

}


.service-card{

transition:.4s;

}

.service-card:hover{

transform:translateY(-12px);

box-shadow:0 20px 45px rgba(0,0,0,.15);

}

.hero-left{

animation:leftAnimation .8s ease;

}

.hero-right{

animation:rightAnimation .8s ease;

}

@keyframes leftAnimation{

from{

opacity:0;

transform:translateX(-80px);

}

to{

opacity:1;

transform:translateX(0);

}

}

@keyframes rightAnimation{

from{

opacity:0;

transform:translateX(80px);

}

to{

opacity:1;

transform:translateX(0);

}

}

section{

opacity:0;

transform:translateY(50px);

transition:.8s;

}

section.show{

opacity:1;

transform:translateY(0);

}

#topBtn{

position:fixed;

right:30px;

bottom:30px;

width:55px;

height:55px;

border:none;

background:#1565ff;

color:#fff;

border-radius:50%;

cursor:pointer;

display:none;

z-index:999;

font-size:20px;

box-shadow:0 10px 30px rgba(0,0,0,.25);

}


#loader{

position:fixed;

width:100%;

height:100%;

background:#fff;

display:flex;

justify-content:center;

align-items:center;

z-index:99999;

}

.spinner{

width:65px;

height:65px;

border:5px solid #eee;

border-top:5px solid #1565ff;

border-radius:50%;

animation:spin .8s linear infinite;

}

@keyframes spin{

100%{

transform:rotate(360deg);

}

}

/*=================================
FEATURE STRIP
==================================*/

.feature-strip{

    background:#f8f9fd;

    padding:35px 0;

    border-top:1px solid #e8edf5;

    border-bottom:1px solid #e8edf5;

}

.feature-grid{

    display:grid;

    grid-template-columns:repeat(4,1fr);

}

.feature-item{

    display: block;
    padding: 0 10px;
    border-right: 1px dashed #0b57d0;
    text-align: center;
    margin: 0px auto;

}

.border-none{

    border-right:none;

}

.feature-icon{

   /* width:62px;

    height:62px;

    min-width:62px;

    border-radius:50%;

    background:#eef4ff;

    display:flex;

    align-items:center;

    justify-content:center;*/

}

.feature-icon i{

    font-size: 33px;
    color: #fff;
    padding: 7px;
    border-radius: 10px;
    box-shadow: 0px 0px 2px #eef4ff;
    background: #054ecb;
    margin-bottom: 10px;

}

.feature-content h4{

    font-size: 19px;
    font-weight: 800;
    color: #000;
    margin-bottom: 6px;
    line-height: 1.2;

}

.feature-content p{

    font-size: 15.2px;
    color: #000;
    line-height: 27px;
    text-align: justify;
    font-weight: 600;

}

/* Toggle Button */
.menu-toggle{
    display:none;
    font-size:30px;
    cursor:pointer;
    color:#0B57D0;
}

/* Mobile */
@media (max-width:992px){

    .menu-toggle{
        display:block;
        z-index:1001;
    }

    .call-btn{
        display:none;
    }

    nav{
        position:absolute;
        top:95px;
        left:0;
        width:100%;
        background:#fff;
        display:none;
        box-shadow:0 5px 20px rgba(0,0,0,.1);
    }

    nav.active{
        display:block;
    }

    nav ul{
        display:flex;
        flex-direction:column;
        gap:0;
    }

    nav ul li{
        border-bottom:1px solid #eee;
    }

    nav ul li a{
        display:block;
        padding:18px 20px;
    }

    .nav-wrapper{
        position:relative;
    }
}


a {
    text-decoration: none!important;
}


/*====================================
CALL TO ACTION
====================================*/

.cta-section{

    padding:60px 0;

    background:#ffffff;

}

.cta-box{

    background:linear-gradient(90deg,#0b57d0 0%,#0047c7 100%);

    border-radius:18px;

    padding:20px 30px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    box-shadow:0 12px 35px rgba(0,0,0,.12);

}

.cta-left{

    display:flex;

    align-items:center;

    gap:22px;

}

.cta-icon{

    width:72px;

    height:72px;

    border:2px solid rgba(255,255,255,.25);

    border-radius:50%;

    display:flex;

    align-items:center;

    justify-content:center;

}

.cta-icon i{

    font-size:34px;

    color:#fff;

}

.cta-content h2{

    color:#fff;
    font-size:24px;
    font-weight:800;
    margin-bottom:8px;

}

.cta-content p{

    color: #ffffff;
    opacity: .95;
    font-size: 15px;
    line-height: 29px;
    max-width: 520px;
    text-align: justify;
    font-weight: 600;

}

.cta-call-btn{

    background:#fff;

    color:#0b57d0;

    padding:14px 36px;

    border-radius:14px;

    display:flex;

    align-items:center;

    gap:16px;

    font-size:24px;

    font-weight:700;

    transition:.3s;

    white-space:nowrap;

}

.cta-call-btn i{

    font-size:26px;

}

.cta-call-btn:hover{

    transform:translateY(-3px);

    box-shadow:0 12px 25px rgba(0,0,0,.18);

}
