.booking-page{background:#f7f5fd;color:#262131}.booking-wrap{width:min(1440px,calc(100% - 80px));margin-inline:auto}.booking-header{height:84px;display:flex;align-items:center;justify-content:space-between}.booking-header .brand img{width:188px;height:auto}.booking-header .button{min-height:44px;padding:11px 18px;font-size:13px;background:transparent}.booking-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:56px;min-height:calc(100svh - 84px);padding-block:12px 28px;align-items:start}.booking-story{min-width:0;display:flex;flex-direction:column;height:calc(100svh - 124px);min-height:500px;max-height:840px}.booking-kicker{color:#5942c7;font-size:12px;font-weight:600;margin-bottom:14px}.booking-story h1{font-size:clamp(2.4rem,3.6vw,3.5rem);line-height:1.06;letter-spacing:-.04em;max-width:16ch;text-wrap:balance}.booking-story h1 span{color:#5942c7}.booking-intro{font-size:15px;line-height:1.65;max-width:40ch;margin-top:18px;color:#564e64}.booking-promise{display:flex;flex-wrap:wrap;gap:5px 15px;color:#514668;font-size:11px;line-height:1.6;margin-top:auto;padding-top:8px}.booking-promise span+span::before{content:"·";margin-right:15px;color:#5942c7}.booking-form-side{min-width:0}.booking-form-heading{margin-bottom:16px}.booking-form-heading h2{font-size:26px;line-height:1.2;letter-spacing:-.025em}.booking-form-heading p{font-size:13px;margin-top:7px;color:#564e64}.calendar-surface{border-radius:16px;background:white;overflow:hidden;border:1px solid #e2dbef;box-shadow:0 12px 44px #4c288c08;height:var(--calendar-height,530px)}.calendar-surface iframe{display:block;width:100%;height:100%;border:0;background:white}.calendar-help{font-size:11px;color:#625773;margin-top:10px;line-height:1.6}.calendar-help a{color:#49358b;text-underline-offset:3px;display:inline-block;padding-block:3px}
/* A still glass sculpture, using the website's share-image identity. */
.sculpture-stage{position:relative;flex:1;min-height:200px;max-height:500px;display:grid;place-items:center;isolation:isolate;overflow:visible;margin-block:0}.sculpture-halo{position:absolute;width:75%;aspect-ratio:1;border-radius:50%;background:radial-gradient(ellipse,#bc9fff24,transparent 67%);pointer-events:none}.sculpture-orbit{height:100%;width:100%;position:absolute;inset:0;display:grid;place-items:center}.sculpture-mark{display:block;width:auto;height:95%;max-width:100%;aspect-ratio:1;object-fit:contain;filter:drop-shadow(0 18px 24px #6b42c720)}
.booking-reviews{padding-block:64px 80px;border-top:1px solid #dfd7ed}.booking-reviews-intro{display:flex;justify-content:space-between;align-items:end;gap:48px;margin-bottom:36px}.booking-reviews-intro h2{font-size:clamp(2rem,3.5vw,3rem);line-height:1.1;letter-spacing:-.03em}.booking-reviews-intro h2 span{color:#5942c7}.booking-reviews-intro>p{font-size:15px;color:#625773;max-width:29ch}.booking-quotes{display:grid;grid-template-columns:1fr 1fr;gap:24px}.booking-quote{margin:0;padding:32px;background:#fff;border-radius:12px;display:flex;flex-direction:column;justify-content:space-between;gap:28px}.booking-quote blockquote{margin:0;font-size:18px;line-height:1.6;max-width:54ch}.booking-quote figcaption{display:flex;flex-direction:column;font-size:13px;gap:4px}.booking-quote figcaption strong{font-size:14px}.booking-quote figcaption span{color:#564e64}.booking-quote figcaption small{font-size:11px;color:#625773}.booking-footer{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #dfd7ed;padding-block:24px 32px;font-size:12px;color:#625773}.booking-footer nav{display:flex;flex-wrap:wrap;gap:20px}.booking-footer a{min-height:44px;display:inline-flex;align-items:center;text-decoration:none;color:#49358b}
@media(max-width:1199px){.booking-wrap{width:calc(100% - 48px)}.booking-hero{grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr);gap:28px}.booking-story h1{font-size:38px}.booking-form-heading h2{font-size:24px}.booking-promise{gap:4px 10px}.booking-promise span+span::before{margin-right:10px}}
@media(max-width:820px){.booking-wrap{width:calc(100% - 32px)}.booking-header{height:72px}.booking-header .brand img{width:150px}.booking-header .button{font-size:11px;padding:10px 12px;min-height:44px}.booking-hero{display:flex;flex-direction:column;gap:44px;padding-top:8px;padding-bottom:40px;min-height:0}.booking-form-side{order:0;width:100%}.booking-form-heading{margin-bottom:12px}.booking-form-heading h2{font-size:24px}.booking-form-heading p{font-size:12px}.calendar-surface{height:var(--calendar-height,530px);border-radius:12px}.calendar-help{font-size:10px;margin-top:8px}.booking-story{order:1;width:100%;height:auto;min-height:0;max-height:none;display:grid;grid-template-columns:1fr minmax(110px,32%);column-gap:12px;align-items:center}.booking-kicker{grid-column:1/-1;margin-bottom:12px}.booking-story h1{font-size:clamp(27px,5.7vw,42px);grid-column:1;grid-row:2;max-width:16ch}.booking-intro{grid-column:1/-1;font-size:14px;max-width:50ch;margin-top:16px}.sculpture-stage{grid-column:2;grid-row:2;height:150px;min-height:0;margin:0}.sculpture-mark{height:auto;width:100%;max-width:100%;max-height:100%}.booking-promise{grid-column:1/-1;display:flex;gap:4px 12px;font-size:10px;padding-top:18px}.booking-promise span+span::before{margin-right:12px}.booking-reviews{padding-block:36px 48px}.booking-reviews-intro{display:block;margin-bottom:28px}.booking-reviews-intro p{margin-top:16px;max-width:36ch}.booking-quotes{grid-template-columns:1fr;gap:16px}.booking-quote{padding:24px}.booking-quote blockquote{font-size:16px}.booking-footer{display:block}.booking-footer nav{margin-top:12px;gap:18px}}
@media(max-height:740px) and (min-width:821px){.booking-header{height:68px}.booking-hero{min-height:calc(100svh - 68px);padding-top:4px;padding-bottom:20px}.booking-story{height:calc(100svh - 96px);min-height:0}.booking-story h1{font-size:clamp(32px,3.4vw,46px)}.booking-intro{margin-top:12px;font-size:14px}.sculpture-stage{min-height:150px}.calendar-surface{height:var(--calendar-height,530px)}.booking-form-heading{margin-bottom:12px}}
.booking-page{overflow-anchor:none}
.calendar-reset{margin:0 0 12px;min-height:40px!important;font-size:12px!important;padding:9px 14px!important}.calendar-reset[hidden]{display:none!important}
.sculpture-orbit{display:flex;align-items:center;justify-content:center}.sculpture-mark{width:100%;height:100%;max-width:100%;max-height:100%;aspect-ratio:auto;object-fit:contain}
