/* style.css – modernisiert mit Bootstrap-Kompatibilität */

:root {
  --bg: #ffffff;        /* Hauptfarbe Weiß */
  --accent: #27A312;    /* Logo-Grün für Buttons, Hover, Headings */
  --text: #00296D;      /* Dunkelblau aus dem Logo für Lesbarkeit */
  --text2: #ffffff; 
  --muted: #5A6F85;     /* Dezenter Text */
  --card-bg: #F2F6FA;   /* Sehr helles Blau-Grau für Karten */
  --header-bg: #F2F6FA;
  --radius: 12px;
  font-family: 'Poppins', sans-serif;
}


/* ===== GLOBAL ===== */
body {
  background-color: var(--bg);
  color: var(--text);
  font-family: 'Poppins', sans-serif;
}

a {
  color: var(--accent);
  text-decoration: none;
}

a:hover {
  color: #fff;
}

img {
  width: 100%;
  height: auto;
  border-radius: var(--radius);
}

.carousel-item img{
  aspect-ratio: 16/9;
}

/* ===== HEADER ===== */
.site-header {
  background-color: var(--header-bg);
  border-bottom: 2px solid var(--accent);
}

.logo {
  height: 60px;
  width: auto;
}

.nav-link {
  color: var(--text) !important;
  font-weight: 500;
}

.nav-link.active,
.nav-link:hover {
  color: var(--text2) !important;
  background-color: var(--accent);
  border-radius: var(--radius);
  padding: 0.4rem 0.8rem;
}

/* ===== TIMELINE ===== */
.timeline-item {
  background-color: var(--card-bg);
  border-radius: var(--radius);
  padding: 1.5rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.3);
}

.text-accent {
  color: var(--accent) !important;
}

.btn-accent {
  background-color: var(--accent);
  color: var(--bg);
  font-weight: 600;
  border: none;
  border-radius: var(--radius);
  transition: 0.3s ease;
}

.btn-accent:hover {
  background-color: #ffd633;
  color: var(--bg);
}

/* ===== SIDEBAR ===== */
.card {
  background: var(--card-bg) !important;
  color: var(--text) !important;
}

.card a {
  color: var(--muted);
}

.card a:hover {
  color: var(--accent);
}

/* ===== FOOTER ===== */
.site-footer {
  background-color: var(--accent);
  color: var(--bg);
  font-weight: 500;
}

.site-footer a {
  color: var(--bg);
}

.site-footer a:hover {
  text-decoration: underline;
}

/* ===== RESPONSIVE ===== */
@media (max-width: 768px) {
  .logo {
    height: 50px;
  }
}