.booking-wrap{max-width:900px}.booking-confirmation{padding:30px;border:1px solid #c7d3c7;background:#f2f6ef;border-radius:12px;margin:30px 0}.booking-confirmation h2{font-size:1.8rem}.booking-timezone{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:28px 0}.booking-timezone label{font-size:.85rem;white-space:nowrap}.booking-timezone input{width:280px;flex:1;min-width:200px;min-height:48px;border:1px solid var(--line);border-radius:6px;padding:10px;background:white;font:inherit}.booking-slots{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:22px}.booking-slot{padding:24px;border:1px solid var(--line);background:white;border-radius:10px}.booking-date{font-weight:600}.booking-footnote{margin-top:32px}.booking-error{padding:16px;background:#f9ecea;color:#973a30;border-radius:8px;margin-top:20px}.booking-cancel{padding:18px;border-top:1px solid #d9dcd2;margin-top:20px}.booking-cancel .btn{margin-right:10px;margin-bottom:10px}.booking-wrap button:disabled{opacity:.5;cursor:wait}@media(max-width:600px){.booking-slots{grid-template-columns:1fr}.booking-confirmation{padding:22px}.booking-timezone input{min-width:100%}.booking-wrap .actions{gap:10px}.booking-wrap .btn{font-size:.85rem;padding:0 18px}}
/* Match the existing dark public-site theme so booking details stay readable. */
.luxury-home .booking-confirmation,.luxury-home .booking-slot,.luxury-home .booking-wrap .notice{background:#1c241e;border-color:#465344;color:#f0eee5}
.luxury-home .booking-confirmation h2,.luxury-home .booking-confirmation p,.luxury-home .booking-slot p,.luxury-home .booking-wrap .notice h2,.luxury-home .booking-wrap .notice h3,.luxury-home .booking-wrap .notice p{color:#f0eee5}
.luxury-home .booking-confirmation .small,.luxury-home .booking-slot .small{color:#bdc6b9}
.luxury-home .booking-confirmation .eyebrow{color:#d4b36c}
