.book-grid{grid-template-columns:minmax(0,400px) minmax(0,1fr);align-items:start;gap:24px;display:grid}.book-cal{position:sticky;top:100px}.book-month{grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;display:grid}.book-wd{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);text-align:center;padding-bottom:4px;font-size:.72rem}.book-day{aspect-ratio:1;color:var(--on-dark-3);font:inherit;cursor:default;background:0 0;border:1px solid #0000;border-radius:999px;font-size:1rem}.book-day.open{color:var(--espresso);background:var(--cream);border-color:var(--line);cursor:pointer;font-weight:600;position:relative}.book-day.open:after{content:"";background:var(--gold);border-radius:50%;width:5px;height:5px;margin-left:-2.5px;position:absolute;bottom:14%;left:50%}.book-day.open:hover{border-color:var(--rust)}.book-day.on{background:var(--rust);color:var(--ivory);border-color:var(--rust)}.book-day.on:after{background:var(--ivory)}.book-day:focus-visible{outline:3px solid var(--gold);outline-offset:2px}.book-times{grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:10px;display:grid}.book-summary{background:var(--cream);border-left:4px solid var(--gold);border-radius:12px;flex-direction:column;gap:4px;padding:14px 16px;display:flex}@media (max-width:860px){.book-grid{grid-template-columns:minmax(0,1fr)}.book-cal{position:static}}input[type=tel]{width:100%;font:400 1.05rem var(--serif);color:var(--ink);background:var(--ivory);border:1.5px solid var(--tan);border-radius:10px;min-height:48px;padding:11px 14px}
