body.booking-page{background:#f6f7fb}.booking-main{padding:70px 0 100px}.booking-shell{display:grid;grid-template-columns:.75fr 1.25fr;gap:55px;align-items:start}.booking-intro{padding-top:30px}.booking-intro h1{font-size:clamp(34px,5vw,58px);margin:12px 0}.booking-intro p{font-size:17px;line-height:1.9;color:#555}.privacy-note{margin-top:25px;padding:18px;border-radius:16px;background:#fff;box-shadow:0 10px 35px rgba(20,15,72,.07);font-size:14px}.booking-card{background:#fff;border-radius:28px;padding:34px;box-shadow:0 25px 70px rgba(20,15,72,.1)}.booking-card label{display:grid;gap:8px;font-weight:700;font-size:13px}.booking-card input{width:100%;padding:14px;border:1px solid #ddd;border-radius:12px;font:inherit}.booking-card .form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.upload-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.upload-box{padding:16px;border:1px dashed #b9b5d8;border-radius:15px;background:#fafaff}.upload-box small{font-weight:400;color:#777}.upload-box input{padding:8px;background:white}.slot-section{margin:25px 0}.slot-section h3{margin-bottom:5px}.slot-section p{color:#777;font-size:13px}.slots{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:15px}.slot{padding:13px;border-radius:12px;border:1px solid #d7d3ed;background:#fff;cursor:pointer;font:inherit}.slot:hover,.slot.selected{border-color:#312783;box-shadow:0 0 0 2px rgba(49,39,131,.08)}.slot.selected{font-weight:800}.slot.unavailable{background:#f2f2f2;color:#999;text-decoration:line-through;cursor:not-allowed}.booking-error{padding:14px;border-radius:12px;background:#fff1f1;color:#a42020;margin-bottom:18px}.booking-success{text-align:center;padding:45px 10px}.booking-success h2{font-size:30px}.booking-success p{margin:18px 0 28px}@media(max-width:850px){.booking-shell{grid-template-columns:1fr}.booking-main{padding-top:35px}.booking-card .form-grid,.upload-grid,.slots{grid-template-columns:1fr}.booking-card{padding:22px}}