/*====================================================
 MANTRI CABS
 Premium Website - Revised Version
=====================================================*/

*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
}

:root{

--primary:#08284d;
--secondary:#d4af37;
--white:#ffffff;
--light:#f8fafc;
--text:#555555;
--shadow:0 15px 40px rgba(0,0,0,.12);

}

body{

font-family:'Poppins',sans-serif;
background:#ffffff;
color:#333;
line-height:1.7;
overflow-x:hidden;

}

img{

max-width:100%;
display:block;

}

.container{

width:90%;
max-width:1200px;
margin:auto;

}

/*=========================
HEADER
==========================*/

header{

position:fixed;
top:0;
left:0;
width:100%;
height:95px;
background:#ffffff;
box-shadow:0 8px 25px rgba(0,0,0,.08);
z-index:9999;

}

.nav{

height:95px;
display:flex;
align-items:center;
justify-content:space-between;

}

.brand img{

height:88px;
width:auto;
transition:.35s;

}

.brand img:hover{

transform:scale(1.05);

}

nav ul{

display:flex;
gap:35px;
list-style:none;

}

nav ul li a{

text-decoration:none;
font-weight:600;
font-size:16px;
color:var(--primary);
transition:.3s;

}

nav ul li a:hover{

color:var(--secondary);

}

.buttons{

display:flex;
gap:15px;

}

.call{

background:var(--primary);
color:#fff;
padding:13px 24px;
border-radius:40px;
text-decoration:none;
font-weight:600;
transition:.35s;

}

.call:hover{

transform:translateY(-3px);

}

.whatsapp{

background:#25D366;
color:white;
padding:13px 24px;
border-radius:40px;
text-decoration:none;
font-weight:600;
transition:.35s;

}

.whatsapp:hover{

transform:translateY(-3px);

}

/*=========================
HERO
==========================*/

.hero{

position:relative;
min-height:100vh;
display:flex;
align-items:center;
margin-top:95px;

background:url("hero-bg.jpg") center center/cover no-repeat;

}

.hero-overlay{

position:absolute;
top:0;
left:0;
right:0;
bottom:0;

background:linear-gradient(

90deg,

rgba(8,40,77,.35),

rgba(8,40,77,.10)

);

}

.hero-content{

position:relative;
z-index:5;

display:grid;
grid-template-columns:1.1fr .9fr;

align-items:center;

gap:35px;

}

.hero-left{

color:white;

}

.badge{

display:inline-block;

padding:10px 20px;

background:rgba(255,255,255,.18);

border-radius:40px;

backdrop-filter:blur(10px);

font-weight:600;

margin-bottom:20px;

}

.hero-left h1{

font-size:66px;
font-weight:800;
line-height:1.1;
margin-bottom:25px;

}

.hero-left h1 span{

display:block;
color:var(--secondary);

}

.hero-left p{

font-size:22px;
margin-bottom:35px;

}

.hero-buttons{

display:flex;
gap:18px;
flex-wrap:wrap;

}

.btn-primary{

background:var(--secondary);
color:var(--primary);

padding:18px 36px;

border-radius:50px;

font-weight:700;

text-decoration:none;

transition:.35s;

}

.btn-primary:hover{

transform:translateY(-5px);

box-shadow:var(--shadow);

}

.btn-whatsapp{

background:#25D366;
color:white;

padding:18px 36px;

border-radius:50px;

font-weight:700;

text-decoration:none;

transition:.35s;

}

.btn-whatsapp:hover{

transform:translateY(-5px);

}

.hero-features{

display:flex;
gap:25px;
margin-top:35px;
flex-wrap:wrap;
font-weight:600;

}

.hero-right{

text-align:right;

}

.hero-right img{

max-width:720px;
margin-left:auto;

animation:float 5s ease-in-out infinite;

}

@keyframes float{

0%{transform:translateY(0);}
50%{transform:translateY(-10px);}
100%{transform:translateY(0);}

}

/*=========================
GLOBAL SECTION
==========================*/

section{

padding:50px 0;

}

