/* ==========================================================================
   Section primitives — eyebrow label, generic section spacing.
   Reused by every content section on every page, not just Home.
   ========================================================================== */

.section { padding-block: var(--space-8); }
.section--alt { background: var(--color-surface); }
.section__header { max-width: 64ch; margin-bottom: var(--space-6); }
.section__header--prose { max-width: 72ch; }

/* --- Legal review notice — permanent, part of the template not the content --- */
.legal-notice {
  background: var(--color-warning-bg);
  border: 1px solid var(--color-warning);
  border-radius: var(--radius-md);
  padding: var(--space-4);
  font-size: var(--fs-ui);
  color: var(--color-text-primary);
  margin-bottom: var(--space-5);
}

.eyebrow {
  display: flex; align-items: center; gap: 10px;
  font-family: var(--font-mono);
  font-size: var(--fs-caption);
  letter-spacing: .1em;
  color: var(--color-gold-500);
  text-transform: uppercase;
  margin-bottom: var(--space-2);
}
.eyebrow::before { content: ""; width: 22px; height: 1px; background: var(--color-gold-500); }

/* --- Breadcrumbs — reusable on every level-2+ page (v3 §8) --- */
.breadcrumbs {
  padding-block: var(--space-3);
  font-size: var(--fs-caption);
  color: var(--color-text-secondary);
}
.breadcrumbs a { color: var(--color-text-secondary); }
.breadcrumbs a:hover { color: var(--color-blue-600); }
.breadcrumbs [aria-current="page"] { color: var(--color-navy-900); font-weight: 500; }

/* --- Empty State — reusable wherever a CMS query returns nothing (v5 §3) --- */
.empty-state {
  color: var(--color-text-secondary);
  font-size: var(--fs-ui);
  padding: var(--space-4) 0;
}

/* ==========================================================================
   Trust Bar — v4 §1, badges reused from Design System v6 §7
   ========================================================================== */

.trust-bar {
  padding-block: var(--space-5);
  border-block: 1px solid var(--color-border);
  overflow-x: auto;
}
.trust-bar__row { display: flex; gap: var(--space-3); flex-wrap: nowrap; }
@media (min-width: 768px) { .trust-bar__row { flex-wrap: wrap; } }

.badge {
  display: inline-flex; align-items: center; gap: 8px;
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  padding: 9px 16px;
  font-size: var(--fs-ui);
  color: var(--color-navy-900);
  font-weight: 500;
  white-space: nowrap;
}
.badge .dot { width: 6px; height: 6px; border-radius: 50%; background: var(--color-gold-500); flex-shrink: 0; }
