.house-availability{display:grid;width:calc(100% - 2 * var(--rooms-gutter));grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(32px, 5vw, 80px);margin:clamp(72px, 10vh, 120px) var(--rooms-gutter) 0;padding:clamp(36px, 5vw, 64px);background:var(--rooms-stone);scroll-margin-top:calc(var(--rooms-header) + 16px)}.house-availability h2{margin:0 0 14px;font-family:var(--rooms-serif);font-size:clamp(32px, 3.4vw, 48px);font-weight:300;line-height:1.05}.house-availability__lede{margin:0 0 28px;color:var(--rooms-ink-soft);font-size:15px;line-height:1.7}.house-cal__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.house-cal__arrows{display:flex;gap:8px}.house-cal__arrows button{width:44px;height:44px;border:1px solid #ccc6bd;background:var(--rooms-ivory);color:var(--rooms-ink);font-size:18px;cursor:pointer;transition:border-color 200ms ease}.house-cal__arrows button:hover:not(:disabled){border-color:var(--rooms-ink)}.house-cal__arrows button:disabled{opacity:.35;cursor:default}.house-cal__months{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(20px, 3vw, 40px)}.house-cal__title{margin:0 0 10px;font-family:var(--rooms-serif);font-size:22px;font-weight:400}.house-cal__month table{width:100%;border-collapse:collapse;table-layout:fixed}.house-cal__month th{padding:0 0 8px;color:rgb(36 33 29 / .45);font-size:10px;font-weight:500;letter-spacing:.14em;text-align:center;text-transform:uppercase}.house-cal__month td{padding:2px 0;text-align:center}.house-cal__month button{width:100%;aspect-ratio:1;max-height:46px;padding:0;border:0;background:#fff0;color:var(--rooms-ink);font:400 14px var(--rooms-sans);cursor:pointer;transition:background-color 180ms ease,color 180ms ease}.house-cal__month button:hover:not(:disabled){background:rgb(152 107 85 / .14)}.house-cal__month button:disabled{color:rgb(36 33 29 / .28);cursor:default}.house-cal__month button.is-booked{color:rgb(36 33 29 / .32);text-decoration:line-through;text-decoration-color:rgb(152 107 85 / .7)}.house-cal__month button.is-booked:not(:disabled){color:var(--rooms-ink)}.house-cal__month button.is-today{font-weight:600}.house-cal__month button.is-between{background:rgb(152 107 85 / .16)}.house-cal__month button.is-start,.house-cal__month button.is-end{background:var(--rooms-accent);color:var(--rooms-ivory);text-decoration:none}.house-cal__month button:focus-visible{outline:1px solid var(--rooms-accent);outline-offset:-2px}.house-cal__foot{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px 20px;margin-top:18px}.house-cal__summary{margin:0;font-family:var(--rooms-serif);font-size:20px}.house-cal__clear{padding:0 0 3px;border:0;border-bottom:1px solid currentColor;background:none;color:var(--rooms-ink-soft);font:500 10px var(--rooms-sans);letter-spacing:.18em;text-transform:uppercase;cursor:pointer}.house-cal__note{margin:10px 0 0;color:var(--rooms-ink-soft);font-size:12px;line-height:1.6}.house-cal__note[data-state="unknown"]{color:#8a4a2f}.house-enquiry{display:grid;grid-template-columns:1fr 1fr;gap:18px 16px;align-content:start}.house-enquiry__field{display:flex;flex-direction:column;gap:7px}.house-enquiry__field--wide{grid-column:1 / -1}.house-enquiry label{color:rgb(36 33 29 / .62);font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase}.house-enquiry label span{letter-spacing:.04em;text-transform:none}.house-enquiry input,.house-enquiry select,.house-enquiry textarea{width:100%;min-height:48px;padding:12px 14px;border:1px solid #d4cdc2;border-radius:0;background:var(--rooms-ivory);color:var(--rooms-ink);font:400 15px var(--rooms-sans)}.house-enquiry textarea{min-height:96px;resize:vertical}.house-enquiry input:focus,.house-enquiry select:focus,.house-enquiry textarea:focus{outline:1px solid var(--rooms-accent);outline-offset:0;border-color:var(--rooms-accent)}.house-enquiry [aria-invalid="true"]{border-color:#a4502f}.house-enquiry__actions{grid-column:1 / -1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 24px;margin-top:6px}.house-enquiry__actions p{margin:0;max-width:300px;color:var(--rooms-ink-soft);font-size:12px;line-height:1.6}.house-enquiry button[type="submit"]{padding:16px 30px;border:0;background:var(--rooms-accent);color:var(--rooms-ivory);font:500 11px var(--rooms-sans);letter-spacing:.22em;text-transform:uppercase;cursor:pointer;transition:background-color 220ms ease}.house-enquiry button[type="submit"]:hover:not(:disabled){background:#855a46}.house-enquiry button[type="submit"]:disabled{opacity:.6;cursor:progress}.house-enquiry__response{grid-column:1 / -1;margin:0;padding:14px 16px;font-size:14px;line-height:1.6;background:var(--rooms-ivory)}.house-enquiry__response[data-state="success"]{border-left:2px solid #4f7a5a}.house-enquiry__response[data-state="error"]{border-left:2px solid #a4502f}.house-enquiry__response[data-state="pending"]{border-left:2px solid var(--rooms-accent)}@media (max-width:960px){.house-availability{grid-template-columns:1fr}}@media (max-width:768px){.house-availability{width:100%;margin:64px 0 0;padding:32px 20px}.house-cal__months{grid-template-columns:1fr}.house-enquiry{grid-template-columns:1fr}.house-enquiry__field--half-mobile{grid-column:auto}}@media (prefers-reduced-motion:reduce){.house-availability *{transition:none!important}}