:root {
  --ink: #171a18;
  --ink-soft: #242925;
  --paper: #f7f6f2;
  --line: #dce0d9;
  --muted: #626962;
  --light-sage: #edf3e9;
  --warm-white: #fbfaf6;
  --light-shadow: 0 24px 70px rgba(39, 52, 42, 0.08);
}

body {
  background: var(--paper);
}

.site-header,
.detail-header {
  color: var(--ink);
  background: linear-gradient(180deg, rgba(247, 246, 242, 0.97), rgba(247, 246, 242, 0.72) 72%, transparent);
  border-bottom-color: rgba(23, 26, 24, 0.12);
}

.site-header .brand-logo,
.detail-header .detail-logo,
.legal-header img {
  content: url("./bergermann-consulting-logo-dark.svg");
}

.site-header nav a,
.site-header .contact-link,
.detail-header .back-link {
  color: rgba(23, 26, 24, 0.74);
  border-color: rgba(23, 26, 24, 0.28);
}

.site-header .language,
.detail-header .language {
  color: rgba(23, 26, 24, 0.34);
}

.site-header .language button,
.detail-header .language button {
  color: rgba(23, 26, 24, 0.48);
}

.site-header .language button.active,
.detail-header .language button.active {
  color: var(--ink);
}

.theme-toggle {
  color: rgba(23, 26, 24, 0.72);
  border-color: rgba(23, 26, 24, 0.20);
  background: rgba(255, 255, 255, 0.46);
}

.theme-toggle:hover {
  color: var(--ink);
  border-color: rgba(74, 132, 48, 0.52);
  background: rgba(255, 255, 255, 0.76);
}

.menu-button span {
  background: var(--ink);
}

