.booking-heading{padding-block:62px 40px;text-align:center}.booking-heading h1{font-size:clamp(42px,5.5vw,76px);line-height:1.08;letter-spacing:-2px;margin:18px 0}.booking-heading h1 em{color:var(--orange);font-style:normal}.booking-heading>p{color:var(--muted);font-size:15px}.booking-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:35px;align-items:start;margin-bottom:35px}.booking-aside{border-radius:22px;overflow:hidden;background:linear-gradient(145deg,#242924,#121917);border:1px solid var(--line)}.booking-venue{width:100%;height:245px;object-fit:cover}.booking-aside-copy{padding:34px}.booking-aside h2{font-size:47px;line-height:1.05;margin:18px 0;color:#e6bd94;font-weight:400}.booking-aside p{font-size:13px;color:#baa68f;line-height:1.8}.booking-call{display:flex;justify-content:space-between;color:#e3b184;font-size:25px;margin:25px 0 18px;border-bottom:1px solid #a77c4a55;padding-bottom:18px}.booking-address,.booking-hours{margin-top:14px}.booking-panel{padding:32px;border:1px solid #af825148;border-radius:22px;background:radial-gradient(ellipse at top right,#33372b55,transparent 65%),#141a18;box-shadow:0 20px 65px #0002;min-width:0;color:#e5bc96}.booking-progress{display:flex;list-style:none;margin:0 0 38px;padding:0 0 25px;border-bottom:1px solid #bd935b33;justify-content:space-between;gap:5px}.booking-progress li{font-size:10px;color:#b2a28e;display:flex;align-items:center;flex-direction:column;gap:9px}.booking-progress li>span{display:grid;place-items:center;border:1px solid #a481573a;border-radius:50%;width:32px;height:32px;font-size:11px}.booking-progress li[aria-current=step]{color:#f1c599}.booking-progress li[aria-current=step]>span,.booking-progress li.done>span{border-color:#d7a36e;background:#30291f;box-shadow:0 0 18px #d9a26912}.booking-stage>h2{font-size:32px;line-height:1.15;font-weight:400;letter-spacing:-.7px;margin:14px 0 12px;outline:none}.booking-stage>p{font-size:13px;line-height:1.7;color:#bba890}.booking-stage[hidden],.booking-actions[hidden],.booking-back[hidden],.more-guests[hidden]{display:none!important}.guest-options{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:27px 0}.guest-options button,.time-options button,.calendar-days button,.calendar-heading button{border:1px solid #b4875455;background:linear-gradient(145deg,#292e27,#161d19);color:#dcb18a;border-radius:12px;min-height:50px;font:inherit;cursor:pointer;transition:background .2s,border-color .2s}.guest-options button{font-size:23px;min-height:68px}.guest-options button[aria-pressed=true],.calendar-days button[aria-pressed=true],.time-options button[aria-pressed=true]{background:#bc8c5c;color:#101616;border-color:#efc599;box-shadow:0 2px 16px #c698572b;font-weight:500}.guest-options button:hover,.time-options button:hover,.calendar-days button:hover{border-color:#ebbd8b}.booking-panel .booking-small{font-size:11px;line-height:1.75;color:#b4a18c;margin-top:22px}.booking-small a,.booking-help a{color:#e0b488;text-decoration:underline;text-underline-offset:3px}.booking-actions{display:flex;justify-content:space-between;align-items:center;gap:18px;border-top:1px solid #bd935b33;margin-top:28px;padding-top:24px}.booking-next{margin-left:auto}.booking-actions .button{margin-left:auto;font-size:12px;min-height:48px;border-radius:25px;letter-spacing:.3px}.booking-back{background:none;border:0;color:#ccb299;font-size:13px;padding:12px 0;cursor:pointer}.booking-help{text-align:center;font-size:12px;line-height:1.9;color:var(--muted);padding-bottom:75px}.booking-calendar{margin-top:25px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}.calendar-heading h3{font-size:19px;font-weight:400}.calendar-heading button{width:40px;min-height:40px;border-radius:50%;font-size:18px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.calendar-week{font-size:10px;text-align:center;color:#ad957d;margin-bottom:10px}.calendar-days button{min-height:44px;border-radius:9px;font-size:14px}.calendar-days button:disabled,.calendar-heading button:disabled{opacity:.28;cursor:default}.calendar-days button.today{border-color:#dcb080}.time-options{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:24px 0}.time-options button{font-size:13px}.booking-fields{display:grid;grid-template-columns:1fr 1fr;gap:22px 16px}.booking-panel .form-field input,.booking-panel .form-field textarea,.booking-panel .form-field select{font-family:inherit;font-size:16px;color:#e5bc96;background:linear-gradient(145deg,#101715,#1d2521);border:1px solid #bb915244;border-bottom-color:#bd935b6b;border-radius:13px;padding:14px;width:100%;box-shadow:inset 0 4px 12px #0006}.booking-panel .form-field label{text-transform:none;font-size:12px;letter-spacing:0;color:#d9b38f}.booking-panel .form-field label small{font-size:9px;color:#b39a81;display:block;margin-top:3px}.booking-panel input::placeholder,.booking-panel textarea::placeholder{color:#a68f77;font-size:12px}.booking-summary{display:flex;flex-wrap:wrap;gap:12px 22px;padding:18px 20px;border:1px solid #bd935b44;background:#b7894e0b;border-radius:13px;margin:22px 0 27px}.booking-summary>span{display:flex;flex-direction:column;font-size:14px;color:#edc29b;gap:5px}.booking-summary small{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#af977d}.phone-notice{display:flex;gap:13px;background:#bd935b0b;border:1px solid #b18a5555;border-radius:13px;padding:17px;margin-top:25px;text-align:left}.phone-notice>span{font-size:24px;color:#d8a56f}.phone-notice p{font-size:11px;line-height:1.8;color:#c7ad92;margin:0}.phone-notice strong{display:block;color:#edc59a;font-size:12px;font-weight:500;margin-bottom:4px}.phone-notice a{color:#efc99f;white-space:nowrap}.booking-error{color:#f2b9a6;font-size:12px;line-height:1.7}.booking-error:empty{display:none}.booking-receipt{text-align:center}.receipt-seal{margin:5px auto 25px;border:1px solid #c59964;border-radius:50%;width:64px;height:64px;display:grid;place-items:center;font-size:28px;color:#edc69b;background:#b98f4822;box-shadow:0 0 30px #b98f4815}.receipt-reference{padding:24px 0;border-bottom:1px solid #b68c5133}.receipt-reference span{font-size:10px;text-transform:uppercase;letter-spacing:1.7px;display:block;color:#ad957c}.receipt-reference strong{font-size:24px;letter-spacing:2px;color:#e8ba8b;font-weight:400;display:block;margin-top:12px}.booking-receipt .booking-summary{justify-content:center;text-align:left}.booking-receipt>.button{margin-top:25px}.booking-return{display:inline-block;font-size:12px;margin:20px 0;color:#dcad80}.form-trap{position:absolute!important;left:-10000px!important;width:1px;height:1px;overflow:hidden}.booking-panel button:disabled{cursor:wait;opacity:.55}.booking-panel button:focus-visible{outline:2px solid #edc69b;outline-offset:4px}.booking-panel .calendar-days button:disabled{cursor:default}
@media(max-width:960px){.booking-layout{grid-template-columns:.7fr 1.3fr;gap:20px}.booking-panel{padding:25px}.booking-aside-copy{padding:25px}.booking-aside h2{font-size:37px}.booking-call{font-size:21px}}
@media(max-width:700px){.booking-heading{padding-block:30px 27px;text-align:left}.booking-heading h1{font-weight:300;letter-spacing:-1px;font-size:45px}.booking-heading>p{font-size:12px;max-width:280px;line-height:1.7}.booking-layout{grid-template-columns:1fr;gap:0}.booking-aside{display:none}.booking-panel{padding:23px 19px;border-radius:22px;background:radial-gradient(ellipse at top,#2b343222,transparent 60%),#131a18;min-height:440px}.booking-progress{margin-bottom:28px;padding-bottom:21px}.booking-progress li{font-size:9px}.booking-progress li>span{width:29px;height:29px;font-size:10px}.booking-stage>h2{font-size:29px}.booking-stage>.eyebrow{font-size:9px}.booking-stage>p{font-size:12px}.guest-options{gap:9px;margin-top:23px}.guest-options button{min-height:61px;font-size:22px}.booking-fields{grid-template-columns:1fr;gap:20px}.booking-panel .form-field input,.booking-panel .form-field textarea{border-radius:17px;padding:16px}.booking-summary{gap:12px 18px;padding:16px}.calendar-days,.calendar-week{gap:4px}.calendar-days button{min-height:39px;font-size:13px}.time-options{gap:8px}.time-options button{font-size:11px;min-height:46px}.booking-help{text-align:left;font-size:11px;overflow-wrap:anywhere;padding-bottom:35px}.booking-receipt .booking-summary{justify-content:flex-start}.booking-actions{margin-top:24px}.phone-notice{padding:14px;gap:10px}.phone-notice p{font-size:11px}.receipt-reference strong{font-size:21px}.booking-receipt>.eyebrow{font-size:8px}.booking-receipt>h2{font-size:30px}}
