:root{color-scheme:light;--color-background: #f6f6f6;--color-surface: #fff;--color-text: #202020;--color-muted: #555;--color-border: #d5d5d5;--color-focus: #202020;--font-body: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-6: 1.5rem;--space-8: 2rem;--radius-control: .5rem;--content-width: 38rem;--touch-target: 2.75rem}*{box-sizing:border-box}body{margin:0;font-family:var(--font-body);color:var(--color-text);background:var(--color-background)}button{font:inherit}.shell{width:min(100%,var(--content-width));margin-inline:auto;padding:max(var(--space-6),env(safe-area-inset-top)) max(var(--space-4),env(safe-area-inset-right)) max(var(--space-6),env(safe-area-inset-bottom)) max(var(--space-4),env(safe-area-inset-left))}.brand{font-size:1.125rem;font-weight:650;margin-block:var(--space-4) var(--space-8)}h1{font-size:clamp(1.75rem,6vw,2.25rem);line-height:1.2;margin:0 0 var(--space-4)}p{line-height:1.6}.muted{color:var(--color-muted)}.status{background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-4);margin-block:var(--space-8)}.status p{margin-top:0}.status p:last-child{margin-bottom:0}.button{min-height:var(--touch-target);padding:var(--space-2) var(--space-4);background:var(--color-surface);border:1px solid var(--color-text);border-radius:var(--radius-control);color:var(--color-text);cursor:pointer}.button:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.button:disabled{cursor:wait;opacity:.6}nav{display:flex;flex-wrap:wrap;gap:var(--space-4)}a{color:inherit}a.button{display:inline-flex;align-items:center;text-decoration:none}.booking{padding-block:var(--space-4) var(--space-8)}.booking h2{margin-block:var(--space-2) var(--space-4);font-size:1.35rem}.choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:var(--space-3)}.choices .button{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);text-align:left}.booking-summary{display:grid;grid-template-columns:minmax(6rem,1fr) 2fr;gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border)}.booking-summary dt{color:var(--color-muted)}.booking-summary dd{margin:0}
