.booking-modal{z-index:10001;padding:var(--space-24);visibility:hidden;justify-content:center;align-items:center;transition:visibility 0s linear .5s;display:flex;position:fixed;inset:0}.booking-modal--open{visibility:visible;transition-delay:0s}.booking-scrim{background-color:#3d3f2c00;transition:background-color .5s;position:absolute;inset:0}.booking-modal--open .booking-scrim{background-color:#3d3f2c61}@supports (backdrop-filter:blur(2px)){.booking-scrim{backdrop-filter:blur();transition:background-color .5s,backdrop-filter .5s}.booking-modal--open .booking-scrim{backdrop-filter:blur(12px)}}.booking-panel{background-color:var(--color-bg);opacity:0;border-radius:32px;align-items:stretch;width:min(74rem,100%);height:min(44rem,100%);transition:opacity .35s,transform .45s cubic-bezier(.22,1,.36,1);display:flex;position:relative;overflow:hidden;transform:translateY(16px)scale(.98)}.booking-modal--open .booking-panel{opacity:1;transform:none}.booking-info{padding:var(--space-40) var(--space-32);gap:var(--space-16);color:var(--color-ink);flex-direction:column;flex:0 0 19rem;display:flex}.booking-photo{object-fit:cover;border-radius:50%;width:5.5rem;height:5.5rem}.booking-caption{color:var(--color-ink-64);margin:0}.booking-caption strong{color:var(--color-ink);font-family:var(--primary-font-bold);font-weight:700}.booking-title{margin:0}.booking-meta{color:var(--color-ink-64);margin:0}.booking-description{font-size:var(--type-body-size);margin:0;line-height:1.6}.booking-description p{margin:0 0 var(--space-8)}.booking-description p:last-child{margin-bottom:0}.booking-highlight{background-color:var(--color-accent);-webkit-box-decoration-break:clone;box-decoration-break:clone;padding:0 .15em}.booking-embed{min-width:0;padding:var(--space-16);flex:auto;display:flex;position:relative;overflow-y:auto}.booking-cal{width:100%;margin:auto;transform:translateY(2.5rem)}.booking-close{top:var(--space-12);right:var(--space-12);z-index:2;background-color:var(--color-ink-08);width:2.25rem;height:2.25rem;color:var(--color-ink);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;font-size:1.375rem;line-height:1;transition:background-color .2s;display:flex;position:absolute}.booking-close:hover{background-color:var(--color-accent)}.booking-success{text-align:center;align-items:center;gap:var(--space-16);max-width:26rem;padding:var(--space-24);color:var(--color-ink);flex-direction:column;margin:auto;display:flex}.booking-success-check{background-color:var(--color-accent);border-radius:50%;justify-content:center;align-items:center;width:3.5rem;height:3.5rem;display:flex}.booking-success-check svg{width:1.5rem;height:1.5rem;stroke:var(--color-ink)}.booking-success-title{margin:0}.booking-success-when{font-family:var(--primary-font-bold);font-weight:700;font-size:var(--type-body-size);margin:0;line-height:1.6}.booking-success-copy{font-size:var(--type-body-size);color:var(--color-ink-64);margin:0;line-height:1.6}.booking-success .primaryButton{margin-top:var(--space-8)}@media (max-width:768px){.booking-modal{padding:0}.booking-panel{border-radius:0;flex-direction:column;width:100%;height:100%}.booking-info{padding:var(--space-24) var(--space-24) var(--space-16);padding-right:var(--space-64);border-right:0;border-bottom:1px solid var(--color-ink-08);gap:var(--space-4);flex:none}.booking-description{display:none}.booking-photo{width:3rem;height:3rem}.booking-embed{padding:var(--space-8)}.booking-cal{transform:none}}@media (prefers-reduced-motion:reduce){.booking-scrim,.booking-panel,.booking-close{transition:none}}
