.elementor-23854 .elementor-element.elementor-element-2ad658b{--display:flex;overflow:visible;}/* Start custom CSS for html, class: .elementor-element-a9b6e8d *//* ===========================
   LUXURY BOOKING FORM CSS
=========================== */

:root{
    --gold:#D4AF37;
    --gold-hover:#e5c04c;
    --dark:#0F172A;
    --card:#1E293B;
    --input:#111827;
    --border:#334155;
    --text:#ffffff;
    --muted:#cbd5e1;
    --radius:16px;
    --transition:.35s ease;
}

*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:'Poppins',sans-serif;
    background:#09111d;
    color:#fff;
}

.booking-section{
    width:100%;
    padding:70px 20px;
    background:linear-gradient(rgba(0,0,0,.75),rgba(0,0,0,.75)),
    url("https://images.unsplash.com/photo-1503376780353-7e6692767b70?w=1800");
    background-size:cover;
    background-position:center;
}

.booking-container{
    max-width:1300px;
    margin:auto;
    background:#101826;
    border-radius:25px;
    overflow:hidden;
    box-shadow:0 30px 80px rgba(0,0,0,.45);
}

.booking-header{
    text-align:center;
    padding:60px;
    background:#0b1220;
}

.booking-badge{
    display:inline-block;
    background:var(--gold);
    color:#111;
    padding:10px 22px;
    border-radius:30px;
    font-weight:600;
    margin-bottom:20px;
}

.booking-header h1{
    font-size:42px;
    margin-bottom:15px;
}

.booking-header p{
    color:#d5d5d5;
}

#bookingForm{
    padding:45px;
}

.booking-step h2{
    margin-bottom:25px;
    font-size:30px;
}

/* ROW */

.row{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:25px;
    margin-bottom:25px;
}

.form-group{
    display:flex;
    flex-direction:column;
}

.form-group label{
    margin-bottom:10px;
    font-weight:600;
}

.form-group input,
.form-group textarea,
.form-group select{

    width:100%;
    padding:16px;
    border-radius:12px;
    background:var(--input);
    border:1px solid var(--border);
    color:#fff;
    font-size:15px;
    transition:var(--transition);

}

.form-group input:focus,
.form-group textarea:focus,
.form-group select:focus{

    outline:none;
    border-color:var(--gold);
    box-shadow:0 0 18px rgba(212,175,55,.25);

}

/* TRIP */

.trip-type{

display:grid;
grid-template-columns:repeat(3,1fr);
gap:18px;
margin-bottom:35px;

}

.trip-type label{

cursor:pointer;

}

.trip-type input{

display:none;

}

.trip-type span{

display:flex;
align-items:center;
justify-content:center;
gap:10px;

padding:18px;

background:#1b2535;

border-radius:15px;

border:2px solid transparent;

transition:.3s;

font-weight:600;

}

.trip-type span:hover{

border-color:var(--gold);

}

.trip-type input:checked+span{

background:var(--gold);
color:#111;

}

/* VEHICLES */

.vehicle-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:25px;

}

.vehicle-card{

background:var(--card);

border-radius:20px;

overflow:hidden;

transition:.4s;

border:1px solid rgba(255,255,255,.08);

}

.vehicle-card:hover{

transform:translateY(-8px);

border-color:var(--gold);

}

.vehicle-image{

height:220px;

overflow:hidden;

}

.vehicle-image img{

width:100%;
height:100%;
object-fit:cover;
transition:.5s;

}

.vehicle-card:hover img{

transform:scale(1.08);

}

.vehicle-content{

padding:25px;

}

.vehicle-content h3{

font-size:24px;

margin-bottom:8px;

}

.vehicle-content p{

color:#bfc8d6;

margin-bottom:15px;

}

.vehicle-content ul{

list-style:none;

margin-bottom:20px;

}

.vehicle-content li{

display:flex;

align-items:center;

gap:10px;

margin-bottom:10px;

}

.vehicle-price{

font-size:32px;

font-weight:700;

color:var(--gold);

margin-bottom:20px;

}

.vehicle-card button{

width:100%;

padding:15px;

border:none;

background:var(--gold);

font-weight:700;

border-radius:12px;

cursor:pointer;

transition:.3s;

}

.vehicle-card button:hover{

background:var(--gold-hover);

}

/* BUTTON */

.next-btn,
.back-btn,
.book-btn{

padding:15px 35px;

border:none;

background:var(--gold);

color:#111;

font-weight:700;

border-radius:12px;

cursor:pointer;

transition:.3s;

}

.next-btn:hover,
.back-btn:hover,
.book-btn:hover{

transform:translateY(-4px);

box-shadow:0 20px 30px rgba(212,175,55,.35);

}

.booking-navigation{

margin-top:40px;

display:flex;

justify-content:space-between;

}

/* SUMMARY */

.summary-card{

background:#172030;

padding:35px;

border-radius:20px;

}

.summary-item{

display:flex;

justify-content:space-between;

padding:15px 0;

border-bottom:1px solid rgba(255,255,255,.08);

}

.summary-total{

display:flex;

justify-content:space-between;

margin-top:25px;

align-items:center;

}

.summary-total h2{

color:var(--gold);

font-size:38px;

}

/* PAYMENT */

.payment-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:20px;

margin-top:25px;

}

.payment-card{

background:#172030;

padding:25px;

border-radius:15px;

text-align:center;

cursor:pointer;

transition:.3s;

border:2px solid transparent;

}

.payment-card:hover{

border-color:var(--gold);

}

.payment-card input{

display:none;

}

.payment-card i{

font-size:38px;

margin-bottom:15px;

color:var(--gold);

display:block;

}

/* SUCCESS */

.success-box{

text-align:center;

padding:80px 20px;

}

.success-box i{

font-size:90px;

color:#22c55e;

margin-bottom:25px;

}

.success-box h2{

font-size:40px;

margin-bottom:20px;

}

.success-box p{

margin-bottom:15px;

color:#d1d5db;

}

/* MOBILE */

@media(max-width:992px){

.vehicle-grid{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:768px){

.row{

grid-template-columns:1fr;

}

.trip-type{

grid-template-columns:1fr;

}

.vehicle-grid{

grid-template-columns:1fr;

}

.payment-grid{

grid-template-columns:1fr;

}

.booking-navigation{

flex-direction:column;

gap:15px;

}

.next-btn,
.back-btn,
.book-btn{

width:100%;

}

.booking-header{

padding:35px;

}

.booking-header h1{

font-size:30px;

}

#bookingForm{

padding:25px;

}

}/* End custom CSS */