*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{

    background:#f4f4f4;

    font-family:
    "Segoe UI",
    sans-serif;

}

.page-wrapper{

    max-width:1200px;

    margin:auto;

    padding:30px;

}

.booking-card{

    background:#fff;

    border-radius:16px;

    overflow:hidden;

    box-shadow:
    0 10px 25px
    rgba(0,0,0,.12);

}

.header{

    background:
    linear-gradient(
    135deg,
    #7b0000,
    #a00000
    );

    color:white;

    text-align:center;

    padding:35px;

}

.header h1{

    font-size:34px;

    margin-bottom:10px;

}

.header p{

    font-size:18px;

}

.section{

    padding:30px;

}

.section h2{

    color:#7b0000;

    margin-bottom:20px;

}

.seva-grid{

    display:grid;

    grid-template-columns:
    repeat(
    auto-fit,
    minmax(250px,1fr)
    );

    gap:15px;

}

.seva-item{

    border:2px solid #ddd;

    border-radius:12px;

    cursor:pointer;

    transition:.3s;

    padding:15px;

}

.seva-item:hover{

    border-color:#7b0000;

}

.seva-item input{

    display:none;

}

.seva-item input:checked
+ .seva-content{

    color:white;

    background:#7b0000;

}

.seva-content{

    border-radius:10px;

    padding:15px;

}

.seva-name{

    font-size:18px;

    font-weight:600;

}

.seva-price{

    margin-top:10px;

    font-size:22px;

    font-weight:bold;

}

.summary-box{

    background:#fff7e8;

    border-top:
    1px solid #eee;

    border-bottom:
    1px solid #eee;

    padding:25px;

    display:flex;

    justify-content:space-between;

    align-items:center;

    font-size:22px;

    font-weight:bold;

}

#totalAmount{

    color:green;

}

.form-grid{

    display:grid;

    grid-template-columns:
    repeat(
    auto-fit,
    minmax(250px,1fr)
    );

    gap:20px;

}

.field-group{
    display:flex;
    flex-direction:column;
}

.field-label{
    display:block;
    margin-bottom:8px;
    font-weight:600;
    color:#444;
}

input{

    width:100%;

    padding:14px;

    border:1px solid #ccc;

    border-radius:8px;

    font-size:15px;

}

input:focus{

    outline:none;

    border-color:#7b0000;

}

.payment-card{

    display:flex;

    align-items:center;

    gap:30px;

    margin-bottom:25px;

    background:#fafafa;

    border-radius:12px;

    padding:20px;

}

.qr-image{

    width:220px;

    border-radius:10px;

}

.payment-text h3{

    color:#7b0000;

    margin-bottom:10px;

}

.submit-btn{

    width:100%;

    padding:18px;

    background:#7b0000;

    color:white;

    border:none;

    cursor:pointer;

    font-size:18px;

    font-weight:bold;

    transition:.3s;

}

.submit-btn:hover{

    background:#5c0000;

}

@media(max-width:768px){

    .payment-card{

        flex-direction:column;

        text-align:center;

    }

    .header h1{

        font-size:26px;

    }

}