@media (max-width:768px){

.booking-progress{
    padding:15px 0;
}

.booking-progress ul{
    display:flex;
    flex-wrap:nowrap;
    justify-content:flex-start;
    overflow-x:auto;
    gap:12px;
    padding:0 10px;
    scrollbar-width:none;
}

.booking-progress ul::-webkit-scrollbar{
    display:none;
}

.booking-progress li{
    flex:0 0 auto;
    min-width:58px;
    text-align:center;
    font-size:11px;
    font-weight:600;
    color:#64748B;
}

.booking-progress li span{
    width:34px;
    height:34px;
    margin:0 auto 6px;
    font-size:14px;
}

.booking-progress li.active span{
    background:#2563EB;
    color:#fff;
}

.booking-progress li.completed span{
    background:#22C55E;
    color:#fff;
}

}












.booking-action{
    display:flex;
    gap:12px;
    margin-top:30px;
}

.booking-action .btn{
    flex:1;
    height:54px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    font-size:17px;
    font-weight:600;
}

.booking-info{
    display:flex;
    align-items:flex-start;
    gap:10px;
    padding:15px;
    background:#EFF6FF;
    border-left:4px solid #2563EB;
    border-radius:12px;
    font-size:15px;
}

.booking-info i{
    color:#2563EB;
    margin-top:3px;
}

.booking-action .btn-back{
    width:58px;
    height:58px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#2563EB;
    color:#fff;
    padding:0;
    flex-shrink:0;
}

.booking-action .btn-back i{
    font-size:20px;
}

.booking-action .btn-booking{
    height:58px;
    border-radius:18px;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:10px;
    background:#2563EB;
    color:#fff;
    font-weight:700;
    font-size:18px;
    flex:1;
}

.booking-action .btn-booking:hover{
    background:#1D4ED8;
    color:#fff;
}

@media(max-width:576px){

.booking-action{
    gap:10px;
}

.booking-action .btn-back{
    width:52px;
    height:52px;
}

.booking-action .btn-booking{
    height:52px;
    font-size:16px;
}

}




.btn-back{

background:#2563eb;

color:#fff;

}

.btn-back i{

color:#fff;

}

.btn-booking{

height:56px;

border-radius:14px;

font-size:18px;

font-weight:600;

}


.contact-card{

background:#fff;

padding:40px;

border-radius:20px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

height:100%;

}

.contact-item{

display:flex;

gap:20px;

margin-bottom:30px;

align-items:flex-start;

}

.contact-item i{

width:55px;

height:55px;

background:#2563eb;

color:#fff;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:20px;

flex-shrink:0;

}

.contact-item h5{

margin-bottom:8px;

font-weight:700;

}

