.booking{--bk-gap:.5rem;--bk-tile:3.5rem;--bk-bar:2rem}.booking [hidden]{display:none!important}.booking__grid{column-gap:var(--bk-gap);grid-template-columns:repeat(10,minmax(0,1fr));row-gap:2.5rem;display:grid}.booking__grid>*{grid-column:1/-1;min-width:0}.booking__cards,.booking__step--day{grid-column:1/6}.booking__step--time{grid-column:7/11}.booking__head{font-size:.875rem}.booking__note{color:var(--g700);grid-column:1/-1;font-size:.9375rem;line-height:1.6}.booking__cards{gap:var(--bk-gap);margin:0;padding:0;list-style:none;display:grid}.booking__card{border:1px solid var(--black);background:var(--paper);flex-direction:column;gap:.6rem;padding:1rem 1.25rem;display:flex;position:relative}.booking__card-title{letter-spacing:-.005em;text-transform:uppercase;color:var(--black);font-size:1.125rem;font-weight:800;line-height:1.2}.booking__card-facts{flex-wrap:wrap;gap:.4rem 1.25rem;display:flex}.booking__fact{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--g700);align-items:center;gap:.45rem;font-size:.75rem;font-weight:700;display:inline-flex}.booking__fact-ico{color:var(--red);flex:none}.booking__fact-ico[data-loc]{display:none}.booking__fact-ico[data-loc].is-on{display:block}.booking__step{flex-direction:column;gap:1rem;display:flex}.booking__bar{height:var(--bk-bar);align-items:flex-end;display:flex}.booking__tabs{gap:1.5rem}.booking__tab{font-family:var(--font-mono);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--g500);cursor:pointer;transition:color var(--snap), border-color var(--snap);background:0 0;border:0;border-bottom:2px solid #0000;padding:0 0 .35rem;font-size:.8125rem;font-weight:700}.booking__tab:hover{color:var(--black)}.booking__tab[aria-selected=true]{color:var(--black);border-bottom-color:var(--red)}.booking__days{grid-template-columns:repeat(var(--bk-cols,5), minmax(0, 1fr));grid-auto-rows:var(--bk-tile);gap:var(--bk-gap);min-height:calc(var(--bk-rows,5) * var(--bk-tile) + (var(--bk-rows,5) - 1) * var(--bk-gap));align-content:start;display:grid}.booking__day{border:1px solid var(--g300);background:var(--paper);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--snap), background-color var(--snap), color var(--snap);border-radius:0;flex-direction:column;justify-content:center;align-items:flex-start;gap:.1rem;padding:0 .65rem;display:flex}.booking__day-wd{font-family:var(--font-mono);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--g500);font-size:.6875rem}.booking__day-date{font-family:var(--font-mono);font-size:.9375rem;font-weight:600}.booking__day:hover:not([disabled]){border-color:var(--black)}.booking__day[disabled]{cursor:default;color:var(--g300);border-color:var(--g150);background:var(--g50)}.booking__day[disabled] .booking__day-wd{color:var(--g300)}.booking__day[aria-pressed=true]{background:var(--black);border-color:var(--black);color:var(--paper)}.booking__day[aria-pressed=true] .booking__day-wd{color:var(--g300)}.booking__gap{visibility:hidden}.booking__halves{gap:var(--bk-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;display:grid}.booking__half-name{font-family:var(--font-mono);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--g700);padding-bottom:calc(.35rem + 2px);font-size:.8125rem;font-weight:700}.booking__tzhint{font-family:var(--font-mono);letter-spacing:.03em;color:var(--g500);font-size:.75rem}.booking__times{gap:var(--bk-gap);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.booking__half{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:var(--bk-tile);gap:var(--bk-gap);display:grid}.booking__time{border:1px solid var(--g300);background:var(--paper);color:var(--ink);font-family:var(--font-mono);cursor:pointer;transition:border-color var(--snap), background-color var(--snap), color var(--snap);border-radius:0;font-size:.9375rem}.booking__time:hover{border-color:var(--black)}.booking__time[aria-pressed=true]{background:var(--red);border-color:var(--red);color:var(--paper)}.booking__form{grid-template-columns:subgrid;row-gap:1.25rem;display:grid}.booking__form>*{grid-column:1/-1}.booking__picked{color:var(--black);font-size:1.0625rem;font-weight:700}.booking__fields{grid-template-columns:subgrid;row-gap:1.25rem;display:grid}.booking__field--wide{grid-column:1/-1}.booking__field--l{grid-column:1/6}.booking__field--r{grid-column:7/11}.booking .cform__input--area{min-height:7rem}.booking__privacy{color:var(--g700);font-size:.8125rem;line-height:1.5}.booking .booking__privacy .booking__link{color:var(--ink);text-underline-offset:2px;transition:color var(--snap);text-decoration:underline}.booking .booking__privacy .booking__link:hover{color:var(--red)}.booking__submit{justify-self:start}.booking__submit[disabled]{opacity:.55;cursor:wait}.booking__status{font-family:var(--font-mono);letter-spacing:.03em;color:var(--g700);font-size:.8125rem;line-height:1.6}.booking__status[data-state=error],.booking__status[data-state=fallback]{color:var(--red)}.booking__done{border:1px solid var(--black);background:var(--paper);color:var(--ink);outline:none;flex-direction:column;grid-column:1/6;gap:.75rem;padding:1.25rem 1.25rem 1.5rem;display:flex}.booking__done-title{letter-spacing:-.01em;text-transform:uppercase;color:var(--black);font-size:1.375rem;font-weight:800;line-height:1.1}.booking__done-when{font-family:var(--font-mono);color:var(--black);font-size:1rem;font-weight:600}.booking__done-text{color:var(--g700);max-width:38rem;font-size:1rem;line-height:1.6}.booking__done-ref{font-family:var(--font-mono);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--g500);font-size:.75rem}.booking__done-cta{align-self:flex-start;margin-top:.5rem}.booking__card-when{font-family:var(--font-mono);color:var(--black);font-size:1rem;font-weight:600}.booking__card-ref{font-family:var(--font-mono);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--g500);font-size:.75rem}.booking__actions{flex-direction:column;gap:1rem;margin-top:.9rem;display:flex}.booking__actions-row{flex-wrap:wrap;align-items:center;gap:.75rem 1.75rem;display:flex}.booking__ask{flex-direction:column;gap:1rem;display:flex}.booking__ask-text{color:var(--black);font-weight:700}.booking__hint{color:var(--g700);font-size:.9375rem;line-height:1.6}.booking__textbtn{font:inherit;color:var(--ink);text-underline-offset:2px;cursor:pointer;transition:color var(--snap);background:0 0;border:0;padding:0;font-size:.9375rem;text-decoration:underline}.booking__textbtn:hover{color:var(--red)}.booking__textbtn[disabled]{color:var(--g300);cursor:default}.booking .btn-cta[disabled]{opacity:.55;cursor:default}.booking__notice{flex-direction:column;align-items:flex-start;gap:1.25rem;display:flex}.booking__notice-text{color:var(--ink);max-width:38rem;font-size:1.0625rem;line-height:1.6}@media (width<=63.99rem){.booking__cards,.booking__step--day,.booking__step--time,.booking__done,.booking__field--l,.booking__field--r{grid-column:1/-1}.booking__days{min-height:0}}.booking--compact{--bk-tile:2.75rem;--bk-bar:1.75rem;background:var(--paper);color:var(--ink);text-align:left;box-shadow:var(--shadow-tile);padding:clamp(1.25rem,3vw,1.75rem)}.booking--compact .booking__grid{grid-template-columns:minmax(0,1fr);row-gap:1.25rem}.booking--compact .booking__grid>*,.booking--compact .booking__cards,.booking--compact .booking__step--day,.booking--compact .booking__step--time,.booking--compact .booking__field--l,.booking--compact .booking__field--r{grid-column:1/-1}.booking--compact .booking__card{border:0;gap:.4rem;padding:0}.booking--compact .booking__card-title{font-size:1.0625rem}.booking--compact .booking__head{display:none}.booking__crumbs{flex-wrap:wrap;align-items:flex-end;gap:0 1rem;display:flex}.booking__crumb{font-family:var(--font-mono);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--g700);cursor:pointer;transition:color var(--snap), border-color var(--snap);background:0 0;border:0;border-bottom:2px solid #0000;gap:.45rem;padding:0 0 .5rem;font-size:.75rem;font-weight:700;display:inline-flex}.booking__crumb:hover:not([disabled]){color:var(--black)}.booking__crumb[aria-current=step]{color:var(--black);border-bottom-color:var(--red);cursor:default}.booking__crumb[disabled]{color:var(--g300);cursor:default}.booking__crumb-sep{color:var(--g300);flex:none;margin-bottom:.6rem}.booking--compact .booking__grid{grid-template-rows:auto auto auto auto}.booking--compact .booking__cards{grid-row:1}.booking--compact .booking__crumbs{grid-row:2}.booking--compact .booking__step--day,.booking--compact .booking__step--time,.booking--compact .booking__form{grid-row:3;align-self:start}.booking--compact .booking__status{grid-row:4}.booking--compact .booking__done{grid-row:1/4}.booking--compact[data-step=end] :is(.booking__cards,.booking__crumbs,.booking__step,.booking__form){visibility:hidden;pointer-events:none}.booking--compact[data-step=end] .booking__status{grid-row:1/4;align-self:start}.booking--compact[data-step=day] .booking__step--time,.booking--compact[data-step=day] .booking__form,.booking--compact[data-step=time] .booking__step--day,.booking--compact[data-step=time] .booking__form,.booking--compact[data-step=details] .booking__step--day,.booking--compact[data-step=details] .booking__step--time{visibility:hidden;pointer-events:none}.booking--compact .booking__form[hidden]{visibility:hidden;pointer-events:none;display:grid!important}.booking--compact .booking__step{gap:.75rem}.booking--compact .booking__days{min-height:calc(1.25rem + (var(--bk-rows,6) - 1) * (var(--bk-tile) + var(--bk-gap)));grid-template-rows:1.25rem}.booking--compact .booking__day{align-items:center;padding:0}.booking--compact .booking__day-wd{display:none}.booking__wd{font-family:var(--font-mono);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--g500);justify-content:center;align-items:flex-end;font-size:.6875rem;display:flex}.booking--compact .booking__day-date,.booking--compact .booking__time{font-size:.875rem}.booking--compact .booking__picked{display:none}.booking--compact .booking__submit{text-align:center;justify-self:stretch}.booking--compact .booking__done{color:var(--ink);background:0 0;border:0;justify-content:center;gap:.9rem;padding:0}.booking--compact .booking__done-icon{color:var(--red);flex:none;margin:0 0 .25rem -.6875rem}.booking__nowrap{white-space:nowrap}.booking--compact .booking__done-title{letter-spacing:-.015em;color:var(--black);font-size:1.375rem;line-height:1.08}.booking--compact .booking__done-when{font-weight:inherit;color:inherit}.booking--compact .booking__done-text{color:var(--g700)}.booking--compact .booking__done-ref{color:var(--g500)}
