
<style>
body{
    background:#f4f7fb;
    font-family:'Segoe UI',sans-serif;
}

/* MAIN WRAPPER */

.booking-wrapper{
    max-width:1200px;
    margin:50px auto;
    padding:50px;
    background:#ffffff;
    border-radius:24px;
    box-shadow:0 10px 40px rgba(0,0,0,0.08);
}

/* HEADER */

.booking-header{
    text-align:center;
    margin-bottom:40px;
}

.booking-title{
    font-size:42px;
    font-weight:700;
    color:#123c73;
    margin-bottom:10px;
}

.booking-subtitle{
    color:#6c757d;
    font-size:18px;
}

/* SECTION TITLE */

.section-title{
    font-size:24px;
    font-weight:600;
    margin-bottom:30px;
    color:#123c73;
    border-bottom:2px solid #edf2f7;
    padding-bottom:12px;
}

/* LABELS */

.form-label{
    font-weight:600;
    margin-bottom:10px;
    color:#495057;
}

/* INPUTS */

.modern-input{
    height:56px;
    border-radius:14px;
    border:1px solid #dbe2ea;
    padding:10px 16px;
    transition:all 0.3s ease;
    font-size:15px;
}

.modern-input:focus{
    border-color:#2b6df3;
    box-shadow:0 0 0 4px rgba(43,109,243,0.12);
}

/* PRICE CARD */

.price-card{
    background:linear-gradient(135deg,#123c73,#2b6df3);
    border-radius:20px;
    padding:35px;
    text-align:center;
    color:white;
    box-shadow:0 10px 30px rgba(43,109,243,0.2);
}

.price-label{
    font-size:18px;
    margin-bottom:10px;
    opacity:0.9;
}

.price-value{
    font-size:54px;
    font-weight:700;
    line-height:1;
}

.price-note{
    margin-top:12px;
    opacity:0.85;
}

/* BUTTON */

.modern-btn{
    background:linear-gradient(135deg,#123c73,#2b6df3);
    color:white;
    border:none;
    border-radius:16px;
    padding:16px 50px;
    font-size:18px;
    font-weight:600;
    transition:all 0.3s ease;
}

.modern-btn:hover{
    transform:translateY(-2px);
    box-shadow:0 10px 20px rgba(43,109,243,0.25);
    color:white;
}

/* NOTES */

.booking-notes{
    margin-top:35px;
    text-align:center;
    color:#6c757d;
    font-size:15px;
}

.booking-notes p{
    margin-bottom:6px;
}

/* MOBILE */

@media(max-width:768px){

    .booking-wrapper{
        padding:25px;
        margin:20px;
    }

    .booking-title{
        font-size:30px;
    }

    .price-value{
        font-size:42px;
    }

}
</style>