:root{

--primary:#2563eb;
--dark-blue:#1e40af;
--light:#f5f7fa;
--text:#1f2937;

}


*{
margin:0;
padding:0;
box-sizing:border-box;
}


body{

font-family:'Inter',sans-serif;
color:var(--text);
background:var(--light);

}


.container {
    max-width: 1180px;
}


/* Navbar */


.premium-nav{

background:rgba(255,255,255,0.85);
backdrop-filter:blur(15px);
box-shadow:0 5px 30px rgba(0,0,0,.08);

}


.logo{

font-size:28px;
font-weight:800;
color:var(--primary);
font-family: 'Vend Sans';

}


.logo span{

color:#111827;

}


.logo i{

margin-right:8px;

}


.nav-link{

font-weight:600;
color:#374151!important;
margin:0 10px;

}


.custom-btn{

background:linear-gradient(
135deg,
#2563eb,
#1e40af
);

border:none;
padding:14px 28px;
border-radius:50px;
font-weight:600;

}



.custom-outline{

border-radius:50px;
padding:14px 30px;

}



/* Hero */


.hero-section{

position:relative;
overflow:hidden;
background:

linear-gradient(
135deg,
#f8fbff,
#e8f0ff
);

}



.hero-section h1{

font-size:58px;
font-weight:800;
line-height:1.15;

}



.hero-section p{

font-size:18px;
color:#64748b;
margin:25px 0;

}



.badge-text{

display:inline-block;
background:#dbeafe;
color:#2563eb;
padding:10px 18px;
border-radius:50px;
font-weight:600;
margin-bottom:20px;

}



.hero-buttons{

display:flex;
gap:15px;
margin-bottom:30px;

}



.hero-features div{

display:inline-block;
margin-right:20px;
color:#475569;
font-size:14px;

}


.hero-features i{

color:#2563eb;

}



/* Dashboard */


.dashboard-box{

background:white;
border-radius:25px;
padding:20px;
box-shadow:

0 30px 60px rgba(37,99,235,.15);

animation:floating 4s infinite ease-in-out;

}



.dashboard-header span{

height:12px;
width:12px;
display:inline-block;
border-radius:50%;
background:#2563eb;
margin-right:5px;

}



.dashboard-content{

text-align:center;
padding:40px;

}


.dashboard-content i{

font-size:60px;
color:#2563eb;

}


.dashboard-content h2{

font-size:70px;
font-weight:800;
color:#2563eb;

}



.progress{

height:10px;
margin:20px 0;

}


.progress-bar{

background:#2563eb;

}



/* Floating Animation */


@keyframes floating{

0%,100%{

transform:translateY(0);

}


50%{

transform:translateY(-20px);

}

}



/* Background Shapes */


.hero-shape{

position:absolute;
border-radius:50%;
filter:blur(10px);
opacity:.3;

}


.shape-one{

width:300px;
height:300px;
background:#2563eb;
top:10%;
right:-100px;

}


.shape-two{

width:250px;
height:250px;
background:#93c5fd;
bottom:0;
left:-100px;

}



@media(max-width:991px){

.hero-section h1{

font-size:42px;

}

}




/* Trusted Section */

.trusted-section{

padding:80px 0;
background:white;

}


.section-small-title{

color:#2563eb;
font-weight:700;
text-transform:uppercase;
letter-spacing:1px;

}



.trusted-section h2,
.about-section h2{

font-size:42px;
font-weight:800;

}



.brand-box{

background:#e2effb;
padding:35px;
border-radius:20px;
text-align:center;
transition:.4s;

}


.brand-box i{

font-size:45px;
color:#2563eb;

}


.brand-box span{

display:block;
margin-top:15px;
font-weight:700;

}


.brand-box:hover{

transform:translateY(-10px);
box-shadow:0 20px 40px rgba(0,0,0,.08);

}





/* About */


.about-section{

padding:100px 0;

}


.about-image{

height:450px;
background:

linear-gradient(
135deg,
#2563eb,
#60a5fa
);

border-radius:40px;
position:relative;

}



