/* Booking page specific styles (lean, extending base system) */
.hero-booking { background: linear-gradient(180deg, var(--color-primary-900), var(--color-primary-800)); color: var(--color-text-inverse); }
.hero-booking__inner { display: grid; grid-template-columns: 1.1fr 1fr; gap: var(--space-8); align-items: center; }
.hero-booking__content p { color: var(--color-accent-200); max-width: 60ch; }
.hero-booking__cta { margin-top: var(--space-6); display: flex; gap: var(--space-4); flex-wrap: wrap; }
.hero-booking__media img { border-radius: var(--radius-xl); box-shadow: var(--shadow-2xl); }

.price-lines p { margin-bottom: var(--space-2); }

@media (max-width: 1024px) {
  .hero-booking__inner { grid-template-columns: 1fr; }
}

/* Card spacing tweaks */
.card .badge { align-self: flex-start; }

/* Accessibility focus within cards */
.card a:focus-visible, .card button:focus-visible { outline: 2px solid var(--color-accent-500); outline-offset: 3px; border-radius: var(--radius-sm); }
