/* ==========================================
   NOVA CAB SERVICES
   STYLE.CSS - PART 1
==========================================*/

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800&display=swap');

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

html{
    scroll-behavior:smooth;
}

body{
    font-family:'Poppins',sans-serif;
    overflow-x:hidden;
    background:#f5f7fb;
    color:#222;
}

/*==================================
TOP BAR
==================================*/

.top-bar{

    background:#0f172a;

    color:#fff;

    font-size:14px;

    padding:10px 0;

}

.left-top,
.right-top{

    display:flex;

    align-items:center;

}

.left-top a{

    color:#fff;

    margin-right:25px;

    text-decoration:none;

}

.left-top i{

    color:#ffc107;

    margin-right:6px;

}

.right-top{

    justify-content:flex-end;

}

.right-top a{

    color:#fff;

    text-decoration:none;

    margin-left:18px;

    transition:.3s;

}

.right-top a:hover{

    color:#ffc107;

}

.download-app{

    background:#ffc107;

    color:#000 !important;

    padding:8px 18px;

    border-radius:30px;

    font-weight:600;

}

/*==================================
NAVBAR
==================================*/

.navbar{

    top:42px;

    background:rgba(0,0,0,.45);

    backdrop-filter:blur(18px);

    transition:.4s;

    z-index:999;

}

.navbar.scrolled{

    background:#111827;

    box-shadow:0 10px 30px rgba(0,0,0,.3);

}

.navbar-brand{

    display:flex;

    align-items:center;

    color:#fff !important;

    font-size:24px;

    font-weight:700;

}

.navbar-brand img{

    margin-right:10px;

}

.nav-link{

    color:#fff !important;

    margin-left:15px;

    font-weight:500;

    transition:.3s;

}

.nav-link:hover{

    color:#ffc107 !important;

}

.book-btn{

    margin-left:20px;

    border-radius:30px;

    background:#ffc107;

    color:#000;

    font-weight:700;

    padding:10px 26px;

}

.book-btn:hover{

    background:#ffca2c;

}

/*==================================
HERO
==================================*/

#heroSlider,
.carousel-item{
    height:100vh;
    min-height:700px;
}

.hero-image{
    width:100%;
    height:100%;
    object-fit:cover;
    object-position:center center;
}

.carousel-item{

    position:relative;

}

.carousel-overlay{
    position:absolute;
    inset:0;
    background:linear-gradient(
        to right,
        rgba(0,0,0,.72),
        rgba(0,0,0,.45),
        rgba(0,0,0,.25)
    );
}

.carousel-caption{
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%,-50%);
    width:100%;
    max-width:1320px;
    padding:0 40px;
    z-index:10;
    text-align:left;
}

.carousel-caption h5{

    color:#ffc107;

    font-weight:600;

    letter-spacing:2px;

}
.carousel-caption h1{

font-size:72px;

font-weight:800;

line-height:1.1;

max-width:700px;

margin:20px 0;

text-shadow:0 10px 30px rgba(0,0,0,.35);

}

.carousel-caption p{

font-size:22px;

max-width:600px;

line-height:1.8;

margin-bottom:35px;

}

.hero-buttons{

    margin-top:25px;

}

.hero-buttons .btn{

    padding:15px 35px;

    border-radius:50px;

    margin-right:15px;

}

/*==================================
BOOKING CARD
==================================*/

.booking-card{

    background:#fff;

    padding:35px;

    border-radius:20px;

    box-shadow:0 20px 45px rgba(0,0,0,.25);

}

.booking-card h3{

    text-align:center;

    margin-bottom:25px;

    font-weight:700;

}

.booking-card input{

    margin-bottom:18px;

    height:55px;

    border-radius:12px;

}

.booking-card select{

    margin-bottom:18px;

    height:55px;

    border-radius:12px;

}

.booking-card button{

    height:55px;

    border-radius:12px;

    font-weight:700;

}

/*==================================
CAROUSEL BUTTONS
==================================*/

.carousel-control-prev,

.carousel-control-next{

    width:60px;

}

.carousel-control-prev-icon,

.carousel-control-next-icon{

    width:50px;

    height:50px;

    border-radius:50%;

    background-color:rgba(255,255,255,.3);

    backdrop-filter:blur(10px);

}

/*==================================
FLOATING BUTTONS
==================================*/

.whatsapp-btn,

.call-btn,

#topBtn{

    position:fixed;

    width:60px;

    height:60px;

    border-radius:50%;

    display:flex;

    justify-content:center;

    align-items:center;

    color:#fff;

    text-decoration:none;

    font-size:26px;

    z-index:9999;

    box-shadow:0 12px 30px rgba(0,0,0,.3);

    transition:.3s;

}

.whatsapp-btn{

    background:#25D366;

    right:25px;

    bottom:25px;

}

.call-btn{

    background:#0d6efd;

    left:25px;

    bottom:25px;

}