.about-card{

position:absolute;
background:white;
padding:35px;
border-radius:25px;
right:40px;
bottom:40px;
text-align:center;
box-shadow:0 20px 50px #0002;

}


.about-card i{

font-size:50px;
color:#2563eb;

}


.about-feature{

display:flex;
gap:15px;
margin-top:25px;

}


.about-feature i{

color:#2563eb;
font-size:25px;

}





/* Mission */


.mission-section{

padding:70px 0;
background:#f1f5f9;

}


.info-card{

background:white;
padding:40px;
border-radius:25px;
height:100%;
box-shadow:0 15px 40px #0001;

}


.info-card .icon{

width:70px;
height:70px;
border-radius:50%;
background:#dbeafe;
display:flex;
align-items:center;
justify-content:center;

}


.info-card i{

font-size:35px;
color:#2563eb;

}





/* Stats */


.stats-section{

padding:90px 0;
background:#2563eb;
color:white;

}


.stat-box i{

font-size:45px;

}


.stat-box h2{

font-size:55px;
font-weight:800;

}



.wave-divider{

margin-top:-1px;

}

.wave-divider svg{

display:block;
width:100%;

}



/* Why Section */


.why-section,
.features-section,
.services-section{

padding:100px 0;

}



.choose-card,
.feature-card{

background:white;
padding:35px;
border-radius:25px;
height:100%;
transition:.4s;
box-shadow:0 15px 40px rgba(0,0,0,.06);

}


.choose-card:hover,
.feature-card:hover{

transform:translateY(-12px);

box-shadow:
0 25px 60px rgba(37,99,235,.18);

}



.choose-card i,
.feature-card i{

font-size:45px;
color:#2563eb;
margin-bottom:20px;

}



.choose-card h4,
.feature-card h4{

font-weight:700;

}



.feature-card p,
.choose-card p{

color:#64748b;

}



/* Services */


.services-section{

background:#f8fafc;

}



.service-list{

padding:0;
list-style:none;

}


.service-list li{

margin:20px 0;
font-size:17px;
font-weight:600;

}


.service-list i{

color:#2563eb;
margin-right:10px;

}



.service-box{

background:

linear-gradient(
135deg,
#2563eb,
#1e40af
);

color:white;
padding:70px 40px;
border-radius:35px;
text-align:center;

}


.service-box i{

font-size:70px;

}



/* Driver Categories */


.driver-category-section,
.process-section{

padding:100px 0;

}



.category-card{

background:white;
padding:35px;
border-radius:25px;
text-align:center;
height:100%;
transition:.4s;
box-shadow:0 15px 35px rgba(0,0,0,.06);

}


.category-card:hover{

transform:translateY(-10px);

}



.category-card i{

font-size:45px;
color:#2563eb;

}




/* Process */


.process-section{

background:#f8fafc;

}



.process-card{

background:white;
padding:45px 30px;
border-radius:30px;
text-align:center;
position:relative;
height:100%;
box-shadow:0 15px 40px rgba(0,0,0,.07);

}



.step-number{

position:absolute;
top:20px;
right:25px;

font-size:50px;
font-weight:800;
color:#dbeafe;

}



.process-card i{

font-size:55px;
color:#2563eb;
margin:30px 0;

}





/* Performance */


.performance-strip{

padding:70px 0;
background:#2563eb;
color:white;

}


.performance-strip h2{

font-size:50px;
font-weight:800;

}




/* CTA */


.cta-section{

padding:100px 0;

}



.cta-box{

background:

linear-gradient(
135deg,
#2563eb,
#1e40af
);

padding:60px;
border-radius:35px;
color:white;

}



.cta-box h2{

font-size:42px;
font-weight:800;

}



.cta-btn{

padding:16px 35px;
border-radius:50px;
font-weight:700;

}




/* Pricing */


.pricing-section{

padding:100px 0;
background:#f8fafc;

}



.pricing-card{

background:white;
padding:45px 35px;
border-radius:30px;
height:100%;
position:relative;
text-align:center;
box-shadow:0 20px 45px rgba(0,0,0,.07);
transition:.4s;

}