section h2{

font-size:42px;

text-align:center;

margin-bottom:40px;

color:var(--primary);

font-weight:700;

}

/*=========================
SERVICES
==========================*/

.cards{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,1fr));

gap:28px;

}

.card{

background:#ffffff;

padding:35px 30px;

border-radius:22px;

box-shadow:var(--shadow);

text-align:center;

transition:.35s;

}

.card:hover{

transform:translateY(-8px);

}

.card i{

font-size:48px;

color:var(--secondary);

margin-bottom:20px;

}

.card h3{

font-size:24px;

margin-bottom:15px;

color:var(--primary);

}

.card p{

color:var(--text);

}

/*==================================
WHY CHOOSE US
==================================*/

.why{
    background:var(--light);
    padding:45px 0 25px;
}

.why-grid{
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(280px,1fr));
    gap:20px;
}

.why-grid > div{
    background:#fff;
    padding:22px;
    border-radius:18px;
    box-shadow:var(--shadow);
    text-align:center;
    transition:transform .35s ease;
    opacity:1 !important;
    visibility:visible !important;
}

.why-grid > div:hover{
    transform:translateY(-6px);
}

.why-grid i{
    font-size:42px;
    color:var(--secondary);
    margin-bottom:14px;
}

.why-grid h3{
    font-size:22px;
    margin-bottom:10px;
    color:var(--primary) !important;
    display:block;
}

.why-grid p{
    font-size:15px;
    line-height:1.6;
    color:var(--text) !important;
    display:block;
}

/*==================================
ABOUT
==================================*/

.about{

display:grid;

grid-template-columns:1fr 1fr;

align-items:center;

gap:20px;

}

.about-image{

display:flex;

justify-content:center;

align-items:center;

}

.about-image img{

width:100%;

max-width:650px;

filter:drop-shadow(0 25px 40px rgba(0,0,0,.18));

}

.about-content h2{

text-align:left;

font-size:42px;

margin-bottom:20px;

}

.about-content p{

font-size:18px;

line-height:1.8;

margin-bottom:18px;

color:var(--text);

}


/*==================================
STATS
==================================*/

.stats{

background:linear-gradient(135deg,#08284d,#123d6b);

color:white;

padding:55px 0;

}

.stats .container{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:25px;

}

.stat{

text-align:center;

padding:20px;

}

.stat h3{

font-size:48px;

font-weight:800;

color:var(--secondary);

margin-bottom:8px;

}

.stat p{

font-size:18px;

}


/*==================================
TESTIMONIALS
==================================*/

.testimonials{

background:#f8fafc;

}

.testimonial-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(300px,1fr));

gap:28px;

}

.testimonial{

background:#ffffff;

padding:25px;

border-radius:20px;

box-shadow:var(--shadow);

transition:.35s;

text-align:center;

}

.testimonial:hover{

transform:translateY(-8px);

}

.testimonial img{

width:80px;

height:80px;

border-radius:50%;

margin:auto;

margin-bottom:18px;

object-fit:cover;

}

.testimonial h4{

margin-top:18px;

color:var(--primary);

font-size:20px;

}

.testimonial span{

color:#888;

font-size:14px;

}

.testimonial p{

margin-top:15px;

color:var(--text);

line-height:1.7;

}


/*==================================
FAQ
==================================*/

.faq{

background:#ffffff;

}

.faq-box{

background:#f8fafc;

padding:22px;

margin:15px 0;

border-left:5px solid var(--secondary);

border-radius:14px;

box-shadow:0 8px 20px rgba(0,0,0,.06);

transition:.3s;

}

.faq-box:hover{

transform:translateX(5px);

}

.faq-box h3{

font-size:22px;

margin-bottom:10px;

color:var(--primary);

}

.faq-box p{

color:var(--text);

line-height:1.7;

}

/*==================================
GOOGLE MAP
==================================*/

.map{

background:#f4f7fa;

}

.map iframe{

width:100%;
height:450px;
border:none;
border-radius:20px;
box-shadow:var(--shadow);

}


/*==================================
CALL TO ACTION
==================================*/

