/* creativebunch.de · gemeinsame Grundlage */
:root {
  --bg: #1b1916;
  --panel: #24211d;
  --line: #36312b;
  --ink: #efe9df;
  --mute: #9b9286;
  --faint: #6f675c;
  --accent: #d2643c;
  --serif: "Newsreader", Georgia, serif;
  --sans: "Manrope", ui-sans-serif, system-ui, sans-serif;
}
* { box-sizing: border-box; }
html, body { margin: 0; background: var(--bg); color: var(--ink); }
body { font-family: var(--sans); font-size: 16px; line-height: 1.5; -webkit-font-smoothing: antialiased; min-height: 100vh; display: flex; flex-direction: column; }
a { color: inherit; }
em { font-family: var(--serif); font-style: italic; font-weight: 400; }

.logo { display: inline-flex; align-items: center; gap: 10px; color: var(--ink); text-decoration: none; }
.logo img { width: 34px; height: 34px; display: block; }
.wordmark { font-family: var(--sans); font-weight: 600; font-size: 17px; letter-spacing: -0.01em; line-height: 1; }
.wordmark em { font-size: 1.12em; letter-spacing: 0; margin-left: 1px; }

.head { display: flex; align-items: center; justify-content: space-between; padding: 28px 40px; }
.head nav { display: flex; gap: 28px; font-size: 14px; }
.head nav a { color: var(--mute); text-decoration: none; }
.head nav a:hover { color: var(--ink); }

.foot { display: flex; flex-wrap: wrap; gap: 8px 24px; justify-content: space-between; padding: 28px 40px; color: var(--faint); font-size: 13px; border-top: 1px solid var(--line); }
.foot nav { display: flex; gap: 24px; }
.foot a { color: var(--mute); text-decoration: none; }
.foot a:hover { color: var(--ink); }

.icon { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; flex: none; }
.status { display: inline-flex; align-items: center; gap: 6px; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; color: var(--mute); }
.status::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--accent); }
.status.soon::before { background: transparent; border: 1px solid var(--faint); }

@media (max-width: 640px) {
  .head, .foot { padding: 20px; }
  .head nav { display: none; }
}
