.funnel-body{min-height:100dvh;display:flex;flex-direction:column;background:transparent}.funnel-body>main{flex:1 0 auto;display:flex;flex-direction:column}.booking{position:relative;isolation:isolate;background:color-mix(in srgb,var(--cream) 62%,transparent);max-width:52rem;margin-inline:auto;padding-top:clamp(1.5rem,4vw,3rem);padding-bottom:0;padding-inline:clamp(1rem,3vw,2rem);flex:1 0 auto;display:flex;flex-direction:column}.booking [data-step-panel]{flex:1 0 auto}.booking-bg{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none;background:var(--bg-page)}.booking-bg__marble{position:absolute;inset:-8%;width:116%;height:116%;object-fit:cover;object-position:center;transform:translateZ(0) scale(1)}.booking-bg__scrim{position:absolute;inset:0;background:linear-gradient(to bottom,color-mix(in srgb,var(--cream) 70%,transparent),color-mix(in srgb,var(--cream) 54%,transparent) 34%,color-mix(in srgb,var(--cream) 58%,transparent))}@media(prefers-reduced-motion:reduce){.booking-bg__marble{transform:none;transition:none}}.booking__header{border-radius:0;border-top:2px solid var(--gold);padding:clamp(.9rem,3vw,1.5rem);margin-bottom:2rem}.booking__progress-label{font-family:var(--font-ui);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-body);margin:0 0 .6rem}.booking__progress-label .ital{font-style:italic;text-transform:none;letter-spacing:.02em;color:var(--espresso)}.booking__segments{display:flex;gap:.35rem;width:100%}.booking__seg{flex:1 1 0;height:3px;background:var(--hairline);transition:background-color .4s ease}.booking__seg[data-state=done]{background:var(--gold)}.booking__seg[data-state=current]{background:var(--espresso)}@media(prefers-reduced-motion:reduce){.booking__seg{transition:none}}.booking__title{font-family:var(--font-display);font-weight:500;font-size:clamp(1.6rem,4vw,2.2rem);line-height:1.1;margin:0 0 .5rem}.booking__title .ital{font-style:italic}.booking__hint{font-family:var(--font-ui);font-size:.85rem;color:var(--text-body);margin:0 0 1.25rem}.booking__counter{font-family:var(--font-ui);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-body);margin:0 0 1.25rem}.booking__cards{display:grid;gap:.9rem;grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr))}.loc-card{display:grid;gap:.35rem;text-align:left;padding:1.1rem 1.2rem;border:1px solid var(--hairline);border-radius:0;background:color-mix(in srgb,var(--cream) 60%,white);color:var(--espresso);cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.loc-card:hover{border-color:var(--gold);box-shadow:var(--shadow-sm);transform:translateY(-2px)}.loc-card:active{transform:translateY(0)}.loc-card:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:2px}@media(prefers-reduced-motion:reduce){.loc-card{transition:border-color .18s ease,box-shadow .18s ease}.loc-card:hover,.loc-card:active{transform:none}}.loc-card__zone{font-family:var(--font-ui);font-size:.66rem;letter-spacing:.16em;color:var(--text-body)}.loc-card__name{font-family:var(--font-display);font-size:1.5rem;line-height:1}.loc-card__addr{font-family:var(--font-body);font-size:.88rem;color:var(--text-body)}.loc-card__hours{font-family:var(--font-ui);font-size:.74rem;letter-spacing:.03em;color:var(--espresso);margin-top:.25rem}.loc-card__phone{font-family:var(--font-ui);font-size:.74rem;letter-spacing:.06em;color:var(--text-body)}.svc-group{margin-top:1.75rem}.svc-group:first-of-type{margin-top:0}.svc-group__label{font-family:var(--font-ui);font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-body);margin:0 0 .65rem;padding-bottom:.45rem;border-bottom:1px solid var(--hairline)}.booking__cards--services{grid-template-columns:1fr}@media(min-width:768px){.booking__cards--services{grid-template-columns:1fr 1fr}}.provider-prefer{margin:0 0 1.1rem}.provider-prefer__prompt{font-family:var(--font-ui);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-body);margin:0 0 .55rem}.provider-pills{display:flex;flex-wrap:wrap;gap:.45rem}.provider-pill{font-family:var(--font-ui);font-size:.8rem;letter-spacing:.04em;color:var(--espresso);background:none;border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:.38em 1em;cursor:pointer;transition:border-color var(--dur-fast) ease,background-color var(--dur-fast) ease,color var(--dur-fast) ease}.provider-pill:hover{border-color:var(--gold)}.provider-pill[data-selected=true]{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 8%,transparent);color:var(--espresso);box-shadow:inset 0 0 0 1px var(--gold)}.provider-prefer__help{font-family:var(--font-ui);font-size:.74rem;color:var(--text-body);margin:.55rem 0 0}.booking__footer{position:sticky;bottom:0;z-index:2;margin-top:1.5rem;padding:.7rem clamp(.85rem,3vw,1.1rem);background:color-mix(in srgb,var(--cream) 90%,white);border-top:1px solid var(--gold);box-shadow:0 -6px 18px -12px #2b201a59;display:grid;gap:.5rem}.booking__footer-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}.booking__footer-actions .btn--ghost{margin-right:auto}.booking__footer-meta{font-family:var(--font-ui);font-size:.78rem;color:var(--text-body);margin:0}.booking__footer-chips{display:flex;flex-wrap:wrap;gap:.4rem}.booking__footer-chip{display:inline-flex;align-items:center;gap:.1rem;max-width:11rem;padding:.16rem .2rem .16rem .62rem;font-family:var(--font-ui);font-size:.76rem;color:var(--espresso);border:1px solid var(--hairline);border-radius:var(--radius-pill)}.booking__footer-chip__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking__footer-chip__remove{display:inline-grid;place-items:center;flex:none;min-width:24px;min-height:24px;margin:0;padding:0;border:0;background:none;color:var(--text-body);font-size:.95rem;line-height:1;cursor:pointer;transition:color .18s ease}.booking__footer-chip__remove:hover{color:var(--brown, #8a3d2e)}.booking__footer-chip__remove:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:2px}.svc-card{display:grid;position:relative;grid-template-rows:1fr auto;text-align:left;padding:0;overflow:hidden;border:1px solid var(--hairline);border-radius:0;background:color-mix(in srgb,var(--cream) 60%,white);color:var(--espresso);transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.svc-card:hover{border-color:var(--gold);transform:translateY(-2px)}.svc-card__select{appearance:none;display:grid;grid-template-columns:5.5rem 1fr;align-items:stretch;width:100%;margin:0;padding:0;border:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}.svc-card__select:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:-2px}.svc-card__media{display:block;position:relative;overflow:hidden}.svc-card__media img{width:100%;height:100%;object-fit:cover;display:block}.svc-card__placeholder{display:block;width:100%;height:100%}.svc-card__marker{position:absolute;top:.6rem;right:.6rem;width:1.7rem;height:1.7rem;display:grid;place-items:center;border-radius:var(--radius-full);overflow:hidden;background:color-mix(in srgb,var(--espresso) 32%,transparent);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--cream) 82%,transparent);transition:box-shadow .3s ease}.svc-card__marker:before{content:"";position:absolute;inset:0;z-index:0;border-radius:inherit;background:var(--ink-950);transform:scale(0);transition:transform .2s ease-in}.svc-card__check{position:relative;z-index:1;width:62%;height:62%;fill:none;stroke:var(--cream);stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:24;stroke-dashoffset:24;opacity:0;transition:stroke-dashoffset .15s ease-in,opacity .12s ease-in}.svc-card[data-selected=true] .svc-card__marker{box-shadow:inset 0 0 0 1.5px var(--gold)}.svc-card[data-selected=true] .svc-card__marker:before{transform:scale(1);transition:transform .48s cubic-bezier(.22,1,.36,1)}.svc-card[data-selected=true] .svc-card__check{opacity:1;stroke-dashoffset:0;transition:stroke-dashoffset .4s ease-out .12s,opacity .18s ease-out .12s}.svc-card[data-atcap] .svc-card__marker{opacity:.4}.svc-card__body{display:grid;align-content:center;gap:.3rem;padding:.7rem 2.5rem .8rem .9rem}@media(min-width:768px){.svc-card__select{grid-template-columns:1fr}.svc-card__media{aspect-ratio:16 / 9}.svc-card__body{padding:.9rem 1rem 1.1rem}}.svc-card__cat{font-family:var(--font-ui);font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-body)}.svc-card__name{font-family:var(--font-display);font-size:1.3rem;line-height:1.1}.svc-card__desc{font-family:var(--font-body);font-size:.88rem;color:var(--text-body)}.svc-card__meta{font-family:var(--font-ui);font-size:.8rem;color:var(--espresso)}.loc-card[data-selected=true],.svc-card[data-selected=true]{border-color:var(--gold);box-shadow:var(--shadow-sm),inset 3px 0 0 0 var(--ink-950);background:var(--cream)}@property --belle-sweep{syntax: "<angle>"; inherits: false; initial-value: 0deg;}.svc-card[data-selected=true]{animation:belle-card-glow .6s ease-out}@keyframes belle-card-glow{0%{box-shadow:var(--shadow-sm),inset 3px 0 0 0 var(--ink-950),0 0 color-mix(in srgb,var(--gold) 55%,transparent)}55%{box-shadow:var(--shadow-sm),inset 3px 0 0 0 var(--ink-950),0 0 24px 3px color-mix(in srgb,var(--gold) 42%,transparent)}to{box-shadow:var(--shadow-sm),inset 3px 0 0 0 var(--ink-950),0 0 color-mix(in srgb,var(--gold) 0%,transparent)}}@supports ((-webkit-mask-composite: xor) or (mask-composite: exclude)){.svc-card:after{content:"";position:absolute;inset:0;z-index:1;border-radius:inherit;padding:1.5px;background:conic-gradient(from var(--belle-sweep),transparent 0deg,var(--gold) 36deg,transparent 80deg);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);mask-composite:exclude;opacity:0;pointer-events:none}.svc-card[data-selected=true]:after{animation:belle-border-sweep .7s ease-out}@keyframes belle-border-sweep{0%{opacity:1;--belle-sweep: 0deg}to{opacity:0;--belle-sweep: 360deg}}}.svc-card--addon{grid-template-rows:auto}.svc-card--addon .svc-card__select{grid-template-columns:1fr}.svc-card--addon .svc-card__body{padding:.9rem 2.5rem 1.1rem 1rem}.svc-lane-toggle{display:inline-flex;gap:0;border:1px solid var(--hairline);border-radius:var(--radius-pill);overflow:hidden;margin:0 0 1.25rem}.svc-lane-toggle__opt{font-family:var(--font-ui);font-size:.82rem;letter-spacing:.04em;padding:.5rem 1.2rem;background:transparent;color:var(--espresso);border:0;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}.svc-lane-toggle__opt[aria-checked=true]{background:var(--ink-950);color:var(--cream)}.svc-lane-toggle__opt:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:-2px}@media(prefers-reduced-motion:reduce){.svc-lane-toggle__opt{transition:none}}.booking__cards--bundles{grid-template-columns:1fr}@media(min-width:768px){.booking__cards--bundles{grid-template-columns:1fr 1fr}}.svc-card--bundle{grid-template-rows:auto}.svc-card--bundle .svc-card__select{grid-template-columns:1fr}.svc-card--bundle .svc-card__body{padding:.9rem 1rem 1.1rem;gap:.45rem}.bundle-card__name{font-family:var(--font-display);font-size:1.3rem;line-height:1.1;color:var(--espresso)}.bundle-card__components{font-family:var(--font-body);font-size:.88rem;color:var(--text-body)}.bundle-card__meta{font-family:var(--font-ui);font-size:.8rem;color:var(--espresso)}.bundle-card__priceline{display:flex;flex-wrap:wrap;align-items:baseline;gap:.1rem .6rem;margin-top:.15rem}.bundle-card__price{font-family:var(--font-ui);font-weight:600;font-size:1.05rem;color:var(--ink-950)}.bundle-card__was{font-family:var(--font-body);font-size:.88rem;text-decoration:line-through;text-decoration-color:var(--mocha);color:var(--mocha)}.bundle-card__save{font-family:var(--font-ui);font-weight:600;font-size:.8rem;color:var(--color-success-sage-text)}.booking__hint--bundle{margin-top:.9rem}.svc-openings{display:grid;gap:.5rem;border-top:1px solid var(--gold);padding:.8rem 1rem 1rem}.svc-openings__label{font-family:var(--font-ui);font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-body)}.svc-chips{display:flex;flex-wrap:wrap;gap:.4rem}.svc-chip{display:inline-flex;align-items:center;gap:.42rem;font-family:var(--font-ui);font-size:.75rem;color:var(--espresso);border:1px solid var(--hairline);border-radius:var(--radius-pill);padding:.22rem .66rem .22rem .26rem}.svc-chip__peek,.svc-chip__go{appearance:none;display:flex;align-items:center;min-height:24px;margin:0;padding:0;border:0;background:transparent;font:inherit;color:inherit;text-align:left;cursor:pointer}.svc-chip__go{justify-content:flex-start}.svc-chip__peek{min-width:24px;justify-content:center}.svc-chip:hover{border-color:var(--gold)}.svc-chip__peek:focus-visible,.svc-chip__go:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:2px}.svc-chip[data-pending]{opacity:.55}.svc-chip__go:disabled,.svc-chip[data-pending] .svc-chip__go{cursor:wait}.svc-chip--soonest{border-color:var(--sage)}.svc-chip--soonest .svc-chip__t{color:var(--color-success-sage-text);font-weight:500}.ava{display:block;border-radius:var(--radius-pill);object-fit:cover;box-shadow:0 0 0 1px var(--gold)}.ava--20{width:20px;height:20px}.ava--30{width:30px;height:30px}.ava--mono{display:grid;place-items:center;background:color-mix(in srgb,var(--gold) 14%,var(--cream));color:var(--espresso);font-family:var(--font-display);line-height:1}.ava--20.ava--mono{font-size:10px}.ava--30.ava--mono{font-size:15px}.zoom-backdrop{position:fixed;inset:0;z-index:900;background:color-mix(in srgb,var(--espresso) 58%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.zoom-figure{position:fixed;z-index:901;margin:0;padding:14px;transform-origin:top left;will-change:transform;background:var(--cream);border:1px solid var(--gold);box-shadow:0 30px 80px #2b201a59}.zoom-figure img{display:block;width:100%;height:auto}.zoom-figure--peek{padding:12px}.zoom-figure--peek .ava{border-radius:0;box-shadow:none}.zoom-caption{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.8rem .2rem .25rem}.zoom-caption__name{font-family:var(--font-display);font-style:italic;font-size:1.25rem;color:var(--espresso)}.zoom-caption__cat{font-family:var(--font-ui);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-body);white-space:nowrap}.zoom-close{position:fixed;z-index:903;top:1.1rem;right:1.2rem;width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-pill);border:1px solid var(--gold);background:var(--cream);color:var(--espresso);font-family:var(--font-body);font-size:1.05rem;line-height:1;cursor:pointer}.zoom-close:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:2px}.peek-cap{padding:.7rem .15rem .2rem}.peek-cap__name{display:block;font-family:var(--font-display);font-style:italic;font-size:1.35rem;color:var(--espresso)}.peek-cap__role{display:block;margin-top:.15rem;font-family:var(--font-ui);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-body)}.peek-cap__next{display:flex;justify-content:space-between;gap:.8rem;margin-top:.55rem;padding-top:.5rem;border-top:1px solid var(--gold);font-family:var(--font-body);font-size:.8rem;color:var(--text-body)}.peek-cap__when{color:var(--espresso);font-weight:700;white-space:nowrap}.booking__surface{background:var(--cream);border:1px solid var(--hairline);border-radius:0;padding:clamp(1rem,3.5vw,1.5rem);margin-top:1rem}.booking__times{margin-top:1.5rem;display:grid;gap:1.25rem}.time-group__label{font-family:var(--font-ui);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-body);margin:0 0 .6rem}.time-group__grid{display:grid;gap:.7rem;grid-template-columns:repeat(auto-fill,minmax(4.75rem,1fr))}.time-chip{font-family:var(--font-ui);font-size:.82rem;letter-spacing:.01em;text-align:center;padding:.5em .4em;border:1px solid var(--hairline);border-radius:0;background:transparent;color:var(--espresso);cursor:pointer;transition:border-color var(--dur-fast) ease,background var(--dur-fast) ease,color var(--dur-fast) ease}.time-chip:hover{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 8%,transparent)}.time-chip:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:1px}.time-chip[data-selected=true]{background:var(--ink-950);color:var(--cream);border-color:var(--ink-950)}.time-chip[data-preferred=true]:not([data-selected=true]){border-bottom-color:var(--gold);box-shadow:inset 0 -2px 0 0 var(--gold)}.assignment-list{margin:1.25rem 0 0}.assignment-list__heading{font-family:var(--font-ui);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-body);margin:0 0 .6rem}.assignment-rows{list-style:none;margin:0;padding:0;display:grid;gap:.6rem}.assignment-row{position:relative;display:flex;align-items:center;gap:.7rem}.assignment-row .ava{flex:none}.assignment-row__text{flex:1 1 auto;min-width:0;font-family:var(--font-body);font-size:.92rem;color:var(--espresso)}.assignment-row__name{font-family:var(--font-display);font-size:1.05rem}.assignment-row__service{color:var(--text-body)}.assignment-row__time{flex:none;font-family:var(--font-ui);font-size:.85rem;font-variant-numeric:tabular-nums;color:var(--espresso)}.assignment-list[data-multi] .assignment-row:before{content:"";position:absolute;left:14.5px;top:30px;width:1px;height:.6rem;background:var(--gold)}.assignment-list[data-multi] .assignment-row:last-child:before{display:none}.step-subtitle{font-family:var(--font-display);font-style:italic;font-size:clamp(1rem,2.6vw,1.2rem);line-height:1.3;color:var(--mocha);margin:0 0 1.6rem;max-width:30rem}.details-grid{display:grid;grid-template-columns:1fr;gap:2rem}.booking__form{display:block;max-width:30rem}.group-eyebrow{display:flex;align-items:center;gap:.7rem;margin:0 0 1rem;font-family:var(--font-ui);font-size:.66rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--text-body)}.group-eyebrow:after{content:"";flex:1 1 auto;height:1px;background:var(--hairline)}.field-row{display:grid;grid-template-columns:1fr 1fr;column-gap:1rem;row-gap:1.25rem;align-items:start}.field{position:relative;display:block;padding-top:.9rem;margin:0}.booking__form>.field+.field,.field-row+.field{margin-top:1.4rem}.field__input{width:100%;font-family:var(--font-body);font-size:1rem;line-height:1.4;padding:.62em .05em .6em;min-height:2.75rem;border:0;border-bottom:1.5px solid color-mix(in srgb,var(--gold) 72%,transparent);border-radius:0;background:transparent;color:var(--espresso)}.field__input--area{min-height:4.5rem;resize:vertical}.field__input:focus{border-bottom-color:var(--accent-gold-deep);box-shadow:0 1px 0 0 var(--accent-gold-deep)}.field__label{position:absolute;left:.05em;top:1.5rem;pointer-events:none;white-space:nowrap;font-family:var(--font-ui);font-size:1rem;color:var(--mocha);transform-origin:left top;transition:transform .18s ease,color .18s ease,letter-spacing .18s ease}.field__label .opt{font-family:var(--font-display);font-style:italic;font-size:.95em;text-transform:none;letter-spacing:.01em;color:var(--mocha)}.field__input:focus+.field__label,.field__input:not(:placeholder-shown)+.field__label,.field__input:-webkit-autofill+.field__label{transform:translateY(-1.45rem) scale(.7);letter-spacing:.08em;text-transform:uppercase;color:var(--espresso)}.field[data-invalid=true] .field__input{border-bottom-color:var(--brown, #8a3d2e)}.field[data-invalid=true] .field__input:focus{box-shadow:0 1px 0 0 var(--brown, #8a3d2e)}.field[data-invalid=true] .field__label{color:var(--brown, #8a3d2e)}.field__error{display:block;font-family:var(--font-ui);font-size:.78rem;color:var(--brown, #8a3d2e);margin-top:.35rem}.field__input:-webkit-autofill,.field__input:-webkit-autofill:hover,.field__input:-webkit-autofill:focus,.field__input:-webkit-autofill:active{-webkit-text-fill-color:var(--espresso);-webkit-box-shadow:0 0 0 1000px var(--bg) inset;box-shadow:0 0 0 1000px var(--bg) inset;caret-color:var(--espresso);transition:background-color 9999s ease-out 0s}.field__input:-webkit-autofill:focus{-webkit-box-shadow:0 0 0 1000px var(--bg) inset,0 1px 0 0 var(--accent-gold-deep);box-shadow:0 0 0 1000px var(--bg) inset,0 1px 0 0 var(--accent-gold-deep)}@media(prefers-reduced-motion:reduce){.field__label{transition:none}}.phone-field{display:flex;flex-wrap:wrap;align-items:flex-end;--_phone-prefix: 4.5rem}.phone-field .phone-country{flex:0 0 auto;position:relative;display:inline-flex;align-items:center;border-bottom:1.5px solid color-mix(in srgb,var(--gold) 72%,transparent);border-right:1px solid color-mix(in srgb,var(--gold) 72%,transparent)}.phone-field .field__input{flex:1 1 auto;width:auto}.phone-field .field__error{flex:0 0 100%}.phone-country__trigger{display:inline-flex;align-items:center;gap:.35rem;padding:.62em .5rem .6em 0}.phone-country__flag{display:block;width:1.25rem;aspect-ratio:4 / 3;border-radius:2px;object-fit:cover;flex-shrink:0}.phone-country__dial{font-family:var(--font-body);font-size:1rem;line-height:1.4;color:var(--mocha)}.phone-country__caret{width:0;height:0;border-left:4px solid transparent;border-right:4px solid transparent;border-top:5px solid var(--mocha);flex-shrink:0}.phone-country__select{position:absolute;inset:0;opacity:0;cursor:pointer;font:inherit}.phone-field .field__label{left:var(--_phone-prefix);transition:transform .18s ease,color .18s ease,letter-spacing .18s ease,left .18s ease}.phone-field .field__input:focus+.field__label,.phone-field .field__input:not(:placeholder-shown)+.field__label,.phone-field .field__input:-webkit-autofill+.field__label{left:.05em}.phone-field:focus-within .phone-country{border-bottom-color:var(--accent-gold-deep);border-right-color:var(--accent-gold-deep)}.phone-field[data-invalid=true] .phone-country{border-bottom-color:var(--brown, #8a3d2e)}@media(prefers-reduced-motion:reduce){.phone-field .field__label{transition:none}}.intent{margin-top:2.6rem;border:0;padding:0;min-width:0}.intent__legend{font-family:var(--font-ui);font-size:.72rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-body);padding:0;margin:0 0 .7rem}.rows{display:grid;border:1px solid var(--hairline);border-radius:0;background:var(--bg-section-alt)}.radio-real{position:absolute;width:1px;height:1px;padding:0;margin:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.row{position:relative;display:flex;align-items:center;gap:.85rem;min-height:56px;padding:.85rem 1rem .85rem 1.05rem;cursor:pointer;font-family:var(--font-ui);border-left:2px solid transparent;transition:background-color .16s ease,border-left-color .16s ease}.row+.row{border-top:1px solid var(--hairline)}.row-text{flex:1 1 auto;min-width:0}.row-title{display:block;font-size:.95rem;font-weight:500;color:var(--espresso);line-height:1.25}.row-sub{display:block;font-family:var(--font-body);font-size:.8rem;color:var(--text-body);margin-top:.1rem}.gift-glyph{flex:none;margin-left:-.15rem;color:var(--gold);opacity:.9}.mark{flex:none;width:1.25rem;height:1.25rem;border-radius:var(--radius-full);border:1px solid var(--text-body);display:inline-grid;place-items:center;transition:border-color .16s ease}.mark:after{content:"";width:.6rem;height:.6rem;border-radius:var(--radius-full);background:var(--ink-950);transform:scale(0);transition:transform .16s cubic-bezier(.23,1,.32,1)}.radio-real:checked+.row{background:color-mix(in srgb,var(--gold) 8%,var(--bg-section-alt));border-left-color:var(--gold)}.radio-real:checked+.row .mark{border-color:var(--accent-gold-deep)}.radio-real:checked+.row .mark:after{transform:scale(1)}.radio-real:checked+.row .row-title{color:var(--ink-950)}.radio-real:focus-visible+.row{outline:2px solid var(--accent-gold-deep);outline-offset:-2px}@media(hover:hover)and (pointer:fine){.row:hover{background:color-mix(in srgb,var(--gold) 5%,var(--bg-section-alt))}.radio-real:checked+.row:hover{background:color-mix(in srgb,var(--gold) 10%,var(--bg-section-alt))}}.intent__reveal{margin-top:1.3rem;padding-left:1.05rem;border-left:2px solid var(--hairline)}.intent__reveal>.field+.field,.intent__reveal>.field+.field.field{margin-top:1.4rem}.intent__note{font-family:var(--font-ui);font-size:.72rem;color:var(--mocha);margin:.7rem 0 0}.reassure{border-top:1px solid var(--hairline);padding-top:1.4rem;margin-top:2rem}.reassure__line{font-family:var(--font-display);font-style:italic;font-size:1.25rem;line-height:1.25;color:var(--espresso);margin:0 0 1.1rem}.reassure__list{list-style:none;margin:0;padding:0;display:grid;gap:.85rem}.reassure__item{display:grid;grid-template-columns:auto 1fr;gap:.7rem;font-family:var(--font-body);font-size:.86rem;line-height:1.45;color:var(--mocha)}.reassure__tick{width:1.05rem;height:1.05rem;margin-top:.12rem;border:1px solid var(--gold);border-radius:var(--radius-full);display:inline-grid;place-items:center;flex:none}.reassure__tick:after{content:"";width:.34rem;height:.6rem;margin-top:-.12rem;border:solid var(--accent-gold-deep, var(--color-gold-700));border-width:0 1.5px 1.5px 0;transform:rotate(40deg)}@media(min-width:47rem){.details-grid{grid-template-columns:minmax(0,1.32fr) minmax(0,1fr);gap:clamp(2.5rem,5vw,4rem);align-items:start}.details-grid .booking__form{max-width:28rem}.details-grid .reassure{border-top:0;border-left:1px solid var(--hairline);padding-top:.4rem;padding-left:clamp(2rem,4vw,3rem);margin-top:.5rem;align-self:stretch}.details-grid .reassure__line{font-size:1.5rem}}@media(prefers-reduced-motion:reduce){.row,.mark,.mark:after{transition:none}}.booking__card{min-height:90px;margin-block:1rem;padding:1rem;border:1px solid var(--hairline);border-radius:0;background:var(--cream);max-width:32rem}.booking__notice{display:grid;gap:.75rem;border:1px solid var(--ochre);border-radius:0;background:color-mix(in srgb,var(--ochre) 12%,var(--cream));padding:.9rem 1.1rem;margin-bottom:1.5rem}.booking__notice-text{font-family:var(--font-ui);font-size:.88rem;color:var(--espresso);margin:0}.booking__notice-action{justify-self:start}.recap{border:1px solid var(--hairline);border-radius:0;background:var(--cream);padding:1.1rem 1.25rem;margin-bottom:1.5rem;max-width:32rem}.recap__heading{font-family:var(--font-ui);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-body);margin:0 0 .85rem}.recap__rows{margin:0;display:grid;gap:.7rem}.recap__row{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}.recap__row dt{flex:none;font-family:var(--font-ui);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-body)}.recap__row dd{margin:0;font-family:var(--font-body);font-size:.95rem;color:var(--espresso);text-align:right}.recap__row--deposit{border-top:1px solid var(--hairline);padding-top:.7rem}.recap__row--deposit dd{font-family:var(--font-ui)}.recap__row--lineup{display:block}.recap__row--lineup dt{margin-bottom:.55rem}.recap__row--lineup dd{text-align:left}.recap__row--lineup .assignment-list{margin-top:0}.recap__save{color:var(--color-success-sage-text);font-weight:600}.booking__error{font-family:var(--font-ui);font-size:.9rem;color:var(--brown, #8a3d2e);border:1px solid color-mix(in srgb,var(--brown, #8a3d2e) 40%,transparent);border-radius:0;padding:.75rem 1rem;margin-bottom:1.5rem}.booking__error-retry{display:inline-block;margin-left:.75rem;font-family:var(--font-ui);font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--espresso);background:none;border:0;border-bottom:1px solid var(--gold);padding:0 0 .1em;cursor:pointer}.policy__line{font-family:var(--font-ui);font-size:.82rem;color:var(--text-body);margin:1.25rem 0 .4rem}.policy{margin:0 0 1rem;border-top:1px solid var(--hairline);padding-top:.5rem}.policy__title{font-family:var(--font-ui);font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--espresso);cursor:pointer}.policy__title::marker{color:var(--gold)}.policy__text{font-family:var(--font-body);font-size:.85rem;color:var(--text-body);margin:.5rem 0 0}.booking__done{text-align:center;padding:clamp(2.5rem,7vw,4rem) 1.5rem;border-top:2px solid var(--gold)}.booking__done-deposit{font-family:var(--font-ui);color:var(--espresso);margin:.75rem 0 0}.funnel-foot{flex:0 0 auto;margin-top:2.5rem;text-align:center;font-family:var(--font-ui);font-size:.78rem;color:var(--text-primary)}.booking-cal{--rdp-accent-color: var(--ink-950);--rdp-accent-background-color: var(--cream);--rdp-day_button-border-radius: 0;--rdp-day_button-width: 2.5rem;--rdp-day_button-height: 2.5rem;--rdp-day-width: 2.5rem;--rdp-day-height: 2.5rem;--rdp-disabled-opacity: 1;--rdp-weekday-opacity: 1;--rdp-today-color: var(--espresso);--rdp-selected-border: 1px solid var(--gold);font-family:var(--font-ui);color:var(--espresso)}.booking-cal__picker{margin:0}.booking-cal .rdp-months{margin-inline:auto}.booking-cal .rdp-month_caption{font-family:var(--font-display);font-size:1.25rem;font-weight:500}.booking-cal .rdp-weekday{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mocha);font-weight:600}.booking-cal .rdp-day_button{border-radius:0;font-family:var(--font-ui);font-size:.9rem}.booking-cal .rdp-day_button:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:-2px}.booking-cal .rdp-nav button{color:var(--espresso);border-radius:0}.booking-cal .rdp-chevron{fill:var(--espresso)}.booking-cal .rdp-nav button:hover .rdp-chevron{fill:var(--accent-gold-deep)}.booking-cal .rdp-nav button:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:2px}.booking-cal .rdp-has-slots .rdp-day_button{position:relative;color:var(--espresso);font-weight:600}.booking-cal .rdp-has-slots .rdp-day_button:after{content:"";position:absolute;left:50%;bottom:.28rem;transform:translate(-50%);width:.32rem;height:.32rem;border-radius:var(--radius-full);background:var(--gold)}.booking-cal .rdp-selected .rdp-day_button{background:var(--ink-950);color:var(--cream);border-color:var(--ink-950)}.booking-cal .rdp-selected .rdp-day_button:after{display:none}.booking-cal .rdp-disabled .rdp-day_button{color:var(--mocha);opacity:1}.booking-cal .rdp-preferred .rdp-day_button{box-shadow:inset 0 0 0 2px var(--accent-gold-deep)}.booking-cal .rdp-disabled.rdp-preferred .rdp-day_button{opacity:1}.booking-cal__status{font-family:var(--font-ui);font-size:.82rem;color:var(--text-body);margin:.75rem 0 0}.booking-cal .rdp-selected .rdp-day_button{animation:belle-day-ring .2s ease-out both}@keyframes belle-day-ring{0%{box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 55%,transparent)}to{box-shadow:0 0 color-mix(in srgb,var(--gold) 0%,transparent)}}.btn__dots{display:inline-block;animation:belle-dots 1.2s ease-in-out infinite}@keyframes belle-dots{0%,to{opacity:1}50%{opacity:.35}}.booking__done-rule{display:block;width:100%;height:1px;background:var(--gold);margin:1.5rem 0 0}@media(prefers-reduced-motion:reduce){.svc-card,.svc-card:hover{transform:none}.svc-card[data-selected=true],.svc-card[data-selected=true]:after{animation:none}.svc-card__marker,.svc-card__marker:before,.svc-card__check{transition:none}.booking-cal .rdp-selected .rdp-day_button,.btn__dots{animation:none}}.booking__done-recap{max-width:28rem;margin:1.25rem auto 0;text-align:left}.booking__done-next{font-family:var(--font-body);font-size:.92rem;color:var(--espresso);margin:1.5rem 0 0}.booking__done-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.booking__consent-card{border:1px solid var(--gold);outline:1px solid var(--gold);outline-offset:4px;background:var(--bg-section-alt);padding:clamp(1.25rem,4vw,2rem);margin-block:1.5rem}.booking__consent-card-kicker{font-family:var(--font-ui);font-size:.6875rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--text-body);margin:0}.booking__consent-card-title{font-family:var(--font-display);font-weight:500;font-size:1.35rem;margin:.4rem 0 .35rem}.booking__consent-card-body{font-size:.9375rem;color:var(--text-body);line-height:1.6;margin:0 0 1rem;max-width:55ch}.booking__contact{border-left:2px solid var(--gold);padding-left:.75rem}.booking__note--preferred{border-left:2px solid var(--gold);padding-left:.75rem;color:var(--espresso)}.see-more{justify-self:start;margin:.5rem 1rem 1rem;padding:.32rem .85rem;font-family:var(--font-ui);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--espresso);background:transparent;border:1px solid var(--gold);border-radius:var(--radius-pill);cursor:pointer}.see-more:hover{background:color-mix(in srgb,var(--gold) 8%,transparent)}.see-more:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:2px}.cal-sheet-layer{position:fixed;inset:0;z-index:920;display:flex;align-items:flex-end;justify-content:center}.cal-sheet__backdrop{position:absolute;inset:0;background:color-mix(in srgb,var(--espresso) 58%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}.cal-sheet{position:relative;z-index:1;width:100%;max-width:24rem;max-height:92dvh;overflow-y:auto;padding:1.25rem 1.25rem 1.6rem;background:var(--cream);border-top:2px solid var(--gold);box-shadow:0 -20px 60px #2b201a52}.cal-sheet__head{position:relative;margin-bottom:.5rem}.cal-sheet__close{position:absolute;top:-.25rem;right:-.25rem;width:40px;height:40px;display:grid;place-items:center;border-radius:var(--radius-pill);border:1px solid var(--gold);background:var(--cream);color:var(--espresso);font-family:var(--font-body);font-size:1.2rem;line-height:1;cursor:pointer}.cal-sheet__close:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:2px}.cal-sheet__eyebrow{font-family:var(--font-ui);font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-body);margin:0 2.75rem .2rem 0}.cal-sheet__title{font-family:var(--font-display);font-style:italic;font-weight:500;font-size:1.5rem;line-height:1.1;color:var(--espresso);margin:0 2.75rem .3rem 0}.cal-sheet__subnote{font-family:var(--font-ui);font-size:.72rem;line-height:1.45;color:var(--text-body);margin:0}.cal-sheet__unwired{font-family:var(--font-ui);font-size:.85rem;line-height:1.5;color:var(--espresso);padding:1.75rem .25rem;text-align:center}.cal-sheet__times{margin-top:1.25rem;display:grid;gap:1.1rem}.time-chip--static{cursor:default}.time-chip--static:hover{border-color:var(--hairline);background:transparent}.cal-sheet__use{margin-top:1.25rem;width:100%;padding:.85rem 1rem;border:1px solid var(--ink-950);border-radius:var(--radius-pill);background:var(--ink-950);color:var(--cream);font-family:var(--font-ui);font-size:.8rem;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:opacity .15s ease}.cal-sheet__use:disabled{opacity:.4;cursor:not-allowed}.cal-sheet__use:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:2px}@media(min-width:40rem){.cal-sheet-layer{align-items:center}.cal-sheet{border:1px solid var(--gold);border-radius:2px}}.pmu-ack{display:flex;gap:.6rem;align-items:flex-start;min-height:2.75rem;font-size:.95rem;border:1px solid var(--gold);background:var(--bg-section-alt);padding:.85rem 1rem}.pmu-ack input{margin-top:.2rem;accent-color:var(--ink-950)}.deposit-ack{display:flex;gap:.6rem;align-items:flex-start;min-height:2.75rem;margin:0 0 1rem;font-size:.95rem;border:1px solid var(--gold);background:var(--bg-section-alt);padding:.85rem 1rem}.deposit-ack input{margin-top:.2rem;accent-color:var(--ink-950)}.booking__verification{display:grid;gap:.75rem;width:100%;max-width:32rem;margin:0 0 var(--space-6);padding:.75rem;border:1px solid var(--hairline);border-radius:0;background:var(--cream);color:var(--espresso);text-align:left;overflow:visible}.booking__verification-label,.booking__verification-status,.booking__verification-error p{margin:0}.booking__verification-label{font-family:var(--font-ui);font-size:.82rem;font-weight:600}.booking__verification-status{color:var(--text-body);font-size:.85rem}.booking__verification-widget{display:flex;justify-content:center;align-items:flex-start;width:100%;min-height:65px;overflow:visible}.booking__verification-widget:focus-within,.booking__verification-widget:focus-visible{outline:2px solid var(--accent-gold-deep);outline-offset:2px}.booking__verification-error{display:grid;justify-items:start;gap:.75rem}.booking__verification-error p{color:var(--brown)}.booking__verification-retry{transition:none;animation:none}.booking__notice-help{max-width:48ch;margin:0;color:var(--text-body);font-size:.85rem}@media(max-width:23rem){.booking__verification-widget{min-height:140px}}.details__legal,.booking__done-legal,.booking__done-manage{font-size:.85rem;color:var(--text-body)}.booking__gate{display:contents;border:0;margin:0;padding:0;min-inline-size:0}
