.price-notice {
  border-left: 4px solid var(--sun);
  background: var(--paper);
  padding: 1rem 1.1rem;
  margin-bottom: 1.25rem;
}
.manage-booking-card{margin-top:2.2rem;padding:1.35rem;border:1px solid rgba(13,81,88,.25);border-radius:1.25rem;background:rgba(255,255,255,.72);box-shadow:0 16px 45px rgba(13,81,88,.08)}
.manage-booking-card h3{font-size:1.45rem;margin:.25rem 0 .7rem}.manage-booking-card>p:not(.eyebrow){font-size:.92rem;line-height:1.55}.manage-booking-card form{padding:0;background:transparent;color:var(--ink);border-radius:0}.manage-booking-card label{font-weight:700;margin:0}.manage-booking-card input{margin:.45rem 0 .65rem;background:#fff;color:var(--ink);border:1px solid rgba(19,42,43,.28)}.manage-booking-card button{width:100%;border:0;border-radius:999px;padding:.85rem 1rem;background:var(--ink);color:#fff;font:700 .9rem "DM Sans";cursor:pointer}.manage-conditions{margin-top:1.1rem;padding-top:1rem;border-top:1px solid rgba(19,42,43,.14);font-size:.82rem}.manage-conditions ul{margin:.55rem 0 0;padding-left:1.15rem}.manage-conditions li{margin:.32rem 0}
.loyalty-code-form{margin:0 0 1.25rem;padding:1rem 1.1rem;border:2px solid #d7a33d;border-radius:1rem;background:#fff8e8;color:var(--ink)}
.loyalty-code-form label{font-weight:700;margin:0 0 .45rem}.loyalty-code-form>div{display:grid;grid-template-columns:minmax(7rem,10rem) auto;gap:.55rem}.loyalty-code-form input{margin:0;background:#fff;color:var(--ink);border:1px solid #a77b27;text-align:center;font-size:1.25rem;font-weight:700;letter-spacing:.35em}.loyalty-code-form button{border:0;border-radius:.65rem;padding:.75rem 1rem;background:var(--ink);color:#fff;font:700 .9rem "DM Sans";cursor:pointer}.loyalty-code-status{margin:.55rem 0 0;font-size:.82rem;color:#5e522f}
.price-notice p { font-size: .85rem; margin: .35rem 0 0; }
.calendar-grid{gap:0}
.calendar-grid .day {
  min-height: 4.1rem;
  aspect-ratio: auto;
  position:relative;
  overflow:visible;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.calendar-grid .day small { font-size: .7rem; font-weight: 700; }
.calendar-grid .day-number{position:absolute;top:.3rem;left:.42rem;z-index:4;font-weight:700}
.calendar-grid .day-price{position:absolute;bottom:.28rem;right:.38rem;z-index:4}
.calendar-grid .day.available { background: #edf8f3; color: #17654e; border-color: #8bc6af; }
.calendar-grid .day.busy { background: #f4e8e6; color: #94524c; text-decoration: line-through; }
.calendar-grid .day.unavailable{background:#d9dddc;color:#687475;border-color:#c1c8c6;text-decoration:none}
.calendar-grid .day.booking-day{background:#fff;color:#172d34;border-color:#b9c7ca;border-radius:0}
.calendar-grid .day.available.booking-day{background:#edf8f3;color:#17654e;border-color:#8bc6af}
.calendar-grid .day.past{background:#b8463d;color:#fff;border-color:#8d2f29;text-decoration:none}
.calendar-grid .day.past .booking-segment{background:transparent;color:#fff}
.calendar-grid .booking-segment{position:absolute;top:50%;height:1.05rem;transform:translateY(-50%);left:-1px;right:-1px;z-index:2;display:flex;align-items:center;padding:0 .24rem;line-height:1;text-align:left;white-space:nowrap;text-decoration:none;overflow:visible}
.calendar-grid .booking-segment.arrival{left:66.666%;right:-1px;border-radius:.55rem 0 0 .55rem}
.calendar-grid .booking-segment.departure{left:-1px;right:66.666%;border-radius:0 .55rem .55rem 0}
.calendar-grid .booking-segment.stay{left:-1px;right:-1px}
.calendar-grid .booking-segment.segment-label{z-index:3}
.calendar-grid .booking-segment.reserved{background:#4b8fcb;color:#fff}
.calendar-grid .booking-segment.confirmed{background:#d8a83f;color:#2b210b}
.calendar-grid .day.assistant-date-range { outline:3px solid #ffc44d; outline-offset:-3px; box-shadow:0 0 0 2px rgba(255,196,77,.35); font-weight:700; }
.calendar-grid .day.available[role="button"]{cursor:pointer}.calendar-grid .day.calendar-selected-range{box-shadow:inset 0 0 0 999px rgba(13,81,88,.12)}.calendar-grid .day.calendar-selected-start,.calendar-grid .day.calendar-selected-end{outline:3px solid #0d5158;outline-offset:-3px;box-shadow:0 0 0 2px rgba(13,81,88,.22)}
.legend .reserved{background:#4b8fcb}.legend .confirmed{background:#d8a83f}
@media(max-width:560px){.loyalty-code-form>div{grid-template-columns:1fr}.loyalty-code-form button{width:100%}}
