.book-grid{grid-template-columns:minmax(0,1fr) minmax(280px,360px)}.booker{min-width:0;max-width:680px}.bstep{scroll-margin-top:calc(var(--nav-h) + 8px);padding-bottom:clamp(36px,5vh,52px)}.bstep+.bstep{border-top:1px solid var(--rule);padding-top:clamp(32px,4.5vh,44px)}.bstep.is-wait .bstep-num,.bstep.is-wait .bstep-h,.bstep.is-wait .bstep-sub{color:var(--ink-mute)}.bstep-head{grid-template-columns:auto minmax(0,1fr);align-items:baseline;column-gap:16px;display:grid}.bstep-num{color:var(--signal);letter-spacing:-.03em;grid-row:1/3;align-self:start;font-size:30px;font-weight:600;line-height:1}.bstep-h{color:var(--ink);letter-spacing:-.025em;font-size:24px;font-weight:600;line-height:1.15}.bstep-h:focus-visible{outline-offset:6px;border-radius:4px}.bstep-sub{color:var(--ink-mute);text-wrap:pretty;grid-column:2;margin-top:6px;font-size:15px;line-height:1.5}.cal{margin-top:24px}.cal-week,.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.cal-week{color:var(--ink-mute);letter-spacing:.04em;text-align:center;text-transform:uppercase;margin-bottom:8px;font-size:12.5px;font-weight:600}.cal-day{border:1px solid var(--rule-hi);background:var(--bg-raise);min-height:64px;color:var(--ink);font:inherit;cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;border-radius:10px;place-content:center;gap:2px;padding:8px 4px;display:grid;position:relative}.cal-day.is-blank{cursor:default;background:0 0;border-color:#0000}.cal-day:disabled{color:var(--ink-faint);border-color:var(--rule);cursor:not-allowed;background:0 0}.cal-day:disabled .cal-dow{color:var(--ink-faint)}.cal-dow{color:var(--ink-mute);letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:600;display:none}.cal-num{letter-spacing:-.02em;font-size:20px;font-weight:600;line-height:1}@media (hover:hover){.cal-day:not(:disabled):hover{border-color:var(--signal-rule);color:var(--signal-ink)}}.cal-day.is-on,.cal-day.is-on:hover{border-color:var(--signal);background:var(--signal);color:var(--on-signal)}.cal-day.is-on .cal-dow{color:inherit}.times{gap:22px;margin-top:24px;display:grid}.times-band-h{color:var(--ink-mute);letter-spacing:.04em;text-transform:uppercase;margin-bottom:10px;font-size:12.5px;font-weight:600}.times-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.time{border:1px solid var(--rule-hi);background:var(--bg-raise);min-height:48px;color:var(--ink);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;border-radius:10px;padding:10px 8px;font-size:15.5px;font-weight:500}@media (hover:hover){.time:hover{border-color:var(--signal-rule);color:var(--signal-ink)}}.time.is-on,.time.is-on:hover{border-color:var(--signal);background:var(--signal);color:var(--on-signal);font-weight:600}.times-none{color:var(--ink-sub);font-size:16px}.bform{max-width:none;margin-top:24px}.bform-when{border:1px solid var(--signal-rule);background:var(--signal-weak);border-radius:12px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:14px 16px;display:flex}.bform-when-words{gap:3px;min-width:0;display:grid}.bform-when strong{color:var(--ink);letter-spacing:-.01em;font-size:16.5px;font-weight:600;line-height:1.3}.bform-when-words>span{color:var(--ink-sub);font-size:14px}.bform-change{border:1px solid var(--rule-hi);min-height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;border-radius:999px;flex:none;padding:8px 14px;font-size:14px;font-weight:600}@media (hover:hover){.bform-change:hover{border-color:var(--ink)}}.cform .cta-primary:disabled{opacity:.6;cursor:progress}.booked{max-width:640px}.booked-h{outline-offset:6px;color:var(--ink);letter-spacing:-.035em;text-wrap:balance;border-radius:4px;margin-top:12px;font-size:clamp(30px,3.4vw,44px);font-weight:600;line-height:1.08}.booked-when{border-top:1px solid var(--rule);margin:clamp(24px,4vh,36px) 0 0;display:grid}.booked-when>div{border-bottom:1px solid var(--rule);grid-template-columns:88px minmax(0,1fr);gap:16px;padding:16px 0;display:grid}.booked-when dt{color:var(--ink-mute);letter-spacing:.02em;padding-top:2px;font-size:14px;font-weight:600}.booked-when dd{color:var(--ink);letter-spacing:-.01em;gap:3px;margin:0;font-size:18px;font-weight:500;line-height:1.35;display:grid}.booked-time{letter-spacing:-.02em;font-size:22px;font-weight:600}.booked-alt{color:var(--ink-sub);font-size:15px;font-weight:400}.booked-line{max-width:54ch;color:var(--ink-sub);text-wrap:pretty;margin-top:20px;font-size:16.5px;line-height:1.55}.booked-line a,.booked-line strong{color:var(--ink);font-weight:600}.booked-actions{flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:28px;display:flex}.cal-add{position:relative}.cal-add>summary{cursor:pointer;list-style:none}.cal-add>summary::-webkit-details-marker{display:none}.cal-add .arr-glyph{display:inline-block}.cal-add[open]>summary .arr-glyph{transform:rotate(180deg)}.cal-add-menu{z-index:5;border:1px solid var(--rule-hi);background:var(--pop);min-width:240px;box-shadow:0 16px 40px -16px var(--pop-shadow);border-radius:14px;padding:6px;scroll-margin-bottom:16px;display:grid;position:absolute;top:calc(100% + 8px);left:0}.cal-add-menu a{min-height:44px;color:var(--ink);border-radius:9px;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 12px;font-size:15.5px;font-weight:500;text-decoration:none;display:flex}.cal-add-menu a span{color:var(--ink-mute);font-size:13.5px}@media (hover:hover){.cal-add-menu a:hover{background:var(--signal-weak);color:var(--signal-ink)}}.cal-add-menu a:focus-visible{background:var(--signal-weak)}.book-facts{margin-top:32px}.book-facts h2{color:var(--ink-mute);letter-spacing:.02em;border-bottom:1px solid var(--rule);padding-bottom:12px;font-size:14px;font-weight:600}.book-facts ul{margin:0;padding:0;list-style:none;display:grid}.book-facts li{border-bottom:1px solid var(--rule);color:var(--ink-sub);text-wrap:pretty;gap:4px;padding:14px 0;font-size:15px;line-height:1.5;display:grid}.book-facts strong{color:var(--ink);letter-spacing:-.01em;font-size:16px;font-weight:600;line-height:1.3}.book-else{color:var(--ink-mute);margin-top:20px;font-size:14.5px;line-height:1.5}.book-else a{color:var(--ink)}.book-steps{border-top:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));gap:24px clamp(24px,4vw,48px);margin:clamp(48px,7vh,80px) 0 0;padding:clamp(28px,4vh,40px) 0 0;list-style:none;display:grid}.book-steps li{grid-template-columns:auto minmax(0,1fr);align-items:start;column-gap:14px;display:grid}.book-steps-num{color:var(--signal);letter-spacing:-.02em;font-size:22px;font-weight:600;line-height:1.1}.book-steps-words{gap:4px;display:grid}.book-steps-words strong{color:var(--ink);letter-spacing:-.015em;font-size:17px;font-weight:600;line-height:1.25}.book-steps-words>span{color:var(--ink-sub);text-wrap:pretty;font-size:15px;line-height:1.5}@media (min-width:768px) and (prefers-reduced-motion:no-preference){html[data-motion] .bstep{transition:opacity .26s}html[data-motion] .cal-day,html[data-motion] .time{transition:border-color .16s,background .16s,color .16s}html[data-motion] .cal-add .arr-glyph{transition:transform .2s}}@media (max-width:1023.98px){.book-grid{grid-template-columns:minmax(0,1fr)}.booker{max-width:none}.book-steps{grid-template-columns:1fr;gap:20px}}@media (max-width:767.98px){.bstep-h{font-size:22px}.cal-week{display:none}.cal-grid{scroll-snap-type:x proximity;scrollbar-width:none;gap:8px;margin:0 -24px;padding:2px 24px 8px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 40px),#0000)}.cal-grid::-webkit-scrollbar{display:none}.cal-day{scroll-snap-align:start;flex:0 0 64px;min-height:72px}.cal-day.is-blank{display:none}.cal-dow{display:block}.times-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.bform-when{flex-wrap:wrap}.booked-when>div{grid-template-columns:1fr;gap:4px}.booked-time{font-size:20px}.cal-add,.booked-actions .cta-primary{width:100%}.booked-actions .cta-primary{justify-content:center;min-height:54px}.cal-add-menu{margin-top:10px;position:static}}@media (max-width:359.98px){.times-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
