:root {
  --primary: #4B0512;
  --primary-dark: #32030c;
  --secondary: #4676DB;
  --accent: #CF1919;
  --heading: #111827;
  --text: #374151;
  --text-muted: #6B7280;
  --surface: #FFFFFF;
  --surface-alt: #F9FAFB;
  --surface-dark: #111827;
  --on-surface: #374151;
  --on-surface-alt: #374151;
  --on-dark: #F9FAFB;
  --on-primary: #FFFFFF;
}

body {
  font-family: var(--font-body, system-ui, sans-serif);
  color: var(--text);
  background: var(--surface);
}

h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-heading, system-ui, sans-serif);
  color: var(--heading);
}

.title {
  color: var(--heading) !important;
}

.subtitle {
  color: var(--text-muted) !important;
}

.has-background-dark,
.footer.has-background-dark,
.section-dark {
  background-color: var(--surface-dark) !important;
  color: var(--on-dark);
}

.has-background-dark .title,
.footer .title,
.section-dark .title,
.section-dark h1,
.section-dark h2,
.section-dark h3 {
  color: #FFFFFF !important;
}

.hero.is-primary,
.section-primary,
.has-background-primary {
  background-color: var(--primary) !important;
  color: var(--on-primary);
}

.hero.is-primary .title,
.hero.is-primary .subtitle,
.section-primary .title,
.section-primary h1,
.section-primary h2 {
  color: #FFFFFF !important;
}

.has-background-light,
.section-alt {
  background-color: var(--surface-alt) !important;
  color: var(--on-surface-alt);
}

.has-background-light .title,
.section-alt .title {
  color: var(--heading) !important;
}

a {
  color: var(--primary);
}

a:hover {
  color: var(--primary-dark);
}

.button.is-primary {
  background-color: var(--primary);
  border-color: transparent;
  color: var(--on-primary);
}

.button.is-primary:hover {
  background-color: var(--primary-dark);
}

.box, .card {
  background: var(--surface);
  color: var(--text);
}

.box .title,
.card .title {
  color: var(--heading) !important;
}
