.popup-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background-color:rgb(0 0 0 / .7);z-index:99999;display:flex;justify-content:center;align-items:center;backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);opacity:0;transition:opacity 0.4s ease;padding:20px;box-sizing:border-box;overflow-y:auto}.popup-overlay.show{opacity:1}.popup-content{background-color:#262626;border-radius:12px;width:90%;max-width:650px;max-height:90vh;overflow-y:auto;scrollbar-width:none;padding:40px;position:relative;box-shadow:0 10px 30px rgb(0 0 0 / .5);font-family:inherit;color:#fff;box-sizing:border-box;margin:auto}.popup-content::-webkit-scrollbar{display:none}.popup-close{position:absolute;top:15px;right:25px;background:none;border:none;color:#fff;font-size:28px;font-family:sans-serif;cursor:pointer;line-height:1;padding:0;outline:none;transition:color 0.2s ease}.popup-close:hover{color:#ccc}.popup-title{text-align:center;font-size:26px;font-weight:500;letter-spacing:normal;margin-top:10px;margin-bottom:30px;padding-left:20px;padding-right:20px;word-wrap:break-word}.popup-image-container{width:100%;border-radius:8px;overflow:hidden;margin-bottom:25px;display:flex;justify-content:center;background-color:#fff}.popup-image{width:100%;max-width:500px;max-height:220px;height:auto;object-fit:contain;border-radius:8px;display:block}.booking-popup-subtitle{text-align:center;color:#ccc;font-size:15px;margin-top:-18px;margin-bottom:25px;padding-left:20px;padding-right:20px}.popup-content--wide{max-width:900px;max-height:90vh;display:flex;flex-direction:column}#booking-stage-calendar{flex:1;display:flex;min-height:0}#cal-inline-embed{width:100%;flex:1;min-height:400px}#stripe-payment-element{margin:10px 0 20px}#booking-payment-amount{color:#b7fe02;font-weight:600}@media screen and (max-width:700px){.popup-overlay:has(.popup-content--wide){padding:0}.popup-content--wide{width:100%;max-width:100%;height:100vh;max-height:100vh;border-radius:0;padding:16px}}.popup-form{display:flex;flex-direction:column;gap:15px;max-width:550px;margin:0 auto}.popup-form .form-group{display:flex;flex-direction:column}.popup-form .form-group label{font-size:14px;margin-bottom:6px;color:#e0e0e0}.popup-form .form-group input{padding:12px;border-radius:4px;border:none;font-size:16px;width:100%;box-sizing:border-box;color:#000}.popup-form .form-group input:focus{outline:2px solid #df2c35}.popup-submit{background-color:#df2c35;color:#fff;border:none;border-radius:4px;padding:12px 24px;font-size:16px;font-weight:500;cursor:pointer;align-self:flex-start;margin-top:10px;transition:background-color 0.2s ease}.popup-submit:hover{background-color:#b71c1c}@media screen and (max-width:500px){.popup-content{padding:18px 16px;max-height:94vh}.popup-title{font-size:19px;margin-top:8px;margin-bottom:12px;padding-left:8px;padding-right:8px}.popup-image-container{margin-bottom:12px}.popup-image{max-height:90px}.popup-form{gap:8px}.popup-form .form-group label{margin-bottom:4px}.popup-form .form-group input{padding:9px 10px}.popup-submit{width:100%;align-self:stretch;text-align:center;margin-top:4px;padding:10px 20px}}@media screen and (max-height:600px){.popup-image-container{display:none}}.rcr-date-list{display:flex;flex-direction:column;gap:8px;max-height:60vh;overflow-y:auto}.rcr-date-row{display:flex;justify-content:space-between;align-items:center;background-color:#333;color:#fff;border:none;border-radius:4px;padding:12px 16px;cursor:pointer;font-size:14px;text-align:left;transition:background-color 0.15s ease}.rcr-date-row:hover:not(:disabled){background-color:#444}.rcr-date-row__spots{color:#b7fe02;font-weight:600;white-space:nowrap;margin-left:12px}.rcr-date-row--full{opacity:.5;cursor:not-allowed}.rcr-date-row--full .rcr-date-row__spots{color:#ff6b6b}.rcr-inline-back{background:none;border:none;color:#b7fe02;cursor:pointer;margin-top:16px;font-size:14px;text-decoration:underline}#rcr-inline-booking .popup-title{color:#fff}.popup-overlay{min-height:100vh;min-height:100dvh;height:100vh;height:100dvh;max-width:100vw;overflow-x:hidden;background-color:rgb(0 0 0 / .82);overscroll-behavior:contain}.popup-content{width:min(92vw, 650px);max-width:calc(100vw - 32px);overflow-x:hidden;-webkit-overflow-scrolling:touch}.popup-close{top:14px;right:16px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.popup-form,.popup-form .form-group,.popup-form .form-group input,.popup-submit,.rcr-date-list,.rcr-date-row{min-width:0}.popup-form .form-group input{-webkit-appearance:none;appearance:none;background-color:#fff;line-height:1.25}.popup-submit{align-self:center;text-align:center;min-height:46px}@supports (height:100svh){.popup-overlay{min-height:100svh;height:100svh}}@media screen and (max-width:700px){.popup-overlay{align-items:flex-start;justify-content:center;padding:max(12px, env(safe-area-inset-top)) 12px max(12px, env(safe-area-inset-bottom))}.popup-content,.popup-content--wide{width:100%;max-width:100%;height:auto;max-height:calc(100dvh - 24px);border-radius:14px;padding:24px 16px 18px;margin:0 auto}.popup-title{font-size:clamp(20px, 6vw, 26px);line-height:1.15;margin-top:18px;margin-bottom:14px;padding-left:28px;padding-right:28px}.booking-popup-subtitle{font-size:14px;line-height:1.35;margin-top:0;margin-bottom:18px;padding-left:4px;padding-right:4px}.popup-form{width:100%;max-width:100%;gap:12px}.popup-form .form-group label{font-size:14px;line-height:1.25}.popup-form .form-group input{min-height:46px;padding:12px 13px;font-size:16px}.popup-submit{width:100%;align-self:stretch;margin-top:6px;padding:13px 16px;white-space:normal}.rcr-date-list{max-height:calc(100dvh - 150px)}.rcr-date-row{flex-direction:column;align-items:flex-start;gap:4px;padding:12px}.rcr-date-row__spots{margin-left:0}}@media screen and (max-width:380px){.popup-overlay{padding-left:8px;padding-right:8px}.popup-content,.popup-content--wide{padding-left:12px;padding-right:12px}.popup-title{padding-left:34px;padding-right:34px}}#rcr-payment-popup .rcr-date-list,#booking-lead-popup .rcr-date-list{width:100%!important;max-width:100%!important;display:flex!important;flex-direction:column!important;gap:10px!important;margin:0!important;padding:0!important;overflow-x:hidden!important;box-sizing:border-box!important}#rcr-payment-popup .rcr-date-row,#booking-lead-popup .rcr-date-row{-webkit-appearance:none!important;appearance:none!important;display:flex!important;width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;background:#333333!important;background-color:#333333!important;background-image:none!important;color:#ffffff!important;border:1px solid rgb(255 255 255 / .16)!important;border-radius:10px!important;padding:13px 14px!important;margin:0!important;text-align:left!important;text-decoration:none!important;font:inherit!important;font-size:16px!important;line-height:1.32!important;white-space:normal!important;overflow:visible!important;transform:none!important;box-shadow:none!important;-webkit-tap-highlight-color:rgb(183 254 2 / .18)!important;-webkit-user-select:none!important;user-select:none!important;touch-action:manipulation!important}#rcr-payment-popup .rcr-date-row__date,#rcr-payment-popup .rcr-date-row__spots,#booking-lead-popup .rcr-date-row__date,#booking-lead-popup .rcr-date-row__spots{display:block!important;min-width:0!important;max-width:100%!important;background:transparent!important;background-color:transparent!important;color:inherit!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;-webkit-user-select:none!important;user-select:none!important}#rcr-payment-popup .rcr-date-row::selection,#rcr-payment-popup .rcr-date-row *::selection,#booking-lead-popup .rcr-date-row::selection,#booking-lead-popup .rcr-date-row *::selection{background:transparent!important;color:inherit!important}#rcr-payment-popup .rcr-date-row:active,#booking-lead-popup .rcr-date-row:active{background:#3f3f3f!important;border-color:rgb(183 254 2 / .55)!important}@media screen and (max-width:700px){#rcr-payment-popup .popup-content,#booking-lead-popup .popup-content{width:calc(100vw - 24px)!important;max-width:calc(100vw - 24px)!important;padding-left:16px!important;padding-right:16px!important}#rcr-payment-popup .rcr-date-row,#booking-lead-popup .rcr-date-row{font-size:clamp(15px, 4.2vw, 17px)!important;padding:12px 13px!important}}