.react-calendar{background:#fff;border:1px solid #a0a096;width:350px;max-width:100%;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{margin:-.5em;display:flex}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar :before,.react-calendar :after{box-sizing:border-box}.react-calendar button{border:0;outline:none;margin:0}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{height:44px;margin-bottom:1em;display:flex}.react-calendar__navigation button{background:0 0;min-width:44px}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{font:inherit;justify-content:center;align-items:center;font-size:.75em;font-weight:700;display:flex}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{text-align:center;max-width:100%;font:inherit;background:0 0;padding:10px 6.6667px;font-size:.833em}.react-calendar__tile:disabled{color:#ababab;background-color:#f0f0f0}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{color:#fff;background:#006edc}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}
.IxsKOa_calendarWrapper{color:var(--green);margin-bottom:1.5rem}.IxsKOa_calendar{background:#fff;border:1px solid #e0e0e0;border-radius:8px;width:100%;min-width:100%;max-width:100%;padding:.5rem;font-family:Roboto,sans-serif;line-height:1.5}.IxsKOa_calendarLoadingOverlay{z-index:10;pointer-events:none;background:#ffffffd9;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}@keyframes IxsKOa_spin{to{transform:rotate(360deg)}}.IxsKOa_calendar .react-calendar__tile{text-align:center;border-radius:4px;justify-content:center;align-items:center;height:44px;padding:.8em .5em;display:flex;position:relative}.IxsKOa_calendar .react-calendar__tile:disabled{opacity:.6;background-color:#f9f9f9}.IxsKOa_calendar .react-calendar__month-view__days__day--weekend{color:var(--red)}.IxsKOa_availableDate{background-color:var(--green);border-radius:50%;width:8px;height:8px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.IxsKOa_available{cursor:pointer;color:var(--green);background-color:#24311b0d;font-weight:700}.IxsKOa_available:hover{background-color:#24311b1a}.IxsKOa_unavailableSpots{position:relative;color:var(--red)!important;cursor:not-allowed!important;background-color:#e74c3c33!important}.IxsKOa_unavailableSpots:hover{background-color:#e74c3c4d!important}.IxsKOa_unavailableSpots:after{content:"✕";color:var(--red);font-size:10px;position:absolute;top:6px;right:6px}.IxsKOa_availableMonth{cursor:pointer;color:var(--green);background-color:#24311b0d;font-weight:700;position:relative}.IxsKOa_availableMonth:hover{background-color:#24311b1a!important}.IxsKOa_calendar .react-calendar__year-view__months__month.availableMonth:hover{background-color:#24311b1a!important}.IxsKOa_calendar .react-calendar__tile--active:enabled:hover{background-color:#24311b1a!important}.IxsKOa_availableMonth:after{content:"";background-color:var(--green);border-radius:50%;width:8px;height:8px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.IxsKOa_selected{background-color:var(--green)!important;color:#fff!important}.IxsKOa_selected:hover{background-color:var(--green)!important}.IxsKOa_unavailable{color:#ccc;background-color:#f9f9f9}.IxsKOa_calendar .react-calendar__navigation{margin-bottom:1rem}.IxsKOa_calendar .react-calendar__navigation__label{color:var(--green)}.IxsKOa_calendar .react-calendar__navigation button{background:0 0;border-radius:4px;min-width:44px;height:44px;font-size:1.2rem}.IxsKOa_calendar .react-calendar__navigation__next-button{color:var(--green)}.IxsKOa_calendar .react-calendar__navigation__prev-button{color:var(--green)}.IxsKOa_calendar .react-calendar__navigation button:enabled:hover{background-color:#24311b0d}.IxsKOa_calendar .react-calendar__navigation button:enabled:focus{background-color:#24311b1a}.IxsKOa_calendar .react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;margin-bottom:.5rem;font-size:.8rem;font-weight:700}.IxsKOa_calendar .react-calendar__month-view__weekdays__weekday{padding:.5rem}.IxsKOa_calendar .react-calendar__month-view__weekdays__weekday abbr{text-decoration:none}.IxsKOa_calendarLoading{background-color:#f5f5f5b3;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:2rem;display:flex}.IxsKOa_loadingSpinner{border:4px solid #24311b1a;border-top-color:var(--green);border-radius:50%;width:40px;height:40px;margin-bottom:1rem;animation:1s linear infinite IxsKOa_spin}.IxsKOa_legend{flex-wrap:wrap;justify-content:center;gap:15px;margin-top:1rem;font-size:.9rem;display:flex}.IxsKOa_legendItem{align-items:center;gap:5px;display:flex}.IxsKOa_legendColor{border-radius:4px;width:16px;height:16px}.IxsKOa_legendColor.IxsKOa_available{background-color:#24311b0d;border:1px solid #24311b1a}.IxsKOa_legendColor.IxsKOa_unavailableSpots{background-color:#e74c3c33;border:1px solid #e74c3c66}.IxsKOa_legendColor.IxsKOa_selected{background-color:var(--green)}.IxsKOa_legendColor.IxsKOa_unavailable{background-color:#f9f9f9;border:1px solid #eee}@media (max-width:480px){.IxsKOa_calendar .react-calendar__tile{height:38px;padding:.6em .3em;font-size:.9rem}.IxsKOa_calendar .react-calendar__navigation button{min-width:38px;height:38px;font-size:1rem}.IxsKOa_availableDate{width:6px;height:6px}.IxsKOa_legend{font-size:.8rem}.IxsKOa_legendColor{width:12px;height:12px}}
.Wyv5Rq_bookingDetailContainer{padding-top:var(--header-height);background-color:var(--beige);min-height:100vh;color:var(--green);padding-bottom:3rem}.Wyv5Rq_backLink{max-width:1200px;margin:0 auto;padding:2rem 2rem 1rem}.Wyv5Rq_backLink a{color:var(--green);font-weight:500;text-decoration:none;transition:color .2s}.Wyv5Rq_backLink a:hover{color:var(--orange);text-decoration:underline}.Wyv5Rq_bookingDetailContent{gap:2rem;max-width:1200px;margin:0 auto;padding:0 2rem 2rem;display:flex}.Wyv5Rq_productInfo{flex:1;max-width:600px}.Wyv5Rq_productTitle{color:var(--green);margin-bottom:1.5rem;font-size:2.5rem}.Wyv5Rq_productImageContainer{border-radius:10px;margin-bottom:1.5rem;overflow:hidden;box-shadow:0 8px 20px #0000001a}.Wyv5Rq_productImage{width:100%;height:auto;display:block}.Wyv5Rq_placeholderImage{color:#666;background-color:#e0e0e0;justify-content:center;align-items:center;width:100%;height:300px;font-style:italic;display:flex}.Wyv5Rq_productPrice{color:var(--green);margin-bottom:1.5rem;font-size:1.1rem}.Wyv5Rq_price{color:var(--orange);margin-right:5px;font-size:1.5rem;font-weight:700}.Wyv5Rq_productDescription{color:var(--green);font-size:1.1rem;line-height:1.6}.Wyv5Rq_productDescription h2{margin:1.5rem 0 1rem;font-size:1.5rem}.Wyv5Rq_productDescription p{margin-bottom:1rem}.Wyv5Rq_productDescription ul,.Wyv5Rq_productDescription ol{margin:1rem 0;padding-left:1.5rem}.Wyv5Rq_productDescription li{margin-bottom:.5rem}.Wyv5Rq_bookingForm{max-width:450px;top:calc(var(--header-height) + 2rem);align-self:flex-center;background-color:#fff;border-radius:10px;flex:1;padding:2rem;position:sticky;box-shadow:0 8px 20px #0000001a}.Wyv5Rq_bookingForm h2{color:var(--green);text-align:center;margin-bottom:1.5rem;font-size:1.8rem}.Wyv5Rq_bookingForm h3{color:var(--green);margin-bottom:1rem;font-size:1.2rem}.Wyv5Rq_calendarContainer,.Wyv5Rq_timeSlotContainer{margin-bottom:1.5rem}.Wyv5Rq_timeSlotList{flex-wrap:wrap;gap:10px;display:flex}.Wyv5Rq_timeSlotButton{color:var(--green);cursor:pointer;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;padding:10px 15px;transition:all .2s}.Wyv5Rq_timeSlotButton:hover{background-color:#e9e9e9}.Wyv5Rq_timeSlotButton.Wyv5Rq_selected{background-color:var(--green);color:#fff;border-color:var(--green)}.Wyv5Rq_peopleContainer{margin-bottom:2rem}.Wyv5Rq_peopleSelector{align-items:center;gap:10px;display:flex}.Wyv5Rq_peopleButton{width:40px;height:40px;color:var(--green);cursor:pointer;background-color:#f5f5f5;border:1px solid #ddd;border-radius:4px;justify-content:center;align-items:center;font-size:1.5rem;display:flex}.Wyv5Rq_peopleButton:disabled{opacity:.5;cursor:not-allowed}.Wyv5Rq_peopleInput{background-color:var(--green);color:#f5f5f5;text-align:center;-webkit-appearance:none;appearance:textfield;border:1px solid #ddd;border-radius:4px;width:60px;height:40px;margin:0;font-size:1.2rem}.Wyv5Rq_peopleInput::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.Wyv5Rq_peopleInput::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.Wyv5Rq_peopleInput[type=number]{-moz-appearance:textfield}.Wyv5Rq_maxPeopleInfo{color:#666;margin-top:.5rem;font-size:.9rem}.Wyv5Rq_bookingSummary{background-color:#f9f9f9;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.Wyv5Rq_bookingSummary h3{margin-bottom:1rem;font-size:1.2rem}.Wyv5Rq_summaryItem{border-bottom:1px solid #eee;justify-content:space-between;margin-bottom:.5rem;padding-bottom:.5rem;display:flex}.Wyv5Rq_summaryItem:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.Wyv5Rq_summaryLabel{font-weight:500}.Wyv5Rq_summaryTotal{color:var(--orange);font-size:1.3rem;font-weight:700}.Wyv5Rq_bookingError{color:var(--red);background-color:#a22d221a;border-radius:4px;margin-bottom:1rem;padding:.75rem;font-weight:500}.Wyv5Rq_bookingButton{background-color:var(--green);color:#fff;cursor:pointer;border:none;border-radius:8px;width:100%;padding:1rem;font-size:1.1rem;font-weight:700;transition:background-color .2s}.Wyv5Rq_bookingButton:hover{background-color:#1a2615}.Wyv5Rq_bookingButton:disabled{cursor:not-allowed;background-color:#ccc}.Wyv5Rq_outOfStockMessage{color:#fff;text-align:center;background-color:#f44336;border-radius:4px;margin:1rem 0;padding:1rem;font-weight:700}.Wyv5Rq_bookingNotAvailable{text-align:center;background-color:#f8f8f8;border:1px solid #ddd;border-radius:4px;margin:2rem 0;padding:2rem}.Wyv5Rq_timeSlotItem{flex-direction:column;margin-bottom:.5rem;display:flex}.Wyv5Rq_availabilityIndicator{color:#666;margin-top:.25rem;margin-left:.5rem;font-size:.8rem}.Wyv5Rq_availabilityInfo{text-align:center;background-color:#e3f2fd;border-radius:4px;margin-bottom:1rem;padding:.5rem;font-weight:700}.Wyv5Rq_loadingMessage{text-align:center;color:#666;padding:1rem;font-style:italic}.Wyv5Rq_noTimeSlotsMessage{text-align:center;color:#e65100;background-color:#fff3e0;border-radius:4px;margin:1rem 0;padding:1rem}.Wyv5Rq_errorMessage{color:#e53e3e;text-align:center;background-color:#fed7d7;border-radius:5px;flex-direction:column;align-items:center;gap:10px;margin-bottom:15px;padding:15px;display:flex}.Wyv5Rq_retryButton{color:#fff;cursor:pointer;background-color:#e53e3e;border:none;border-radius:4px;margin-top:10px;padding:8px 16px;font-weight:500;transition:background-color .2s}.Wyv5Rq_retryButton:hover{background-color:#c53030}@media (max-width:991px){.Wyv5Rq_bookingDetailContainer{padding-top:var(--header-height-mobile)}.Wyv5Rq_bookingDetailContent{flex-direction:column}.Wyv5Rq_productInfo{max-width:100%}.Wyv5Rq_bookingForm{max-width:100%;position:static}}@media (max-width:768px){.Wyv5Rq_backLink{padding:1.5rem 1.5rem 1rem}.Wyv5Rq_bookingDetailContent{padding:0 1.5rem 1.5rem}.Wyv5Rq_productTitle{font-size:2rem}.Wyv5Rq_bookingForm{padding:1.5rem}.Wyv5Rq_bookingForm h2{font-size:1.5rem}.Wyv5Rq_timeSlotList{flex-direction:column}.Wyv5Rq_timeSlotButton{text-align:center;width:100%}}@media (max-width:480px){.Wyv5Rq_backLink{padding:1rem 1rem .5rem}.Wyv5Rq_bookingDetailContent{padding:0 1rem 1rem}.Wyv5Rq_productTitle{font-size:1.75rem}.Wyv5Rq_price{font-size:1.3rem}.Wyv5Rq_productDescription{font-size:1rem}.Wyv5Rq_bookingForm{padding:1rem}.Wyv5Rq_peopleSelector{justify-content:center}}