.support-box{

background:linear-gradient(135deg,#0d47a1,#2563eb);

color:#fff;

padding:60px;

border-radius:20px;

text-align:center;

}

.support-box .btn-success{

padding:14px 35px;

border-radius:50px;

}


.page-hero{
    background:linear-gradient(135deg,#0d47a1,#2563eb);
    color:#fff;
    padding:80px 0;
}

.hero-tag{
    display:inline-block;
    padding:8px 18px;
    background:rgba(255,255,255,.15);
    border-radius:50px;
    font-size:13px;
    letter-spacing:1px;
    text-transform:uppercase;
    margin-bottom:15px;
}

.legal-card{
    background:#fff;
    border-radius:18px;
    padding:40px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.legal-card h3{
    margin-top:35px;
    color:#0d47a1;
    font-weight:700;
}

.legal-card ul{
    padding-left:20px;
}

.legal-card li{
    margin-bottom:10px;
}

.contact-box{
    background:#f8f9fa;
    border-left:4px solid #2563eb;
    padding:20px;
    border-radius:10px;
}

/*==================================
TRACK BOOKING
==================================*/

.booking-card{

background:#fff;

padding:40px;

border-radius:20px;

box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.booking-card h2{

font-size:32px;

font-weight:700;

margin-bottom:10px;

}

.booking-card p{

color:#6b7280;

margin-bottom:30px;

}

.form-control-lg{

height:58px;

border-radius:12px;

}

.form-control:focus{

box-shadow:none;

border-color:#2563EB;

}



.btn-booking:hover{

background:#1D4ED8;

color:#fff;

}





























































































































































.upload-box{

    border:2px dashed #CBD5E1;

    border-radius:18px;

    padding:25px;

    background:#F8FAFC;

    text-align:center;

    transition:.3s;

}

.upload-box:hover{

    border-color:#2563EB;

    background:#EFF6FF;

}

.upload-box input{

    margin-bottom:10px;

}

#preview{

    border-radius:16px;

    border:1px solid #E2E8F0;

    box-shadow:0 10px 25px rgba(0,0,0,.08);

}

/*==================================
THANK YOU
==================================*/

.thankyou-section{

padding:80px 0;

background:#F8FAFC;

}

.thankyou-card{

background:#fff;

padding:50px;

border-radius:25px;

text-align:center;

box-shadow:0 15px 40px rgba(0,0,0,.08);

}

.success-icon{

width:110px;

height:110px;

margin:auto;

border-radius:50%;

background:#22C55E;

display:flex;

align-items:center;

justify-content:center;

font-size:55px;

color:#fff;

margin-bottom:30px;

}

.booking-number{

background:#EFF6FF;

padding:25px;

border-radius:18px;

margin:35px 0;

}

.booking-number h2{

font-size:34px;

font-weight:800;

color:#2563EB;

margin-top:10px;

}

.status-badge{

margin-top:20px;

}

.step-box{

background:#fff;

padding:30px;

border-radius:20px;

box-shadow:0 10px 25px rgba(0,0,0,.08);

height:100%;

transition:.3s;

}

.step-box:hover{

transform:translateY(-8px);

}

.step-icon{

width:70px;

height:70px;

margin:auto;

margin-bottom:20px;

background:#EFF6FF;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-size:28px;

color:#2563EB;

}

.payment-price-box{

background:linear-gradient(135deg,#2563EB,#1D4ED8);

padding:30px;

border-radius:20px;

text-align:center;

color:#fff;

margin-bottom:30px;

}

.payment-price-box h1{

font-size:52px;

font-weight:800;

margin:10px 0;

}

.qr-wrapper{

background:#fff;

padding:25px;

border-radius:20px;

border:2px dashed #CBD5E1;

text-align:center;

margin-bottom:30px;

}

.payment-qr{

width:260px;

max-width:100%;

}

.upi-card{

margin-bottom:30px;

}

.btn-copy{

background:#2563EB;

color:#fff;

border:none;

padding:0 22px;

border-radius:12px;

font-weight:600;

margin-left:10px;

}

.btn-copy:hover{

background:#1D4ED8;

}

/*==========================================
PAYMENT PAGE
==========================================*/

.payment-card{

    background:#ffffff;

    border-radius:24px;

    padding:40px;

    box-shadow:0 20px 60px rgba(15,23,42,.08);

}

.payment-card h2{

    font-size:32px;

    font-weight:700;

    margin-bottom:10px;

}

.payment-card p{

    color:#64748b;

    margin-bottom:30px;

}
.payment-price{

    width:220px;

    margin:0 auto 35px;

    padding:20px;

    border-radius:20px;

    text-align:center;

    background:linear-gradient(135deg,#2563EB,#1D4ED8);

    color:#fff;

    font-size:42px;

    font-weight:800;

    box-shadow:0 15px 40px rgba(37,99,235,.30);

}

.qr-box{

    background:#fff;

    border:2px dashed #CBD5E1;

    border-radius:20px;

    padding:25px;

    text-align:center;

    margin-bottom:30px;

}

.qr-box img{

    width:240px;

    max-width:100%;

}

.upi-card{

    margin-bottom:30px;

}

.upi-card label{

    display:block;

    margin-bottom:10px;

    font-weight:600;

}

.upi-box{

    display:flex;

    gap:10px;

}

.upi-box input{

    flex:1;

    height:55px;

    border-radius:12px;

    border:1px solid #CBD5E1;

    padding:0 15px;

}

.btn-copy{

    min-width:100px;

    border:none;

    border-radius:12px;

    background:#2563EB;

    color:#fff;

    font-weight:600;

    transition:.3s;

}

.btn-copy:hover{

    background:#1D4ED8;

}

.payment-info{

    background:#EFF6FF;

    border-left:4px solid #2563EB;

    border-radius:16px;

    padding:25px;

    margin:30px 0;

}

.payment-info h4{

    margin-bottom:15px;

}

.payment-info ul{

    margin:0;

    padding-left:20px;

}

.payment-info li{

    margin-bottom:10px;

}

@media(max-width:991px){

.payment-card{

padding:25px;

}

.payment-price{

font-size:34px;

width:180px;

}

.qr-box img{

width:180px;

}

.upi-box{

flex-direction:column;

}

.btn-copy{

width:100%;

margin-top:10px;

}

}

/*======================================
BOOKING HERO
======================================*/

.booking-hero{

    position:relative;

    padding:90px 0;

    background:linear-gradient(135deg,#0F172A,#1D4ED8);

    color:#fff;

    overflow:hidden;

}

.booking-hero::before{

    content:"";

    position:absolute;

    inset:0;

    background:
    radial-gradient(circle at top right,#3B82F655 0%,transparent 35%),
    radial-gradient(circle at bottom left,#06B6D455 0%,transparent 35%);

}

.booking-hero .container{

    position:relative;

    z-index:2;

}

.booking-badge{

    display:inline-block;

    background:rgba(255,255,255,.12);

    border:1px solid rgba(255,255,255,.15);

    padding:10px 24px;

    border-radius:50px;

    font-weight:600;

    margin-bottom:25px;

}

.booking-hero h1{

    font-size:58px;

    font-weight:800;

    margin-bottom:20px;

}

.booking-hero p{

    font-size:18px;

    color:#dbeafe;

}

/*======================================
PROGRESS
======================================*/

.booking-progress{

    background:#fff;

    padding:35px 0;

    border-bottom:1px solid #edf2f7;

}

.booking-progress ul{

    display:flex;

    justify-content:space-between;

    list-style:none;

    padding:0;

    margin:0;

}

.booking-progress li{

    flex:1;

    text-align:center;

    color:#94A3B8;

    position:relative;

    font-weight:600;

}

.booking-progress li span{

    width:52px;

    height:52px;

    display:flex;

    align-items:center;

    justify-content:center;

    margin:auto;

    margin-bottom:12px;

    border-radius:50%;

    background:#E2E8F0;

    font-size:18px;

    font-weight:700;

}

.booking-progress li.active{

    color:#2563EB;

}

.booking-progress li.active span{

    background:#2563EB;

    color:#fff;

}

.booking-progress li.completed{

    color:#16A34A;

}

.booking-progress li.completed span{

    background:#16A34A;

    color:#fff;

}

/*======================================
LAYOUT
======================================*/

.booking-wrapper{

    padding:80px 0;

    background:#f8fafc;

}

.booking-card{

    background:#fff;

    padding:45px;

    border-radius:28px;

    box-shadow:0 20px 60px rgba(15,23,42,.08);

}

.booking-card h3{

    font-size:34px;

    font-weight:700;

    margin-bottom:10px;

}

.booking-card p{

    color:#64748b;

    margin-bottom:35px;

}


/*======================================
FORM
======================================*/

.booking-card label{

    font-weight:600;

    margin-bottom:10px;

    color:#0f172a;

}

.form-control,

.form-select{

    height:58px;

    border-radius:16px;

    border:1px solid #CBD5E1;

    font-size:15px;

    transition:.35s;

}

.form-control:focus,

.form-select:focus{

    border-color:#2563EB;

    box-shadow:0 0 0 .2rem rgba(37,99,235,.15);

}

/*======================================
SUMMARY
======================================*/

.summary-card{

    background:#fff;

    border-radius:28px;

    padding:35px;

    box-shadow:0 20px 60px rgba(15,23,42,.08);

    position:sticky;

    top:110px;

}

.summary-card h3{

    margin-bottom:30px;

    font-size:28px;

    font-weight:700;

}

.summary-item{

    display:flex;

    justify-content:space-between;

    margin-bottom:18px;

    padding-bottom:18px;

    border-bottom:1px solid #edf2f7;

}

.summary-item span{

    color:#64748b;

}

.summary-item strong{

    color:#0f172a;

}

.summary-item.total strong{

    font-size:34px;

    color:#2563EB;

}

.payment-preview{

    margin-top:30px;

    background:#eff6ff;

    border-radius:20px;

    padding:25px;

    text-align:center;

}

.payment-preview h5{

    margin-bottom:10px;

}

.payment-preview .amount{

    font-size:42px;

    color:#2563EB;

    font-weight:800;

}

.secure-box{

    margin-top:15px;

    background:#F8FAFC;

    border-radius:14px;

    padding:15px;

    font-weight:600;

}

.secure-box i{

    color:#22C55E;

    margin-right:10px;

}



.btn-booking:hover{

    background:#1D4ED8;

    color:#fff;

    transform:translateY(-3px);

    box-shadow:0 15px 35px rgba(37,99,235,.30);

}

@media(max-width:991px){

.booking-hero{

padding:70px 0;

}

.booking-hero h1{

font-size:42px;

}

.booking-progress ul{

    display:flex;

    flex-wrap:nowrap;

    overflow-x:auto;

    gap:20px;

    padding:0;

    margin:0;

    list-style:none;

    scrollbar-width:none;

}

.booking-progress li{
    flex:0 0 auto;
    min-width:55px;
}

.summary-card{

position:relative;

top:0;

margin-top:30px;

}

.booking-card{

padding:30px;

}

}

@media(max-width:576px){

.booking-hero h1{

font-size:34px;

}


.summary-item{

flex-direction:column;

gap:8px;

}

.payment-preview .amount{

font-size:34px;

}



}


.booking-section{

    padding:0px 0;

}




.price{

    font-size:42px;

    color:#2563EB;

    font-weight:800;

}



.btn-next{
    background:#2563eb;
    color:#fff;
}


.summary-card{
    position:sticky;
    top:100px;
}
.btn-back:hover{

    background:#1D4ED8;

    color:#fff;

}

.booking-hero{

    padding:70px 0 50px;

}
/*=====================================
Quick Services
======================================*/

.quick-services{

padding:90px 0;

background:#f8fafc;

}

.section-badge{

display:inline-block;

padding:10px 22px;

background:#dbeafe;

color:#2563eb;

border-radius:50px;

font-weight:600;

}

.service-card{

display:block;

background:#fff;

padding:35px;

border-radius:24px;

text-decoration:none;

transition:.35s;

height:100%;

box-shadow:0 15px 40px rgba(15,23,42,.08);

}

.service-card:hover{

transform:translateY(-10px);

text-decoration:none;

}

.service-icon{

width:75px;

height:75px;

border-radius:18px;

display:flex;

align-items:center;

justify-content:center;

font-size:30px;

margin-bottom:25px;

color:#fff;

}

.service-blue .service-icon{

background:#2563eb;

}

.service-orange .service-icon{

background:#ea580c;

}

.service-purple .service-icon{

background:#7c3aed;

}

.service-cyan .service-icon{

background:#0891b2;

}

.service-card h4{

font-size:24px;

font-weight:700;

margin-bottom:15px;

color:#0f172a;

}

.service-card p{

color:#64748b;

margin-bottom:25px;

line-height:28px;

}

.service-card span{

font-weight:700;

color:#2563eb;

display:flex;

align-items:center;

gap:10px;

}

/*=====================================
Trust Strip
======================================*/

.trust-strip{

padding:70px 0;

background:#0f172a;

}

.trust-item{

text-align:center;

color:#fff;

}

.trust-item h3{

font-size:42px;

font-weight:800;

color:#38bdf8;

margin-bottom:10px;

}

.trust-item p{

margin:0;

opacity:.85;

}

/*==================================
WHY SECTION
==================================*/

.why-section{

padding:100px 0;

background:#ffffff;

}

.section-tag{

display:inline-block;

padding:8px 18px;

background:#e0f2fe;

color:#0284c7;

border-radius:50px;

font-weight:600;

margin-bottom:15px;

}

.section-title{

font-size:42px;

font-weight:800;

color:#0f172a;

}

.section-desc{

font-size:18px;

color:#64748b;

line-height:32px;

}

.why-card{

padding:35px;

background:#fff;

border-radius:24px;

box-shadow:0 20px 45px rgba(15,23,42,.08);

height:100%;

transition:.35s;

}

.why-card:hover{

transform:translateY(-10px);

}

.why-icon{

width:70px;

height:70px;

border-radius:18px;

display:flex;

justify-content:center;

align-items:center;

color:#fff;

font-size:28px;

margin-bottom:25px;

}

/*==================================
PROCESS
==================================*/

.process-section{

padding:100px 0;

background:#f8fafc;

}

.process-card{

position:relative;

background:#fff;

padding:40px 30px;

border-radius:24px;

box-shadow:0 20px 45px rgba(15,23,42,.08);

text-align:center;

height:100%;

}

.step-number{

position:absolute;

top:20px;

right:20px;

width:42px;

height:42px;

background:#2563eb;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

color:#fff;

font-weight:bold;

}

.process-card i{

font-size:38px;

color:#2563eb;

margin-bottom:25px;

}

.process-card h4{

font-size:22px;

font-weight:700;

margin-bottom:15px;

}

.process-card p{

color:#64748b;

line-height:28px;

}
/*==============================

Testimonials

==============================*/

.testimonial-section{

padding:110px 0;

background:#fff;

}

.testimonial-card{

background:#fff;

padding:35px;

border-radius:24px;

box-shadow:0 20px 50px rgba(15,23,42,.08);

height:100%;

transition:.35s;

}

.testimonial-card:hover{

transform:translateY(-8px);

}

.rating{

font-size:22px;

color:#f59e0b;

margin-bottom:20px;

}

.client{

display:flex;

align-items:center;

margin-top:25px;

gap:15px;

}

.avatar{

width:55px;

height:55px;

background:#2563eb;

border-radius:50%;

display:flex;

align-items:center;

justify-content:center;

font-weight:bold;

color:#fff;

}


/*==============================

CTA

==============================*/

.cta-section{

padding:100px 0;

background:#f8fafc;

}

.cta-box{

padding:60px;

border-radius:30px;

background:linear-gradient(135deg,#2563eb,#1d4ed8);

color:#fff;

}


/*==============================

FAQ

==============================*/

.faq-section{

padding:100px 0;

}

.accordion-item{

border:none;

margin-bottom:18px;

border-radius:18px;

overflow:hidden;

box-shadow:0 15px 40px rgba(0,0,0,.06);

}

.accordion-button{

padding:22px;

font-weight:600;

}

.accordion-button:not(.collapsed){

background:#2563eb;

color:#fff;

}

/*=========================
HEADER
=========================*/

.main-header{

position:sticky;

top:0;

left:0;

width:100%;

background:#fff;

z-index:9999;

box-shadow:0 8px 30px rgba(15,23,42,.08);

}

/*=========================
TOP BAR
=========================*/

.top-bar{

background:#0F172A;

padding:10px 0;

font-size:14px;

color:#fff;

}

.top-left{

display:flex;

align-items:center;

gap:10px;

font-weight:500;

}

.top-left i{

color:#38bdf8;

}

.top-right{

display:flex;

justify-content:flex-end;

gap:25px;

}

.top-right a{

color:#fff;

text-decoration:none;

transition:.3s;

font-weight:500;

}

.top-right a:hover{

color:#38bdf8;

}

/*=========================
NAVBAR
=========================*/

.navbar{

padding:18px 0;

background:#fff;

}

.logo{

height:55px;

}

.navbar-nav{

gap:10px;

}

.nav-link{

font-size:16px;

font-weight:600;

color:#0f172a;

padding:10px 18px !important;

transition:.3s;

}

.nav-link:hover,

.nav-link.active{

color:#2563eb;

}

.btn-book{

background:#2563eb;

color:#fff;

padding:13px 30px;

border-radius:50px;

font-weight:700;

transition:.3s;

}

.btn-book:hover{

background:#1d4ed8;

color:#fff;

transform:translateY(-2px);

box-shadow:0 15px 35px rgba(37,99,235,.30);

}

/*=========================
MOBILE
=========================*/

@media(max-width:991px){

.top-bar{

display:none;

}

.logo{

height:45px;

}

.navbar{

padding:12px 0;

}

.navbar-nav{

padding-top:20px;

}

.nav-link{

padding:14px 0 !important;

}

.btn-book{

width:100%;

margin-top:15px;

text-align:center;

}

}

/*==================================
HERO SECTION
==================================*/

.hero-section{

    position: relative;

    overflow: hidden;

    background: linear-gradient(135deg,#0F172A 0%,#1E3A8A 100%);

    padding:120px 0;

    color:#fff;

}

/* Background Glow */

.hero-bg{

    position:absolute;

    inset:0;

    background:
        radial-gradient(circle at top right,#3B82F655 0%,transparent 40%),
        radial-gradient(circle at bottom left,#06B6D455 0%,transparent 35%);

    pointer-events:none;

}

/* Content */

.hero-section .container{

    position:relative;

    z-index:2;

}

/* Badge */

.hero-badge{

    display:inline-flex;

    align-items:center;

    gap:10px;

    padding:10px 22px;

    border-radius:50px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.15);

    backdrop-filter:blur(10px);

    font-size:14px;

    font-weight:600;

    margin-bottom:25px;

}

.hero-badge i{

    color:#22C55E;

}

/* Heading */

.hero-section h1{

    font-size:62px;

    font-weight:800;

    line-height:1.1;

    margin-bottom:25px;

    color:#fff;

}

.hero-section h1 span{

    color:#60A5FA;

}

/* Paragraph */

.hero-section p{

    font-size:18px;

    line-height:32px;

    color:#CBD5E1;

    margin-bottom:35px;

}

/* Features */

.hero-list{

    display:flex;

    flex-wrap:wrap;

    gap:18px;

}

.hero-list div{

    display:flex;

    align-items:center;

    gap:10px;

    background:rgba(255,255,255,.08);

    border:1px solid rgba(255,255,255,.12);

    border-radius:50px;

    padding:12px 20px;

    font-weight:600;

}

.hero-list i{

    color:#22C55E;

}

/*==================================
BOOKING CARD
==================================*/

.booking-card{

    background:#fff;

    border-radius:24px;

    padding:40px;

    box-shadow:0 30px 70px rgba(15,23,42,.18);

}

.booking-card h3{

    font-size:30px;

    font-weight:700;

    color:#0F172A;

    margin-bottom:30px;

}

.booking-card label{

    display:block;

    font-size:15px;

    font-weight:600;

    color:#334155;

    margin-bottom:8px;

}

.booking-card .form-select{

    height:58px;

    border-radius:14px;

    border:1px solid #CBD5E1;

    box-shadow:none;

    font-size:15px;

}

.booking-card .form-select:focus{

    border-color:#2563EB;

    box-shadow:0 0 0 .2rem rgba(37,99,235,.15);

}

/* Button */

.booking-card .btn{

    height:58px;

    border-radius:14px;

    background:#2563EB;

    border:none;

    font-size:17px;

    font-weight:700;

    transition:.3s;

}

.booking-card .btn:hover{

    background:#1D4ED8;

    transform:translateY(-2px);

    box-shadow:0 15px 35px rgba(37,99,235,.30);

}

/*==================================
Responsive
==================================*/

@media(max-width:991px){

.hero-section{

padding:80px 0;

text-align:center;

}

.hero-section h1{

font-size:42px;

}

.hero-list{

justify-content:center;

margin-bottom:40px;

}

.booking-card{

margin-top:40px;

padding:30px;

}

}

@media(max-width:576px){

.hero-section h1{

font-size:34px;

}

.hero-section p{

font-size:16px;

line-height:28px;

}

.hero-list{

flex-direction:column;

gap:12px;

}

.hero-list div{

justify-content:center;

}

.booking-card{

padding:25px;

}

}

/*====================================

FOOTER

====================================*/

.footer{

background:#0F172A;

padding:90px 0 30px;

color:#CBD5E1;

}

.footer-logo{

height:60px;

margin-bottom:25px;

}

.footer-about{

line-height:30px;

margin-bottom:30px;

}

.footer h4{

color:#fff;

font-size:22px;

margin-bottom:25px;

font-weight:700;

}

.footer ul{

padding:0;

margin:0;

list-style:none;

}

.footer ul li{

margin-bottom:15px;

}

.footer ul li a{

color:#CBD5E1;

text-decoration:none;

transition:.3s;

}

.footer ul li a:hover{

color:#38BDF8;

padding-left:5px;

}

.contact-list li{

display:flex;

gap:12px;

align-items:flex-start;

}

.contact-list i{

color:#38BDF8;

margin-top:4px;

}

.footer-social{

display:flex;

gap:12px;

}

.footer-social a{

width:42px;

height:42px;

background:rgba(255,255,255,.08);

border-radius:50%;

display:flex;

justify-content:center;

align-items:center;

color:#fff;

text-decoration:none;

transition:.3s;

}

.footer-social a:hover{

background:#2563EB;

transform:translateY(-5px);

}

.footer-btn{

display:inline-block;

margin-top:25px;

background:#2563EB;

color:#fff;

padding:14px 30px;

border-radius:50px;

font-weight:700;

text-decoration:none;

transition:.3s;

}

.footer-btn:hover{

background:#1D4ED8;

color:#fff;

}

.footer hr{

border-color:rgba(255,255,255,.12);

margin:50px 0 30px;

}

.footer-bottom{

display:flex;

justify-content:space-between;

align-items:center;

flex-wrap:wrap;

gap:20px;

font-size:15px;

}

.footer-bottom a{

color:#CBD5E1;

text-decoration:none;

margin-left:25px;

}

.footer-bottom a:hover{

color:#38BDF8;

}

@media(max-width:991px){

.footer{

text-align:center;

}

.footer-social{

justify-content:center;

}

.contact-list li{

justify-content:center;

}

.footer-bottom{

justify-content:center;

text-align:center;

}

.footer-bottom a{

margin:0 10px;

}

}

/*==================================

PAGE HERO

==================================*/

.page-hero{

padding:90px 0;

background:linear-gradient(135deg,#0F172A,#1E3A8A);

color:#fff;

text-align:center;

}

.page-hero h1{

font-size:54px;

font-weight:800;

margin:20px 0;

}

/*==================================

Progress

==================================*/

.booking-progress{

padding:40px 0;

background:#fff;

}

.booking-progress ul::-webkit-scrollbar{

    display:none;

}

.booking-progress ul{

display:flex;

justify-content:space-between;

list-style:none;

padding:0;

margin:0;

}

.booking-progress li{

    min-width:80px;

    text-align:center;

    flex-shrink:0;

}






@media(max-width:768px){

.btn-group-mobile{

display:flex;

flex-direction:column-reverse;

gap:15px;

}

.btn-group-mobile .btn{

width:100%;

}

}

@media(max-width:768px){

.booking-card{

padding:24px;

}

}

.booking-progress li span{

width:45px;

height:45px;

display:flex;

align-items:center;

justify-content:center;

margin:auto;

margin-bottom:12px;

background:#E2E8F0;

border-radius:50%;

}

.booking-progress li.active{

color:#2563EB;

}

.booking-progress li.active span{

background:#2563EB;

color:#fff;

}

/*==================================

Form

==================================*/

.booking-form-section{

padding:80px 0;

background:#F8FAFC;

}

.form-box{

background:#fff;

padding:50px;

border-radius:30px;

box-shadow:0 25px 60px rgba(15,23,42,.08);

}

.form-box h3{

margin-bottom:40px;

font-size:34px;

font-weight:700;

}

.form-control,

.form-select{

height:58px;

border-radius:14px;

}

.form-control:focus,

.form-select:focus{

border-color:#2563EB;

box-shadow:0 0 0 .2rem rgba(37,99,235,.15);

}

/* Mobile Booking Progress */

@media (max-width:768px){

.booking-progress{
    padding:12px 0;
}

.booking-progress ul{
    display:flex !important;
    flex-wrap:nowrap !important;
    overflow-x:auto;
    overflow-y:hidden;
    gap:10px;
    justify-content:flex-start;
    padding:0 12px;
    scrollbar-width:none;
}

.booking-progress ul::-webkit-scrollbar{
    display:none;
}

.booking-progress li{
    flex:0 0 auto !important;
    min-width:52px;
    text-align:center;
}

.booking-progress li span{
    width:32px;
    height:32px;
    font-size:13px;
    margin:0 auto 5px;
}

.booking-progress li{
    font-size:10px;
    font-weight:600;
    line-height:1.2;
}

}