/* Gemeinsame Basis der „Bald wieder da"-Entwürfe.
   Pfade absolut auf /_bald/, weil Apache die Seite per ErrorDocument
   unter JEDER URL ausliefert (/impressum, /termine/…) — relative Pfade
   würden dort ins Leere zeigen. */

@font-face { font-family: Anton;   font-weight: 400; font-display: swap; src: url('/_bald/fonts/anton-400.woff2') format('woff2'); }
@font-face { font-family: Manrope; font-weight: 500; font-display: swap; src: url('/_bald/fonts/manrope-500.woff2') format('woff2'); }
@font-face { font-family: Manrope; font-weight: 700; font-display: swap; src: url('/_bald/fonts/manrope-700.woff2') format('woff2'); }
@font-face { font-family: Manrope; font-weight: 800; font-display: swap; src: url('/_bald/fonts/manrope-800.woff2') format('woff2'); }

:root {
  --ink: #11100E;
  --ink-soft: #1F1C18;
  --cream: #F5EFE0;
  --paper: #FBF8F1;
  --gold: #F8BE29;
  --gold-deep: #C8970F;
  --gold-glow: #FFD04A;
}

*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
  font-family: Manrope, system-ui, sans-serif;
  font-weight: 500;
  line-height: 1.6;
}
img { max-width: 100%; display: block; }
a { color: inherit; }

/* Anton nur in 400 — kein synthetisches Fett (siehe CLAUDE.md) */
.display {
  font-family: Anton, Impact, sans-serif;
  font-weight: 400;
  text-transform: uppercase;
  letter-spacing: 0.005em;
  line-height: 0.95;
  margin: 0;
}
.eyebrow {
  font-weight: 800;
  font-size: 0.75rem;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin: 0;
}

.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5em;
  padding: 0.85em 1.4em;
  border-radius: 999px;
  font-weight: 700;
  font-size: 0.95rem;
  text-decoration: none;
  transition: background-color .2s, color .2s, border-color .2s;
}
.btn svg { width: 1.1em; height: 1.1em; flex: none; }

/* Impressum: Pflichtangabe nach § 5 DDG, auch auf der Platzhalterseite */
.legal { font-size: 0.8rem; padding: 1.25rem 1rem 1.5rem; text-align: center; }
.legal details { max-width: 34rem; margin: 0 auto; }
.legal summary { cursor: pointer; display: inline-block; text-decoration: underline; text-underline-offset: 3px; }
.legal .legal-body { text-align: left; margin-top: 1rem; line-height: 1.55; }
.legal .legal-body p { margin: 0 0 0.75rem; }
.legal .legal-body strong { font-weight: 700; }
