.booking .notice{margin-bottom:clamp(1.6rem,4vw,2.4rem)}.booking__fallback h2,.booking__wizard h2{margin-bottom:.8rem}.hours-table{border-collapse:collapse;width:min(28rem,100%);margin-bottom:1rem;font-size:.94rem}.hours-table th,.hours-table td{border-bottom:1px solid var(--line);text-align:left;padding:.5rem .6rem}.hours-table th{font-family:var(--display);font-weight:700}.hours-table td{color:var(--muted)}.booking__steps{flex-wrap:wrap;gap:.4rem 1rem;margin:0 0 clamp(1.5rem,4vw,2.2rem);padding:0;list-style:none;display:flex}.booking__steps li{color:var(--muted);font-family:var(--display);align-items:center;gap:.45rem;font-size:.83rem;font-weight:700;display:flex}.booking__step-n{border:1.5px solid var(--line-strong);border-radius:50%;place-items:center;width:1.6rem;height:1.6rem;font-size:.75rem;display:grid}.booking__steps li.is-active{color:var(--clay-ink)}.booking__steps li.is-active .booking__step-n{color:var(--white);border-color:var(--clay);background:var(--clay)}.booking__steps li.is-done{color:var(--pine-deep)}.booking__steps li.is-done .booking__step-n{color:var(--white);border-color:var(--pine);background:var(--pine)}.booking__cards{gap:.7rem;margin-bottom:1.2rem;display:grid}.booking__card{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--white);text-align:left;cursor:pointer;gap:.2rem;padding:1rem 1.1rem;transition:border-color .14s,transform .14s;display:grid}.booking__card:hover{border-color:var(--clay);transform:translateY(-2px)}.booking__card strong{font-family:var(--display);font-size:1.02rem;font-weight:700}.booking__card span{color:var(--muted);font-size:.87rem}.booking__chosen{border-left:3px solid var(--pine);border-radius:var(--radius-sm);background:var(--pine-tint);color:var(--pine-deep);flex-wrap:wrap;align-items:baseline;gap:.6rem;margin-bottom:1.1rem;padding:.6rem .9rem;font-size:.9rem;font-weight:650;display:flex}.booking__chosen--slot{border-left-color:var(--clay);background:var(--clay-tint);color:var(--clay-ink)}.booking__link{color:inherit;text-underline-offset:.2em;cursor:pointer;background:0 0;border:0;padding:0;font-size:.83rem;font-weight:700;text-decoration:underline}.booking__days{scroll-snap-type:x proximity;gap:.5rem;margin-bottom:1rem;padding-bottom:.4rem;display:flex;overflow-x:auto}.booking__day{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);text-align:left;scroll-snap-align:start;cursor:pointer;gap:.1rem;min-width:7.2rem;padding:.6rem .8rem;display:grid}.booking__day strong{font-family:var(--display);text-transform:capitalize;font-size:.92rem;font-weight:700}.booking__day span{color:var(--pine-deep);font-size:.76rem;font-weight:650}.booking__day.is-active{border-color:var(--clay);background:var(--clay-tint)}.booking__day[disabled]{color:var(--muted);background:var(--paper);cursor:not-allowed}.booking__day[disabled] span{color:var(--muted)}.booking__slots{grid-template-columns:repeat(auto-fill,minmax(6.2rem,1fr));gap:.5rem;margin-bottom:1.2rem;display:grid}.booking__slot{border:1px solid var(--pine);border-radius:var(--radius-sm);background:var(--white);color:var(--pine-deep);text-align:center;cursor:pointer;gap:.05rem;padding:.6rem .4rem;transition:background .14s;display:grid}.booking__slot:hover{color:var(--white);background:var(--pine-deep)}.booking__slot strong{font-family:var(--display);font-size:1rem;font-weight:700}.booking__slot.is-taken{border-color:var(--line);background:var(--paper);color:var(--muted);cursor:not-allowed;border-style:dashed}.booking__slot.is-taken strong{font-weight:400;text-decoration:line-through}.booking__slot span{letter-spacing:.06em;text-transform:uppercase;font-size:.66rem}.booking__form{gap:.9rem;margin-bottom:.6rem;display:grid}.field{gap:.3rem;display:grid}.field>span{font-family:var(--display);font-size:.86rem;font-weight:700}.field input,.field select,.field textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--white);padding:.65rem .75rem;font-size:1rem}.field textarea{resize:vertical}.booking__summary{gap:.5rem;margin:0 0 1.2rem;display:grid}.booking__summary>div{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--white);gap:.15rem;padding:.7rem .9rem;display:grid}.booking__summary dt{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:800}.booking__summary dd{font-family:var(--display);text-transform:capitalize;margin:0;font-size:1rem;font-weight:650}.booking__done .tag{margin-bottom:.7rem}.booking__wizard>.fine{margin-top:1.2rem;margin-bottom:0}@media (width>=640px){.booking__cards{grid-template-columns:repeat(auto-fit,minmax(15rem,1fr))}.booking__form{grid-template-columns:1fr 1fr}.field--wide{grid-column:1/-1}.booking__summary{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr))}}
