.availability{padding:0 0 60px}.availability-top{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:25px}.availability-top h2{margin-bottom:8px}.availability-top p{max-width:620px;font-size:14px;color:var(--muted);margin-bottom:0}.calendar-shell{background:white;border:1px solid #c8e1ed;padding:30px}.calendar-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;gap:15px}.calendar-toolbar h3{font-size:26px;margin:0}.calendar-controls{display:flex;gap:10px}.calendar-controls button{min-width:44px;height:44px;background:#eaf6fb;border:1px solid #bdd7e3;color:#175c80;font-size:22px}.calendar-controls button:disabled{opacity:.35;cursor:default}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px}.calendar-weekday{text-align:center;font-size:11px;letter-spacing:1px;color:#526d7b;padding:8px 0}.calendar-day{min-height:65px;padding:12px;text-align:center;display:flex;align-items:center;justify-content:center;background:#ecf6fc;color:#175c80;border:1px solid #d2e7f1;position:relative}.calendar-day.blocked{background:repeating-linear-gradient(135deg,#fff0e9,#fff0e9 6px,#f8e4da 6px,#f8e4da 9px);border-color:#d8a68c;color:#873d22;text-decoration:line-through}.calendar-day.past{background:#f3f3ef;color:#a0a5a4;border-color:#e8e8e2}.calendar-day.unknown{background:#f5f1e8;border-color:#ded5c5;color:#776958}.calendar-day.today{outline:2px solid #187fa8;outline-offset:-3px}.calendar-legend{display:flex;gap:20px;flex-wrap:wrap;font-size:12px;margin:20px 0}.calendar-legend span{display:flex;align-items:center;gap:8px}.key{width:14px;height:14px;border:1px solid #bdd7e3;background:#ecf6fc;display:inline-block}.key.blocked{background:#f8e4da;border-color:#d8a68c}.key.unknown{background:#f5f1e8;border-color:#ded5c5}.calendar-status{font-size:12px;color:#526d7b;margin:0 0 12px}.calendar-status.warning{color:#8a421d}.calendar-note{font-size:12px;color:#526d7b;margin:0}.refresh-calendar{background:transparent;border:1px solid #bdd7e3;padding:10px 16px;color:#175c80;font-size:12px;white-space:nowrap}.source-status{display:flex;gap:20px;flex-wrap:wrap;font-size:11px;margin-bottom:12px;color:#526d7b}@media(max-width:600px){.availability-top{display:block}.refresh-calendar{margin-top:20px}.calendar-shell{padding:16px}.calendar-grid{gap:3px}.calendar-day{min-height:43px;padding:5px;font-size:13px}.calendar-weekday{font-size:9px;letter-spacing:0}.calendar-toolbar h3{font-size:23px}.calendar-legend{gap:12px;font-size:10px}}
.calendar-day{font:inherit;border-radius:0;cursor:pointer}.calendar-day:disabled{cursor:not-allowed}.calendar-day:not(:disabled):hover{background:#c9e9f8;border-color:#126b9a}.calendar-day.selected,.calendar-day.selected:hover{background:#126b9a;color:white;border-color:#126b9a;text-decoration:none}.calendar-day.in-range{background:#d7edf7;border-color:#8dc3dc}.calendar-day.checkout-allowed:not(.selected){background:linear-gradient(135deg,#ecf6fc 50%,#f8e4da 50%);text-decoration:none}.selection-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:22px 0 12px;padding-top:18px;border-top:1px solid #dce7eb}.selection-bar p{margin:0;font-size:14px}.selection-bar button{background:transparent;border:0;text-decoration:underline;color:#175c80;padding:10px;font-size:12px;white-space:nowrap}.continue-enquiry{font-size:13px;color:#126b9a;text-underline-offset:4px}.booking textarea{font:inherit;background:transparent;border:1px solid #a2c4d7;color:#19475f;padding:12px;width:100%;display:block;margin-top:8px;resize:vertical;min-height:100px}.booking input[type=email],.booking input[type=text]{text-transform:none;letter-spacing:normal}.booking .mail-note{font-size:11px;color:#526d7b;margin:0;text-transform:none;letter-spacing:0}.email-fallback{grid-column:1/-1;border:1px solid #a2c4d7;padding:16px;font-size:12px}.email-fallback[hidden]{display:none}.email-fallback a{display:inline-block;margin-bottom:10px}.email-fallback textarea{font-size:12px;min-height:170px}.calendar-day:focus-visible{outline:3px solid #a96315;outline-offset:1px;z-index:1}@media(max-width:600px){.selection-bar{gap:8px;align-items:start}.selection-bar p{font-size:12px}.calendar-day{font-size:13px}}

.field-help{display:block;font-size:11px;text-transform:none;letter-spacing:0;font-weight:normal;margin-top:7px;color:#526d7b}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#result[data-state="success"]{border-color:#488a66;background:#edf8f1}#result[data-state="error"]{border-color:#be7650;background:#fff4ed}.booking button:disabled{opacity:.65;cursor:wait}

.continue-enquiry.btn{background:#126b9a;color:#fff;font-size:16px;font-weight:700;letter-spacing:.3px;text-decoration:none;min-height:56px;min-width:270px;padding:16px 28px;border:2px solid #126b9a;box-shadow:0 4px 12px #126b9a25}.continue-enquiry.btn:hover{background:#0b527b;border-color:#0b527b}.email-service-status{padding:16px 18px;background:#fff2d8;border:1px solid #d7b76b;color:#704b15;font-size:14px;margin:0}.email-service-status[hidden]{display:none}.booking button:disabled{opacity:1;background:#e1e8eb;border-color:#c6d2d8;color:#526d7b;cursor:not-allowed}@media(max-width:600px){.continue-enquiry.btn{display:flex;width:100%;min-width:0}}