.pricing-card:hover{

transform:translateY(-12px);

}



.pricing-card h4{

font-size:28px;
font-weight:800;

}



.price{

font-size:55px;
font-weight:800;
color:#86c8f9;
margin:20px 0;

}



.price span{

font-size:16px;
color:#88a4cd;

}



.pricing-card ul{

padding:0;
list-style:none;
text-align:left;
margin:30px 0;

}



.pricing-card li{

margin:15px 0;

}



.pricing-card li i{

color:#2563eb;
margin-right:10px;

}



.popular{

background:

linear-gradient(
135deg,
#2563eb,
#1e40af
);

color:white;

}



.popular li i{

color:white;

}



.popular-tag{

position:absolute;
top: -18px;
right: 125px;
background: #91faff;
color:#2563eb;
padding:8px 15px;
border-radius:30px;
font-size:13px;
font-weight:700;

}





/* Dashboard */


.dashboard-section{

padding:100px 0;

}



.dashboard-points div{

margin:20px 0;
font-weight:600;

}



.dashboard-points i{

color:#2563eb;
margin-right:10px;

}



.software-window{

background:#ffffff;
padding:20px;
border-radius:30px;
box-shadow:0 30px 70px rgba(0,0,0,.12);

}



.window-top span{

height:12px;
width:12px;
background:#2563eb;
display:inline-block;
border-radius:50%;
margin-right:5px;

}



.window-body{

background:#f1f5f9;
padding:40px;
border-radius:25px;
text-align:center;
margin-top:20px;

}



.scan-circle{

height:150px;
width:150px;
border-radius:50%;
background:#2563eb;
color:white;
display:flex;
align-items:center;
justify-content:center;
font-size:40px;
font-weight:800;
margin:auto;

}



.small-box{

background:white;
padding:15px;
border-radius:15px;
margin-top:15px;
font-weight:600;

}




/* Testimonials */


.testimonial-section,
.faq-section,
.blog-section{

padding:100px 0;

}



.testimonial-card{

background:white;
padding:35px;
border-radius:25px;
height:100%;
box-shadow:0 15px 40px rgba(0,0,0,.07);

}



.stars{

color:#fbbf24;
font-size:25px;
margin-bottom:20px;

}



.user-info{

display:flex;
align-items:center;
gap:15px;
margin-top:25px;

}



.user-avatar{

height:55px;
width:55px;
border-radius:50%;
background:#2563eb;
color:white;
display:flex;
align-items:center;
justify-content:center;
font-weight:700;

}



.user-info span{

color:#64748b;

}






/* FAQ */


.accordion-item{

border:none;
margin-bottom:15px;
border-radius:15px;
overflow:hidden;
box-shadow:0 10px 30px rgba(0,0,0,.05);

}



.accordion-button{

font-weight:700;
padding:22px;

}





/* Blog */


.blog-card{

background:white;
border-radius:25px;
overflow:hidden;
box-shadow:0 15px 40px rgba(0,0,0,.07);
height:100%;

}



.blog-image{

height:200px;
background:

linear-gradient(
135deg,
#2563eb,
#60a5fa
);

display:flex;
align-items:center;
justify-content:center;
color:white;

}



.blog-image i{

font-size:70px;

}



.blog-content{

padding:30px;

}



.blog-content a{

color:#2563eb;
font-weight:700;
text-decoration:none;

}





/* Contact */


.contact-section{

padding:100px 0;

}



.contact-box{

display:flex;
gap:20px;
align-items:center;
background:white;
padding:25px;
border-radius:20px;
margin-bottom:20px;
box-shadow:0 10px 30px rgba(0,0,0,.06);

}



.contact-box i{

font-size:30px;
color:#2563eb;

}



.contact-form{

background:white;
padding:40px;
border-radius:30px;
box-shadow:0 20px 50px rgba(0,0,0,.08);

}



.form-control{

padding:15px;
border-radius:15px;

}





/* Newsletter */


.newsletter-section{

padding:50px 0;

}



