.js-public-booking{scroll-margin-top:90px}.js-booking-heading{max-width:680px;margin-bottom:2rem}.js-public-booking form{position:relative;background:#fff;border-radius:24px;padding:clamp(1rem,4vw,2rem);box-shadow:0 20px 55px rgba(7,17,31,.12)}.js-booking-step{border:0;padding:0;margin:0}.js-booking-step[hidden]{display:none}.js-booking-step legend{font:400 clamp(1.8rem,5vw,2.7rem)/1.1 "Instrument Serif",Georgia,serif;margin-bottom:1.5rem}.js-booking-step legend span{display:inline-grid;place-items:center;width:36px;height:36px;margin-right:.5rem;border-radius:50%;background:#07111f;color:#d6b36a;font:700 .9rem Manrope,sans-serif}.js-booking-error{margin-bottom:1rem;padding:1rem;border-left:4px solid #d45252;background:#fff0f0;color:#721c24}.js-date-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:1.5rem}.js-date-card{display:grid;gap:.2rem;padding:1rem;border:1px solid #d7dce0;border-radius:14px;cursor:pointer}.js-date-card:has(input:checked){border-color:#d6b36a;box-shadow:0 0 0 2px #d6b36a}.js-date-card input{position:absolute;opacity:0}.js-date-card span{color:#2f7d55;font-size:.85rem;font-weight:700}.js-date-card small{color:#65717d}.js-date-card.is-disabled{opacity:.52;cursor:not-allowed}.js-date-card.is-disabled span{color:#8b2635}.js-seats{color:#2f7d55;font-weight:700}.js-guest-row{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;border-bottom:1px solid #e2e4e6}.js-counter{display:flex;align-items:center;gap:.8rem}.js-counter button{width:44px;height:44px;border:1px solid #bac1c8;border-radius:50%;background:#fff;color:#07111f;font-size:1.5rem}.js-counter output{min-width:1.5rem;text-align:center;font-weight:800}.js-choice{display:flex;gap:.8rem;padding:1rem;border:1px solid #d7dce0;border-radius:14px;margin-bottom:.75rem;cursor:pointer}.js-choice:has(input:checked){border-color:#d6b36a;background:#fffaf0}.js-choice input{margin-top:.3rem}.js-choice span{display:grid}.js-choice small{color:#65717d}.js-choice.is-disabled{opacity:.5}.js-pickup-note{color:#8b5a00;background:#fff4d6;padding:1rem;border-radius:10px}.js-booking-step>label:not(.js-choice){display:grid;gap:.4rem;font-weight:700;margin-bottom:1rem}.js-booking-step input:not([type=radio]):not([type=hidden]),.js-booking-step textarea{width:100%;min-height:50px;border:1px solid #bac1c8;border-radius:10px;padding:.75rem;font:inherit}.js-step-actions{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-top:1.5rem}.js-back{min-height:46px;border:0;background:transparent;text-decoration:underline;font-weight:700}.js-review{background:#f5f1e8;padding:1rem;border-radius:14px}.js-review dl{margin:0}.js-review dl div{display:flex;justify-content:space-between;gap:1rem;padding:.6rem 0;border-bottom:1px solid rgba(7,17,31,.1)}.js-review dd{margin:0;text-align:right;font-weight:700}.js-payment-note{margin-top:1rem;padding:1rem;border:1px solid #d99b3d;border-radius:12px}.js-payment-note p{margin:.2rem 0 0}.js-sticky-summary{position:sticky;bottom:0;display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:2rem -1rem -1rem;padding:.8rem 1rem;background:#07111f;color:#fff;border-radius:0 0 24px 24px;z-index:4}.js-sticky-summary div{display:grid}.js-sticky-summary small{color:#8d99a6}.js-booking-unavailable{background:#fff;padding:1.5rem;border-radius:18px}.js-test-result{padding:2rem;text-align:center}.js-public-booking button:focus-visible,.js-public-booking input:focus-visible,.js-public-booking textarea:focus-visible{outline:3px solid #d6b36a;outline-offset:2px}@media(min-width:48rem){.js-date-list{grid-template-columns:repeat(4,minmax(0,1fr))}.js-public-booking form{padding:2rem}.js-sticky-summary{margin:2rem -2rem -2rem;padding:1rem 2rem}.js-booking-step{max-width:760px}.js-booking-step>label:not(.js-choice){max-width:620px}}@media(prefers-reduced-motion:reduce){.js-public-booking *{scroll-behavior:auto!important}}
