/* Compatibility for existing legal pages and the original booking component. */
:root {
  --color-bg: #faf6f0;
  --color-surface: #fff;
  --color-text: #1a1f2e;
  --color-text-secondary: #4a4540;
  --color-text-muted: #696157;
  --color-accent: #b85c38;
  --color-accent-dark: #9f4d2e;
  --color-border: #e5ddd0;
  --font-serif: var(--serif);
  --font-sans: var(--sans);
  --space-1: .5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2rem;
  --space-5: 2.5rem;
  --space-6: 3rem;
  --space-8: 4rem;
  --space-12: 6rem;
  --space-16: 8rem;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
}
.legacy-content .container { width: 100%; margin-inline: auto; padding-inline: 24px; }
.legacy-content .legal-container { max-width: 760px; }
.legacy-content h1 { font-size: clamp(2.5rem, 5vw, 3.5rem); line-height: 1.1; letter-spacing: -.01em; }
.legacy-content .dark-surface { background: var(--navy); color: var(--ivory); }
.legacy-content .btn { display: inline-flex; justify-content: center; align-items: center; font: 600 1rem/1.4 var(--sans); text-decoration: none; padding: 14px 28px; border-radius: 4px; }
.legacy-content .btn-primary { background: var(--copper); color: #fff; }
.legacy-content .btn-primary:hover { background: var(--color-accent-dark); }
.contact-introduction { max-width: 1050px; }
.contact-introduction > p { margin-top: 24px; }
.contact-introduction .lead { max-width: 56ch; }
.contact-introduction .call-points { margin-block: 24px; }
.live-booking { padding-top: 0; }
.booking-intro { margin-bottom: 32px; }
.booking-intro p { margin-top: 14px; color: var(--muted); }
.booking-fallback { margin-block: 24px 12px; font-size: 15px; }
.booking-fallback a { text-underline-offset: 4px; }
.contact-alternative { background: #f0e8dc; }
.contact-alternative p { margin-top: 20px; }
.contact-alternative a { text-underline-offset: 4px; }
.nav > .button[aria-current="page"] { color: #fff; border-color: var(--copper); }
@media(max-width:600px) {
  .legacy-content .legal-page { padding-block: 48px; }
  .booking-intro { margin-bottom: 24px; }
}