.newsletter-box{

background:#2563eb;
padding:50px;
border-radius:35px;
color:white;

}



.newsletter-form{

display:flex;
background:white;
padding:6px;
border-radius:50px;

}


.footer-section ul a{color:#c5d5e1;text-decoration: none;}



.newsletter-form input{

border:none;
flex:1;
padding:15px;
outline:none;
border-radius: 20px;

}



.newsletter-form button{

background:#2563eb;
color:white;
border:none;
padding:0 30px;
border-radius:50px;

}





/* Footer */


.footer-section{

background:#0f172a;
color:#cbd5e1;
padding:80px 0 30px;

}



.footer-logo{

font-size:30px;
font-weight:800;
color:white;
margin-bottom:20px;

}



.footer-section h5{

color:white;
margin-bottom:25px;

}



.footer-section ul{

list-style:none;
padding:0;

}



.footer-section li{

margin:12px 0;

}



.social-icons a{

height:40px;
width:40px;
display:inline-flex;
align-items:center;
justify-content:center;
background:#1e293b;
color:white;
border-radius:50%;
margin-right:8px;

}



.footer-bottom{

text-align:center;

}





/* Back Top */


#backTop{

position:fixed;
bottom:30px;
right:30px;
height:50px;
width:50px;
border:none;
border-radius:50%;
background:#2563eb;
color:white;
display:none;
z-index:99;

}





/* Scroll Progress */


.scroll-progress{

position:fixed;
top:0;
left:0;
height:4px;
background:#2563eb;
width:0;
z-index:999;

}



/* Button Ripple */


.btn{

position:relative;
overflow:hidden;

}



.ripple{

position:absolute;

height:20px;

width:20px;

background:white;

border-radius:50%;

transform:scale(0);

animation:rippleEffect .6s linear;

}



@keyframes rippleEffect{


to{

transform:scale(15);

opacity:0;

}

}





/* Navbar Scroll */


.premium-nav.scrolled{

background:white;

box-shadow:

0 10px 30px rgba(0,0,0,.12);

}





/* Back Button Flex */


#backTop{

display:flex;

align-items:center;

justify-content:center;

}






.modern-hero{

min-height:100vh;

display:flex;

align-items:center;

position:relative;

overflow:hidden;

background:

linear-gradient(
135deg,
#eff6ff,
#dbeafe
);

padding-top:100px;

}



.hero-grid{

position:absolute;

inset:0;

background-image:

linear-gradient(
rgba(37,99,235,.08) 1px,
transparent 1px
),

linear-gradient(
90deg,
rgba(37,99,235,.08) 1px,
transparent 1px
);

background-size:40px 40px;

}





.hero-badge{

display:inline-flex;

gap:10px;

align-items:center;

background:white;

color:#2563eb;

padding:12px 20px;

border-radius:50px;

font-weight:700;

box-shadow:
0 10px 30px #2563eb22;

}





.modern-hero h1{

font-size:55px;

font-weight:900;

line-height:1.1;

margin:25px 0;

}



.modern-hero h1 span{

background:

linear-gradient(
135deg,
#2563eb,
#1e40af
);

-webkit-background-clip:text;

color:transparent;

}




.modern-hero p{

font-size:18px;

color:#64748b;

line-height:1.8;

}




.hero-primary{

background:#2563eb;

color:white;

padding:16px 35px;

border-radius:50px;

}



.hero-secondary{

border:2px solid #2563eb;

color:#2563eb;

padding:14px 35px;

border-radius:50px;

margin-left:15px;

}





.hero-trust{

display:flex;

gap:25px;

margin-top:35px;

font-weight:600;

}



.hero-trust i{

color:#2563eb;

}





/* Device */


.hero-device{

position:relative;

}



.laptop{

background:#111827;

padding:12px;

border-radius:25px;

box-shadow:

0 40px 80px #2563eb55;

transform:

perspective(1000px)
rotateY(-10deg);

}




.screen{

background:white;

border-radius:18px;

padding:30px;

text-align:center;

}