#topBtn{

    border:none;

    background:#111827;

    right:25px;

    bottom:100px;

    cursor:pointer;

    display:none;

}

.whatsapp-btn:hover,

.call-btn:hover,

#topBtn:hover{

    transform:scale(1.1);

}

/*==================================
RESPONSIVE
==================================*/

@media(max-width:991px){

.top-bar{

display:none;

}

.navbar{

top:0;

}

.hero-image{

height:130vh;

}

.carousel-caption{

text-align:center;

padding:20px;

}

.carousel-caption h1{

font-size:42px;

}

.booking-card{

margin-top:40px;

}

.hero-buttons .btn{

display:block;

margin-bottom:15px;

}

}

@media(max-width:576px){

.carousel-caption h1{

font-size:32px;

}

.carousel-caption p{

font-size:16px;

}

.booking-card{

padding:25px;

}

}
/*==========================================
SECTION TITLES
==========================================*/

.section-subtitle{

color:#ff9800;

font-weight:700;

letter-spacing:2px;

text-transform:uppercase;

margin-bottom:10px;

}

.section-title{

font-size:42px;

font-weight:800;

margin-bottom:15px;

color:#111827;

}

/*==========================================
STATISTICS
==========================================*/

.stats-section{

background:#ffffff;

}

.stat-card{

background:#fff;

padding:40px;

border-radius:20px;

text-align:center;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

height:100%;

}

.stat-card:hover{

transform:translateY(-10px);

}

.stat-card i{

font-size:55px;

color:#ffc107;

margin-bottom:20px;

}

.stat-card h2{

font-size:48px;

font-weight:800;

color:#0d6efd;

margin-bottom:10px;

}

/*==========================================
WHY SECTION
==========================================*/

.why-section{

background:#f8fbff;

}

.why-card{

background:#fff;

padding:35px;

border-radius:20px;

box-shadow:0 15px 30px rgba(0,0,0,.08);

transition:.35s;

height:100%;

text-align:center;

}

.why-card:hover{

transform:translateY(-10px);

}

.why-card .icon{

width:90px;

height:90px;

background:#0d6efd;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

margin:auto;

margin-bottom:25px;

}

.why-card .icon i{

font-size:38px;

color:#fff;

}

.why-card h4{

font-weight:700;

margin-bottom:15px;

}

/*==========================================
SERVICES
==========================================*/

.services-section{

background:#ffffff;

}

.service-box{

background:#fff;

padding:35px;

text-align:center;

border-radius:20px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

height:100%;

}

.service-box:hover{

transform:translateY(-12px);

}

.service-box i{

font-size:55px;

color:#0d6efd;

margin-bottom:20px;

}

.service-box h5{

font-weight:700;

margin-bottom:15px;

}

.service-box p{

margin-bottom:20px;

color:#666;

}

.service-box a{

display:inline-block;

padding:10px 25px;

background:#ffc107;

border-radius:40px;

text-decoration:none;

font-weight:700;

color:#000;

transition:.3s;

}

.service-box a:hover{

background:#0d6efd;

color:#fff;

}

/*==========================================
RESPONSIVE
==========================================*/

@media(max-width:768px){

.section-title{

font-size:32px;

}

.stat-card,

.why-card,

.service-box{

margin-bottom:20px;

}

}
/*==========================================
FLEET SECTION
==========================================*/

.fleet-section{

background:#f8fbff;

}

.fleet-search{

height:55px;

border-radius:50px;

padding-left:25px;

font-size:16px;

}

.fleet-filter{

display:flex;

justify-content:end;

gap:10px;

flex-wrap:wrap;

}

.filter-btn{

border:none;

padding:10px 22px;

border-radius:30px;

background:#fff;

font-weight:600;

box-shadow:0 5px 15px rgba(0,0,0,.08);

transition:.3s;

}

.filter-btn.active,

.filter-btn:hover{

background:#0d6efd;

color:#fff;

}

.fleet-card{

background:#fff;

border-radius:20px;

overflow:hidden;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

height:100%;

}

.fleet-card:hover{

transform:translateY(-10px);

}

.fleet-card img{

width:100%;

height:240px;

object-fit:cover;

}

.fleet-body{

padding:25px;

}

.vehicle-info{

display:flex;

justify-content:space-between;

flex-wrap:wrap;

margin:20px 0;

font-size:14px;

color:#555;

}

.vehicle-info span{

margin-bottom:10px;

}

.fleet-body h3{

color:#0d6efd;

font-weight:800;

margin-bottom:20px;

}

.fleet-buttons{

display:flex;

gap:10px;

flex-wrap:wrap;

}

.fleet-buttons .btn{

flex:1;

border-radius:30px;

}

@media(max-width:768px){

.fleet-filter{

justify-content:center;

margin-top:20px;

}

}

/*==========================================
FEATURED CARS
==========================================*/

