.reservation-seating-step{display:grid;gap:.65rem}.reservation-seating-step[hidden]{display:none}.reservation-seating-step select:disabled{opacity:.6;cursor:not-allowed}.reservation-seating-help{margin:0;color:#74695f;font-size:.82rem;line-height:1.5}.reservation-legal{display:grid;gap:.75rem;padding:1rem;border:1px solid #ded6cb;border-radius:14px;background:#fffaf3}.reservation-legal label{display:grid;grid-template-columns:auto 1fr;align-items:start;gap:.65rem;margin:0}.reservation-legal input[type="checkbox"]{width:1.1rem;height:1.1rem;margin:.15rem 0 0;accent-color:#d94919}.reservation-legal span{font-size:.86rem;line-height:1.5}.reservation-legal a{text-decoration:underline;text-underline-offset:2px}.reservation-turnstile{display:grid;gap:.5rem;min-height:66px}.reservation-verification-note{margin:0;color:#74695f;font-size:.78rem;line-height:1.45}.reservation-verification-unavailable{padding:.85rem 1rem;border:1px solid #c85a3b;border-radius:12px;background:#fff2ed;color:#7e301c;font-size:.84rem;line-height:1.45}.reservation-step-label{display:flex;align-items:center;gap:.5rem}.reservation-step-label b{display:grid;place-items:center;width:1.55rem;height:1.55rem;border-radius:50%;background:#211b17;color:#fff;font-size:.72rem}.reservation-slot-areas{display:block;margin-top:.2rem;color:#74695f;font-size:.68rem}.reservation-area-option-unavailable{color:#9a9189}.reservation-area-status{margin:.25rem 0 0;color:#74695f;font-size:.8rem}.reservation-area-status.is-warning{color:#8b3d24}.reservation-details-heading{margin-top:.25rem;padding-top:1rem;border-top:1px solid #e4ddd4}.reservation-details-heading h2{margin:.15rem 0 .25rem;font-size:clamp(1.6rem,2.5vw,2.25rem)}.reservation-details-heading p{margin:0;color:#74695f;font-size:.84rem}

.reservation-confirmation{max-width:720px;padding:clamp(1.75rem,4vw,3rem);border-radius:24px;text-align:center}.reservation-confirmation-head{max-width:590px;margin:0 auto 1.45rem}.reservation-confirmation-head>.eyebrow{margin:0 0 .55rem;color:#a84a21;font-size:.68rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}.reservation-confirmation h2{max-width:12ch;margin:0 auto .8rem;font-size:clamp(2.45rem,5.4vw,4rem);line-height:.95;letter-spacing:-.04em}.reservation-thank-you{max-width:560px;margin:0 auto;color:#5d554d;font-size:1rem;line-height:1.65}.reservation-booking-ticket{display:grid;justify-items:center;gap:.45rem;margin:0 auto 1.15rem;padding:1.2rem 1rem;border:1px solid #d9cebf;border-radius:16px;background:#fffdf9}.reservation-booking-ticket__label{color:#7a7065;font-size:.66rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.reservation-confirmation .reservation-reference{display:inline-flex;align-items:center;justify-content:center;width:max-content;max-width:100%;margin:0;padding:.62rem .9rem;border:1px solid #d6cab9;border-radius:9px;background:#fff;color:#1c1917;font-size:clamp(1.12rem,2.6vw,1.35rem);font-weight:800;letter-spacing:.08em;box-shadow:0 6px 18px rgba(68,47,30,.045);user-select:all;cursor:text}.reservation-reference-row{display:flex;align-items:center;justify-content:center;gap:.55rem;flex-wrap:wrap}.reservation-copy-reference{min-height:39px;padding:.55rem .75rem;border:1px solid #cdbfac;border-radius:9px;background:#f6efe5;color:#3f3832;font:inherit;font-size:.74rem;font-weight:800;cursor:pointer}.reservation-copy-reference:hover,.reservation-copy-reference:focus-visible{border-color:#b85d1c;background:#fff7ed;color:#8f3518}.reservation-copy-reference-status{min-height:1px;margin:0;color:#5f574e;font-size:.72rem}.reservation-confirmation>[data-confirmation-copy],.reservation-booking-ticket>[data-confirmation-copy]{margin:.1rem 0 0;color:#453f39;font-size:.88rem;font-weight:700;line-height:1.45}.reservation-calendar-actions{margin:0;padding:1.15rem;border:1px solid #ded4c7;border-radius:16px;background:#fbf6ee;text-align:left}.reservation-calendar-actions>p{margin:0 0 .8rem;text-align:center}.reservation-calendar-actions>p strong{display:inline;margin:0;font-size:1rem;line-height:1.25}.reservation-calendar-actions>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}.reservation-calendar-actions .button{display:flex;align-items:center;justify-content:center;min-height:42px;margin:0;padding:.62rem .72rem;border:1px solid #d5cabd;border-radius:9px;background:#fff;color:#28231f;box-shadow:none;font-size:.72rem;font-weight:800;line-height:1.15;text-align:center;text-decoration:none}.reservation-calendar-actions .button:hover,.reservation-calendar-actions .button:focus-visible{border-color:#b85d1c;background:#fff8ef;color:#8f3518}.reservation-calendar-actions>small{display:block;max-width:570px;margin:.8rem auto 0;color:#74695f;font-size:.74rem;line-height:1.5;text-align:center}.reservation-confirmation-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1.1rem;padding-top:1.05rem;border-top:1px solid #e4dacd;text-align:left}.reservation-confirmation-help{max-width:430px;margin:0;color:#74695f;font-size:.78rem;line-height:1.5}.reservation-confirmation-footer>.button--fire{flex:0 0 auto;margin:0}

@media(max-width:640px){.reservation-legal{padding:.85rem}.reservation-turnstile{overflow:hidden}.reservation-confirmation{padding:1.3rem}.reservation-confirmation h2{font-size:clamp(2.25rem,12vw,3.35rem)}.reservation-booking-ticket{padding:1rem .8rem}.reservation-calendar-actions{padding:.95rem}.reservation-calendar-actions>div{grid-template-columns:repeat(2,minmax(0,1fr))}.reservation-confirmation-footer{display:grid;text-align:center}.reservation-confirmation-footer>.button--fire{width:100%}}
