/* STICKY BUTTON */
#bookStickyBtn {
    position: fixed;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: #25D366;
    color: #fff;
    padding: 15px 40px;
    border-radius: 50px;
    font-weight: 800;
    z-index: 9999;
    cursor: pointer;
    box-shadow: 0 5px 15px rgba(0,0,0,0.3);
}

/* MODAL */
#bookingModal {
    position: fixed;
    top:0; left:0;
    width:100%; height:100%;
    background: rgba(0,0,0,0.9);
    display:none;
    justify-content:center;
    align-items:center;
    z-index:99999;
}

.booking-box {
    background:#fff;
    color:#000;
    padding:25px;
    border-radius:20px;
    width:90%;
    max-width:420px;
    text-align:center;
}

.booking-box select,
.booking-box input {
    width:100%;
    padding:12px;
    margin:10px 0;
    border-radius:8px;
    border:1px solid #ccc;
}

.booking-box button {
    width:100%;
    padding:14px;
    margin-top:10px;
    background:#008080;
    color:#fff;
    border:none;
    border-radius:10px;
    font-weight:700;
    cursor:pointer;
}

#priceDisplay {
    font-size: 1.3rem;
    font-weight: 800;
    margin-top:10px;
}

/* INFO BLOCK */
.booking-info {
    font-size: 0.9rem;
    color:#555;
    margin-top:10px;
    line-height:1.6;
}

/* WARNING */
#callWarning {
    display:none;
    color:red;
    font-weight:800;
    margin-top:10px;
}

/* MOBILE */
@media (max-width:768px){
    #bookStickyBtn {
        width:90%;
        text-align:center;
    }
.booking-box input[type="date"],
.booking-box input[type="time"]{
    width:100%;
    padding:12px;
    margin:10px 0;
    border-radius:8px;
    border:1px solid #ccc;
}
}