.featured-section{

background:#ffffff;

}

.featured-card{

background:#fff;

border-radius:22px;

overflow:hidden;

box-shadow:0 18px 40px rgba(0,0,0,.08);

transition:.35s;

position:relative;

height:100%;

}

.featured-card:hover{

transform:translateY(-12px);

}

.featured-card img{

width:100%;

height:250px;

object-fit:cover;

}

.featured-badge{

position:absolute;

top:20px;

left:20px;

background:#ffc107;

padding:8px 18px;

font-size:13px;

font-weight:700;

border-radius:30px;

z-index:2;

}

.featured-badge.premium{

background:#0d6efd;

color:#fff;

}

.featured-badge.luxury{

background:#111827;

color:#fff;

}

.featured-body{

padding:28px;

}

.featured-body h3{

font-weight:700;

margin-bottom:15px;

}

.rating{

color:#ff9800;

margin-bottom:20px;

font-size:18px;

}

.rating span{

font-size:14px;

color:#666;

margin-left:10px;

}

.car-specs{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:12px;

margin-bottom:20px;

font-size:15px;

}

.car-specs div{

background:#f5f7fb;

padding:12px;

border-radius:10px;

text-align:center;

}

.price-table{

width:100%;

margin-bottom:25px;

border-collapse:collapse;

}

.price-table td{

padding:12px;

border-bottom:1px solid #eee;

}

.price-table td:last-child{

font-weight:700;

color:#0d6efd;

text-align:right;

}

.featured-buttons{

display:flex;

gap:10px;

}

.featured-buttons .btn{

flex:1;

border-radius:30px;

}

@media(max-width:768px){

.car-specs{

grid-template-columns:1fr;

}

}
/*==========================================
RENTAL SECTION
==========================================*/

.rental-section{
background:#f8fbff;
}

.rental-card{
background:#fff;
padding:35px;
border-radius:20px;
box-shadow:0 18px 40px rgba(0,0,0,.08);
transition:.35s;
position:relative;
height:100%;
text-align:center;
}

.rental-card:hover{
transform:translateY(-12px);
}

.popular{
border:3px solid #0d6efd;
}

.luxury{
background:#111827;
color:#fff;
}

.popular-tag{
position:absolute;
top:18px;
right:18px;
background:#0d6efd;
color:#fff;
padding:6px 16px;
border-radius:20px;
font-size:12px;
font-weight:700;
}

.rental-icon{
width:90px;
height:90px;
margin:auto;
margin-bottom:25px;
border-radius:50%;
background:#0d6efd;
display:flex;
align-items:center;
justify-content:center;
}

.luxury .rental-icon{
background:#ffc107;
}

.rental-icon i{
font-size:40px;
color:#fff;
}

.luxury .rental-icon i{
color:#111827;
}

.rental-card h1{
font-size:52px;
font-weight:800;
color:#0d6efd;
margin:20px 0;
}

.luxury h1{
color:#ffc107;
}

.rental-card ul{
list-style:none;
padding:0;
margin:25px 0;
text-align:left;
}

.rental-card ul li{
margin-bottom:12px;
}

.rental-card ul i{
color:#28a745;
margin-right:8px;
}

.rental-card h4{
font-size:30px;
font-weight:700;
margin-bottom:25px;
color:#ff9800;
}

/*==========================================
PRICING TABLE
==========================================*/

.pricing-section{
background:#fff;
}

.pricing-table{
background:#fff;
border-radius:18px;
overflow:hidden;
box-shadow:0 15px 35px rgba(0,0,0,.08);
}

.pricing-table thead{
background:#0d6efd;
color:#fff;
}

.pricing-table th,
.pricing-table td{
padding:18px;
text-align:center;
}

.pricing-table tbody tr:hover{
background:#f4f9ff;
}

.pricing-table td:first-child{
font-weight:700;
}
/*==========================================
AIRPORT SECTION
==========================================*/

.airport-section{

background:#f8fbff;

}

.airport-image{

position:relative;

}

.airport-image img{

width:100%;

border-radius:25px;

}

.airport-badge{

position:absolute;

bottom:20px;

left:20px;

background:#0d6efd;

color:#fff;

padding:12px 24px;

border-radius:40px;

font-weight:600;

box-shadow:0 10px 25px rgba(0,0,0,.2);

}

.airport-desc{

font-size:17px;

line-height:1.8;

margin:25px 0;

color:#666;

}

.airport-features{

margin-top:35px;

}

.airport-feature{

display:flex;

align-items:flex-start;

gap:18px;

margin-bottom:25px;

}

.feature-icon{

width:70px;

height:70px;

border-radius:18px;

background:#0d6efd;

display:flex;

align-items:center;

justify-content:center;

flex-shrink:0;

}

.feature-icon i{

font-size:30px;

color:#fff;

}

