/* BoosterFuchs – Grundstil */
:root {
  --orange: #E8641B;
  --orange-dunkel: #B4410F;
  --gruen: #1F4D3A;
  --creme: #FFF8F1;
  --creme-dunkel: #FFEEDD;
  --text: #1F2421;
  --text-leise: #4A4F4B;
  --linie: #F0E0CF;
  --schrift: system-ui, -apple-system, "Segoe UI", "Helvetica Neue", sans-serif;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  font-family: var(--schrift);
  color: var(--text);
  background: var(--creme);
  line-height: 1.55;
}

a { color: var(--orange-dunkel); }
a:hover { color: #8A300A; }

.inhalt {
  max-width: 1100px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Kopfzeile */
header { border-bottom: 1px solid var(--linie); }
.kopf {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding-top: 14px;
  padding-bottom: 14px;
}
.logo {
  display: flex;
  align-items: center;
  gap: 10px;
  text-decoration: none;
  color: var(--text);
  font-weight: 800;
  font-size: 1.5rem;
  letter-spacing: -0.5px;
}
.logo .wort span { color: var(--orange); }
.logo img { width: 40px; height: 40px; }

/* Startbereich */
.hero { background: var(--creme-dunkel); }
.hero .inhalt {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 40px;
  padding-top: 64px;
  padding-bottom: 64px;
}
.hero-text { flex: 999 1 480px; min-width: 0; }
.hero-bild { flex: 1 1 240px; display: flex; justify-content: center; }
.hero-bild img { width: 100%; max-width: 280px; height: auto; }

.dachzeile {
  margin: 0 0 12px;
  font-weight: 700;
  font-size: 0.85rem;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  color: #8A300A;
}
h1 {
  margin: 0 0 16px;
  font-size: clamp(2rem, 5vw, 3.4rem);
  line-height: 1.08;
  letter-spacing: -1px;
}
.hero p.unterzeile {
  margin: 0;
  font-size: 1.15rem;
  color: var(--text-leise);
  max-width: 560px;
}
.badge {
  display: inline-block;
  margin-top: 24px;
  padding: 10px 18px;
  border-radius: 999px;
  background: var(--gruen);
  color: #FFFFFF;
  font-weight: 700;
}

.spiele {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 20px 0 0;
  padding: 0;
  list-style: none;
}
.spiele li {
  padding: 8px 14px;
  border-radius: 999px;
  background: #FFFFFF;
  border: 1px solid #EBD3BC;
  font-weight: 600;
  font-size: 0.9rem;
}

/* Abschnitte */
section.abschnitt { padding: 64px 0; }
h2 {
  margin: 0 0 28px;
  font-size: clamp(1.6rem, 3.5vw, 2.3rem);
  letter-spacing: -0.5px;
  line-height: 1.15;
}
.schritte {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 28px;
}
.schritt .nummer {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: var(--orange);
  color: var(--text);
  font-weight: 800;
  font-size: 1.3rem;
}
.schritt h3 { margin: 14px 0 6px; font-size: 1.2rem; }
.schritt p { margin: 0; color: var(--text-leise); }

.dunkel { background: var(--gruen); color: #FFFFFF; }
.dunkel p { color: #D9E6DF; }
.dunkel a { color: #FFB27A; }

/* Rechtstexte */
.rechtstext { padding: 48px 0 64px; max-width: 760px; }
.rechtstext h1 { font-size: 2.2rem; }
.rechtstext h2 { font-size: 1.3rem; margin: 32px 0 8px; }

/* Fußzeile */
footer { border-top: 1px solid var(--linie); }
footer .inhalt { padding-top: 28px; padding-bottom: 40px; }
.hinweis { margin: 0 0 14px; font-size: 0.85rem; color: #5B5F5A; max-width: 760px; }
.fusslinks {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  font-size: 0.9rem;
  font-weight: 600;
}

@media (max-width: 600px) {
  .hero-bild img { max-width: 160px; }
}
