:root{--wine:#6b293e;--ink:#30262a;--muted:#72686b;--line:#e7dfdb;--cream:#faf7f3}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font:15px/1.55 Arial,sans-serif}.booking{padding:clamp(16px,5vw,30px);max-width:620px;margin:auto}.eyebrow{font-size:10px;font-weight:750;letter-spacing:.15em;color:var(--wine)}h1{font-size:27px;margin:10px 0}p{margin:8px 0 18px}.booking-head>p{color:var(--muted);font-size:13px}.demo-note{padding:12px 14px;border-radius:9px;background:var(--cream);border:1px solid var(--line);font-size:11px;line-height:1.6;margin:20px 0 24px}.field-label,legend{font-size:14px;font-weight:750;display:block}.field-heading{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:23px 0 10px}.field-heading>span:last-child{font-size:11px;color:var(--muted)}select{font:inherit;width:100%;border:1px solid var(--line);padding:12px;border-radius:9px;margin-top:9px;color:var(--ink);background:white}button{font:inherit;cursor:pointer}button:focus-visible,select:focus-visible{outline:3px solid #b58649;outline-offset:3px}button:disabled{cursor:default}.month-nav{display:flex;align-items:center;justify-content:space-between;margin:14px 0 10px}.month-nav h2{font-size:15px;line-height:1.5;margin:0;text-transform:capitalize}.month-nav button{background:var(--cream);border:1px solid var(--line);width:34px;height:34px;border-radius:50%}.month-nav button:disabled{opacity:.3}.weekdays,.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px;text-align:center}.weekdays{font-size:10px;color:var(--muted);margin-bottom:7px}.calendar button{min-height:36px;border:1px solid transparent;border-radius:7px;background:var(--cream);color:var(--ink);font-size:12px}.calendar button:not(:disabled):hover{border-color:var(--wine)}.calendar button:disabled{background:transparent;color:#b8b1b4;text-decoration:line-through}.calendar button[aria-pressed=true]{background:var(--wine);color:white;border-color:var(--wine)}.calendar-note{font-size:10px;color:var(--muted);margin:12px 0 22px}fieldset{border:0;padding:0;margin:0 0 23px;min-width:0}legend{margin-bottom:12px}.selected-date{font-size:12px;margin:0 0 10px;color:var(--muted);text-transform:capitalize}.times{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.times button{border:1px solid var(--line);background:white;border-radius:9px;padding:10px 4px;font-size:14px;font-weight:700}.times small{display:block;font-size:9px;font-weight:400;margin-top:4px}.times button[aria-pressed=true]{background:var(--wine);color:white;border-color:var(--wine)}.times button:disabled{opacity:.45;background:var(--cream)}.rate{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 0;border-bottom:1px solid var(--line)}.rate label{font-size:13px;flex:1}.rate label small{display:block;color:var(--muted);font-size:10px;font-weight:400}.rate>strong{font-size:13px;font-weight:600;white-space:nowrap}.counter{display:flex;align-items:center;gap:8px}.counter button{border:1px solid var(--line);background:var(--cream);border-radius:50%;width:30px;height:30px;padding:0}.counter input{width:27px;border:0;text-align:center;font:inherit;font-size:13px;background:white;color:var(--ink)}.counter input::-webkit-inner-spin-button{display:none}.counter input{-moz-appearance:textfield}.price-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:15px;margin-top:24px}.price-summary small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.price-summary strong{font-size:28px;white-space:nowrap;letter-spacing:-.04em}.availability{font-size:11px;color:var(--muted);min-height:20px;margin:13px 0}.submit{width:100%;border:0;border-radius:9px;padding:15px 12px;background:var(--wine);color:white;font-weight:700}.submit:disabled{opacity:.45}.fineprint{font-size:10px;color:var(--muted);line-height:1.65;margin:13px 0}.powered{border-top:1px solid var(--line);margin-top:25px;padding-top:20px;text-align:center;font-size:11px;color:var(--muted)}.powered span{font-size:10px}.powered strong{color:var(--wine)}.result{padding:24px 18px;background:var(--cream);border:1px solid var(--line);border-radius:12px;margin-top:24px}.result h2{font-size:24px;color:var(--wine);margin-top:0}.result p{font-size:13px}.result button{margin-top:12px}#result[hidden]{display:none}@media(max-width:350px){.booking{padding:16px}.rate{gap:6px}.counter{gap:3px}.counter button{width:28px;height:28px}.rate>strong{font-size:12px}.times{gap:5px}}