.hero,
.detail-hero {
  color: var(--ink);
  background:
    radial-gradient(circle at 78% 25%, rgba(107, 189, 69, 0.21), transparent 31%),
    radial-gradient(circle at 93% 84%, rgba(74, 132, 48, 0.10), transparent 28%),
    linear-gradient(135deg, #fbfaf6 0%, #eef3eb 53%, #dce8d7 100%);
}

.hero::before,
.detail-hero::before {
  background-image:
    linear-gradient(rgba(23, 26, 24, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(23, 26, 24, 0.035) 1px, transparent 1px);
}

.hero .eyebrow,
.detail-hero .eyebrow {
  color: #4a8430;
}

.lead,
.hero-lead {
  color: rgba(23, 26, 24, 0.69);
}

.hero-meta {
  color: rgba(23, 26, 24, 0.52);
}

.hero .primary {
  color: #fff;
  background: #315e20;
  box-shadow: 0 15px 38px rgba(49, 94, 32, 0.18);
}

.hero .text {
  color: var(--ink);
}

.ambient,
.ambient-one,
.ambient-two {
  border-color: rgba(49, 94, 32, 0.17);
}

.detail-orbit,
.detail-orbit::after {
  border-color: rgba(74, 132, 48, 0.25);
}

.hero-tags span {
  color: #365a2a;
  background: rgba(255, 255, 255, 0.42);
  border-color: rgba(74, 132, 48, 0.28);
}

.proof-strip {
  color: var(--ink);
  background: rgba(255, 255, 255, 0.84);
  border-color: var(--line);
}

.proof-strip div {
  color: #5e665f;
  border-color: var(--line);
}

.outcomes {
  color: var(--ink);
  background: var(--warm-white);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.outcomes .kicker,
.profile .kicker,
.project-experience .kicker {
  color: #4a8430;
}

.outcome-grid {
  border-color: var(--line);
}

.outcome-grid article {
  border-color: var(--line);
}

.outcome-grid p {
  color: var(--muted);
}

.principle {
  background:
    radial-gradient(circle at 86% 20%, rgba(107, 189, 69, 0.15), transparent 29%),
    linear-gradient(135deg, #e7f0e1 0%, #f2f6ee 100%);
}

.service-grid,
.mandate-list,
.tool-grid,
.deep-dive-topic-grid,
.definition-grid,
.failure-grid,
.support-grid,
.landscape-grid {
  border-color: var(--line);
  background: var(--line);
  box-shadow: var(--light-shadow);
}

.service-card,
.mandate-list article,
.tool-card,
.deep-dive-topic-grid a,
.definition-grid article,
.failure-grid article,
.support-grid article,
.landscape-card {
  background: rgba(255, 255, 255, 0.78);
}

.tooling,
.approach,
.context-band,
.sources {
  background: #eef1eb;
}

.profile {
  color: var(--ink);
  background:
    radial-gradient(circle at 7% 16%, rgba(107, 189, 69, 0.12), transparent 29%),
    linear-gradient(135deg, #f8f7f2 0%, #e9eee7 100%);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.profile-content,
.profile-facts,
.strengths {
  border-color: rgba(23, 26, 24, 0.14);
}

.profile-lead,
.profile-facts span,
.strengths p {
  color: rgba(23, 26, 24, 0.68);
}

.profile-photo img {
  filter: grayscale(0.30) saturate(0.82) contrast(1.03);
  box-shadow: 0 30px 70px rgba(23, 26, 24, 0.13);
}

.evidence-grid {
  box-shadow: var(--light-shadow);
}

.project-experience {
  color: var(--ink);
  background:
    radial-gradient(circle at 88% 12%, rgba(107, 189, 69, 0.15), transparent 30%),
    radial-gradient(circle at 10% 92%, rgba(74, 132, 48, 0.08), transparent 25%),
    linear-gradient(135deg, #edf3e9 0%, #f8f7f2 100%);
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.project-experience::after {
  border-color: rgba(74, 132, 48, 0.13);
}

.project-experience .section-head p:not(.kicker) {
  color: var(--muted);
}

.project-experience-grid {
  border-color: rgba(74, 132, 48, 0.20);
  background: rgba(255, 255, 255, 0.48);
  box-shadow: var(--light-shadow);
}

.project-experience-grid article {
  background: rgba(255, 255, 255, 0.55);
  border-color: rgba(74, 132, 48, 0.16);
}

.project-experience-grid span {
  color: #4a8430;
}

.project-experience-grid h3 {
  color: var(--ink);
}

.project-experience-grid p {
  color: var(--muted);
}

.project-experience blockquote {
  color: #315e20;
}

.method {
  color: var(--ink);
  background: #f4f5f0;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.method .kicker {
  color: #4a8430;
}

.method .section-head p:not(.kicker),
.method-flow p {
  color: var(--muted);
}

.method-flow::before {
  background: var(--line);
}

.method-dot {
  box-shadow: 0 0 0 7px #f4f5f0;
}

.audit-experience {
  color: var(--ink);
  background:
    radial-gradient(circle at 86% 18%, rgba(107, 189, 69, 0.14), transparent 34%),
    linear-gradient(118deg, #edf3e9 0%, #e5eee0 52%, #dce9d6 100%);
  border: 1px solid rgba(74, 132, 48, 0.2);
  border-left: 5px solid #67b346;
  box-shadow: 0 22px 48px rgba(29, 49, 24, 0.07);
}

.audit-experience .kicker,
.audit-experience strong {
  color: #41752d;
}

.audit-experience p {
  color: #5d655e;
}

.audit-experience h3 {
  color: #172018;
}

.contact,
.detail-contact {
  background:
    radial-gradient(circle at 82% 25%, rgba(255, 255, 255, 0.16), transparent 27%),
    linear-gradient(125deg, #396d25, #55983a 58%, #6bbd45);
}

.legal-header {
  background:
    radial-gradient(circle at 82% 15%, rgba(107, 189, 69, 0.14), transparent 30%),
    linear-gradient(135deg, #faf9f5, #e7eee3);
  border-bottom-color: var(--line);
}

.privacy-notice {
  color: var(--ink);
  background: rgba(251, 250, 246, 0.98);
  border: 1px solid rgba(74, 132, 48, 0.20);
  border-top: 3px solid var(--bright, #6bbd45);
  box-shadow: var(--light-shadow);
}

.privacy-notice p {
  color: var(--muted);
}

.privacy-notice button {
  color: #fff;
  background: #315e20;
}

.privacy-notice a {
  color: #4a8430;
  border-color: rgba(74, 132, 48, 0.35);
}

@media (hover: hover) {
  .project-experience-grid article:hover {
    background: #fff;
    box-shadow: 0 20px 48px rgba(39, 52, 42, 0.10);
  }
}

@media (max-width: 600px) {
  .site-header,
  .detail-header {
    background: rgba(247, 246, 242, 0.96);
  }

  .hero,
  .detail-hero {
    background:
      radial-gradient(circle at 86% 18%, rgba(107, 189, 69, 0.20), transparent 30%),
      linear-gradient(150deg, #fbfaf6 0%, #e5eee0 100%);
  }

  .site-header nav.open {
    color: var(--ink);
    background: rgba(247, 246, 242, 0.99);
    border-top-color: rgba(23, 26, 24, 0.12);
    box-shadow: 0 22px 48px rgba(39, 52, 42, 0.12);
  }

  .site-header nav.open a {
    color: var(--ink);
  }
}
