.booking-v8>.container{max-width:800px}.booking-v8 .ca-section-heading{margin-bottom:24px;display:block}.booking-v8 .ca-section-heading>p{max-width:none;margin-top:12px}.booking-v8 .booking-last-link{float:none;margin:0 0 12px}.booking-wizard{border:1px solid var(--line);background:#fff;border-radius:12px;overflow:clip}.booking-wizard-top{border-bottom:1px solid var(--line);padding:20px 28px;scroll-margin-top:16px}.booking-progress{gap:22px;margin:0;padding:0;list-style:none;display:flex}.booking-progress li{color:#677260;flex:1;align-items:center;gap:9px;font-size:14px;font-weight:600;line-height:1.35;display:flex}.booking-progress li>span{border:1px solid #c9d0c1;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;display:grid}.booking-progress .current{color:var(--ink)}.booking-progress .current>span{background:var(--ink);color:#fff;border-color:var(--ink)}.booking-progress .complete>span{background:var(--lime);color:var(--ink);border-color:var(--lime)}.booking-wizard-panel{padding:24px 28px}.booking-duration-picker{border:0;min-width:0;margin:0 0 18px;padding:0}.booking-duration-picker legend{margin-bottom:8px;padding:0;font-size:13px;font-weight:600}.booking-compact-durations{grid-template-columns:1fr 1fr;gap:10px;display:grid}.booking-compact-durations>button{text-align:left;min-height:64px;color:var(--ink);border:1px solid #cbd3c3;border-radius:6px;align-items:center;gap:12px;padding:12px 14px;display:flex}.booking-compact-durations>button.is-selected{background:#edf6dc;border:2px solid #6c843e;padding:11px 13px}.booking-compact-durations strong{white-space:nowrap;font-size:21px}.booking-compact-durations span{font-size:12px;line-height:1.4}.booking-wizard-date{margin-bottom:10px}.booking-wizard .booking-quick-dates{grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:0 0 18px}.booking-wizard .booking-quick-dates button{justify-content:center;align-items:center;gap:7px;min-height:48px;padding:5px;display:flex}.booking-wizard .booking-quick-dates strong{font-size:16px}.booking-wizard .booking-quick-dates span{font-size:12px}.booking-wizard .booking-time-heading{margin:0 0 10px}.booking-wizard .booking-time-heading h3{letter-spacing:0;font-size:14px}.booking-wizard .booking-slots{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.booking-wizard .booking-slots button{min-height:44px;padding:7px 3px;font-size:14px}.booking-wizard .booking-timezone{margin:12px 0;font-size:12px}.booking-test-compact{color:#3f4d26;background:#eef3df;border:1px solid #dce8bd;border-radius:6px;margin:12px 0;padding:10px 12px;font-size:13px;line-height:1.5}.booking-wizard-next{justify-content:space-between;width:100%;margin-top:14px}.booking-selected{background:#f0f3e9;border-radius:7px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:19px;padding:13px 15px;display:flex}.booking-selected>div{flex-direction:column;gap:3px;min-width:0;display:flex}.booking-selected strong{font-size:16px;line-height:1.5}.booking-selected span{color:#536047;font-size:13px}.booking-selected button{border:0;flex:none;min-height:44px;padding:0 4px;font-size:13px}.booking-contact-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.booking-optional{margin:8px 0 12px}.booking-optional summary{cursor:pointer;min-height:44px;padding:11px 0;font-size:13px;list-style-position:inside;display:list-item}.booking-optional-fields{grid-template-columns:1fr 1fr;gap:14px;margin:8px 0 16px;display:grid}.booking-wizard .booking-consent{align-items:flex-start;margin:12px 0 18px;font-size:13px;line-height:1.5}.booking-wizard .booking-consent input{accent-color:#607b34;flex:none;width:22px;min-width:22px;height:22px;margin-top:2px}.booking-checkout-total{border-top:1px solid var(--line);justify-content:space-between;gap:20px;padding-top:16px;font-size:14px;display:flex}.booking-checkout-total>span{max-width:62%}.booking-checkout-total small{color:#536047;margin-top:3px;font-size:12px;line-height:1.5;display:block}.booking-checkout-total strong{text-align:right;max-width:45%;font-size:18px;line-height:1.4}.booking-wizard-actions{gap:10px;margin-top:16px;display:flex}.booking-wizard-actions>.primary{flex:1;justify-content:space-between}.booking-wizard-actions>.ghost{gap:8px;padding-inline:14px}.booking-wizard .booking-payment-note{margin-top:10px;font-size:12px}.booking-wizard .error-message{margin:12px 0}.booking-v8 .booking-confirmation{max-width:650px;padding:28px}.booking-result-heading{align-items:center;gap:14px;margin-bottom:18px;display:flex}.booking-result-heading h3{font-size:28px;line-height:1.2}.booking-result-heading .booking-confirm-icon{flex:none;width:42px;height:42px;margin:0;font-size:22px}.booking-v8 .booking-reference{margin:0 0 16px}.booking-v8 .booking-reference strong{font-size:20px}.booking-save-panel{margin-bottom:20px}.booking-save-primary{justify-content:space-between;width:100%;min-height:50px}.booking-save-panel .booking-management-link{min-height:44px;margin:10px 0 8px;font-size:13px}.booking-save-panel .booking-save-note{color:#536047;margin:0;font-size:12px;line-height:1.5}.booking-v8 .booking-confirm-details{gap:18px;margin:0 0 14px;padding-top:18px}.booking-v8 .booking-mail-status{margin:14px 0}.booking-v8 .booking-calendar{margin-right:18px}.booking-v8 .booking-new-link{margin-top:18px;display:flex}.booking-v8 .booking-cancel-question{margin-top:16px}@media (max-width:650px){.ca-site .booking-v8{padding-block:38px}.booking-v8 .ca-section-heading{margin-bottom:18px}.booking-v8 .ca-section-heading .eyebrow{margin-bottom:9px}.booking-v8 .ca-section-heading h2{font-size:28px}.booking-v8 .ca-section-heading>p{margin-top:8px;font-size:14px}.booking-wizard-top{padding:16px}.booking-progress{gap:12px}.booking-progress li{gap:7px;font-size:12px}.booking-progress li>span{width:26px;height:26px}.booking-wizard-panel{padding:18px 16px}.booking-compact-durations>button{min-height:65px;padding:10px 12px;display:block}.booking-compact-durations>button.is-selected{padding:9px 11px}.booking-compact-durations strong{font-size:20px;display:block}.booking-compact-durations span{margin-top:3px;font-size:11px;display:block}.booking-wizard .booking-slots{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.booking-wizard .booking-slots button{font-size:13px}.booking-contact-fields{grid-template-columns:minmax(0,1fr);gap:12px}.booking-contact-fields .field{justify-content:flex-end;gap:6px;font-size:12px}.booking-optional-fields{grid-template-columns:1fr}.booking-selected{gap:8px;margin-bottom:16px;padding:10px 12px}.booking-selected strong{font-size:14px}.booking-selected span,.booking-selected button{font-size:12px}.booking-wizard-actions{flex-wrap:wrap}.booking-wizard-actions>.primary{gap:10px;min-width:0;font-size:13px}.booking-wizard-actions>.ghost{padding-inline:10px;font-size:13px}.booking-checkout-total{gap:12px}.booking-checkout-total strong{font-size:16px}.booking-v8 .booking-confirmation{padding:22px 18px}.booking-result-heading{gap:12px}.booking-result-heading h3{font-size:23px}.booking-v8 .booking-calendar{justify-content:space-between;width:100%}.booking-v8 .booking-cancel-link{margin-top:10px}}@media (max-width:370px){.booking-wizard-top,.booking-wizard-panel{padding-inline:12px}.booking-wizard .booking-quick-dates{gap:5px}.booking-wizard .booking-quick-dates button{gap:4px}.booking-wizard .booking-slots{gap:5px}.booking-wizard .booking-slots button,.booking-wizard-actions>.primary{font-size:12px}.booking-wizard-actions>.ghost{gap:5px;font-size:12px}.booking-result-heading h3{font-size:21px}}.booking-guest-picker{border:0;min-width:0;margin:16px 0;padding:0}.booking-guest-picker legend{margin-bottom:9px;padding:0;font-size:13px;font-weight:600}.booking-guest-options{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;display:grid}.booking-guest-options button{min-height:46px;color:var(--ink);background:#fff;border:1px solid #cbd3c3;border-radius:6px;font-size:18px;font-weight:650}.booking-guest-options button.is-selected{background:#edf6dc;border:2px solid #6c843e}.booking-guest-options button:focus-visible{outline-offset:3px;outline:3px solid #46651c}.booking-wizard .booking-selection-total{background:#f0f3e9;border:0;border-radius:7px;align-items:center;margin:0 0 24px;padding:13px 14px}