.cta{

background:linear-gradient(135deg,#08284d,#123d6b);

color:#fff;
text-align:center;

}

.cta h2{

font-size:46px;
color:#fff;
margin-bottom:20px;

}

.cta p{

font-size:20px;
margin-bottom:35px;

}


/*==================================
CONTACT
==================================*/

.contact-grid{

display:grid;
grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
gap:28px;

}

.contact-card{

background:#fff;
padding:30px;
border-radius:20px;
text-align:center;
box-shadow:var(--shadow);
transition:.35s;

}

.contact-card:hover{

transform:translateY(-8px);

}

.contact-card i{

font-size:48px;
color:var(--secondary);
margin-bottom:18px;

}

.contact-card h3{

margin-bottom:10px;
color:var(--primary);

}

.contact-card p{

color:var(--text);

}


/*==================================
FOOTER
==================================*/

.footer{

background:#081d39;
color:#fff;
padding:45px 0 20px;

}

.footer-grid{

display:grid;
grid-template-columns:2fr 1fr 1fr 1fr;
gap:40px;

}

.footer-logo{

width:190px;

background:#fff;

padding:12px;

border-radius:14px;

margin-bottom:20px;

box-shadow:0 10px 25px rgba(0,0,0,.20);

}

.footer h3{

margin-bottom:20px;
color:var(--secondary);

}

.footer ul{

list-style:none;

}

.footer li{

margin-bottom:10px;

}

.footer a{

text-decoration:none;
color:#fff;
transition:.3s;

}

.footer a:hover{

color:var(--secondary);

}

.copyright{

text-align:center;
margin-top:35px;
padding-top:20px;
border-top:1px solid rgba(255,255,255,.15);

}


/*==================================
ANIMATIONS
==================================*/

.card,
.why-grid div,
.about,
.stat,
.testimonial,
.contact-card,
.faq-box{

opacity:0;
transform:translateY(40px);
transition:all .8s ease;

}

.show{

opacity:1;
transform:translateY(0);

}


/*==================================
FLOATING BUTTONS
==================================*/

.floating-whatsapp{

position:fixed;

right:25px;
bottom:25px;

width:65px;
height:65px;

border-radius:50%;

display:flex;
align-items:center;
justify-content:center;

background:#25D366;

color:#fff;

font-size:30px;

text-decoration:none;

box-shadow:0 10px 25px rgba(0,0,0,.25);

z-index:99999;

transition:.35s;

}

.floating-call{

position:fixed;

right:25px;
bottom:105px;

width:65px;
height:65px;

border-radius:50%;

display:flex;
align-items:center;
justify-content:center;

background:var(--primary);

color:#fff;

font-size:28px;

text-decoration:none;

box-shadow:0 10px 25px rgba(0,0,0,.25);

z-index:99999;

transition:.35s;

}

.floating-whatsapp:hover,
.floating-call:hover{

transform:scale(1.12);

}


/*==================================
RESPONSIVE
==================================*/

@media(max-width:992px){

nav,
.buttons{

display:none;

}

.hero-content{

grid-template-columns:1fr;
text-align:center;

}

.hero-right{

text-align:center;

}

.hero-right img{

max-width:560px;

margin:auto;

}

.hero-left h1{

font-size:48px;

}

.about{

grid-template-columns:1fr;

}

.about-content h2{

text-align:center;

}

.stats .container{

grid-template-columns:repeat(2,1fr);

}

.footer-grid{

grid-template-columns:1fr;

text-align:center;

}

.footer-logo{

margin:auto auto 20px;

}

}

@media(max-width:600px){

header{

height:80px;

}

.nav{

height:80px;

}

.brand img{

height:70px;

}

.hero{

margin-top:80px;

}

.hero-left h1{

font-size:34px;

}

.hero-left p{

font-size:18px;

}

.hero-buttons{

flex-direction:column;

}

.btn-primary,
.btn-whatsapp{

width:100%;
text-align:center;

}

.stats .container{

grid-template-columns:1fr;

}

section{

padding:50px 0;

}

.hero-right img{

max-width:100%;

}

.contact-grid{

grid-template-columns:1fr;

}

}