/* Home page specific styles – minimal and modular, leveraging base variables */
.hero {
  padding: var(--space-64) 0 var(--space-48);
  background:
    radial-gradient(800px 480px at 10% -10%, rgba(31, 228, 228, 0.06), transparent 60%),
    radial-gradient(700px 420px at 110% 20%, rgba(255, 209, 102, 0.06), transparent 60%);
}
.hero-grid {
  display: grid;
  gap: var(--space-24);
  align-items: center;
}
@media (min-width: 900px) {
  .hero-grid { grid-template-columns: 1.1fr 1fr; }
}
.hero-copy p { color: var(--color-text-muted); }
.hero-search { display: flex; gap: var(--space-12); margin: var(--space-16) 0 var(--space-16); }
.hero-visual img { border-radius: var(--radius-xl); border: 1px solid var(--color-border); box-shadow: var(--shadow-lg); }

.section { padding: var(--space-48) 0; }
.section.alt { background: var(--color-surface); }
.section.last { padding-bottom: var(--space-64); }

.two-col { display: grid; gap: var(--space-24); }
@media (min-width: 900px) {
  .two-col { grid-template-columns: 1fr 1fr; align-items: center; }
}
.two-col.reverse { direction: rtl; }
.two-col.reverse > * { direction: ltr; }

.visual-wrap img { border-radius: var(--radius-lg); border: 1px solid var(--color-border); box-shadow: var(--shadow-md); }

.cta-row { display: flex; gap: var(--space-12); flex-wrap: wrap; margin-top: var(--space-12); }

.feature-list { margin: var(--space-12) 0 0; padding: 0; list-style: none; }
.feature-list li { position: relative; padding-left: 1.25rem; color: var(--color-text-muted); }
.feature-list li::before {
  content: ""; position: absolute; left: 0; top: 0.6em; width: 8px; height: 8px; border-radius: 2px;
  background: linear-gradient(180deg, var(--color-gold), var(--color-bronze-500)); box-shadow: var(--shadow-glow-gold);
}

/* Card spacing within grids */
.card .btn { margin-top: var(--space-12); }

/* Accessibility tweaks */
.hero-search .input { min-width: 0; }
.hero-search button { white-space: nowrap; }
