/* Home page specific styles (built on base.css variables) */
:root {}

/* Light alt background utility for text-only sections */
.bg-alt { background: var(--color-background-alt); }

/* Hero */
.hero {
  position: relative;
}
.hero-grid {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: var(--space-8);
  align-items: center;
}
@media (max-width: 1024px) {
  .hero-grid { grid-template-columns: 1fr; }
}
.hero-copy h1 {
  letter-spacing: var(--letter-spacing-tight);
}
.hero-copy p { color: var(--color-text-light); }
.hero-ctas { margin-top: var(--space-6); display: flex; gap: var(--space-4); flex-wrap: wrap; }
.hero-media { border-radius: var(--radius-2xl); overflow: hidden; box-shadow: var(--shadow-2xl); }

/* Search */
.hero-search { margin-top: var(--space-6); display: grid; grid-template-columns: 1fr auto; gap: var(--space-3); }
@media (max-width: 640px) { .hero-search { grid-template-columns: 1fr; } }

/* Centered CTA rows */
.center-actions { margin-top: var(--space-6); display: flex; justify-content: center; gap: var(--space-4); flex-wrap: wrap; }

/* Theme info band */
.theme-info { background: linear-gradient(135deg, var(--color-primary-dark), var(--color-primary)); }
.theme-info .section-title, .theme-info .section-subtitle { color: var(--color-text-inverse); }
.theme-info .section-subtitle { opacity: 0.9; }

/* Quick-links cards */
.quick-links .card { height: 100%; }
.quick-links a.card-body { display: block; color: inherit; }
.quick-links a.card-body:hover { text-decoration: none; }

/* Booking CTA highlight */
.booking-cta { background: linear-gradient(180deg, var(--color-neutral-100), #fff); }

/* Testimonials */
.testimonials blockquote { max-width: 60ch; margin-left: auto; margin-right: auto; }