.airport-feature h5{

font-weight:700;

margin-bottom:8px;

}

.airport-feature p{

margin:0;

color:#666;

}

/*==========================================
AIRPORT CARDS
==========================================*/

.airport-pricing{

background:#ffffff;

}

.airport-card{

background:#fff;

padding:35px;

border-radius:22px;

text-align:center;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

height:100%;

}

.airport-card:hover{

transform:translateY(-10px);

}

.airport-card i{

font-size:50px;

color:#0d6efd;

margin-bottom:20px;

}

.airport-card h4{

font-weight:700;

margin-bottom:10px;

}

.airport-card h2{

font-size:42px;

font-weight:800;

color:#ff9800;

margin:20px 0;

}

.airport-card .btn{

border-radius:40px;

padding:12px;

}

@media(max-width:768px){

.airport-feature{

flex-direction:column;

text-align:center;

align-items:center;

}

.airport-badge{

position:static;

margin-top:20px;

display:inline-block;

}

}
/*==========================================
CORPORATE SECTION
==========================================*/

.corporate-section{

background:#f8fbff;

}

.corporate-desc{

margin:25px 0;

line-height:1.8;

color:#666;

font-size:17px;

}

.corporate-features{

margin-top:35px;

}

.corporate-item{

display:flex;

align-items:flex-start;

gap:18px;

margin-bottom:25px;

}

.corporate-item i{

font-size:32px;

width:65px;

height:65px;

display:flex;

align-items:center;

justify-content:center;

background:#0d6efd;

color:#fff;

border-radius:15px;

flex-shrink:0;

}

.corporate-item h5{

font-weight:700;

margin-bottom:8px;

}

.corporate-item p{

margin:0;

color:#666;

}

.corporate-form{

background:#fff;

padding:40px;

border-radius:25px;

box-shadow:0 20px 45px rgba(0,0,0,.08);

}

.corporate-form h3{

margin-bottom:25px;

font-weight:700;

}

.corporate-form input,

.corporate-form textarea,

.corporate-form select{

height:55px;

border-radius:12px;

}

.corporate-form textarea{

height:auto;

}

.corporate-form button{

height:55px;

border-radius:12px;

font-weight:700;

}

/*==========================================
BENEFITS
==========================================*/

.benefits-section{

background:#fff;

}

.benefit-card{

background:#fff;

padding:35px;

text-align:center;

border-radius:20px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

height:100%;

}

.benefit-card:hover{

transform:translateY(-10px);

}

.benefit-card i{

font-size:55px;

color:#0d6efd;

margin-bottom:20px;

}

.benefit-card h5{

font-weight:700;

margin-bottom:15px;

}

.benefit-card p{

color:#666;

}

@media(max-width:768px){

.corporate-item{

flex-direction:column;

text-align:center;

align-items:center;

}

.corporate-form{

margin-top:40px;

padding:30px;

}

}
/*==========================================
POPULAR ROUTES
==========================================*/

.routes-section{

background:#f8fbff;

}

.route-card{

background:#fff;

padding:30px;

border-radius:20px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

height:100%;

}

.route-card:hover{

transform:translateY(-10px);

}

.route-header{

display:flex;

justify-content:space-between;

align-items:center;

margin-bottom:20px;

}

.route-header h4{

font-size:22px;

font-weight:700;

margin:0;

}

.route-header span{

background:#0d6efd;

color:#fff;

padding:6px 14px;

border-radius:20px;

font-size:13px;

}

.route-card ul{

list-style:none;

padding:0;

margin:25px 0;

}

.route-card li{

margin-bottom:14px;

font-size:16px;

}

.route-card li i{

color:#0d6efd;

margin-right:10px;

}

.route-card .btn{

border-radius:40px;

font-weight:600;

}

/*==========================================
DESTINATION BANNER
==========================================*/

