/* ==================================
   FILE: style.css
   MSR Tours And Travels
================================== */

/* RESET */
*{
margin:0;
padding:0;
box-sizing:border-box;
scroll-behavior:smooth;
}

body{
font-family:Arial, Helvetica, sans-serif;
background:#111;
color:#fff;
line-height:1.5;
overflow-x:hidden;
}

img{
max-width:100%;
display:block;
}

a{
text-decoration:none;
}

ul{
list-style:none;
}

/* CONTAINER */
.container{
max-width:1350px;
margin:auto;
padding:0 20px;
}

/* BUTTONS */
.btn{
display:inline-block;
padding:14px 26px;
border-radius:12px;
font-weight:700;
transition:.3s;
cursor:pointer;
border:none;
}

.btn-primary{
background:linear-gradient(45deg,#ff6600,#ff9900);
color:#fff;
box-shadow:0 10px 25px rgba(255,102,0,.25);
}

.btn-primary:hover{
transform:translateY(-3px);
}

.btn-dark{
background:#1d1d1d;
color:#fff;
border:1px solid #333;
}

.btn-dark:hover{
background:#222;
}

/* HERO */
.hero{
min-height:90vh;
display:flex;
align-items:center;
justify-content:center;
text-align:center;
padding:60px 20px;
background:
linear-gradient(rgba(0,0,0,.65),rgba(0,0,0,.65)),
url('images/taxi-bg.jpg') center/cover no-repeat;
}

.hero h1{
font-size:56px;
font-weight:800;
margin-bottom:15px;
}

.hero p{
font-size:18px;
max-width:800px;
margin:auto;
color:#ddd;
}

.hero-btns{
margin-top:25px;
display:flex;
gap:15px;
justify-content:center;
flex-wrap:wrap;
}

/* SECTION */
.section{
padding:70px 0;
}

.section-title{
font-size:38px;
text-align:center;
margin-bottom:35px;
color:#ff9900;
font-weight:800;
}

/* GRID */
.grid{
display:grid;
gap:22px;
}

.grid-2{
grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
}

.grid-3{
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
}

.grid-4{
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}

/* CARD */
.card{
background:#1a1a1a;
border:1px solid #262626;
border-radius:18px;
padding:22px;
transition:.35s;
box-shadow:0 12px 25px rgba(0,0,0,.18);
}

.card:hover{
transform:translateY(-8px);
border-color:#ff6600;
}

.card h3{
color:#ff9900;
margin-bottom:10px;
font-size:22px;
}

.card p{
color:#ccc;
font-size:15px;
}

/* FORM */
.form-box{
background:#fff;
color:#111;
padding:28px;
border-radius:20px;
box-shadow:0 20px 45px rgba(0,0,0,.25);
}

.form-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
gap:14px;
}

input,select,textarea{
width:100%;
padding:14px;
border:1px solid #ddd;
border-radius:12px;
font-size:15px;
outline:none;
}

input:focus,
select:focus,
textarea:focus{
border-color:#ff6600;
}

/* ROUTE BOX */
.route-box{
background:#151515;
padding:14px 16px;
border-radius:12px;
border:1px solid #222;
transition:.3s;
}

.route-box:hover{
border-color:#ff6600;
transform:translateY(-4px);
}

/* PRICE */
.price{
font-size:30px;
font-weight:800;
color:#25D366;
}

/* TABLE */
.table{
width:100%;
border-collapse:collapse;
overflow:hidden;
border-radius:14px;
}

.table th,
.table td{
padding:14px;
border-bottom:1px solid #2a2a2a;
text-align:left;
}

.table th{
background:#ff6600;
}

/* BADGE */
.badge{
display:inline-block;
padding:6px 12px;
border-radius:30px;
font-size:12px;
font-weight:700;
background:#25D366;
color:#fff;
}

/* FLOATING ANIMATION */
.float{
animation:float 3s ease-in-out infinite;
}

@keyframes float{
0%{transform:translateY(0)}
50%{transform:translateY(-8px)}
100%{transform:translateY(0)}
}

/* FADE IN */
.fade-up{
animation:fadeUp .8s ease both;
}

@keyframes fadeUp{
from{
opacity:0;
transform:translateY(35px);
}
to{
opacity:1;
transform:translateY(0);
}
}

/* RESPONSIVE */
@media(max-width:992px){

.hero h1{
font-size:42px;
}

.section-title{
font-size:32px;
}

}

@media(max-width:768px){

.hero{
min-height:75vh;
padding:40px 15px;
}

.hero h1{
font-size:32px;
}

.hero p{
font-size:16px;
}

.section{
padding:55px 0;
}

.section-title{
font-size:28px;
}

.form-box{
padding:20px;
}

.btn{
width:100%;
text-align:center;
}

.hero-btns{
flex-direction:column;
}

}

