.booking-form{display:grid;grid-template-columns:1.4fr 1.4fr .65fr .65fr auto;gap:16px;align-items:end;max-width:1000px;margin:32px auto 16px;text-align:left}.booking-form label{min-width:0;display:grid;gap:8px;font-size:12px;color:var(--deep)}.booking-form input,.booking-form select{width:100%;min-width:0;height:48px;padding:10px;border:1px solid #b4c7d3;background:white;color:var(--ink);font:inherit;border-radius:0}.booking-form .reserve{border:0;margin:0;min-width:0;white-space:normal}.booking-form input:focus-visible{outline:3px solid #70afcf;outline-offset:3px}.booking-note{font-size:12px;color:var(--muted);line-height:1.9}.booking-preview{max-width:900px;margin:30px auto;text-align:left;border-top:1px solid #b4c7d3;padding-top:25px;scroll-margin-top:100px}.booking-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.booking-preview-heading h3{margin:0;font-size:23px}.booking-preview-heading button{border:0;background:transparent;color:var(--blue);font-size:27px;width:40px;height:40px}#booking-summary{font-size:13px;color:var(--blue);margin:10px 0 22px}.booking-rooms{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-bottom:20px}.booking-rooms img{aspect-ratio:4/3}.booking-rooms h3{font-size:19px;margin:12px 0}.booking-preview .reserve{min-width:0;max-width:100%;text-align:center}
@media(max-width:1100px){.booking-form{grid-template-columns:1fr 1fr 1fr 1fr}.booking-form .reserve{grid-column:1/-1;justify-self:center;min-width:220px}}
@media(max-width:600px){.booking-form{grid-template-columns:1fr 1fr;gap:16px 12px}.booking-form .reserve{width:100%}.booking-rooms{gap:14px}.booking-rooms h3{font-size:16px}.booking-preview-heading h3{font-size:21px}#booking-summary{overflow-wrap:anywhere}}

.booking-form{grid-template-columns:1.25fr 1.25fr .65fr .65fr .65fr auto}@media(max-width:1100px){.booking-form{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.booking-form{grid-template-columns:1fr 1fr}}

.booking-date-help{max-width:1000px;margin:0 auto 8px;font-size:13px;color:var(--blue);text-align:left;line-height:1.8}

/* Make native date inputs comfortable touch targets. */
#booking-form input[type=date]{min-height:56px;cursor:pointer;font-size:16px}#booking-form input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;min-width:28px;min-height:28px;padding:8px}
