/* Gemeinsames Stylesheet für Impressum & Datenschutz — passend zur Landingpage */
:root{
  --text:#1d1d1f; --muted:#6e6e73; --line:#e6e6e9; --bg:#ffffff; --soft:#f5f5f7;
  --accent:#0b6b3a; --todo-bg:#fff4d6; --todo-line:#e0a437;
}
*{box-sizing:border-box; margin:0; padding:0}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--text); background:var(--bg); font-size:16px; line-height:1.65;
  -webkit-font-smoothing:antialiased;
}
.topbar{
  background:var(--soft); border-bottom:1px solid var(--line); padding:10px 16px; font-size:13px;
}
.topbar a{color:var(--accent); text-decoration:none; font-weight:600}
main{max-width:680px; margin:0 auto; padding:28px 20px 70px}
h1{font-size:26px; line-height:1.25; margin-bottom:6px; letter-spacing:-.3px}
.updated{font-size:13px; color:var(--muted); margin-bottom:26px; padding-bottom:16px; border-bottom:1px solid var(--line)}
h2{font-size:19px; margin:32px 0 10px; line-height:1.3}
h3{font-size:16px; margin:22px 0 6px}
p{margin-bottom:13px}
ul{margin:0 0 13px 20px}
li{margin-bottom:6px}
address{font-style:normal; margin-bottom:13px; line-height:1.7}
.todo{
  background:var(--todo-bg); border-left:4px solid var(--todo-line);
  padding:2px 6px; border-radius:3px; font-weight:700;
}
.notice{
  background:var(--todo-bg); border:1px solid var(--todo-line); border-radius:10px;
  padding:14px 16px; margin:20px 0; font-size:14.5px;
}
a{color:var(--accent)}
footer{
  margin-top:42px; padding-top:18px; border-top:1px solid var(--line);
  font-size:12.5px; color:var(--muted);
}
footer a{color:var(--muted)}
table{width:100%; border-collapse:collapse; margin-bottom:16px; font-size:14.5px}
th,td{text-align:left; padding:8px 10px; border-bottom:1px solid var(--line); vertical-align:top}
th{color:var(--muted); font-weight:600; width:34%}
code{background:var(--soft); padding:1px 5px; border-radius:4px; font-size:13.5px}

/* ---- Kontaktformular ---- */
form.kontakt{margin-top:22px}
form.kontakt .feld{margin-bottom:18px}
form.kontakt label{display:block; font-weight:600; font-size:15px; margin-bottom:6px}
form.kontakt label .opt{font-weight:400; color:var(--muted)}
form.kontakt input[type=text],
form.kontakt input[type=email],
form.kontakt textarea{
  width:100%; padding:11px 13px; font-size:16px; font-family:inherit; color:var(--text);
  border:1px solid #c9c9cf; border-radius:9px; background:#fff;
}
form.kontakt input:focus, form.kontakt textarea:focus{
  outline:none; border-color:var(--accent); box-shadow:0 0 0 3px rgba(11,107,58,.12);
}
form.kontakt textarea{min-height:150px; resize:vertical}
form.kontakt .check{display:flex; gap:10px; align-items:flex-start; font-size:14.5px; line-height:1.5}
form.kontakt .check input{margin-top:3px; flex:0 0 auto; width:17px; height:17px; accent-color:var(--accent)}
form.kontakt button{
  background:var(--accent); color:#fff; border:0; border-radius:10px; padding:14px 26px;
  font-size:16px; font-weight:700; font-family:inherit; cursor:pointer;
}
form.kontakt button:active{background:#095a31}
form.kontakt .hp{position:absolute; left:-5000px; width:1px; height:1px; overflow:hidden}
.hinweis{font-size:14px; color:var(--muted); margin-top:14px; line-height:1.55}
