:root {
  --primary-color: #3b5ba1;
  --secondary-color: #5b5a5a;
}

:root[data-bs-theme="light"] {
  --bg-color: #ffffff;
  --text-color: #000000;
  --footer-bg: #5b5a5a;
  --footer-text: #ffffff;
}

:root[data-bs-theme="dark"] {
  --bg-color: #121212;
  --text-color: #f0f0f0;
  --footer-bg: #3b3b3b;
  --footer-text: #ffffff;
}

body {
  background-color: var(--bg-color);
  color: var(--text-color);
  transition: background-color 0.4s ease, color 0.4s ease;
}

.navbar.main-navbar {
  background-color: var(--primary-color);
}

.theme-toggle {
  background: none;
  border: none;
  color: white;
  font-size: 1.2rem;
  cursor: pointer;
}

.hero {
  padding: 80px 0;
  text-align: center;
}

.hero h1 {
  color: var(--primary-color);
  font-weight: bold;
}

.service-icon {
  font-size: 3rem;
  color: var(--primary-color);
}

.btn-primary {
  background-color: var(--primary-color);
  border: none;
}

.footer {
  background-color: var(--footer-bg);
  color: var(--footer-text);
  padding: 20px 0;
  transition: background-color 0.3s ease;
}

/* Scroll-Trigger Animation */
.animate-on-scroll {
  opacity: 0;
  transform: translateY(40px);
  transition: all 0.6s ease-out;
}

.animate-on-scroll.visible {
  opacity: 1;
  transform: translateY(0);
}


/* Abschnitts-Hintergründe (abwechselnd) */
.section-light {
  background-color: var(--section-light-bg);
}

.section-dark {
  background-color: var(--section-dark-bg);
}

:root[data-bs-theme="light"] {
  --section-light-bg: #f9f9f9;
  --section-dark-bg: #e1e7f5;
}

:root[data-bs-theme="dark"] {
  --section-light-bg: #1e1e1e;
  --section-dark-bg: #2b354d;
}

.section-about {
  background-color: var(--section-light-bg);
  transition: background-color 0.4s ease;
}
