@keyframes booking-fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes booking-card-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes booking-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes booking-confirm-pop{0%{opacity:0;transform:scale(.85)}60%{transform:scale(1.04)}to{opacity:1;transform:scale(1)}}@keyframes booking-glow-pulse{0%,to{opacity:.45}50%{opacity:.75}}.booking-flow{--booking-bp-sm:640px;--booking-bp-md:768px;--booking-bp-lg:1024px;--booking-bp-xl:1200px;--booking-rail-w:15.5rem;--booking-dock-h:5.5rem;--booking-ease:cubic-bezier(0.22,1,0.36,1);overflow-x:clip;background:linear-gradient(180deg,color-mix(in srgb,var(--orah-mist) 70%,var(--orah-ivory)) 0,var(--orah-ivory) 42%,var(--orah-ivory) 100%)}.booking-step-enter{animation:booking-fade-in .4s var(--booking-ease) forwards}.booking-ambient{pointer-events:none;position:fixed;inset:0;z-index:0;overflow:hidden}.booking-ambient:after,.booking-ambient:before{content:"";position:absolute;border-radius:9999px;filter:blur(72px);animation:booking-glow-pulse 8s ease-in-out infinite}.booking-ambient:before{top:-8%;right:-12%;width:min(22rem,55vw);height:min(22rem,55vw);background:color-mix(in srgb,var(--orah-bronze) 22%,transparent)}.booking-ambient:after{bottom:12%;left:-18%;width:min(18rem,48vw);height:min(18rem,48vw);background:color-mix(in srgb,var(--orah-sage) 16%,transparent);animation-delay:2.5s}.booking-home-link{display:inline-flex;align-items:center;gap:.35rem;font-size:.75rem;font-weight:500;color:var(--orah-charcoal-soft);transition:color .2s var(--booking-ease)}.booking-home-link:hover{color:var(--orah-charcoal)}.booking-icon-badge{display:inline-flex;flex-shrink:0;align-items:center;justify-content:center;border-radius:.75rem;border:1px solid color-mix(in srgb,var(--orah-border) 80%,transparent);background:var(--orah-ivory);color:var(--orah-bronze);box-shadow:0 1px 0 color-mix(in srgb,var(--orah-charcoal) 5%,transparent)}.booking-icon-badge svg{display:block;flex-shrink:0;pointer-events:none}.booking-icon-badge--xs{width:1.75rem;height:1.75rem;border-radius:.5rem}.booking-icon-badge--xs svg{width:.9375rem;height:.9375rem}.booking-icon-badge--sm{width:2.25rem;height:2.25rem;border-radius:.625rem}.booking-icon-badge--sm svg{width:1.0625rem;height:1.0625rem}.booking-icon-badge--md{width:2.875rem;height:2.875rem;border-radius:.75rem}.booking-icon-badge--md svg{width:1.25rem;height:1.25rem}.booking-icon-badge--lg{width:3.375rem;height:3.375rem;border-radius:.875rem}.booking-icon-badge--lg svg{width:1.5rem;height:1.5rem}.booking-icon-badge--bronze{background:color-mix(in srgb,var(--orah-bronze) 12%,var(--orah-ivory));color:color-mix(in srgb,var(--orah-bronze) 90%,var(--orah-charcoal));border-color:color-mix(in srgb,var(--orah-bronze) 28%,var(--orah-border))}.booking-icon-badge--sage{background:color-mix(in srgb,var(--orah-sage) 14%,var(--orah-ivory));color:color-mix(in srgb,var(--orah-sage) 85%,var(--orah-charcoal));border-color:color-mix(in srgb,var(--orah-sage) 25%,var(--orah-border))}.booking-icon-badge--mist{background:color-mix(in srgb,var(--orah-mist) 80%,var(--orah-ivory));color:var(--orah-charcoal-soft)}.booking-icon-badge--charcoal{background:var(--orah-charcoal);color:var(--orah-ivory);border-color:var(--orah-charcoal)}.booking-shell{position:relative;z-index:1;margin-inline:auto;width:100%;max-width:72rem;padding:.75rem .875rem 1.25rem}@media (min-width:640px){.booking-shell{padding:1.25rem 1.5rem 2rem}}@media (min-width:1024px){.booking-shell{padding:1.5rem 2rem 2.5rem}}.booking-shell--dock{padding-bottom:calc(var(--booking-dock-h, 5.5rem) + 1.75rem + env(safe-area-inset-bottom, 0px))}.booking-shell--dock-action{padding-bottom:calc(var(--booking-dock-h, 5.5rem) + .5rem + env(safe-area-inset-bottom, 0px))}:root{--staff-bottom-nav-h:4rem}@media (max-width:767px){.booking-shell--staff-dock.booking-shell--dock{padding-bottom:calc(var(--booking-dock-h, 5.5rem) + var(--staff-bottom-nav-h) + 1.75rem + env(safe-area-inset-bottom, 0px))}}@media (min-width:1024px){.booking-shell--dock{padding-bottom:2.5rem}}.booking-shell-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}@media (min-width:1024px){.booking-shell-header{margin-bottom:1.25rem}}.booking-step-strip{display:flex;gap:.5rem;overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:.25rem;margin-bottom:1rem;scrollbar-width:none}.booking-step-strip::-webkit-scrollbar{display:none}.booking-mobile-progress{display:block;margin-bottom:1rem;padding:.875rem 1rem;border-radius:1rem;border:1px solid color-mix(in srgb,var(--orah-border) 85%,transparent);background:color-mix(in srgb,var(--orah-ivory) 92%,white);box-shadow:var(--orah-shadow-md)}.booking-mobile-progress-head{display:flex;align-items:center;gap:.875rem;margin-bottom:.625rem}.booking-mobile-progress-head .booking-icon-badge{flex-shrink:0}.booking-mobile-progress-track{height:.35rem;overflow:hidden;border-radius:9999px;background:var(--orah-mist)}.booking-mobile-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orah-bronze-light),var(--orah-bronze),var(--orah-charcoal));background-size:200% 100%;animation:booking-shimmer 4s linear infinite;transition:width .5s var(--booking-ease)}.booking-mobile-progress-text{display:flex;flex-direction:column;gap:.1rem;min-width:0;font-size:.75rem;line-height:1.35;color:var(--orah-charcoal-soft)}.booking-mobile-progress-step{font-weight:600;letter-spacing:.02em;color:var(--orah-charcoal);font-variant-numeric:tabular-nums}.booking-mobile-progress-label{font-weight:500;color:var(--orah-bronze)}@media (min-width:640px){.booking-mobile-progress{display:none}}@media (max-width:639px){.booking-step-strip{display:none}}@media (min-width:1024px){.booking-step-strip{display:none}}.booking-step-pill{flex:0 0 auto;display:inline-flex;align-items:center;gap:.4rem;max-width:11rem;padding:.4rem .75rem;border-radius:9999px;border:1px solid var(--orah-border);background:color-mix(in srgb,var(--orah-ivory) 90%,transparent);font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--orah-charcoal-soft);white-space:nowrap}.booking-step-pill[data-active=true]{border-color:color-mix(in srgb,var(--orah-bronze) 45%,var(--orah-border));background:color-mix(in srgb,var(--orah-bronze) 12%,var(--orah-ivory));color:var(--orah-charcoal)}.booking-step-pill[data-done=true]:not([data-active=true]){color:var(--orah-bronze)}.booking-step-pill-icon{display:inline-flex;width:1.5rem;height:1.5rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:9999px;background:var(--orah-mist);color:var(--orah-charcoal-soft)}.booking-step-pill-icon svg{width:.875rem;height:.875rem}.booking-step-pill[data-active=true] .booking-step-pill-icon{background:var(--orah-charcoal);color:var(--orah-ivory)}.booking-step-pill[data-done=true] .booking-step-pill-icon{background:color-mix(in srgb,var(--orah-bronze) 18%,var(--orah-ivory));color:var(--orah-bronze)}.booking-step-pill-label{overflow:hidden;text-overflow:ellipsis}.booking-layout{display:flex;flex-direction:column;gap:1rem;min-width:0}@media (min-width:1024px){.booking-layout{flex-direction:row;align-items:flex-start;gap:1.5rem}}.booking-rail{display:none}@media (min-width:1024px){.booking-rail{display:flex;flex-direction:column;gap:1rem;width:var(--booking-rail-w);flex-shrink:0;position:sticky;top:1.25rem}}.booking-content-card,.booking-rail-card{border-radius:1.125rem;border:1px solid color-mix(in srgb,var(--orah-border) 90%,transparent);background:color-mix(in srgb,var(--orah-ivory) 96%,white);box-shadow:var(--orah-shadow-md),0 0 0 1px color-mix(in srgb,white 40%,transparent) inset}.booking-content-card{backdrop-filter:blur(8px)}.booking-rail-card{padding:1.125rem 1rem}.booking-rail-brand{display:flex;align-items:center;gap:.625rem;margin-bottom:1rem}.booking-rail-brand .booking-icon-badge{flex-shrink:0}.booking-rail-title{font-size:.625rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--orah-bronze)}.booking-rail-current{display:flex;align-items:flex-start;gap:.875rem}.booking-rail-current .booking-icon-badge{flex-shrink:0;margin-top:.125rem}.booking-rail-current>div{min-width:0;flex:1}.booking-rail-step-title{font-family:var(--font-serif,Georgia,serif);font-size:1.25rem;line-height:1.2;color:var(--orah-charcoal)}.booking-rail-step-meta{margin-top:.2rem;font-size:.6875rem;color:var(--orah-charcoal-soft);font-variant-numeric:tabular-nums}.booking-rail-progress{margin-top:1rem;height:.375rem;overflow:hidden;border-radius:9999px;background:var(--orah-mist)}.booking-rail-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--orah-bronze-light),var(--orah-charcoal));transition:width .5s var(--booking-ease)}.booking-rail-steps{margin:1rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.35rem}.booking-rail-step{display:flex;align-items:center;gap:.5rem;font-size:.75rem;color:var(--orah-charcoal-soft);transition:color .2s var(--booking-ease)}.booking-rail-step[data-active=true]{font-weight:600;color:var(--orah-charcoal)}.booking-rail-step[data-done=true]{color:var(--orah-bronze)}.booking-rail-step-icon{display:inline-flex;width:1.625rem;height:1.625rem;flex-shrink:0;align-items:center;justify-content:center;border-radius:.5rem;background:var(--orah-mist);color:var(--orah-charcoal-soft)}.booking-rail-step-icon svg{width:.9375rem;height:.9375rem}.booking-rail-step[data-active=true] .booking-rail-step-icon{background:var(--orah-charcoal);color:var(--orah-ivory);box-shadow:0 0 0 3px color-mix(in srgb,var(--orah-bronze) 22%,transparent)}.booking-rail-step[data-done=true] .booking-rail-step-icon{background:color-mix(in srgb,var(--orah-bronze) 15%,var(--orah-ivory));color:var(--orah-bronze)}.booking-total-card{padding:1rem}.booking-total-head{display:flex;align-items:center;gap:.5rem;margin-bottom:.35rem}.booking-total-label{font-size:.625rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--orah-charcoal-soft)}.booking-total-value{margin-top:.25rem;font-family:var(--font-serif,Georgia,serif);font-size:1.75rem;line-height:1.1;color:var(--orah-charcoal);font-variant-numeric:tabular-nums}.booking-total-hint{margin-top:.35rem;font-size:.6875rem;line-height:1.4;color:var(--orah-charcoal-soft)}.booking-main{min-width:0;flex:1}.booking-shell--dock .booking-main{scroll-padding-bottom:calc(var(--booking-dock-h) + 1rem)}.booking-content-card{padding:1rem .875rem 1.125rem;border-radius:1rem}@media (min-width:640px){.booking-content-card{padding:1.375rem 1.25rem 1.5rem;border-radius:1.125rem}}@media (min-width:1024px){.booking-content-card{padding:1.5rem 1.75rem 1.75rem}}.booking-step{display:flex;flex-direction:column;gap:1.25rem;min-width:0}@media (min-width:1024px){.booking-step{gap:1.5rem}}.booking-step-head--subtle-desktop .booking-step-title{font-size:clamp(1.1rem,2.5vw,1.35rem)}@media (min-width:1024px){.booking-step-head--subtle-desktop .booking-step-desc{font-size:.8125rem}}.booking-step>*{min-width:0}.booking-step-head{display:flex;flex-direction:column;gap:.5rem}.booking-step-back{margin-bottom:.125rem}.booking-step-head-row{display:flex;align-items:flex-start;gap:1rem}.booking-step-head-row .booking-icon-badge{flex-shrink:0;margin-top:.125rem}.booking-step-head-copy{min-width:0;flex:1;padding-top:.0625rem}.booking-step-title{font-family:var(--font-serif,Georgia,serif);font-size:clamp(1.2rem,4vw,1.65rem);line-height:1.2;letter-spacing:-.02em;color:var(--orah-charcoal);text-wrap:balance}.booking-step-desc{max-width:40rem;font-size:.875rem;line-height:1.55;color:var(--orah-charcoal-soft);text-wrap:pretty}.booking-panel{border-radius:.875rem;border:1px solid color-mix(in srgb,var(--orah-border) 85%,transparent);background:color-mix(in srgb,var(--orah-mist) 35%,var(--orah-ivory));padding:1rem 1.125rem}.booking-panel-title{display:flex;align-items:center;gap:.625rem;margin-bottom:.875rem;font-size:.625rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--orah-charcoal-soft)}.booking-panel-title .booking-icon-badge{flex-shrink:0}.booking-panel-title span{line-height:1.35;padding-top:.125rem}.booking-card-grid{display:grid;gap:.625rem;width:100%}.booking-card-grid>*{min-width:0}.booking-card-grid--1,.booking-card-grid--2{grid-template-columns:1fr}@media (min-width:480px){.booking-card-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}}.booking-card-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}@media (min-width:640px){.booking-card-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}}.booking-card-grid--auto-fill{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr))}@media (min-width:640px){.booking-card-grid--auto-fill{grid-template-columns:repeat(auto-fill,minmax(10rem,1fr))}}.booking-card-grid--auto-fill>.booking-duration-card{height:100%}.booking-card-grid--list{grid-template-columns:1fr!important;gap:.875rem}@media (min-width:768px){.booking-card-grid--list{gap:1rem}}.booking-card-grid--stagger>.booking-option{animation:booking-card-in .5s var(--booking-ease) backwards}.booking-card-grid--stagger>.booking-option:first-child{animation-delay:.04s}.booking-card-grid--stagger>.booking-option:nth-child(2){animation-delay:.08s}.booking-card-grid--stagger>.booking-option:nth-child(3){animation-delay:.12s}.booking-card-grid--stagger>.booking-option:nth-child(4){animation-delay:.16s}.booking-card-grid--stagger>.booking-option:nth-child(5){animation-delay:.2s}.booking-card-grid--stagger>.booking-option:nth-child(n+6){animation-delay:.24s}@media (prefers-reduced-motion:reduce){.booking-ambient:after,.booking-ambient:before,.booking-card-grid--stagger>.booking-option,.booking-confirm--enter,.booking-confirm--enter .booking-confirm-icon,.booking-mobile-progress-fill,.booking-step-enter{animation:none}}.booking-option{display:flex;width:100%;min-height:3.25rem;align-items:flex-start;gap:.75rem;border-radius:1rem;border:1px solid color-mix(in srgb,var(--orah-border) 90%,transparent);background:var(--orah-ivory);padding:.875rem 1rem;text-align:left;box-shadow:0 1px 0 color-mix(in srgb,var(--orah-charcoal) 4%,transparent);transition:border-color .22s var(--booking-ease),box-shadow .22s var(--booking-ease),transform .22s var(--booking-ease)}.booking-option:hover{border-color:color-mix(in srgb,var(--orah-bronze) 40%,var(--orah-border));box-shadow:var(--orah-shadow-md);transform:translateY(-1px)}.booking-option:active{transform:translateY(0) scale(.995)}.booking-option:focus-visible{outline:2px solid color-mix(in srgb,var(--orah-bronze) 50%,transparent);outline-offset:2px}.booking-option[data-selected=true]{border-color:color-mix(in srgb,var(--orah-bronze) 55%,var(--orah-border));background:color-mix(in srgb,var(--orah-bronze) 6%,var(--orah-ivory));box-shadow:0 0 0 1px color-mix(in srgb,var(--orah-bronze) 20%,transparent)}.booking-option-body{min-width:0;flex:1}.booking-option-tail{display:inline-flex;flex-shrink:0;align-items:center;gap:.35rem;margin-top:.15rem}.booking-option-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem}.booking-option-title{font-size:.9375rem;font-weight:600;line-height:1.35;color:var(--orah-charcoal);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.booking-option-meta{flex-shrink:0;font-family:var(--font-serif,Georgia,serif);font-size:1rem;font-weight:500;color:var(--orah-charcoal);font-variant-numeric:tabular-nums}.booking-option-desc{margin-top:.35rem;font-size:.8125rem;line-height:1.55;color:var(--orah-charcoal-soft);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.booking-option-chevron{flex-shrink:0;color:color-mix(in srgb,var(--orah-charcoal) 35%,transparent);transition:transform .22s var(--booking-ease)}.booking-option:hover .booking-option-chevron{transform:translateX(2px);color:var(--orah-bronze)}.booking-option--has-icon:not(.booking-option--detail){align-items:center;gap:.875rem;padding:.9375rem 1rem}.booking-option--has-icon:not(.booking-option--detail) .booking-option-icon{margin:0;flex-shrink:0}.booking-option--has-icon:not(.booking-option--detail) .booking-option-tail{margin-top:0;align-self:center}.booking-option--detail{flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden}.booking-option--payment.booking-option--has-icon{align-items:center;gap:1rem;padding:1rem 1.125rem}.booking-option--payment .booking-option-body{flex:1}.booking-option--payment .booking-option-tail{margin-top:0;align-self:center}.booking-option--detail.booking-option--has-icon{display:grid;grid-template-columns:3.75rem 1fr;grid-template-rows:auto auto;column-gap:0;row-gap:0;align-items:stretch}.booking-option--detail.booking-option--has-icon .booking-option-icon{grid-column:1;grid-row:1;place-self:start center;margin:1rem 0 0}.booking-option--detail.booking-option--has-icon .booking-option-body{grid-column:2;grid-row:1;padding:1rem 1.125rem .875rem .25rem}.booking-option--detail.booking-option--has-icon .booking-option-tail{grid-column:1/-1;grid-row:2}.booking-option--detail:hover{transform:translateY(-2px)}.booking-option--detail .booking-option-body{padding:1.0625rem 1.125rem .875rem}.booking-option--detail .booking-option-title{display:block;overflow:visible;font-size:1rem;line-height:1.3;-webkit-line-clamp:unset}.booking-option--detail .booking-option-desc{display:block;overflow:visible;margin-top:.5rem;font-size:.8125rem;line-height:1.6;-webkit-line-clamp:unset;text-wrap:pretty}.booking-option--detail .booking-option-title-row{flex-direction:column;align-items:flex-start;gap:.25rem}.booking-option--detail .booking-option-meta{font-size:1.0625rem}.booking-option--detail .booking-option-tail{display:flex;width:100%;margin-top:0;align-items:center;justify-content:flex-end;gap:.5rem;padding:.625rem 1.125rem;border-top:1px solid color-mix(in srgb,var(--orah-border) 70%,transparent);background:color-mix(in srgb,var(--orah-mist) 45%,var(--orah-ivory))}.booking-option--detail[data-selected=true] .booking-option-tail{background:color-mix(in srgb,var(--orah-bronze) 10%,var(--orah-ivory))}.booking-option-cta{font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--orah-bronze)}.booking-option--detail .booking-option-chevron{margin-top:0}.booking-field-grid{display:grid;gap:.75rem;width:100%}@media (min-width:400px){.booking-field-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}}.booking-prefs-layout{display:grid;gap:.875rem;width:100%}@media (min-width:768px){.booking-prefs-layout{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.booking-panel--addons{grid-column:1/-1}}.booking-prefs-layout--couples{gap:1rem}@media (min-width:768px){.booking-prefs-layout--couples{gap:1.125rem}}.booking-addons-grid{display:grid;gap:.625rem;grid-template-columns:1fr}@media (min-width:640px){.booking-addons-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1024px){.booking-addons-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.booking-slots-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}@media (min-width:380px){.booking-slots-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width:640px){.booking-slots-grid{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (min-width:1024px){.booking-slots-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.booking-slot-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:.35rem;min-width:0!important;height:2.75rem!important;padding-inline:.25rem!important;font-size:.8125rem!important;border-radius:.625rem!important;transition:transform .18s var(--booking-ease),box-shadow .18s var(--booking-ease)!important}.booking-slot-btn--selected{box-shadow:0 4px 14px -4px color-mix(in srgb,var(--orah-charcoal) 45%,transparent)!important}.booking-client-layout{display:grid;gap:1rem;width:100%}@media (min-width:900px){.booking-client-layout{grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:1.5rem;align-items:start}.booking-client-form{gap:1.625rem}.booking-client-layout>.booking-arrival-notice{grid-column:1/-1}}.booking-summary-card{margin:0}.booking-summary-card .booking-panel-title{color:var(--orah-bronze)}.booking-summary-row{display:flex;justify-content:space-between;gap:.75rem;font-size:.8125rem}.booking-summary-row dt{display:inline-flex;align-items:center;gap:.45rem;min-height:1.25rem;color:var(--orah-charcoal-soft);flex-shrink:0}.booking-summary-row dd{margin:0;text-align:right;font-weight:500;color:var(--orah-charcoal);word-break:break-word}.booking-client-form{display:flex;flex-direction:column;gap:1.5rem}.booking-form-section{display:flex;flex-direction:column;gap:.875rem}.booking-form-section-head{display:flex;flex-direction:column;gap:.35rem}.booking-form-section-title{margin:0;font-family:var(--font-serif,Georgia,serif);font-size:1.0625rem;font-weight:500;letter-spacing:.02em;color:var(--orah-charcoal)}.booking-form-section-desc{margin:0;font-size:.8125rem;line-height:1.55;color:var(--orah-charcoal-soft);text-wrap:pretty}.booking-field-label{font-size:.6875rem!important;font-weight:600!important;letter-spacing:.06em;text-transform:uppercase;color:var(--orah-charcoal-soft)!important}.booking-field-input{height:2.75rem!important;border-radius:.75rem!important;border-color:var(--orah-border)!important;background:var(--orah-ivory)!important;font-size:.9375rem!important}.booking-field-input:focus-visible{border-color:var(--orah-bronze)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--orah-bronze) 18%,transparent)!important}.booking-field-select{height:2.75rem;width:100%;border-radius:.75rem;border:1px solid var(--orah-border);background:var(--orah-ivory);padding-inline:.75rem;font-size:.9375rem;color:var(--orah-charcoal)}.booking-field-select:focus{outline:none;border-color:var(--orah-bronze);box-shadow:0 0 0 3px color-mix(in srgb,var(--orah-bronze) 18%,transparent)}.booking-billing-block{padding-top:.25rem;border-top:1px solid color-mix(in srgb,var(--orah-border) 65%,transparent)}.booking-billing-options{display:flex;flex-direction:column;gap:.5rem}.booking-billing-fields{margin-top:.25rem;padding:1rem 1rem 1.125rem;border-radius:.875rem;border:1px solid color-mix(in srgb,var(--orah-border) 80%,transparent);background:color-mix(in srgb,var(--orah-mist) 35%,var(--orah-ivory))}.booking-billing-fields-label{margin:0 0 .75rem;font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--orah-bronze)}.booking-marketing-opt{display:flex;cursor:pointer;align-items:flex-start;gap:.75rem;margin:0;padding:.875rem 1rem;border-radius:.875rem;border:1px dashed color-mix(in srgb,var(--orah-border) 90%,transparent);background:color-mix(in srgb,var(--orah-mist) 25%,transparent)}.booking-marketing-opt-input{margin-top:.15rem;width:1rem;height:1rem;flex-shrink:0;accent-color:var(--orah-sage)}.booking-marketing-opt-text{font-size:.8125rem;line-height:1.55;color:var(--orah-charcoal-soft)}.booking-step-cta{display:flex;flex-direction:column;gap:.625rem;padding-top:.25rem}@media (min-width:520px){.booking-step-cta:has(.booking-step-actions-primary){flex-direction:row;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}.booking-step-cta .booking-step-actions-primary{flex:1 1 14rem;max-width:22rem}}.booking-step-cta>.booking-btn-primary{max-width:22rem}.booking-step-foot{display:flex;flex-direction:column;gap:.625rem;padding-top:.25rem}@media (min-width:520px){.booking-step-foot--row{flex-direction:row;flex-wrap:wrap;align-items:center;gap:.75rem 1rem}.booking-step-foot--row .booking-step-foot-primary{flex:1 1 14rem;max-width:22rem}}.booking-btn-primary{height:auto!important;min-height:3rem;width:100%;border-radius:.75rem!important;font-size:.9375rem!important;font-weight:600!important;color:var(--orah-ivory)!important;text-decoration:none!important;border:none!important;white-space:normal;line-height:1.35;padding-inline:1rem!important;text-align:center;background:linear-gradient(135deg,var(--orah-charcoal) 0,color-mix(in srgb,var(--orah-charcoal) 88%,var(--orah-bronze)) 100%)!important;box-shadow:0 1px 0 color-mix(in srgb,white 12%,transparent) inset,0 8px 24px -8px color-mix(in srgb,var(--orah-charcoal) 35%,transparent)!important;transition:transform .2s var(--booking-ease),box-shadow .2s var(--booking-ease),color .2s var(--booking-ease)!important}.booking-btn-primary:focus-visible,.booking-btn-primary:hover:not(:disabled){color:var(--orah-ivory)!important;text-decoration:none!important}.booking-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 1px 0 color-mix(in srgb,white 14%,transparent) inset,0 12px 28px -6px color-mix(in srgb,var(--orah-charcoal) 40%,transparent)!important}.booking-btn-ghost-link{font-size:.8125rem;font-weight:500;color:var(--orah-charcoal-soft);text-align:center;text-decoration:underline;text-underline-offset:3px;background:none;border:none;padding:.35rem 0;cursor:pointer}.booking-btn-ghost-link:hover{color:var(--orah-charcoal)}.booking-nav-back{align-self:flex-start;margin-left:-.5rem;height:2.25rem!important;font-size:.8125rem!important;color:var(--orah-charcoal-soft)!important}.booking-addon{display:flex;cursor:pointer;align-items:flex-start;gap:.75rem;min-height:2.75rem;border-radius:.75rem;border:1px solid color-mix(in srgb,var(--orah-border) 90%,transparent);background:var(--orah-ivory);padding:.75rem .875rem;min-width:0;height:100%}.booking-addon[data-checked=true]{border-color:color-mix(in srgb,var(--orah-bronze) 50%,var(--orah-border));background:color-mix(in srgb,var(--orah-bronze) 8%,var(--orah-ivory))}.booking-addon-check{margin-top:.125rem}.booking-addon-copy{display:flex;min-width:0;flex:1;flex-direction:column;gap:.25rem}.booking-addon-name{font-size:.875rem;font-weight:600;line-height:1.45;color:var(--orah-charcoal)}.booking-addon-desc,.booking-addon-name{overflow-wrap:anywhere;word-break:break-word;text-wrap:pretty}.booking-addon-desc{font-size:.8125rem;line-height:1.5;color:var(--orah-charcoal-soft)}.booking-addon-price{margin-top:.125rem;font-size:.75rem;font-weight:600;color:var(--orah-bronze);font-variant-numeric:tabular-nums}.booking-dock{position:fixed;inset-inline:0;bottom:0;z-index:30;border-top:1px solid color-mix(in srgb,var(--orah-border) 95%,transparent);background:color-mix(in srgb,var(--orah-ivory) 94%,transparent);backdrop-filter:blur(12px);box-shadow:0 -12px 40px -16px color-mix(in srgb,var(--orah-charcoal) 18%,transparent);padding:.75rem 1rem max(.75rem,env(safe-area-inset-bottom,0px))}@media (min-width:1024px){.booking-dock{display:none}}.booking-dock-inner{margin-inline:auto;max-width:44rem;display:flex;align-items:center;gap:.625rem}.booking-dock--with-action .booking-dock-inner{align-items:stretch;gap:.75rem}.booking-dock-price{display:flex;align-items:center;gap:.625rem;min-width:0;flex:1}.booking-dock--with-action .booking-dock-hint{display:none}.booking-dock-cta{flex-shrink:0;align-self:center;min-width:7.5rem;max-width:11rem;height:2.75rem!important;padding-inline:1rem!important;font-size:.8125rem!important}@media (max-width:1023px){.booking-step-cta--in-dock .booking-step-actions-primary,.booking-step-cta--in-dock>.booking-btn-primary{display:none}}@media (max-width:767px){.booking-dock--staff{bottom:calc(var(--staff-bottom-nav-h) + env(safe-area-inset-bottom, 0px));z-index:40;padding-bottom:.75rem}}.booking-dock-inner .booking-icon-badge{flex-shrink:0}.booking-dock-total{min-width:0}.booking-dock-label{font-size:.625rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--orah-charcoal-soft)}.booking-dock-hint{margin-top:.125rem;font-size:.6875rem;color:var(--orah-charcoal-soft)}.booking-dock-value{font-family:var(--font-serif,Georgia,serif);font-size:1.35rem;line-height:1.1;color:var(--orah-charcoal)}.booking-empty{display:flex;flex-direction:column;align-items:center;gap:.875rem;border-radius:.875rem;border:1px dashed color-mix(in srgb,var(--orah-border) 100%,transparent);background:color-mix(in srgb,var(--orah-mist) 40%,transparent);padding:1.5rem 1rem;text-align:center;font-size:.875rem;line-height:1.5;color:var(--orah-charcoal-soft)}.booking-empty .booking-icon-badge{flex-shrink:0}.booking-empty-copy{display:flex;flex-direction:column;align-items:center;gap:.5rem;width:100%}.booking-slots-label{display:inline-flex;gap:.4rem;margin-top:.25rem;font-size:.6875rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.booking-slots-label,.booking-slots-loading{align-items:center;color:var(--orah-charcoal-soft)}.booking-slots-loading{display:flex;justify-content:center;gap:.5rem;padding:1.25rem;font-size:.875rem}.booking-summary-service{font-size:.9375rem;font-weight:600;color:var(--orah-charcoal)}.booking-summary-variant{margin-top:.15rem;font-size:.8125rem;color:var(--orah-charcoal-soft)}.booking-summary-list{margin-top:.875rem;display:flex;flex-direction:column;gap:.5rem}.booking-summary-row-icon{width:1rem;height:1rem;flex-shrink:0;color:var(--orah-bronze);opacity:.9}.booking-summary-row--divider{border-top:1px solid color-mix(in srgb,var(--orah-border) 60%,transparent);padding-top:.5rem;margin-top:.25rem}.booking-summary-row--total dd{font-family:var(--font-serif,Georgia,serif);font-size:1.25rem;font-weight:500}.booking-package-pricing{display:flex;flex-direction:column;gap:.625rem;border-top:1px solid color-mix(in srgb,var(--orah-border) 80%,transparent);padding-top:1rem;margin-top:.25rem}.booking-package-pricing-row{display:flex;align-items:baseline;justify-content:space-between;gap:1rem;font-size:.875rem;color:var(--orah-charcoal-soft)}.booking-package-pricing-row dd,.booking-package-pricing-row span:last-child{font-variant-numeric:tabular-nums;text-align:right}.booking-package-pricing-reference{text-decoration:line-through;color:color-mix(in srgb,var(--orah-charcoal-soft) 85%,transparent)}.booking-package-pricing-row--savings span:last-child{font-weight:600;color:var(--orah-accent,#8b6914)}.booking-package-pricing-row--total{margin-top:.125rem;padding-top:.75rem;border-top:1px dashed color-mix(in srgb,var(--orah-border) 80%,transparent);font-size:.9375rem;color:var(--orah-charcoal)}.booking-package-pricing-row--total span:last-child{font-family:var(--font-serif,Georgia,serif);font-size:1.25rem;font-weight:500;color:var(--orah-charcoal)}.booking-payment-card{border-radius:1rem;border:1px solid color-mix(in srgb,var(--orah-border) 90%,transparent);background:color-mix(in srgb,var(--orah-mist) 30%,var(--orah-ivory));padding:1.25rem;box-shadow:var(--orah-shadow-md);min-width:0;width:100%;overflow-x:clip;min-height:12rem}.booking-confirm{display:flex;flex-direction:column;align-items:center;gap:1.5rem;max-width:32rem;margin-inline:auto;padding:1rem 0 .5rem;text-align:center;width:100%}.booking-confirm--enter{animation:booking-fade-in .5s var(--booking-ease) forwards}.booking-confirm--enter .booking-confirm-icon{animation:booking-confirm-pop .55s var(--booking-ease) .1s backwards}.booking-confirm-icon{display:flex;width:4.5rem;height:4.5rem;align-items:center;justify-content:center;border-radius:9999px}.booking-confirm-icon--success{background:color-mix(in srgb,#10b981 14%,transparent);color:#047857}.booking-confirm-icon--info{background:color-mix(in srgb,#0ea5e9 12%,transparent);color:#0369a1}.booking-confirm-icon--warning{background:color-mix(in srgb,#f59e0b 14%,transparent);color:#b45309}.booking-confirm-title{font-family:var(--font-serif,Georgia,serif);font-size:clamp(1.75rem,5vw,2.25rem);line-height:1.15;color:var(--orah-charcoal)}.booking-confirm-body{max-width:22rem;font-size:.9375rem;line-height:1.55;color:var(--orah-charcoal-soft)}.booking-arrival-notice{display:flex;align-items:flex-start;gap:.75rem;width:100%;min-width:0;padding:.875rem 1rem;border-radius:.875rem;border:1px solid color-mix(in srgb,var(--orah-bronze) 32%,var(--orah-border));background:color-mix(in srgb,var(--orah-bronze) 7%,var(--orah-ivory))}.booking-arrival-notice .booking-icon-badge,.booking-arrival-notice-icon{flex-shrink:0;margin-top:.0625rem}.booking-arrival-notice-content{min-width:0;flex:1}.booking-arrival-notice-title{font-size:.8125rem;font-weight:700;line-height:1.35;color:var(--orah-charcoal)}.booking-arrival-notice-detail,.booking-arrival-notice-lead{margin-top:.35rem;font-size:.8125rem;line-height:1.5;color:var(--orah-charcoal-soft);text-wrap:pretty}.booking-arrival-notice--compact .booking-arrival-notice-title{font-size:.75rem}.booking-arrival-notice--compact .booking-arrival-notice-detail{margin-top:.25rem;font-size:.75rem}.booking-confirm .booking-arrival-notice{max-width:24rem;text-align:left}@media (max-width:639px){.booking-shell{padding:.875rem 1rem 1.5rem}.booking-shell-header{margin-bottom:1rem}.booking-shell-header .h-8{height:1.75rem}.booking-mobile-progress{margin-bottom:1.125rem}.booking-content-card{padding:1.125rem 1rem 1.25rem}.booking-step{gap:1.25rem}.booking-step-head{gap:.5rem}.booking-step-title{font-size:1.35rem;line-height:1.25}.booking-step-desc{font-size:.8125rem;line-height:1.5}.booking-step-back{margin-bottom:.375rem}.booking-card-grid--list{gap:.75rem}.booking-option:not(.booking-option--detail){min-height:0;padding:.875rem 1rem;gap:.75rem}.booking-card-grid--3{grid-template-columns:1fr;gap:.625rem}.booking-option--detail.booking-option--has-icon{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;grid-template-areas:"icon body" "tail tail";column-gap:.875rem;align-items:start}.booking-option--detail.booking-option--has-icon .booking-option-icon{grid-area:icon;margin:1rem 0 0 1rem;place-self:start center}.booking-option--detail.booking-option--has-icon .booking-option-body{grid-area:body;padding:1rem 1rem .75rem 0}.booking-option--detail.booking-option--has-icon .booking-option-tail{grid-area:tail}.booking-option--detail:not(.booking-option--has-icon) .booking-option-body{padding:1rem 1rem .75rem}.booking-option--has-icon:not(.booking-option--detail){align-items:center;gap:.875rem;padding:1rem}.booking-option--has-icon:not(.booking-option--detail) .booking-option-icon{align-self:center}.booking-option--payment{gap:.875rem;padding:1rem}.booking-option--payment .booking-option-icon{align-self:center}.booking-step-head-row{align-items:center;gap:.875rem}.booking-panel-title{align-items:center}.booking-option--detail .booking-option-title{font-size:.9375rem}.booking-option--detail .booking-option-desc{font-size:.8125rem;line-height:1.58}.booking-option--detail .booking-option-tail{padding:.5625rem 1rem}.booking-arrival-notice{padding:1rem;gap:.875rem}.booking-arrival-notice-title{font-size:.8125rem}.booking-arrival-notice-detail,.booking-arrival-notice-lead{font-size:.8125rem;line-height:1.55}.booking-panel{padding:1rem}.booking-slots-grid{gap:.5rem}.booking-slot-btn{height:2.625rem!important;font-size:.8125rem!important}.booking-step-cta{margin-top:.25rem;padding-top:.5rem}.booking-step-cta>.booking-btn-primary,.booking-step-foot .booking-btn-primary{max-width:none;font-size:.8125rem!important;min-height:2.75rem}.booking-btn-primary .booking-btn-primary-arrow{display:none}.booking-dock{padding:.875rem 1rem max(.875rem,env(safe-area-inset-bottom,0px))}.booking-dock-value{font-size:1.25rem}.booking-confirm{gap:1.25rem;padding-inline:0}.booking-confirm .booking-arrival-notice,.booking-confirm .booking-btn-primary{width:100%;max-width:none}.booking-client-layout{gap:1rem}.booking-prefs-layout{gap:.875rem}.booking-nav-back{min-height:2.75rem;padding-inline:.25rem;font-size:.8125rem!important}.booking-option--detail:hover,.booking-option:hover{transform:none}}.booking-flow-state{width:100%;max-width:28rem;margin-inline:auto;display:flex;flex-direction:column;align-items:center;gap:.875rem;border-radius:.875rem;border:1px dashed color-mix(in srgb,var(--orah-border) 100%,transparent);background:color-mix(in srgb,var(--orah-mist) 40%,transparent);padding:1.5rem 1rem;text-align:center}.booking-flow-state--error{border-color:color-mix(in srgb,#c45c4a 35%,var(--orah-border));background:color-mix(in srgb,#c45c4a 6%,var(--orah-ivory))}.booking-flow-state--locked{border-style:solid;opacity:.92}.booking-flow-state-title{font-size:.9375rem;font-weight:600;color:var(--orah-charcoal);text-wrap:balance}.booking-flow-state-desc{font-size:.8125rem;line-height:1.55;color:var(--orah-charcoal-soft);text-wrap:pretty}.booking-flow-state-actions{display:flex;flex-direction:column;gap:.5rem;width:100%;margin-top:.25rem}@media (min-width:640px){.booking-flow-state-actions{flex-direction:row;justify-content:center;flex-wrap:wrap}}.booking-skeleton-grid{display:grid;gap:.75rem}.booking-skeleton-grid--cards{grid-template-columns:1fr}@media (min-width:640px){.booking-skeleton-grid--cards{grid-template-columns:repeat(2,1fr)}}.booking-skeleton-card{height:5.5rem;border-radius:.875rem;background:linear-gradient(90deg,var(--orah-mist) 0,color-mix(in srgb,var(--orah-mist) 60%,var(--orah-ivory)) 50%,var(--orah-mist) 100%);background-size:200% 100%;animation:booking-shimmer 1.8s linear infinite}.booking-skeleton-grid--slots{grid-template-columns:repeat(3,1fr)}@media (min-width:380px){.booking-skeleton-grid--slots{grid-template-columns:repeat(4,1fr)}}.booking-skeleton-slot{height:2.625rem;border-radius:.625rem;background:linear-gradient(90deg,var(--orah-mist) 0,color-mix(in srgb,var(--orah-mist) 60%,var(--orah-ivory)) 50%,var(--orah-mist) 100%);background-size:200% 100%;animation:booking-shimmer 1.8s linear infinite}.booking-slots-empty{display:flex;flex-direction:column;gap:1rem}.booking-slots-empty-actions{display:flex;flex-direction:column;gap:.625rem;align-items:stretch}@media (min-width:480px){.booking-slots-empty-actions{flex-direction:row;flex-wrap:wrap;align-items:center}}.booking-skeleton-panel{height:8rem;border-radius:.875rem;background:linear-gradient(90deg,var(--orah-mist) 0,color-mix(in srgb,var(--orah-mist) 60%,var(--orah-ivory)) 50%,var(--orah-mist) 100%);background-size:200% 100%;animation:booking-shimmer 1.8s linear infinite}.booking-form-scroll-anchor{scroll-margin-bottom:calc(var(--booking-dock-h, 5.5rem) + 1rem)}.booking-option--locked{cursor:not-allowed;opacity:.72;pointer-events:none}.booking-option--locked .booking-option-badge-locked{font-size:.625rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--orah-charcoal-soft);margin-top:.35rem}.booking-option:active:not(.booking-option--locked),.booking-slot-btn:active{transform:scale(.98)}.booking-step-strip{scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.booking-dock-summary{font-size:.6875rem;line-height:1.35;color:var(--orah-charcoal-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.booking-dock-cta--compact{min-width:5.5rem!important;max-width:8rem!important}.booking-scope-banner{margin-bottom:1rem}.booking-checkout-section{display:flex;flex-direction:column;gap:1.25rem}.booking-checkout-panel{display:flex;flex-direction:column;gap:1rem}.booking-checkout-step-card{display:flex;flex-direction:column;gap:.875rem;padding:1rem 1.125rem 1.125rem;border-radius:.875rem;border:1px solid color-mix(in srgb,var(--orah-border) 85%,transparent);background:var(--orah-ivory)}.booking-checkout-step-head{display:flex;align-items:flex-start;gap:.75rem}.booking-checkout-step-badge{display:flex;align-items:center;justify-content:center;width:1.625rem;height:1.625rem;flex-shrink:0;border-radius:999px;background:color-mix(in srgb,var(--orah-bronze) 18%,var(--orah-ivory));color:var(--orah-bronze);font-size:.75rem;font-weight:700;line-height:1}.booking-checkout-step-titles{display:flex;flex-direction:column;gap:.25rem;min-width:0}.booking-billing-embedded,.booking-checkout-extras,.booking-checkout-step-body{display:flex;flex-direction:column;gap:.875rem}.booking-billing-sync-toggle{display:flex;gap:.375rem;padding:.25rem;margin-bottom:.75rem;border-radius:.75rem;border:1px solid color-mix(in srgb,var(--orah-border) 80%,transparent);background:color-mix(in srgb,var(--orah-mist) 30%,var(--orah-ivory))}.booking-billing-sync-toggle-btn{flex:1;padding:.5rem .625rem;border:none;border-radius:.5rem;background:transparent;font-size:.8125rem;font-weight:600;color:var(--orah-charcoal-soft);cursor:pointer;transition:background .15s ease,color .15s ease}.booking-billing-sync-toggle-btn[data-active=true]{background:var(--orah-ivory);color:var(--orah-charcoal);box-shadow:0 1px 3px color-mix(in srgb,var(--orah-charcoal) 8%,transparent)}.booking-billing-sync-hint{margin:0 0 .625rem;font-size:.8125rem;line-height:1.5;color:var(--orah-charcoal-soft)}.booking-billing-summary{display:flex;flex-direction:column;gap:.5rem;margin:0 0 .875rem;padding:.75rem .875rem;border-radius:.625rem;border:1px solid color-mix(in srgb,var(--orah-border) 70%,transparent);background:color-mix(in srgb,var(--orah-mist) 25%,var(--orah-ivory))}.booking-billing-summary-row{display:flex;justify-content:space-between;gap:.75rem;font-size:.8125rem;line-height:1.45}.booking-billing-summary-row dt{color:var(--orah-charcoal-soft);flex-shrink:0}.booking-billing-summary-row dd{margin:0;font-weight:500;color:var(--orah-charcoal);text-align:right;word-break:break-word}.booking-promo-collapsible{display:flex;flex-direction:column;gap:.625rem}.booking-promo-collapsible-trigger{display:flex;align-items:center;justify-content:space-between;gap:.5rem;width:100%;padding:0;border:none;background:transparent;font-size:.875rem;font-weight:500;color:var(--orah-charcoal);cursor:pointer;text-align:left}.booking-promo-collapsible-chevron{flex-shrink:0;color:var(--orah-charcoal-soft);transition:transform .2s ease}.booking-promo-collapsible-chevron[data-open=true]{transform:rotate(180deg)}.booking-promo-collapsible-content{overflow:hidden}.booking-promo-valid-chip{display:flex;align-items:center;gap:.5rem;padding:.625rem .75rem;border-radius:.625rem;border:1px solid color-mix(in srgb,#059669 35%,transparent);background:color-mix(in srgb,#059669 8%,var(--orah-ivory));font-size:.8125rem;color:#047857}.booking-promo-clear-btn{display:inline-flex;align-items:center;gap:.25rem;flex-shrink:0;padding:0;border:none;background:transparent;font-size:.75rem;font-weight:600;color:inherit;cursor:pointer;opacity:.85}.booking-promo-clear-btn:hover{opacity:1}.booking-couples-tabs{display:flex;gap:.5rem;margin-bottom:.5rem}.booking-couples-tab{flex:1;padding:.5rem .75rem;border-radius:.5rem;border:1px solid var(--orah-border);background:var(--orah-ivory);font-size:.8125rem;font-weight:600;color:var(--orah-charcoal-soft)}.booking-couples-tab[data-active=true]{border-color:color-mix(in srgb,var(--orah-bronze) 45%,var(--orah-border));background:color-mix(in srgb,var(--orah-bronze) 10%,var(--orah-ivory));color:var(--orah-charcoal)}.booking-couples-tabs--sticky{position:sticky;top:0;z-index:10;padding-block:.375rem;margin-bottom:.25rem;background:color-mix(in srgb,var(--orah-ivory) 92%,transparent);backdrop-filter:blur(8px)}.booking-time-layout,.booking-time-step{display:flex;flex-direction:column;gap:1.25rem;width:100%;max-width:36rem;margin-inline:auto}.booking-time-layout-date,.booking-time-step-date{width:100%;min-width:0}.booking-time-layout-slots,.booking-time-step-slots{display:flex;flex-direction:column;gap:.625rem;min-width:0;scroll-margin-top:5rem}.booking-time-layout .booking-panel--date,.booking-time-step .booking-panel--date{max-width:none}.booking-slots-label--sticky{position:sticky;top:.5rem;z-index:12;margin:0;padding:.5rem 0;background:color-mix(in srgb,var(--orah-ivory) 94%,transparent);backdrop-filter:blur(6px)}.booking-slots-duration-hint{font-weight:500;color:var(--orah-charcoal-soft)}@media (min-width:768px){.booking-slots-label--sticky{position:static;padding:0;background:transparent;backdrop-filter:none}}.booking-split-layout{display:flex;flex-direction:column;gap:1rem;width:100%}@media (min-width:1024px){.booking-split-layout{display:grid;grid-template-columns:minmax(0,.42fr) minmax(0,.58fr);gap:1.5rem;align-items:start}.booking-split-layout--sidebar-end{grid-template-columns:minmax(0,.58fr) minmax(0,.42fr)}.booking-split-layout--sidebar-end .booking-split-sidebar{order:2}}@media (min-width:1200px){.booking-split-layout{grid-template-columns:minmax(0,.4fr) minmax(0,.6fr);gap:1.75rem}}.booking-split-main,.booking-split-sidebar{min-width:0}.booking-split-layout--sticky .booking-split-sidebar{position:sticky;top:1.25rem}.booking-checkout-layout{display:flex;flex-direction:column;gap:1rem;width:100%}.booking-checkout-layout-notice,.booking-checkout-sticky-wrap{width:100%;max-width:36rem;margin-inline:auto}.booking-checkout-sticky-wrap{position:sticky;top:.75rem;z-index:20}.booking-checkout-sticky-bar{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:.875rem;border:1px solid color-mix(in srgb,var(--orah-border) 85%,transparent);background:color-mix(in srgb,var(--orah-ivory) 92%,var(--orah-mist));box-shadow:0 4px 16px color-mix(in srgb,var(--orah-charcoal) 6%,transparent)}.booking-checkout-sticky-bar-copy{display:flex;flex-direction:column;gap:.125rem;min-width:0;flex:1}.booking-checkout-sticky-bar-title{font-size:.875rem;font-weight:600;color:var(--orah-charcoal);line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-checkout-sticky-bar-meta{font-size:.75rem;color:var(--orah-charcoal-soft);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-checkout-sticky-bar-total{flex-shrink:0;font-family:var(--font-serif,Georgia,serif);font-size:1.0625rem;font-weight:500;color:var(--orah-charcoal);font-variant-numeric:tabular-nums}.booking-checkout-column{display:flex;flex-direction:column;gap:1rem;width:100%;max-width:36rem;margin-inline:auto}.booking-checkout-summary-mobile{display:block;order:2}.booking-checkout-summary-desktop{display:none;order:0}.booking-checkout-main{display:flex;flex-direction:column;gap:1rem;order:1}@media (min-width:1024px){.booking-checkout-summary-mobile{display:none}.booking-checkout-summary-desktop{display:block}}.booking-collapsible-summary{border-radius:.875rem;border:1px solid color-mix(in srgb,var(--orah-border) 85%,transparent);background:var(--orah-ivory);overflow:hidden}.booking-collapsible-summary-trigger{display:flex;align-items:center;gap:.625rem;width:100%;padding:.875rem 1rem;border:none;background:transparent;text-align:left;cursor:pointer}.booking-collapsible-summary-compact{display:flex;flex-direction:column;gap:.125rem;min-width:0;flex:1}.booking-collapsible-summary-title{font-size:.875rem;font-weight:600;color:var(--orah-charcoal);line-height:1.35}.booking-collapsible-summary-meta{font-size:.75rem;color:var(--orah-charcoal-soft);line-height:1.4}.booking-collapsible-summary-total{flex-shrink:0;font-family:var(--font-serif,Georgia,serif);font-size:1rem;font-weight:500;color:var(--orah-charcoal);font-variant-numeric:tabular-nums}.booking-collapsible-summary-chevron{flex-shrink:0;color:var(--orah-charcoal-soft);transition:transform .2s ease}.booking-collapsible-summary-chevron[data-open=true]{transform:rotate(180deg)}.booking-collapsible-summary-body{padding:0 1rem 1rem;border-top:1px solid color-mix(in srgb,var(--orah-border) 70%,transparent)}.booking-duration-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:.5rem;min-height:5.5rem;width:100%;padding:1rem 1.125rem;border-radius:.875rem;border:1px solid color-mix(in srgb,var(--orah-border) 85%,transparent);background:var(--orah-ivory);text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.booking-duration-card:hover{border-color:color-mix(in srgb,var(--orah-bronze) 35%,var(--orah-border))}.booking-duration-card[data-selected=true]{border-color:var(--orah-charcoal);background:color-mix(in srgb,var(--orah-mist) 55%,var(--orah-ivory));box-shadow:0 0 0 1px var(--orah-charcoal)}.booking-duration-card-label{font-size:1.0625rem;font-weight:600;color:var(--orah-charcoal);line-height:1.3}.booking-duration-card-price{font-family:var(--font-serif,Georgia,serif);font-size:1.125rem;font-weight:500;color:var(--orah-charcoal);font-variant-numeric:tabular-nums}.booking-visit-date-picker{display:flex;flex-direction:column;gap:.75rem;min-width:0}.booking-visit-date-calendar-toggle{display:flex;align-items:center;justify-content:center;gap:.375rem;width:100%;padding:.625rem .75rem;border-radius:.75rem;border:1px dashed color-mix(in srgb,var(--orah-border) 85%,transparent);background:transparent;font-size:.8125rem;font-weight:600;color:var(--orah-charcoal-soft);cursor:pointer}.booking-visit-date-calendar-toggle [data-open=true]{transform:rotate(180deg)}.booking-visit-date-calendar-toggle svg{transition:transform .2s ease}.booking-visit-date-calendar--desktop,.booking-visit-date-calendar--mobile{display:none}.booking-visit-date-calendar--mobile[data-open=true]{display:block}@media (min-width:768px){.booking-visit-date-calendar-toggle{display:none}.booking-visit-date-calendar--mobile{display:none!important}.booking-visit-date-calendar--desktop{display:block}}.booking-visit-date-chips{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.125rem;scrollbar-width:thin}.booking-visit-date-chip{display:flex;flex-direction:column;align-items:center;gap:.125rem;min-width:3.25rem;padding:.5rem .625rem;border-radius:.75rem;border:1px solid color-mix(in srgb,var(--orah-border) 85%,transparent);background:var(--orah-ivory);cursor:pointer;flex-shrink:0}.booking-visit-date-chip[data-selected=true]{border-color:var(--orah-charcoal);background:color-mix(in srgb,var(--orah-mist) 50%,var(--orah-ivory))}.booking-visit-date-chip-day{font-size:.6875rem;font-weight:600;text-transform:capitalize;color:var(--orah-charcoal-soft)}.booking-visit-date-chip-date{font-size:1rem;font-weight:600;color:var(--orah-charcoal);font-variant-numeric:tabular-nums}.booking-visit-date-calendar{border-radius:.875rem;border:1px solid color-mix(in srgb,var(--orah-border) 85%,transparent);background:var(--orah-ivory);padding:.875rem}.booking-visit-date-calendar-head{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.75rem}.booking-visit-date-month{font-size:.9375rem;font-weight:600;color:var(--orah-charcoal);text-transform:capitalize}.booking-visit-date-nav{display:flex;align-items:center;justify-content:center;width:2rem;height:2rem;border-radius:.5rem;border:1px solid color-mix(in srgb,var(--orah-border) 80%,transparent);background:transparent;cursor:pointer;color:var(--orah-charcoal)}.booking-visit-date-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:.25rem;margin-bottom:.375rem}.booking-visit-date-weekday{text-align:center;font-size:.6875rem;font-weight:600;color:var(--orah-charcoal-soft)}.booking-visit-date-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.2rem}.booking-visit-date-cell{display:flex;align-items:center;justify-content:center;width:100%;max-width:2.5rem;margin-inline:auto;aspect-ratio:1;min-height:0;border-radius:.5rem;border:none;background:transparent;font-size:.8125rem;font-weight:500;color:var(--orah-charcoal);cursor:pointer;padding:0}.booking-visit-date-cell:hover:not(:disabled){background:color-mix(in srgb,var(--orah-mist) 70%,transparent)}.booking-visit-date-cell[data-selected=true]{background:var(--orah-charcoal);color:var(--orah-ivory)}.booking-visit-date-cell[data-today=true]:not([data-selected=true]){box-shadow:inset 0 0 0 1px var(--orah-charcoal)}.booking-visit-date-cell:disabled{opacity:.35;cursor:not-allowed}.booking-visit-date-cell--empty{pointer-events:none}.booking-visit-date-selected{margin-top:.75rem;font-size:.8125rem;color:var(--orah-charcoal-soft);text-transform:capitalize}.booking-addon-name-row{display:flex;flex-wrap:wrap;align-items:center;gap:.375rem}.booking-addon-time-badge{display:inline-flex;align-items:center;padding:.125rem .4375rem;border-radius:999px;font-size:.6875rem;font-weight:600;letter-spacing:.02em;color:var(--orah-charcoal);background:color-mix(in srgb,var(--orah-mist) 80%,var(--orah-ivory));border:1px solid color-mix(in srgb,var(--orah-border) 70%,transparent)}.booking-checkout-step-card--in-split{border-color:color-mix(in srgb,var(--orah-border) 75%,transparent)}@media (prefers-reduced-motion:reduce){.booking-card-grid--stagger>*,.booking-confirm--enter,.booking-step-enter{animation:none!important}.booking-skeleton-card,.booking-skeleton-panel,.booking-skeleton-slot{animation:none;background:var(--orah-mist)}}