/* Booking pillar only; shared landing styles and other pages stay unchanged. */
.booking-seo-page .hero { padding: 56px 0; }
.booking-seo-page .hero-grid { grid-template-columns: minmax(0, 1.3fr) minmax(260px, .7fr); align-items: center; }
.booking-seo-page .hero-copy h1 { font-size: clamp(36px, 5vw, 64px); max-width: 15ch; }
.booking-seo-page .hero-copy > p { max-width: 58ch; font-size: 18px; }
.booking-seo-page .booking-proof { width: min(100%, 320px); margin: 0 auto; }
.booking-seo-page .booking-proof img { display: block; width: 100%; height: auto; }
.booking-seo-page .booking-proof figcaption { font-size: 13px; margin-top: 12px; color: var(--on-dark); }
.booking-seo-page .booking-editorial { background: var(--paper); color: var(--ink); }
.booking-seo-page .booking-chapter { padding: 48px 0; border-bottom: 1px solid var(--muted); scroll-margin-top: 100px; }
.booking-seo-page .booking-chapter-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 48px; }
.booking-seo-page .booking-chapter h2, .booking-seo-page .booking-faq h2, .booking-seo-page .booking-related h2 { margin: 0; font-size: clamp(26px, 3vw, 36px); line-height: 1.2; }
.booking-seo-page .booking-chapter p { max-width: 65ch; margin: 0 0 18px; }
.booking-seo-page .booking-faq, .booking-seo-page .booking-related { padding: 40px 0; }
.booking-seo-page .booking-faq h2 { margin-bottom: 24px; }
.booking-seo-page .booking-faq details { padding: 18px 0; border-bottom: 1px solid var(--muted); }
.booking-seo-page .booking-faq summary { cursor: pointer; font-weight: 700; padding: 8px 0; }
.booking-seo-page .booking-faq details p { max-width: 75ch; }
.booking-seo-page .booking-related ul { display: flex; flex-wrap: wrap; gap: 16px 32px; padding-left: 20px; }
.booking-seo-page .inline-link { text-decoration: underline; text-underline-offset: 3px; }
.booking-seo-page a:focus-visible, .booking-seo-page summary:focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }
.booking-seo-page #booking-workflow { scroll-margin-top: 100px; }
.booking-seo-page .language-switcher { display: flex; gap: 8px; }
/* Keep the fixed language links clear of the cookie-preferences button. */
@media (min-width: 521px) {
  .booking-seo-page .seo-language-switcher { bottom: 88px; }
}
.booking-seo-page .booking-footer { padding: 24px 0; }
.booking-seo-page .booking-footer .wrap { display: flex; flex-wrap: wrap; gap: 24px; }
.booking-seo-page .booking-footer a { text-decoration: underline; }
.booking-seo-page .documentary-break__figure { display: block; max-width: 680px; margin: 0 auto; }
@media (max-width: 700px) {
  .booking-seo-page .hero-grid, .booking-seo-page .booking-chapter-grid { grid-template-columns: minmax(0, 1fr); gap: 24px; }
  .booking-seo-page .hero { padding: 32px 0; }
  .booking-seo-page .booking-proof { max-width: 260px; }
  .booking-seo-page .booking-chapter { padding: 32px 0; }
  .booking-seo-page .site-header .btn { max-width: 62%; white-space: normal; text-align: center; }
  .booking-seo-page .hero-actions { align-items: stretch; }
  .booking-seo-page .hero-actions .btn { white-space: normal; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .booking-seo-page *, .booking-seo-page *::before, .booking-seo-page *::after { animation: none !important; transition: none !important; }
}
