/* ===== Gemeinsamer Stil für alle Seiten ===== */
:root{
  --bg: #faf7f2;
  --card: #ffffff;
  --ink: #1d1d1f;
  --muted: #6b6b70;
  --brand: #b22c2c;      /* Logo/Überschrift (warm rot) */
  --accent: #d49f15;     /* Buttons / Highlights (gold) */
  --accent-ink: #3b2a00;
  --soft: #f6e7c6;       /* zartes Banner-Hintergrund */
  --radius: 14px;
  --shadow: 0 6px 24px rgba(0,0,0,.06);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font:16px/1.55 system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);
  background:var(--bg);
}

.container{max-width:980px;margin:0 auto;padding:20px}
.center{text-align:center}

/* Header / Brand */
.site-header{border-bottom:1px solid #e9e4db;background:#fff}
.brand{
  font-weight:800;
  font-size:28px;
  color:var(--brand);
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:.4rem;
}

/* Nav */
.nav{
  display:flex;gap:22px;justify-content:center;flex-wrap:wrap;
  margin-top:8px;margin-bottom:4px
}
.nav a{
  color:var(--ink); text-decoration:none; padding:8px 10px; border-radius:10px;
}
.nav a:hover{background:#f2eee6}
.nav a.active{font-weight:700; color:var(--brand)}

/* Hero */
.hero{
  background:linear-gradient(180deg, var(--soft), #f8edd2);
  border-radius:var(--radius);
  padding:28px 22px;
  box-shadow:var(--shadow);
  margin:22px auto;
}
.hero h1{margin:0 0 6px;font-size:28px;line-height:1.2}
.hero p{margin:0 0 14px;color:var(--muted)}
.btn{
  background:var(--accent); color:#fff; border:0; border-radius:12px;
  padding:10px 16px; font-weight:700; cursor:pointer; text-decoration:none;
  display:inline-block;
}
.btn:hover{filter:brightness(.95)}

/* Cards / Ideen-Liste */
.grid{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:18px; margin:18px 0 26px
}
.card{
  background:var(--card); border-radius:var(--radius); box-shadow:var(--shadow);
  padding:18px;
}
.card h3{margin:0 0 6px;font-size:18px}
.card p{margin:0 0 12px;color:var(--muted)}
.card .btn{background:var(--accent);}

/* Content-Box (Kontakt / Impressum / Datenschutz) */
.section{
  background:#fff; border-radius:var(--radius); box-shadow:var(--shadow);
  padding:22px; margin:20px 0;
}
.section h2{margin-top:0}

/* Footer */
.site-footer{
  border-top:1px solid #e9e4db; color:var(--muted); font-size:14px;
  padding:18px 0; background:#fff;
}
.site-footer a{color:inherit}