.sample-banner{background:#fff3cd;border:1px solid #e0c060;color:#7a5d00;padding:.7rem 1rem;border-radius:10px;font-size:.9rem;font-weight:500;margin:1rem 0 0;max-width:70ch}.live-banner{background:var(--c-live-soft-bg);border:1px solid var(--c-live-soft-border);color:var(--c-live-soft-text);padding:.7rem 1rem;border-radius:10px;font-size:.9rem;margin:1rem 0 0;max-width:70ch}.avail{display:grid;grid-template-columns:1fr 320px;gap:1.5rem;margin-top:1.5rem;align-items:start}@media (max-width: 880px){.avail{grid-template-columns:1fr}}.avail-cal{position:relative;background:var(--color-header);border:1px solid var(--color-header-line);border-radius:var(--radius);padding:1rem 1.1rem}.cal-toast{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--c-ink);color:var(--c-cream);font-size:.85rem;line-height:1.35;padding:.7rem 1rem;border-radius:10px;max-width:78%;text-align:center;box-shadow:var(--shadow);z-index:6;opacity:0;transition:opacity .2s ease;pointer-events:none}.cal-toast.show{opacity:1}.cal-toast[hidden]{display:none}.cal-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.5rem}.cal-nav{background:var(--c-sand);border:0;width:38px;height:38px;border-radius:50%;font-size:1.3rem;cursor:pointer;color:var(--c-ink)}.cal-nav:disabled{opacity:.45;cursor:default}.cal-months{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}@media (max-width: 560px){.cal-months{grid-template-columns:1fr}}.cal-month h4{font-family:var(--serif);text-align:center;margin:0 0 .6rem;font-size:1.15rem}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.cal-dow{font-size:.68rem;text-transform:uppercase;letter-spacing:.04em;color:var(--c-ink-soft);text-align:center;padding:.3rem 0}.cal-day{height:30px;border:0;background:transparent;border-radius:7px;font:inherit;font-size:.85rem;cursor:pointer;color:var(--c-ink);display:flex;align-items:center;justify-content:center}.cal-day.empty{visibility:hidden}.cal-day.disabled{color:var(--c-ink-soft);opacity:.42;text-decoration:line-through;cursor:default}.cal-day.available{font-weight:700;color:var(--c-ink)}.cal-day.available:hover{background:var(--c-sand)}.cal-day.muted{color:var(--c-ink-soft);opacity:.42;cursor:default}.cal-day.in-range{background:var(--c-sand);border-radius:0}.cal-day.end{background:var(--c-terracotta);color:#fff}.cal-hint{text-align:center;color:var(--c-ink-soft);font-size:.9rem;margin:1rem 0 0;min-height:1.2em}.cal-indicative{text-align:center;color:var(--c-ink-soft);font-size:.76rem;margin:.4rem 0 0;opacity:.8}.month-foot{margin-top:.9rem;padding-top:.8rem;border-top:1px solid var(--color-header-line);text-align:center}.pricebadge{display:inline-flex;align-items:baseline;gap:.35rem;background:var(--c-live-bg);border:1px solid var(--c-live-border);border-radius:999px;padding:.4rem .9rem}.pricebadge .pb-from{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--c-live-text);opacity:.85}.pricebadge .pb-amount{font-family:var(--serif);font-size:1.25rem;color:var(--c-live-text)}.pricebadge .pb-per{font-size:.8rem;color:var(--c-live-text);opacity:.85}.promo-slot:empty{display:none}.avail-quote{background:var(--color-header);border:1px solid var(--color-header-line);border-radius:var(--radius);padding:1.3rem;position:sticky;top:90px}.quote-dates{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:1rem;position:relative;cursor:help}.quote-dates:after{content:attr(data-tip);position:absolute;left:50%;bottom:100%;transform:translate(-50%,-8px);background:var(--c-ink);color:#fff;font-size:.76rem;line-height:1.2;padding:.4rem .65rem;border-radius:7px;width:max-content;max-width:90%;text-align:center;opacity:0;pointer-events:none;transition:opacity .15s ease;z-index:5}.quote-dates:before{content:"";position:absolute;left:50%;bottom:100%;transform:translate(-50%);border:6px solid transparent;border-top-color:var(--c-ink);opacity:0;transition:opacity .15s ease}.quote-dates:hover:after,.quote-dates:hover:before{opacity:1}.quote-dates .q-label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--c-ink-soft)}.quote-dates strong{font-family:var(--serif);font-size:1.15rem}.guests{margin-bottom:.4rem}.guests>.q-label{display:block;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--c-ink-soft);margin-bottom:.3rem}.guest-row{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0}.guest-label{font-size:.96rem}.stepper{display:flex;align-items:center;gap:.8rem}.step{width:30px;height:30px;border-radius:50%;border:1px solid var(--c-line);background:var(--c-white);font-size:1.1rem;line-height:1;cursor:pointer;color:var(--c-ink);display:inline-flex;align-items:center;justify-content:center}.step:hover:not(:disabled){border-color:var(--c-terracotta);color:var(--c-terracotta)}.step:disabled{opacity:.3;cursor:default}.step-val{min-width:1.4ch;text-align:center;font-weight:600}.guests-note{font-size:.76rem;color:var(--c-ink-soft);margin:.35rem 0 0}.quote-lines{border-top:1px solid var(--c-line);margin-top:1rem;padding-top:1rem}.q-row{display:flex;justify-content:space-between;color:var(--c-ink-soft);font-size:.92rem;margin-bottom:.6rem}.q-total{display:flex;justify-content:space-between;align-items:baseline;font-size:1.05rem}.q-total strong{font-family:var(--serif);font-size:1.5rem}.avail-quote .btn{width:100%;margin-top:1.1rem}.avail-quote .btn:disabled{opacity:.4;cursor:default;transform:none}.linkbtn{display:block;width:100%;background:none;border:0;color:var(--c-ink-soft);font:inherit;font-size:.85rem;text-decoration:underline;cursor:pointer;margin-top:.7rem}.quote-next{margin-top:1rem;padding:.9rem;background:var(--c-sand);border-radius:10px;font-size:.85rem;color:var(--c-ink-soft)}