.destination-banner{

background:linear-gradient(135deg,#0d6efd,#0b5ed7);

padding:70px 0;

color:#fff;

}

.destination-banner h2{

font-size:42px;

font-weight:800;

margin-bottom:20px;

}

.destination-banner p{

font-size:20px;

opacity:.95;

}

.destination-banner .btn{

padding:15px 40px;

border-radius:40px;

font-weight:700;

}

@media(max-width:768px){

.route-header{

flex-direction:column;

align-items:flex-start;

gap:10px;

}

.destination-banner{

text-align:center;

}

.destination-banner h2{

font-size:30px;

}

.destination-banner .text-lg-end{

text-align:center !important;

margin-top:30px;

}

}
/*==========================================
OFFERS
==========================================*/

.offers-section{

background:#ffffff;

}

.offer-card{

background:#fff;

border-radius:22px;

overflow:hidden;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

position:relative;

height:100%;

}

.offer-card:hover{

transform:translateY(-12px);

}

.offer-card img{

height:220px;

width:100%;

object-fit:cover;

}

.offer-tag{

position:absolute;

top:20px;

left:20px;

background:#ff9800;

color:#fff;

padding:8px 18px;

font-size:13px;

font-weight:700;

border-radius:30px;

}

.offer-tag.blue{

background:#0d6efd;

}

.offer-tag.green{

background:#28a745;

}

.offer-body{

padding:28px;

}

.offer-body h3{

font-weight:700;

margin-bottom:15px;

}

.offer-body p{

color:#666;

margin-bottom:20px;

}

.coupon{

background:#f5f7fb;

padding:12px;

text-align:center;

font-weight:700;

border:2px dashed #0d6efd;

border-radius:10px;

font-size:18px;

}

/*==========================================
BENEFITS
==========================================*/

.book-benefits{

background:#f8fbff;

}

.benefit-box{

background:#fff;

padding:35px;

text-align:center;

border-radius:20px;

box-shadow:0 15px 30px rgba(0,0,0,.08);

transition:.35s;

height:100%;

}

.benefit-box:hover{

transform:translateY(-10px);

}

.benefit-box i{

font-size:55px;

color:#0d6efd;

margin-bottom:20px;

}

.benefit-box h4{

font-weight:700;

margin-bottom:15px;

}

.benefit-box p{

color:#666;

}
/*==========================================
MOBILE APP
==========================================*/

.app-section{

background:#ffffff;

padding:100px 0;

}

.app-description{

margin:25px 0;

font-size:17px;

line-height:1.8;

color:#666;

}

.app-features{

margin-top:30px;

}

.app-feature{

display:flex;

align-items:center;

margin-bottom:18px;

font-size:17px;

font-weight:500;

}

.app-feature i{

font-size:22px;

color:#28a745;

margin-right:15px;

}

.download-buttons .btn{

padding:14px 28px;

border-radius:50px;

font-weight:600;

}

.phone-wrapper{

position:relative;

display:inline-block;

}

.phone-image{

max-width:350px;

border-radius:30px;

box-shadow:0 25px 60px rgba(0,0,0,.18);

}

.qr-box{

position:absolute;

bottom:20px;

right:-35px;

background:#fff;

padding:18px;

border-radius:20px;

box-shadow:0 12px 30px rgba(0,0,0,.15);

text-align:center;

}

.qr-box h5{

font-size:16px;

margin-bottom:12px;

font-weight:700;

}

.qr-box img{

width:120px;

}

/*==========================================
CTA
==========================================*/

.cta-section{

padding:80px 0;

background:linear-gradient(135deg,#0d6efd,#0056b3);

color:#fff;

}

.cta-section h2{

font-size:46px;

font-weight:800;

margin-bottom:15px;

}

.cta-section p{

font-size:20px;

opacity:.95;

}

.cta-section .btn{

padding:16px 40px;

border-radius:50px;

font-weight:700;

}

@media(max-width:991px){

.phone-image{

max-width:280px;

margin-top:40px;

}

.qr-box{

position:static;

margin-top:25px;

display:inline-block;

}

.cta-section{

text-align:center;

}

.cta-section .text-lg-end{

text-align:center !important;

margin-top:30px;

}

}

@media(max-width:576px){

.download-buttons .btn{

display:block;

width:100%;

margin-bottom:15px;

}

}
/*==========================================
TESTIMONIALS
==========================================*/

.testimonial-section{

background:#f8fbff;

}

.testimonial-card{

max-width:850px;

margin:auto;

background:#fff;

padding:50px;

border-radius:25px;

box-shadow:0 20px 45px rgba(0,0,0,.08);

text-align:center;

}

.customer-img{

width:120px;

height:120px;

border-radius:50%;

object-fit:cover;

margin-bottom:25px;

border:6px solid #0d6efd;

}

.testimonial-card h4{

font-weight:700;

margin-bottom:5px;

}

.testimonial-card span{

color:#777;

}

.stars{

font-size:28px;

color:#ffc107;

margin:20px 0;

}

.testimonial-card p{

font-size:18px;

line-height:1.8;

color:#666;

}

#testimonialCarousel .carousel-control-prev,

#testimonialCarousel .carousel-control-next{

width:60px;

}

/*==========================================
RATING BANNER
==========================================*/

.rating-banner{

background:#0d6efd;

padding:70px 0;

color:#fff;

}

.rating-box{

text-align:center;

}

.rating-box h1{

font-size:60px;

font-weight:800;

margin-bottom:10px;

}

.rating-box p{

font-size:18px;

opacity:.95;

}

@media(max-width:768px){

.testimonial-card{

padding:30px;

}

.rating-box{

margin-bottom:30px;

}

}
/*==========================================
TRUSTED BY
==========================================*/

.trusted-section{

background:#ffffff;

overflow:hidden;

}

.logo-slider{

overflow:hidden;

position:relative;

}

.logo-track{

display:flex;

width:max-content;

animation:logoscroll 30s linear infinite;

}

.logo-item{

width:220px;

height:120px;

display:flex;

justify-content:center;

align-items:center;

background:#fff;

border-radius:15px;

margin-right:25px;

box-shadow:0 10px 25px rgba(0,0,0,.08);

}

.logo-item img{

max-width:130px;

max-height:60px;

filter:grayscale(100%);

transition:.3s;

}

.logo-item:hover img{

filter:none;

transform:scale(1.1);

}

@keyframes logoscroll{

0%{

transform:translateX(0);

}

100%{

transform:translateX(-50%);

}

}

/*==========================================
ACHIEVEMENTS
==========================================*/

.achievement-section{

background:#f8fbff;

}

.achievement-card{

background:#fff;

padding:35px;

text-align:center;

border-radius:20px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

height:100%;

}

.achievement-card:hover{

transform:translateY(-10px);

}

.achievement-card i{

font-size:55px;

color:#0d6efd;

margin-bottom:20px;

}

.achievement-card h2{

font-size:52px;

font-weight:800;

color:#ff9800;

margin-bottom:15px;

}

/*==========================================
CITIES
==========================================*/

.cities-section{

background:#fff;

}

.cities-grid{

display:flex;

flex-wrap:wrap;

gap:18px;

justify-content:center;

}

.cities-grid span{

padding:14px 30px;

background:#f4f7fb;

border-radius:40px;

font-weight:600;

transition:.3s;

cursor:pointer;

}

.cities-grid span:hover{

background:#0d6efd;

color:#fff;

transform:translateY(-4px);

}
/*==========================================
PARTNER
==========================================*/

.partner-section{

background:#f8fbff;

}

.partner-item{

display:flex;

gap:20px;

margin-bottom:30px;

}

.partner-item i{

width:70px;

height:70px;

display:flex;

justify-content:center;

align-items:center;

background:#0d6efd;

color:#fff;

font-size:30px;

border-radius:15px;

}

.partner-item h4{

font-weight:700;

}

.partner-item p{

color:#666;

margin:0;

}

.earning-box{

margin-top:40px;

padding:35px;

background:#0d6efd;

color:#fff;

border-radius:20px;

text-align:center;

}

.earning{

font-size:48px;

font-weight:800;

margin:20px 0;

}

.partner-form{

background:#fff;

padding:40px;

border-radius:20px;

box-shadow:0 20px 45px rgba(0,0,0,.08);

}

.partner-form input,

.partner-form textarea,

.partner-form select{

height:55px;

border-radius:12px;

}

.partner-form textarea{

height:auto;

}

.partner-form button{

height:55px;

border-radius:12px;

font-weight:700;

}
/*==========================================
DRIVER SECTION
==========================================*/

.driver-section{

background:#fff;

}

.driver-income-card,
.driver-benefits,
.driver-form{

background:#fff;

padding:35px;

border-radius:20px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.income-box{

background:#0d6efd;

color:#fff;

padding:30px;

border-radius:15px;

text-align:center;

margin:25px 0;

}

.income-box h1{

font-size:55px;

font-weight:800;

}

.income-list div{

display:flex;

justify-content:space-between;

padding:12px 0;

border-bottom:1px solid #eee;

}

.benefit-item{

display:flex;

align-items:center;

margin:18px 0;

font-weight:600;

}

.benefit-item i{

font-size:24px;

color:#0d6efd;

margin-right:15px;

}

.driver-form input,
.driver-form textarea,
.driver-form select{

height:55px;

border-radius:12px;

}

.driver-form textarea{

height:auto;

}

.driver-form button{

height:55px;

border-radius:12px;

}

/*==========================================
DOCUMENTS
==========================================*/

.documents-section{

background:#f8fbff;

}

.doc-card{

background:#fff;

padding:35px;

text-align:center;

border-radius:20px;

box-shadow:0 15px 30px rgba(0,0,0,.08);

transition:.3s;

}

.doc-card:hover{

transform:translateY(-10px);

}

.doc-card i{

font-size:55px;

color:#0d6efd;

margin-bottom:20px;

}

/*==========================================
STEPS
==========================================*/

.driver-steps{

background:#fff;

}

.step-card{

background:#f8fbff;

padding:35px;

border-radius:20px;

text-align:center;

height:100%;

transition:.3s;

}

.step-card:hover{

transform:translateY(-10px);

}

.step-number{

width:70px;

height:70px;

background:#0d6efd;

color:#fff;

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

font-size:28px;

font-weight:700;

margin:auto auto 20px;

}
/*==========================================
FAQ
==========================================*/

.faq-section{

background:#f8fbff;

}

.faq-section .accordion-item{

border:none;

margin-bottom:18px;

border-radius:18px !important;

overflow:hidden;

box-shadow:0 12px 30px rgba(0,0,0,.08);

}

.faq-section .accordion-button{

padding:22px 28px;

font-size:18px;

font-weight:600;

background:#fff;

box-shadow:none;

}

.faq-section .accordion-button:not(.collapsed){

background:#0d6efd;

color:#fff;

}

.faq-section .accordion-button:focus{

box-shadow:none;

}

.faq-section .accordion-body{

padding:25px 30px;

font-size:16px;

line-height:1.8;

background:#fff;

color:#555;

}

/* Bootstrap icon colors */

.accordion-button::after{

filter:brightness(0);

}

.accordion-button:not(.collapsed)::after{

filter:brightness(0) invert(1);

}

/* FAQ CTA */

.faq-help{

margin-top:60px;

text-align:center;

background:#fff;

padding:45px;

border-radius:25px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.faq-help h3{

font-weight:700;

margin-bottom:15px;

}

.faq-help p{

color:#666;

margin-bottom:25px;

}

.faq-help .btn{

padding:14px 35px;

border-radius:40px;

font-weight:700;

}

@media(max-width:768px){

.faq-section .accordion-button{

font-size:16px;

padding:18px;

}

.faq-section .accordion-body{

padding:20px;

}

}
/*==========================================
CONTACT
==========================================*/

.contact-section{

background:#fff;

}

.contact-card{

background:#fff;

padding:35px;

border-radius:20px;

text-align:center;

box-shadow:0 15px 35px rgba(0,0,0,.08);

transition:.35s;

height:100%;

}

.contact-card:hover{

transform:translateY(-10px);

}

.contact-card i{

font-size:55px;

color:#0d6efd;

margin-bottom:20px;

}

.contact-card h4{

font-weight:700;

margin-bottom:15px;

}

.contact-card p{

color:#666;

}

.contact-card a{

text-decoration:none;

font-weight:700;

}

.contact-form{

background:#f8fbff;

padding:40px;

border-radius:25px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.contact-form input,

.contact-form select,

.contact-form textarea{

border-radius:12px;

padding:14px;

}

.business-card{

background:#0d6efd;

color:#fff;

padding:40px;

border-radius:25px;

height:100%;

}

.business-card h3{

margin-bottom:30px;

font-weight:700;

}

.business-item{

display:flex;

justify-content:space-between;

padding:14px 0;

border-bottom:1px solid rgba(255,255,255,.2);

}

.business-card .btn{

margin-top:15px;

margin-right:10px;

}

/*==========================================
MAP
==========================================*/

.map-section iframe{

width:100%;

height:500px;

border:0;

display:block;

}

/*==========================================
EMERGENCY
==========================================*/

.emergency-banner{

background:#dc3545;

color:#fff;

padding:70px 0;

}

.emergency-banner h2{

font-size:42px;

font-weight:800;

margin-bottom:15px;

}

.emergency-banner p{

font-size:18px;

opacity:.95;

}

.emergency-banner .btn{

padding:16px 40px;

border-radius:40px;

font-weight:700;

}

@media(max-width:768px){

.business-card{

margin-top:30px;

}

.emergency-banner{

text-align:center;

}

.emergency-banner .text-lg-end{

text-align:center !important;

margin-top:30px;

}

}
/*==========================================
NEWSLETTER
==========================================*/

.newsletter-section{

background:#f8fbff;

padding:80px 0;

}

.newsletter-box{

background:linear-gradient(135deg,#0d6efd,#0056b3);

padding:60px;

border-radius:25px;

color:#fff;

}

.newsletter-box h2{

font-size:42px;

font-weight:800;

margin-bottom:15px;

}

.newsletter-box p{

opacity:.95;

}

.newsletter-form .form-control{

height:60px;

border:none;

border-radius:40px 0 0 40px;

padding-left:25px;

}

.newsletter-form .btn{

border-radius:0 40px 40px 0;

padding:0 35px;

font-weight:700;

}

/*==========================================
FOOTER
==========================================*/

.footer{

background:#0b1220;

color:#fff;

padding:90px 0 20px;

}

.footer h3,

.footer h5{

font-weight:700;

margin-bottom:25px;

}

.footer p{

color:#cbd5e1;

line-height:1.8;

}

.footer ul{

list-style:none;

padding:0;

}

.footer li{

margin-bottom:15px;

color:#cbd5e1;

}

.footer a{

color:#cbd5e1;

text-decoration:none;

transition:.3s;

}

.footer a:hover{

color:#ffc107;

}

.footer-social{

margin-top:25px;

display:flex;

gap:15px;

}

.footer-social a{

width:45px;

height:45px;

display:flex;

justify-content:center;

align-items:center;

background:#1e293b;

border-radius:50%;

font-size:20px;

transition:.3s;

}

.footer-social a:hover{

background:#ffc107;

color:#000;

}

.footer hr{

border-color:#334155;

margin:50px 0 30px;

}

.footer-bottom{

font-size:15px;

}

.footer-bottom a{

margin-left:15px;

}

@media(max-width:768px){

.newsletter-box{

padding:35px;

text-align:center;

}

.newsletter-box h2{

font-size:30px;

}

.newsletter-form{

margin-top:30px;

}

.newsletter-form .input-group{

display:block;

}

.newsletter-form .form-control{

border-radius:40px;

margin-bottom:15px;

}

.newsletter-form .btn{

border-radius:40px;

width:100%;

height:55px;

}

.footer{

text-align:center;

}

.footer-social{

justify-content:center;

}

.footer-bottom{

text-align:center;

}

.footer-bottom .text-lg-end{

margin-top:20px;

text-align:center !important;

}

}
/*==========================================
STICKY NAVBAR
==========================================*/

.navbar.scrolled{

background:#0b1220 !important;

box-shadow:0 10px 25px rgba(0,0,0,.2);

transition:.4s;

}

/*==========================================
BACK TO TOP
==========================================*/

#topBtn{

display:none;

align-items:center;

justify-content:center;

}

/*==========================================
ACTIVE MENU
==========================================*/

.nav-link.active{

color:#ffc107 !important;

}

/*==========================================
LOADER
==========================================*/

.loader-wrapper{

position:fixed;

top:0;

left:0;

width:100%;

height:100%;

background:#fff;

display:flex;

justify-content:center;

align-items:center;

z-index:999999;

transition:.6s;

}

.loader-hidden{

opacity:0;

visibility:hidden;

}

.loader{

width:70px;

height:70px;

border-radius:50%;

border:8px solid #eee;

border-top:8px solid #0d6efd;

animation:spin .8s linear infinite;

}

@keyframes spin{

100%{

transform:rotate(360deg);

}
}
/*==========================================
 TOAST
==========================================*/

.nova-toast{

position:fixed;

top:30px;

right:30px;

background:#198754;

color:#fff;

padding:18px 25px;

border-radius:10px;

display:flex;

align-items:center;

gap:12px;

font-weight:600;

box-shadow:0 15px 35px rgba(0,0,0,.2);

transform:translateX(350px);

transition:.35s;

z-index:999999;

}

.nova-toast.show{

transform:translateX(0);

}

.nova-toast.error{

background:#dc3545;

}

.nova-toast i{

font-size:22px;

}
/*==========================================
PULSE
==========================================*/

.pulse{

animation:pulseAnimation 1s;

}

@keyframes pulseAnimation{

0%{

transform:scale(1);

}

50%{

transform:scale(1.12);

}

100%{

transform:scale(1);

}

}

/*==========================================
SMOOTH PAGE
==========================================*/

html{

scroll-behavior:smooth;

}

body{

overflow-x:hidden;

}

/*==========================================
BUTTON
==========================================*/

.btn{

transition:.3s;

}

.btn:hover{

transform:translateY(-3px);

}

/*==========================================
CARD
==========================================*/

.service-box,
.fleet-card,
.offer-card,
.featured-card,
.rental-card,
.route-card,
.partner-form,
.driver-form,
.contact-card,
.doc-card,
.benefit-card,
.stat-card{

transition:.35s;

}

.service-box:hover,
.fleet-card:hover,
.offer-card:hover,
.featured-card:hover,
.rental-card:hover,
.route-card:hover,
.partner-form:hover,
.driver-form:hover,
.contact-card:hover,
.doc-card:hover,
.benefit-card:hover,
.stat-card:hover{

box-shadow:0 25px 55px rgba(0,0,0,.15);

}

/*==========================================
SELECTION
==========================================*/

::selection{

background:#0d6efd;

color:#fff;

}
.hero-tag{

display:inline-block;

background:#ffc107;

color:#111;

padding:8px 18px;

border-radius:40px;

font-weight:700;

margin-bottom:18px;

font-size:14px;

text-transform:uppercase;

letter-spacing:1px;

}
.carousel-control-prev-icon,
.carousel-control-next-icon{

width:65px;

height:65px;

border-radius:50%;

background-color:rgba(255,255,255,.18);

backdrop-filter:blur(18px);

padding:18px;

transition:.3s;

}

.carousel-control-prev:hover .carousel-control-prev-icon,
.carousel-control-next:hover .carousel-control-next-icon{

background:#ffc107;

}
.carousel-item h1{

animation:slideUp .8s ease;

}

.carousel-item p{

animation:slideUp 1s ease;

}

@keyframes slideUp{

from{

opacity:0;

transform:translateY(50px);

}

to{

opacity:1;

transform:translateY(0);

}

}
@media(max-width:768px){

.carousel-caption{

padding:20px;

text-align:center;

}

.carousel-caption h1{

font-size:38px;

max-width:100%;

}

.carousel-caption p{

font-size:17px;

max-width:100%;

}

.hero-buttons .btn{

display:block;

width:100%;

margin-bottom:15px;

}

}