[hidden]{display:none!important}
.booking-card{background:var(--light);border:1px solid var(--line);border-top:5px solid var(--red);border-radius:14px;padding:28px;min-width:0}
.booking-card h2{color:var(--navy);margin:0 0 12px;line-height:1.25;scroll-margin-top:220px}
.booking-card h2:focus{outline:none}
.booking-card p{margin:0 0 18px}
.booking-steps{display:flex;gap:16px;list-style:none;padding:0;margin:0 0 24px;font-size:13px;font-weight:700;color:#536270}
.booking-steps [aria-current]{color:var(--blue);border-bottom:3px solid var(--red);padding-bottom:7px}
.booking-card form{gap:8px}
.booking-card label{font-weight:700;color:var(--navy);margin-top:8px}
.booking-card label span{font-size:13px;font-weight:400;color:#536270}
.booking-card input,.booking-card textarea,.booking-card select{display:block;width:100%;max-width:100%;background:#fff;padding:12px;border:1px solid #96a6b7;border-radius:7px;font:inherit;color:var(--text)}
.booking-card input:focus,.booking-card textarea:focus,.booking-card select:focus,.booking-card a:focus-visible,.booking-card button:focus-visible{outline:3px solid #143f85;outline-offset:3px}
.booking-card .btn{margin-top:12px;font-size:15px;text-align:center;white-space:normal}
.booking-card .booking-note{font-size:13px;color:#536270;line-height:1.5;margin:12px 0 0}
.booking-price{background:#fff;border-left:4px solid var(--red);border-radius:6px;padding:18px;margin-bottom:20px;color:var(--navy)}
.booking-price strong{display:block;font-size:30px;line-height:1.25;color:var(--red)}
#booking-summary{overflow-wrap:anywhere;margin:0 0 20px}
#booking-summary dt{font-size:13px;font-weight:700;color:#536270;margin-top:10px}
#booking-summary dd{margin:0}
.booking-actions{display:flex;gap:10px;flex-wrap:wrap}
.booking-back{background:transparent;color:var(--blue);font:inherit;font-weight:700;border:0;padding:12px 0;margin-top:12px;cursor:pointer;text-decoration:underline}
@media(max-width:560px){.booking-card{padding:20px}.booking-actions{display:grid}.booking-steps{font-size:12px;gap:12px}}
