/**handles:foreverapi-booking-city-css**/
@charset "UTF-8";*,:after,:before{box-sizing:border-box}body{margin:0;font-family:Montserrat,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:#111;background:#fff;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:Marcellus,serif;letter-spacing:.2px;margin:0}p{margin:0}button{font-family:inherit}#root{max-width:100%;width:100%}.container{max-width:1320px;margin:0 auto;padding:32px 20px}.hero{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:center;margin-top:8px}.hero-card{background:#f7f3ff;border:1px solid rgba(18,18,18,.08);border-radius:20px;padding:28px 28px 24px;box-shadow:0 10px 30px #0000000f}.hero-art{background:linear-gradient(160deg,#fff,#f7f3ff);border:1px solid rgba(18,18,18,.08);border-radius:20px;padding:22px;display:grid;align-items:flex-end;min-height:280px;position:relative;overflow:hidden;box-shadow:0 10px 30px #0000000f}.hero-art:after{content:"";position:absolute;inset:-40% -20% auto auto;width:66%;height:140%;background:radial-gradient(closest-side,rgba(146,92,237,.16),transparent 60%);transform:rotate(18deg)}.eyebrow{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px dashed rgba(146,92,237,.35);color:#6f32d6;border-radius:9999px;padding:6px 12px;font-size:13px;font-weight:600}.title{font-size:clamp(28px,4.5vw,44px);line-height:1.1;margin:14px 0 10px}.subtitle{color:#666;font-size:16px;margin:0 0 18px}.cta-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:8px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:14px;padding:12px 18px;font-weight:700;cursor:pointer;transition:all .2s}.btn-primary{background:#925ced;color:#fff;box-shadow:0 6px 16px #925ced59}.btn-primary:hover{background:#7a4bc4;transform:translateY(-1px)}.btn-ghost{background:#fff;border:1px solid rgba(146,92,237,.35);color:#6f32d6}.btn-ghost:hover{background:#f7f3ff}.tabs{margin-top:26px;background:#fff;border:1px solid rgba(18,18,18,.08);border-radius:14px;box-shadow:0 10px 30px #0000000f}.tab-head{display:flex;gap:6px;padding:8px;background:#f7f3ff}.tab-btn{flex:1;border:0;border-radius:0!important;padding:12px 14px;font-weight:700;background:#fff;color:#4b4b4b;cursor:pointer;transition:all .2s;text-transform:capitalize!important}.tab-btn[aria-selected=true]{background:#925ced;color:#fff}.tab-btn:hover:not([aria-selected=true]){background-color:#fff}.tab-panels{padding:18px}.next-banner{display:flex;flex-wrap:wrap;gap:10px;align-items:center;background:#f7f3ff;border:1px solid rgba(18,18,18,.08);border-radius:14px;padding:12px 14px;margin:6px 0 18px}.chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid rgba(18,18,18,.08);border-radius:9999px;padding:8px 12px;font-weight:600}.chip b{color:#6f32d6}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 14px}.select{position:relative}.select select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(0,0,0,.12);border-radius:10px;padding:10px 40px 10px 12px;font-weight:600;background:#fff;cursor:pointer}.select select:hover{border-color:#925ced}.select:after{content:"▾";position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;color:#666}.pill{background:#fff;border:1px solid rgba(0,0,0,.12);border-radius:9999px;padding:8px 12px;font-weight:600}.days{display:grid;gap:10px}.day{display:grid;grid-template-columns:140px 1fr auto;gap:14px;align-items:center;background:#fff;border:1px solid rgba(18,18,18,.08);border-radius:14px;padding:14px 16px}.day .date{font-weight:800}.day .city{font-weight:700;color:#6f32d6}.day .slots{color:#666}.day .book{white-space:nowrap}.muted{color:#666}.spacer{height:10px}.divider{height:1px;background:rgba(18,18,18,.08);margin:14px 0}.spinner{width:40px;height:40px;border:4px solid #f3f3f3;border-top:4px solid #925ced;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:768px){.hero{grid-template-columns:1fr}.day{grid-template-columns:1fr;gap:8px;align-items:flex-start}.day .book{justify-self:flex-start}}:root{--booking-modal-width:min(760px, calc(100vw - 48px));--booking-modal-height:min(760px, calc(100vh - 48px));--booking-modal-radius:20px;--booking-modal-header-height:68px;--booking-modal-padding:24px;--booking-modal-mobile-padding:16px;--booking-modal-border:rgba(18, 18, 18, .08);--booking-modal-shadow:0 24px 70px rgba(18, 18, 18, .22);--booking-surface-soft:#faf7ff;--booking-text-muted:#6e6875}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem;animation:fadeIn .2s ease-out;overscroll-behavior:contain}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal{background:#fff;border-radius:var(--booking-modal-radius);box-shadow:var(--booking-modal-shadow);width:var(--booking-modal-width);height:var(--booking-modal-height);max-width:var(--booking-modal-width);max-height:var(--booking-modal-height);overflow:hidden;animation:slideUp .3s ease-out;display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.7)}.modal--sm{width:min(460px,100vw - 48px);max-width:min(460px,100vw - 48px)}.modal--lg,.modal--md{width:var(--booking-modal-width);max-width:var(--booking-modal-width)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal__header{position:relative;flex:0 0 var(--booking-modal-header-height);display:flex;align-items:center;justify-content:center;min-height:var(--booking-modal-header-height);padding:0 4rem;border-bottom:1px solid var(--booking-modal-border);background:rgba(255,255,255,.96);z-index:2}.modal__title{font-size:1rem;line-height:1.25;font-weight:800;color:#111;margin:0;text-transform:initial;text-align:center;overflow-wrap:anywhere}.modal__close{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:0 0;border:none;border-radius:999px;font-size:1.35rem;color:#666;cursor:pointer;transition:all .2s}.modal__close:hover{background:#f7f3ff;color:#111}.modal__body{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:var(--booking-modal-padding);background:#fff}.modal__body::-webkit-scrollbar{width:8px}.modal__body::-webkit-scrollbar-track{background:#f7f3ff}.modal__body::-webkit-scrollbar-thumb{background:#666;border-radius:4px}.modal__body::-webkit-scrollbar-thumb:hover{background:#925ced}@media (max-width:640px){.modal-overlay{align-items:stretch;justify-content:stretch;padding:0}.modal,.modal--lg,.modal--md,.modal--sm{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0;border:0}.modal__header{min-height:calc(var(--booking-modal-header-height) + env(safe-area-inset-top));flex-basis:calc(var(--booking-modal-header-height) + env(safe-area-inset-top));padding:env(safe-area-inset-top) 3.75rem 0}.modal__close{right:max(12px,env(safe-area-inset-right));top:calc(env(safe-area-inset-top) + 34px)}.modal__body{padding:var(--booking-modal-mobile-padding);padding-bottom:max(var(--booking-modal-mobile-padding),env(safe-area-inset-bottom))}}.button{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;border:none;border-radius:10px;cursor:pointer;transition:all .2s;font-family:inherit;white-space:nowrap;min-height:44px}.button:focus-visible{outline:2px solid #925ced;outline-offset:2px}.button:disabled{opacity:.5;cursor:not-allowed}.button--primary{background:#925ced;color:#fff}.button--primary:hover:not(:disabled){background:#732ee8;transform:translateY(-1px);box-shadow:0 4px 12px #925ced4d}.button--primary:active:not(:disabled){transform:translateY(0)}.button--secondary{background:#fff;color:#925ced;border:2px solid #925ced}.button--secondary:hover:not(:disabled){background:rgba(146,92,237,.05)}.button--ghost{background:0 0;color:#925ced}.button--ghost:hover:not(:disabled){background:rgba(146,92,237,.1)}.button--danger{background:#ef4444;color:#fff}.button--danger:hover:not(:disabled){background:#dc2626}.button--sm{padding:.5rem 1rem;font-size:.875rem}.button--md{padding:.75rem 1.5rem;font-size:.9rem}.button--lg{padding:1rem 2rem;font-size:1.125rem}.button--full-width{width:100%}.button--loading{pointer-events:none}.button__spinner{position:absolute;display:flex;align-items:center;justify-content:center}.button__spinner svg{width:1.25rem;height:1.25rem;animation:spin .8s linear infinite}.button__content--hidden{visibility:hidden}.booking-form{display:flex;flex-direction:column;gap:1.35rem}.booking-form__summary{background:var(--booking-surface-soft,#f7f3ff);border:1px solid rgba(146,92,237,.18);border-radius:16px;padding:0;overflow:hidden}.booking-form__summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0}.booking-form__summary-item{display:grid;gap:.28rem;min-width:0;padding:1rem 1.05rem;border-bottom:0}.booking-form__summary-item+.booking-form__summary-item{border-left:1px solid rgba(146,92,237,.16)}.booking-form__summary-item:last-child{border-bottom:none;padding-bottom:0}.booking-form__summary-item .label{color:#666;font-size:.72rem;line-height:1.2;font-weight:700}.booking-form__summary-item .value{color:#111;font-weight:800;font-size:.86rem;line-height:1.25;text-align:left;overflow-wrap:anywhere}.booking-form__summary-item .value.city-badge{padding:.25rem .75rem;border-radius:9999px;color:#fff;font-size:.75rem}.booking-form__content{display:flex;flex-direction:column;gap:1.05rem}.person-selector{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.25rem}.person-chip{min-width:40px;min-height:44px;padding:8px 12px;background:#fff;border:2px solid rgba(18,18,18,.08);border-radius:10px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.person-chip:hover{border-color:#925ced;background:#f5f0ff}.person-chip--active{background:#925ced;color:#fff;border-color:#925ced}.person-chip--active:hover{background:#7a4bc4;border-color:#7a4bc4}.visit-reasons{display:flex;flex-direction:column;gap:.5rem;margin-top:.25rem}.radio-option{display:flex;align-items:center;gap:.5rem;padding:12px 16px;background:#fff;border:2px solid rgba(18,18,18,.08);border-radius:10px;cursor:pointer;transition:all .2s}.radio-option:hover{border-color:#925ced;background:#f5f0ff}.radio-option input[type=radio]{margin:0;cursor:pointer;width:18px;height:18px;accent-color:#925ced}.radio-option input[type=radio]:checked+.radio-label{font-weight:600;color:#6f32d6}.radio-option:has(input:checked){background:#f5f0ff;border-color:#925ced}.radio-label{font-size:.875rem;color:#111;flex:1;-webkit-user-select:none;user-select:none}.form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:0}.form-group--checkbox{margin-top:.5rem}label.form-label{font-size:.875rem;font-weight:600;color:#111;position:relative;left:0;top:0;transform:unset}label.form-label .required{color:#ef4444}input.form-input,textarea.form-textarea{min-height:44px;padding:.75rem 1rem;border:2px solid rgba(18,18,18,.08);border-radius:10px;font-size:1rem;font-family:inherit;transition:all .2s;background:#fff;min-width:initial}input.form-input:focus,textarea.form-textarea:focus{outline:0;border-color:#925ced;box-shadow:0 0 0 3px #925ced1a}input.form-input:disabled,textarea.form-textarea:disabled{background:#f7f3ff;cursor:not-allowed;opacity:.6}input.form-input::placeholder,textarea.form-textarea::placeholder{color:#666}input.form-input--error,textarea.form-textarea--error{border-color:#ef4444}input.form-input--error:focus,textarea.form-textarea--error:focus{box-shadow:0 0 0 3px #ef44441a}.form-textarea{resize:vertical;min-height:78px}.form-error{font-size:.75rem;color:#ef4444;margin-top:-.25rem}.form-group label.form-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;top:0;left:0;transform:initial;pointer-events:all}.form-group label.form-checkbox input[type=checkbox]{width:22px;height:22px;cursor:pointer;accent-color:#925ced;min-width:initial;pointer-events:auto}.form-group label.form-checkbox span{font-size:.82rem;line-height:1.35;color:#111;font-weight:400}.form-group label.form-checkbox span a{text-decoration:underline}.booking-form__actions{display:grid;gap:.85rem;margin:0 calc(-1 * var(--booking-modal-padding,24px)) calc(-1 * var(--booking-modal-padding,24px));padding:.9rem var(--booking-modal-padding,24px) 1rem;border-top:1px solid rgba(18,18,18,.08);background:rgba(255,255,255,.96);position:sticky;bottom:calc(-1 * var(--booking-modal-padding,24px));z-index:3}.booking-form__newsletter{margin:0}.booking-form__action-buttons{display:flex;gap:.75rem}.booking-form__action-buttons .button{flex:1 1 0;min-height:44px}@media (max-width:640px){.booking-form__actions{margin:0 calc(-1 * var(--booking-modal-mobile-padding,16px)) calc(-1*max(var(--booking-modal-mobile-padding,16px),env(safe-area-inset-bottom)));padding:.85rem var(--booking-modal-mobile-padding,16px) max(.85rem,env(safe-area-inset-bottom))}.booking-form__action-buttons{display:grid;grid-template-columns:86px minmax(0,1fr)}}.booking-form__optional{width:100%;border:1px solid rgba(18,18,18,.08);border-radius:14px;background:#fff;overflow:hidden}.booking-form__optional summary{width:100%;min-height:52px;display:flex;align-items:center;padding:0 1.1rem;color:#111;font-weight:800;cursor:pointer;list-style:none}.booking-form__optional summary::-webkit-details-marker{display:none}.booking-form__optional summary:after{content:"+";margin-left:auto;color:#666;font-size:1.2rem;font-weight:600}.booking-form__optional summary:focus-visible{outline:2px solid #925ced;outline-offset:-4px}.booking-form__optional[open] summary{border-bottom:1px solid rgba(18,18,18,.08)}.booking-form__optional[open] summary:after{content:"-"}.booking-form__optional-content{display:grid;gap:1rem;padding:1rem}@media (max-width:520px){.booking-form__summary-grid{grid-template-columns:1fr}.booking-form__summary-item+.booking-form__summary-item{border-left:0;border-top:1px solid rgba(146,92,237,.16)}}.duplicate-warning{text-align:center}.duplicate-warning__icon{width:4rem;height:4rem;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f59e0b 0,#fbbf24 100%);border-radius:50%;color:#fff}.duplicate-warning__title{font-size:1.5rem;font-weight:700;color:#111;margin:0 0 1rem}.duplicate-warning__description{color:#666;margin:0 0 1rem;line-height:1.6}.duplicate-warning__subtitle{font-size:.9rem;font-weight:600;color:#666;margin:0 0 .5rem;text-align:left}.duplicate-warning__booking{background:#f7f3ff;border:1px solid 1px solid rgba(18,18,18,.08);border-radius:14px;padding:1.5rem;margin-bottom:1.5rem;text-align:left}.duplicate-warning__booking--new{background:#f0f9ff;border-color:#0ea5e9}.duplicate-warning__booking-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid 1px solid rgba(18,18,18,.08)}.duplicate-warning__booking-item:last-child{border-bottom:none}.duplicate-warning__booking-item .label{color:#666;font-size:.875rem;font-weight:500}.duplicate-warning__booking-item .value{color:#111;font-weight:600}.duplicate-warning__hint{color:#666;font-size:.875rem;margin:0 0 2rem}.duplicate-warning__actions{display:flex;gap:.75rem;justify-content:center}@media (max-width:640px){.duplicate-warning__actions{flex-direction:column}}.error-modal{text-align:center}.error-modal__icon{width:4rem;height:4rem;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#ef4444 0,#f87171 100%);border-radius:50%;color:#fff}.error-modal__title{font-size:1.5rem;font-weight:700;color:#111;margin:0 0 1rem}.error-modal__message{color:#666;margin:0 0 2rem;line-height:1.6;white-space:pre-line}.error-modal__actions{display:flex;gap:.75rem;justify-content:center}@media (max-width:640px){.error-modal__actions{flex-direction:column}}.otp-input{display:flex;gap:.75rem;justify-content:center}.otp-input--error .otp-input__field{border-color:#ef4444;animation:shake .3s}.otp-input__field{width:3rem;height:3.5rem;text-align:center;font-size:1.5rem;font-weight:700;border:2px solid 1px solid rgba(18,18,18,.08);border-radius:10px;background:#fff;transition:all .2s;min-width:initial;padding:0;margin:0}.otp-input__field:focus{outline:0;border-color:#925ced;box-shadow:0 0 0 3px #925ced1a}.otp-input__field:disabled{background:#f7f3ff;cursor:not-allowed}@media (max-width:640px){.otp-input__field{width:2.5rem;height:3rem;font-size:1.25rem}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.otp-modal{text-align:center;padding:1rem 0}.otp-modal__icon{width:4rem;height:4rem;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#925ced 0,#b18af2 100%);border-radius:50%;color:#fff}.otp-modal__title{font-size:1.5rem;font-weight:700;color:#111;margin:0 0 .5rem}.otp-modal__description{color:#666;margin:0 0 2rem;line-height:1.6}.otp-modal__description strong{color:#111;font-weight:600}.otp-modal__input{margin-bottom:1rem}.otp-modal__error{padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626;font-size:.875rem;margin-bottom:1rem}.otp-modal__success{padding:.75rem 1rem;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:10px;color:#16a34a;font-size:.875rem;margin-bottom:1rem}.otp-modal__footer{margin-top:2rem;padding-top:1.5rem;border-top:1px solid 1px solid rgba(18,18,18,.08)}.otp-modal__hint{color:#666;font-size:.875rem;margin:0 0 .5rem}.slot-selection{min-height:100%;display:flex;flex-direction:column;padding-bottom:0}.slot-selection__summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:1.5rem;overflow:hidden;background:var(--booking-surface-soft,#f7f3ff);border:1px solid rgba(146,92,237,.18);border-radius:16px}.slot-selection__summary-item{display:grid;gap:.25rem;min-width:0;padding:.95rem 1rem}.slot-selection__summary-item+.slot-selection__summary-item{border-left:1px solid rgba(146,92,237,.16)}.slot-selection__summary-item span{color:#666;font-size:.74rem;line-height:1.2}.slot-selection__summary-item strong{color:#111;font-size:.88rem;line-height:1.25;overflow-wrap:anywhere}.slot-selection__meta{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap}.slot-selection__city{padding:.25rem .75rem;border-radius:9999px;font-size:.75rem;font-weight:600;color:#fff}.slot-selection__date{color:#666;font-size:.875rem;text-transform:capitalize}.slot-selection__loading{text-align:center;padding:3rem 1rem}.slot-selection__loading .spinner{width:2.5rem;height:2.5rem;margin:0 auto 1rem;border:3px solid #f7f3ff;border-top-color:#925ced;border-radius:50%;animation:spin .8s linear infinite}.slot-selection__loading p{color:#666;margin:0}.slot-selection__slots{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:.7rem;margin-bottom:1rem}.slot-selection__slots--disabled{opacity:.6}button.slot-card{background:#fff;border:2px solid 1px solid rgba(18,18,18,.08);border-radius:10px;min-height:46px;padding:.72rem 1rem;text-align:center;cursor:pointer;transition:all .2s;border-width:2px;border-style:solid;border-color:#12121214;background-color:initial}button.slot-card:hover:not(button.slot-card--disabled){border-color:#925ced;transform:translateY(-1px);box-shadow:0 6px 14px #925ced24}button.slot-card:focus-visible{outline:0;border-color:#925ced;box-shadow:0 0 0 3px #925ced2e}button.slot-card--selected{border-color:#925ced;background:rgba(146,92,237,.15)}button.slot-card--disabled{cursor:not-allowed;opacity:.5}.slot-card__time{font-weight:700;color:#111;font-size:.95rem;margin-bottom:0}.slot-card__availability{font-size:.75rem;color:#666}.slot-selection__empty{text-align:center;padding:3rem 1rem;color:#666}.slot-selection__empty svg{margin-bottom:1rem;opacity:.5}.slot-selection__empty p{margin:0}.slot-selection__booked{margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid 1px solid rgba(18,18,18,.08)}.slot-selection__booked summary{cursor:pointer;color:#666;font-size:.875rem;list-style:none;-webkit-user-select:none;user-select:none}.slot-selection__booked summary::-webkit-details-marker{display:none}.slot-selection__booked summary:hover{color:#111}.slot-selection__booked .slot-selection__slots{margin-top:1rem}.slot-selection__footer{position:sticky;bottom:calc(-1 * var(--booking-modal-padding,24px));z-index:3;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;margin:auto calc(-1 * var(--booking-modal-padding,24px)) calc(-1 * var(--booking-modal-padding,24px));padding:1rem var(--booking-modal-padding,24px);border-top:1px solid 1px solid rgba(18,18,18,.08);background:rgba(255,255,255,.96);text-align:left}.slot-selection__footer p{margin:0;color:#666;font-size:.875rem;font-weight:600}.slot-selection__footer-actions{display:flex;gap:.65rem}.slot-selection__footer-actions .button{min-width:86px}.slot-selection__footer-actions .button--primary,.slot-selection__footer-actions .button:not(.button--ghost):not(.button--secondary):not(.button--danger){min-width:176px}.slot-selection__slot-hint{margin-bottom:1rem;text-align:center}.slot-selection__slot-hint p{margin:0;color:#666;font-size:.875rem;font-weight:600}@keyframes spin{to{transform:rotate(360deg)}}.slot-selection__reason{margin-bottom:1.25rem;padding-bottom:0;border-bottom:0;text-align:center}.slot-selection__reason-question{margin:0 0 .75rem;color:#111;font-weight:600}.slot-selection__reason-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:.85rem;width:100%;max-width:none;margin:0 auto}.slot-selection__notice{max-width:560px;margin:.9rem auto 0;padding:.65rem .9rem;border-radius:14px;text-align:center;color:#111;background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.35);font-size:.875rem;font-weight:600}@media (min-width:640px){.slot-selection__reason-options{flex-direction:row;max-width:560px}button.reason-chip{flex:1 1 0}}button.reason-chip{min-height:148px;width:100%;text-align:left;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:.55rem;border:2px solid rgba(18,18,18,.1);background:#fff;color:#111;border-radius:12px;padding:1rem;font-weight:700;cursor:pointer;transition:all .2s}button.reason-chip:hover{border-color:#925ced}button.reason-chip:focus-visible{outline:0;box-shadow:0 0 0 3px #925ced33;border-color:#925ced}button.reason-chip--active{border-color:#925ced;background:rgba(146,92,237,.12);color:#925ced}button.reason-chip--disabled,button.reason-chip:disabled{opacity:.5;cursor:not-allowed;border-color:#1212121a;color:#666;background:#fff}button.reason-chip strong{color:#111;font-size:1.05rem;line-height:1.15}button.reason-chip span{color:#666;font-size:.88rem;line-height:1.35;font-weight:500}.slot-selection__hint{text-align:center;padding:1.25rem .5rem;color:#666}@media (max-width:700px){.slot-selection__reason-options,.slot-selection__summary{grid-template-columns:1fr}.slot-selection__summary-item+.slot-selection__summary-item{border-left:0;border-top:1px solid rgba(146,92,237,.16)}button.reason-chip{min-height:86px}}@media (max-width:480px){.slot-selection__slots{grid-template-columns:repeat(2,minmax(0,1fr))}.slot-selection__footer{grid-template-columns:1fr;gap:.7rem;margin:auto calc(-1 * var(--booking-modal-mobile-padding,16px)) calc(-1*max(var(--booking-modal-mobile-padding,16px),env(safe-area-inset-bottom)));padding:.85rem var(--booking-modal-mobile-padding,16px) max(.85rem,env(safe-area-inset-bottom))}.slot-selection__footer-actions{display:grid;grid-template-columns:86px minmax(0,1fr)}}.success-modal{text-align:center}.success-modal__icon{width:4rem;height:4rem;margin:0 auto 1.5rem;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#10b981 0,#34d399 100%);border-radius:50%;color:#fff;animation:scaleIn .5s ease-out}.success-modal__title{font-size:1.5rem;font-weight:700;color:#111;margin:0 0 1rem}.success-modal__description{color:#666;margin:0 0 1.5rem;line-height:1.6}.success-modal__booking{background:#f7f3ff;border:1px solid 1px solid rgba(18,18,18,.08);border-radius:14px;padding:1.5rem;margin-bottom:1.5rem;text-align:left}.success-modal__booking-item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid 1px solid rgba(18,18,18,.08)}.success-modal__booking-item:last-child{border-bottom:none}.success-modal__booking-item .label{color:#666;font-size:.875rem;font-weight:500}.success-modal__booking-item .value{color:#111;font-weight:600}.success-modal__info{padding:1rem;background:#dbeafe;border:1px solid #bfdbfe;border-radius:10px;margin-bottom:1.5rem}.success-modal__info p{margin:0;color:#1e40af;font-size:.875rem;line-height:1.5}.success-modal__info strong{font-weight:600}.success-modal__actions{margin-top:2rem}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.walk-in-info{display:flex;flex-direction:column;gap:1rem;text-align:center}.walk-in-info__badge{align-self:center;padding:.35rem .85rem;border-radius:9999px;color:#111;background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.35);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.walk-in-info__message{padding:1rem;border-radius:14px;color:#111;background:rgba(245,158,11,.1);border:1px solid rgba(245,158,11,.25)}.walk-in-info__message p{margin:0}.walk-in-info__message p+p{margin-top:.45rem}.walk-in-info__lead{font-weight:800}.walk-in-info__summary{display:grid;gap:.65rem;padding:1rem;border-radius:14px;background:var(--booking-surface-soft,#f7f3ff);text-align:left}.walk-in-info__summary-item{display:flex;justify-content:space-between;gap:1rem;font-size:.92rem;line-height:1.35}.walk-in-info__summary-item .label{color:#666;font-weight:600;flex:0 0 auto}.walk-in-info__summary-item .value{color:#111;font-weight:700;text-align:right}.walk-in-info__address{margin:-.25rem 0 0;color:#666;font-size:.9rem;line-height:1.45}@media (max-width:480px){.walk-in-info__summary-item{flex-direction:column;gap:.25rem}.walk-in-info__summary-item .value{text-align:left}}.city-events-block{width:100%;border:1px solid rgba(18,18,18,.14);border-radius:14px;background:#fff;padding:24px}.city-events-block--error,.city-events-block--loading{display:flex;min-height:180px;align-items:center;justify-content:center}.city-events-block--error{color:#ef4444;font-weight:600}.city-events-block__toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.city-events-block__filters{display:flex;flex-wrap:wrap;gap:8px}.city-events-block__filter{border:1px solid rgba(18,18,18,.14);border-radius:9999px;background:#fff;color:#111;padding:8px 16px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease}.city-events-block__filter--active,.city-events-block__filter:hover{border-color:#925ced;background:#925ced;color:#fff}.city-events-block__empty{color:#666;padding:48px 0;text-align:center}.city-events-block__section,.city-events-block__sections{display:flex;flex-direction:column}.city-events-block__sections{gap:30px}.city-events-block__next{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:16px;align-items:center;min-height:120px;border:1px solid #925ced;border-radius:14px;background:#f7f3ff;padding:24px 22px;margin-bottom:16px;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.city-events-block__card--clickable{cursor:pointer}.city-events-block__card--clickable:hover{border-color:#7a4bc4;box-shadow:0 8px 24px #925ced24}.city-events-block__card--clickable:focus-visible{outline:3px solid rgba(146,92,237,.3);outline-offset:3px}.city-events-block__card--disabled{cursor:not-allowed}.city-events-block__next-date{display:flex;flex-direction:column;gap:4px}.city-events-block__next-date strong{color:#111;font-family:Marcellus,serif;font-size:1.9rem;font-weight:400;line-height:1}.city-events-block__next-date span{color:#666;font-size:.75rem;text-transform:capitalize}.city-events-block__eyebrow{color:#925ced;display:block;font-size:.75rem;font-weight:800;letter-spacing:.12em;margin-bottom:4px;text-transform:uppercase}.city-events-block__next-info h3{color:#111;font-family:Marcellus,serif;font-size:1.45rem;font-weight:400;line-height:1.2;margin:0 0 6px}.city-events-block__next-info p,.city-events-block__row p{color:#666;font-size:.875rem;line-height:1.45}.city-events-block__primary-action{display:inline-flex;align-items:center;justify-content:center;background:#111;color:#fff;min-width:102px;padding:15px 22px;font-weight:700;transition:background .2s ease}.city-events-block__card--clickable:hover .city-events-block__primary-action{background:#7a4bc4}.city-events-block__card--disabled .city-events-block__primary-action,.city-events-block__card--disabled .city-events-block__row-action{opacity:.45}.city-events-block__list{display:flex;flex-direction:column}.city-events-block__row{display:grid;grid-template-columns:120px minmax(0,1fr) auto;gap:16px;align-items:center;min-height:72px;border-bottom:1px solid rgba(18,18,18,.12);padding:16px 6px;transition:background .2s ease}.city-events-block__row.city-events-block__card--clickable:hover{background:rgba(146,92,237,.05)}.city-events-block__row time{color:#111;font-size:1rem;font-weight:800}.city-events-block__row h4{color:#111;font-family:Montserrat,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:1rem;font-weight:800;line-height:1.25;margin:0 0 4px}.city-events-block__row-action{color:#925ced;font-size:.875rem;font-weight:800;padding:10px 0 10px 18px;text-decoration:underline;text-underline-offset:3px}.city-events-block__row.city-events-block__card--clickable:hover .city-events-block__row-action,.city-events-block__show-all:hover{color:#7a4bc4}.city-events-block__show-all{display:block;border:0;background:0 0;color:#925ced;cursor:pointer;font-size:.875rem;font-weight:800;margin:24px auto 4px;text-decoration:underline}@media (max-width:760px){.city-events-block{padding:18px}.city-events-block__toolbar{align-items:flex-start;flex-direction:column-reverse}.city-events-block__next,.city-events-block__row{grid-template-columns:1fr}.city-events-block__primary-action,.city-events-block__row-action{justify-self:stretch;text-align:center}.city-events-block__row-action{background:0 0;color:#925ced;display:inline-block;min-height:auto;padding:6px 0;text-align:left}.city-events-block__row.city-events-block__card--clickable:hover .city-events-block__row-action{color:#7a4bc4}.city-events-block__card--disabled .city-events-block__row-action{background:0 0;color:#666;opacity:.65}}