@media(max-width:480px){

.container{
padding:0 15px;
}

.hero h1{
font-size:28px;
}

.section-title{
font-size:24px;
}

.card{
padding:18px;
}

}
/* ==================================
   TARIFF + CONTACT PAGE EXTRA CSS
   Add in style.css
================================== */


/* ========= COMMON PAGE HERO ========= */
.page-hero{
padding:90px 20px;
text-align:center;
background:linear-gradient(135deg,#111,#1b1b1b,#000);
color:#fff;
}

.page-hero h1{
font-size:48px;
margin-bottom:15px;
font-weight:800;
color:#ff9900;
}

.page-hero p{
max-width:750px;
margin:auto;
font-size:18px;
color:#ddd;
line-height:1.7;
}

/* ========= TARIFF PAGE ========= */

.tariff-wrap{
padding:70px 0;
}

.tariff-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
gap:25px;
}

.tariff-card{
background:#161616;
padding:28px;
border-radius:18px;
text-align:center;
border:1px solid #262626;
transition:.35s;
box-shadow:0 15px 35px rgba(0,0,0,.20);
}

.tariff-card:hover{
transform:translateY(-8px);
border-color:#ff6600;
}

.tariff-card img{
width:100%;
height:150px;
object-fit:contain;
margin-bottom:15px;
}

.tariff-card h3{
font-size:26px;
margin-bottom:10px;
color:#ff9900;
}

.tariff-price{
font-size:34px;
font-weight:800;
color:#25D366;
margin:10px 0;
}

.tariff-card p{
color:#ccc;
margin-bottom:8px;
font-size:15px;
}

.tariff-note{
margin-top:40px;
background:#1a1a1a;
padding:22px;
border-left:4px solid #ff6600;
border-radius:12px;
color:#ddd;
line-height:1.8;
}

/* ========= ESTIMATE TABLE ========= */

.tariff-table-wrap{
margin-top:40px;
overflow-x:auto;
}

.tariff-table{
width:100%;
border-collapse:collapse;
min-width:700px;
}

.tariff-table th{
background:#ff6600;
padding:14px;
text-align:left;
color:#fff;
}

.tariff-table td{
padding:14px;
border-bottom:1px solid #2a2a2a;
background:#111;
color:#ddd;
}

.tariff-table tr:hover td{
background:#1a1a1a;
}

/* ========= CONTACT PAGE ========= */

.contact-wrap{
padding:70px 0;
}

.contact-grid{
display:grid;
grid-template-columns:1fr 1fr;
gap:30px;
}

.contact-box{
background:#161616;
padding:30px;
border-radius:20px;
border:1px solid #262626;
box-shadow:0 15px 35px rgba(0,0,0,.18);
}

.contact-box h2{
font-size:32px;
margin-bottom:20px;
color:#ff9900;
}

.contact-info{
margin-bottom:18px;
font-size:17px;
color:#ddd;
line-height:1.8;
}

.contact-info strong{
color:#fff;
}

.contact-form input,
.contact-form textarea,
.contact-form select{
width:100%;
padding:15px;
margin-bottom:15px;
border:none;
outline:none;
border-radius:12px;
background:#fff;
font-size:15px;
}

.contact-form textarea{
height:130px;
resize:none;
}

.contact-btn{
width:100%;
padding:15px;
font-size:18px;
font-weight:700;
border:none;
border-radius:12px;
background:linear-gradient(45deg,#ff6600,#ff9900);
color:#fff;
cursor:pointer;
transition:.3s;
}

.contact-btn:hover{
transform:translateY(-3px);
}

.map-box{
margin-top:20px;
border-radius:18px;
overflow:hidden;
}

/* ========= QUICK CONTACT BUTTONS ========= */

.quick-btns{
display:flex;
gap:15px;
margin-top:20px;
flex-wrap:wrap;
}

.quick-btns a{
flex:1;
min-width:150px;
text-align:center;
padding:14px;
border-radius:12px;
font-weight:700;
transition:.3s;
}

.call-now{
background:#ff6600;
color:#fff;
}

.whatsapp-now{
background:#25D366;
color:#fff;
}

.quick-btns a:hover{
transform:translateY(-4px);
}

/* ========= MOBILE ========= */

@media(max-width:992px){

.contact-grid{
grid-template-columns:1fr;
}

.page-hero h1{
font-size:38px;
}

}

@media(max-width:768px){

.page-hero{
padding:70px 15px;
}

.page-hero h1{
font-size:30px;
}

.page-hero p{
font-size:16px;
}

.tariff-card,
.contact-box{
padding:22px;
}

.tariff-price{
font-size:28px;
}

.contact-box h2{
font-size:26px;
}

.quick-btns{
flex-direction:column;
}

}