.scan-circle{

height:140px;

width:140px;

border-radius:50%;

background:#2563eb;

color:white;

display:flex;

align-items:center;

justify-content:center;

margin:25px auto;

font-size:40px;

font-weight:800;

}





.scan-item{

background:#eff6ff;

padding:12px;

border-radius:12px;

margin:10px 0;

text-align:left;

}





.scan-item i{

color:#2563eb;

margin-right:10px;

}




.screen button{

width:100%;

border:none;

background:#2563eb;

color:white;

padding:14px;

border-radius:50px;

}




.floating-card{

position:absolute;

background:white;

padding:15px 20px;

border-radius:20px;

box-shadow:

0 20px 40px #0002;

font-weight:700;

animation:float 4s infinite;

}



.card-one{

top:10%;

left:-30px;

}



.card-two{

bottom:25%;

right:-30px;

}



.card-three{

bottom:5%;

left:30px;

}




@media(max-width:991px){


.modern-hero h1{

font-size:42px;

}


.hero-trust{

flex-direction:column;

}


}




/* =========================
   HEALTH DASHBOARD HERO
========================= */


.health-dashboard{

position:relative;

display:flex;

justify-content:center;

align-items:center;

padding:40px;

}



.dashboard-card{

width:420px;

background:rgba(255,255,255,.85);

backdrop-filter:blur(20px);

border-radius:35px;

padding:30px;

box-shadow:

0 40px 80px rgba(37,99,235,.18);

position:relative;

z-index:2;

}




.dashboard-glow{

position:absolute;

width:350px;

height:350px;

background:#2563eb;

filter:blur(120px);

opacity:.35;

}





.dashboard-header{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:30px;

}



.brand{

font-size:20px;

font-weight:800;

color:#1e40af;

}



.brand i{

margin-right:8px;

}



.status-dot{

background:#dcfce7;

color:#16a34a;

padding:7px 15px;

border-radius:50px;

font-size:13px;

font-weight:700;

}




.health-score{

text-align:center;

}



.circle-progress{

height:160px;

width:160px;

margin:auto;

border-radius:50%;

background:

conic-gradient(

#2563eb 100%,

#dbeafe 0

);

display:flex;

align-items:center;

justify-content:center;

}



.circle-progress span{

height:125px;

width:125px;

background:white;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:35px;

font-weight:900;

color:#2563eb;

}



.hero-buttons a:hover
{
    background: linear-gradient(135deg, #2563eb, #1e40af);
    padding: 16px 35px;
    border-radius: 50px;
    color:#fff;
}



.driver-status{

margin-top:30px;

}



.driver-item{

display:flex;

align-items:center;

gap:15px;

background:#f8fafc;

padding:15px;

border-radius:18px;

margin-bottom:12px;

}



.driver-item > i:first-child{

height:45px;

width:45px;

background:#dbeafe;

border-radius:12px;

display:flex;

align-items:center;

justify-content:center;

font-size:22px;

color:#2563eb;

}



.driver-item h6{

margin:0;

font-weight:700;

}



.driver-item span{

font-size:13px;

color:#64748b;

}



.check{

margin-left:auto;

color:#22c55e;

font-size:22px;

}





.scan-result{

margin-top:20px;

background:#2563eb;

color:white;

padding:18px;

border-radius:20px;

display:flex;

gap:15px;

align-items:center;

}



.scan-result p{

margin:0;

font-size:13px;

color: #f1f1f1;

}





/* Floating Cards */


.floating-stat{

position:absolute;

background:white;

padding:15px 20px;

border-radius:20px;

display:flex;

gap:12px;

align-items:center;

box-shadow:

0 20px 40px rgba(0,0,0,.12);

z-index:3;

animation:float 4s infinite;

}



.floating-stat i{

font-size:28px;

color:#2563eb;

}



.floating-stat strong{

display:block;

font-size:20px;

}



.floating-stat small{

color:#64748b;

}



.stat-one{

top:90px;

left:0;

}



.stat-two{

bottom:100px;

right:0;

}





@media(max-width:991px){


.dashboard-card{

width:100%;

}


.floating-stat{

display:none;

}

}