
*{
margin:0;
padding:0;
box-sizing:border-box;
font-family:Poppins,sans-serif;
}

body{

background:#f7f8fc;
color:#333;
line-height:1.7;

}

/**********************
HEADER
**********************/

header{

position:sticky;
top:0;
z-index:999;
background:#fff;
box-shadow:0 5px 20px rgba(0,0,0,.08);

}

.container{

width:90%;
max-width:1250px;
margin:auto;

}

.navbar{

display:flex;
justify-content:space-between;
align-items:center;
padding:18px 0;

}

.logo img{

height:75px;

}

.whatsapp-btn{

background:linear-gradient(135deg,#25D366,#0AAE5D);
color:#fff;
padding:14px 28px;
border-radius:60px;
font-weight:600;
text-decoration:none;
display:flex;
align-items:center;
gap:10px;
font-size:18px;
transition:.3s;

}

.whatsapp-btn:hover{

transform:translateY(-3px);

box-shadow:0 10px 25px rgba(37,211,102,.35);

}

/**********************
HERO
**********************/

.hero{

background:linear-gradient(135deg,#4f2ca1,#5d4cc7,#00b8b8);
color:#fff;
padding:90px 0;

}

.hero-grid{

display:grid;
grid-template-columns:1fr 420px;
gap:60px;
align-items:center;

}

.badge{

display:inline-block;

background:rgba(255,255,255,.15);

padding:8px 18px;

border-radius:40px;

font-size:15px;

margin-bottom:20px;

}

.hero h1{

font-size:55px;

font-weight:800;

line-height:1.2;

margin-bottom:25px;

}

.hero p{

font-size:19px;

margin-bottom:30px;

opacity:.95;

}

.cta{

display:inline-block;

background:#FFD54F;

color:#222;

text-decoration:none;

padding:16px 34px;

font-weight:700;

border-radius:50px;

font-size:18px;

}

.info-card{

background:#fff;

padding:35px;

border-radius:20px;

color:#333;

box-shadow:0 20px 45px rgba(0,0,0,.15);

}

.info-card h3{

font-size:30px;

color:#4f2ca1;

margin-bottom:20px;

}

.info-card ul{

list-style:none;

}

.info-card li{

padding:10px 0;

border-bottom:1px solid #eee;

}

/**********************/

.section{

padding:80px 0;

}

.section-title{

text-align:center;

font-size:42px;

font-weight:800;

margin-bottom:20px;

color:#4f2ca1;

}

.section-sub{

text-align:center;

max-width:900px;

margin:auto;

font-size:18px;

margin-bottom:60px;

}

/**********************/

.features{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

}

.card{

background:#fff;

padding:35px;

border-radius:20px;

box-shadow:0 12px 35px rgba(0,0,0,.08);

transition:.3s;

}

.card:hover{

transform:translateY(-8px);

}

.card i{

font-size:40px;

color:#4f2ca1;

margin-bottom:20px;

}

.card h3{

margin-bottom:15px;

}

/**********************/

.about{

display:grid;

grid-template-columns:1fr 1fr;

gap:60px;

align-items:center;

}

.about-box{

background:#fff;

padding:40px;

border-radius:20px;

box-shadow:0 15px 35px rgba(0,0,0,.08);

}

/**********************/

.city-grid{

display:grid;

grid-template-columns:repeat(4,1fr);

gap:18px;

margin-top:35px;

}

.city{

background:linear-gradient(135deg,#4f2ca1,#00b8b8);

color:#fff;

padding:18px;

border-radius:12px;

text-align:center;

font-weight:600;

}

/**********************/

.footer{

background:#1b1b1b;

color:#fff;

padding:50px 20px;

text-align:center;

}

.footer img{

height:80px;

margin-bottom:20px;

}

.footer a{

color:#25D366;

text-decoration:none;

}

/**********************/

@media(max-width:991px){

.hero-grid,
.about{

grid-template-columns:1fr;

}

.features{

grid-template-columns:1fr;

}

.city-grid{

grid-template-columns:repeat(2,1fr);

}

.hero h1{

font-size:40px;

}

}

@media(max-width:600px){

.logo img{

height:58px;

}

.navbar{

flex-direction:column;

gap:15px;

}

.hero{

padding:60px 0;

}

.hero h1{

font-size:32px;

}

.hero p{

font-size:16px;

}

.section-title{

font-size:30px;

}

.city-grid{

grid-template-columns:1fr;

}

.whatsapp-btn{

font-size:15px;

padding:12px 20px;

}

}
.about-booking-section{

padding:80px 0;

}

.about-booking-grid{

display:grid;

grid-template-columns:1fr 1fr;

gap:40px;

align-items:stretch;

}

.about-card,
.booking-card{

background:#fff;

border-radius:25px;

padding:45px;

box-shadow:0 20px 50px rgba(0,0,0,.08);

display:flex;

flex-direction:column;

height:100%;

}

.section-tag{

display:inline-block;

padding:8px 20px;

background:#FFF3D5;

color:#d88900;

font-weight:700;

border-radius:40px;

margin-bottom:20px;

}

.about-card h2{

font-size:42px;

margin-bottom:20px;

color:#222;

}

.about-card h2 span{

color:#4F2CA1;

}

.about-card p{

font-size:17px;

color:#666;

margin-bottom:18px;

}

.about-list{

display:grid;

grid-template-columns:repeat(2,1fr);

gap:18px;

margin:30px 0;

}

.about-list div{

display:flex;

align-items:center;

gap:10px;

font-weight:600;

}

.about-list i{

color:#00B894;

font-size:18px;

}

.experience-box{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:20px;

margin-top:auto;

}

.experience-box div{

background:linear-gradient(135deg,#4F2CA1,#00B8B8);

padding:25px 10px;

border-radius:15px;

text-align:center;

color:#fff;

}

.experience-box h3{

font-size:34px;

margin-bottom:5px;

}

.booking-card{

justify-content:center;

}

@media(max-width:991px){

.about-booking-grid{

grid-template-columns:1fr;

}

.about-list{

grid-template-columns:1fr;

}

.experience-box{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:576px){

.about-card,
.booking-card{

padding:28px;

}

.about-card h2{

font-size:30px;

}

.experience-box{

grid-template-columns:1fr;

}

}


/*=========================
Booking Form
=========================*/

.booking-section{

padding:80px 20px;

display:flex;

justify-content:center;

}

.booking-card{

width:100%;
max-width:520px;

background:#fff;

padding:45px;

border-radius:25px;

box-shadow:0 25px 60px rgba(0,0,0,.12);

position:relative;

overflow:hidden;

}

.booking-card::before{

content:'';

position:absolute;

top:0;
left:0;

width:100%;
height:6px;

background:linear-gradient(90deg,#4F2CA1,#00B8B8,#FFD54F);

}

.form-badge{

display:inline-block;

background:linear-gradient(135deg,#FFD54F,#FFA500);

color:#111;

padding:10px 22px;

border-radius:50px;

font-weight:700;

font-size:14px;

margin-bottom:25px;

}

.booking-card h2{

font-size:32px;

color:#4F2CA1;

margin-bottom:10px;

}

.booking-card p{

color:#666;

margin-bottom:35px;

}

.form-group{

position:relative;

margin-bottom:20px;

}

.form-group i{

position:absolute;

left:18px;

top:50%;

transform:translateY(-50%);

color:#4F2CA1;

font-size:18px;

}

.form-group input,
.form-group select{

width:100%;

padding:16px 18px 16px 52px;

border:2px solid #e5e5e5;

border-radius:12px;

font-size:16px;

outline:none;

transition:.3s;

background:#fff;

}

.form-group input:focus,
.form-group select:focus{

border-color:#4F2CA1;

box-shadow:0 0 0 4px rgba(79,44,161,.12);

}

.submit-btn{

width:100%;

padding:18px;

border:none;

border-radius:12px;

background:linear-gradient(135deg,#4F2CA1,#00B8B8);

color:#fff;

font-size:18px;

font-weight:700;

cursor:pointer;

transition:.3s;

margin-top:10px;

}

.submit-btn:hover{

transform:translateY(-3px);

box-shadow:0 18px 35px rgba(79,44,161,.28);

}

.payment-btn{

margin-top:20px;

display:flex;

justify-content:center;

align-items:center;

gap:10px;

text-decoration:none;

padding:18px;

border-radius:12px;

background:#25D366;

color:#fff;

font-weight:700;

font-size:17px;

transition:.3s;

}

.payment-btn:hover{

background:#1da851;

transform:translateY(-3px);

}

.payment-btn i{

font-size:24px;

}

/**************************
Mobile
**************************/

@media(max-width:768px){

.booking-card{

padding:30px 22px;

}

.booking-card h2{

font-size:26px;

}

.submit-btn,
.payment-btn{

font-size:16px;

padding:16px;

}

}