/* Prep9to5 – Website im Look "Dunkel & edel" (siehe marke/Marke.html) */
:root {
  --anthrazit: #1C1C1E;
  --flaeche: #232326;
  --linie: #333337;
  --creme: #EFE9DF;
  --gold: #C9A45C;
  --gold-dunkel: #A8843F;
  --grau: #A39E95;
  --soft: #CFC8BC;
  --serif: "Bodoni Moda", Georgia, serif;
  --sans: "Archivo", system-ui, sans-serif;
}
* { box-sizing: border-box; margin: 0; padding: 0; }
html { -webkit-text-size-adjust: 100%; }
body { min-height: 100vh; background: var(--anthrazit); color: var(--creme); font-family: var(--sans); font-size: 17px; line-height: 1.6; }
a { color: inherit; }
:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.wrap { max-width: 1080px; margin: 0 auto; padding: 0 24px; }

/* Bodoni mit fester optischer Größe, damit die Haarlinien sichtbar bleiben */
.serif, h1, h2, h3, .logo span { font-family: var(--serif); font-variation-settings: "opsz" 28; font-variant-numeric: lining-nums; }
/* Bodoni Moda hat kein Kerning nach "W" – Lücke ausgleichen */
.kw { letter-spacing: -.1em; }
/* Ziffern in Überschriften aus Archivo: die Bodoni-"1" sieht aus wie ein "I" */
.ziffer { font-family: var(--sans); font-weight: 600; font-variation-settings: normal; }

/* ---------- Kopf ---------- */
header.site { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; padding: 28px 0; }
.logo { display: inline-flex; align-items: center; gap: 14px; text-decoration: none; }
.logo svg { display: block; width: 46px; height: 46px; overflow: visible; }
.logo span { font-size: 26px; font-weight: 600; line-height: 1; letter-spacing: -.01em; }
nav.social { display: flex; gap: 20px; font-size: 13px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
nav.social a { color: var(--grau); text-decoration: none; }
nav.social a:hover { color: var(--creme); }

/* ---------- Startseite ---------- */
.hero { max-width: 820px; padding: 64px 0 88px; }
.kicker { font-size: 13px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--gold); }
h1 { margin-top: 18px; font-size: clamp(44px, 8vw, 84px); font-weight: 600; line-height: 1.04; letter-spacing: -.01em; }
.rule { width: 72px; height: 3px; margin: 32px 0; border-radius: 2px; background: var(--gold); }
.lead { max-width: 620px; font-size: clamp(18px, 2.2vw, 21px); color: var(--soft); }
.buttons { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.btn { display: inline-block; padding: 14px 22px; border-radius: 999px; font-size: 14px; font-weight: 700; letter-spacing: .08em; text-decoration: none; text-transform: uppercase; }
.btn.gold { background: var(--gold); color: var(--anthrazit); }
.btn.outline { border: 1px solid var(--linie); color: var(--creme); }
.btn:hover { filter: brightness(1.08); }

section.features { padding: 8px 0 64px; border-top: 1px solid var(--linie); }
h2 { margin: 48px 0 24px; font-size: clamp(28px, 4vw, 40px); font-weight: 600; line-height: 1.15; }
.cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr)); gap: 16px; }
.card { padding: 24px; border: 1px solid var(--linie); border-radius: 16px; background: var(--flaeche); }
.card .nr { font-size: 13px; font-weight: 600; letter-spacing: .16em; color: var(--gold); }
.card h3 { margin: 10px 0 8px; font-size: 24px; font-weight: 600; line-height: 1.2; }
.card p { font-size: 15.5px; color: var(--grau); }

.soon { margin: 0 0 80px; padding: 32px; border-radius: 20px; background: var(--creme); color: var(--anthrazit); }
.soon .kicker { color: var(--gold-dunkel); }
.soon h2 { margin: 10px 0 8px; }
.soon p { max-width: 600px; color: #4A4640; }

/* ---------- Fuß ---------- */
footer.site { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding: 28px 0 40px; border-top: 1px solid var(--linie); font-size: 14px; color: var(--grau); }
footer.site nav { display: flex; gap: 20px; }
footer.site a { text-decoration: none; }
footer.site a:hover { color: var(--creme); }

/* ---------- Rechtstexte ---------- */
.legal { max-width: 760px; padding: 32px 0 72px; }
.legal h1 { font-size: clamp(36px, 6vw, 56px); }
/* Zwischenüberschriften der Rechtstexte in Archivo – sie enthalten Ziffern (§ 18, 1., 2. …) */
.legal h2 { margin: 36px 0 10px; font-family: var(--sans); font-size: 19px; font-weight: 700; letter-spacing: .01em; font-variation-settings: normal; }
.legal p, .legal li { font-size: 16px; color: var(--soft); }
.legal p + p { margin-top: 10px; }
.legal ul { margin-top: 8px; padding-left: 20px; }
.legal a { color: var(--gold); }
.legal .stand { margin-top: 40px; font-size: 14px; color: var(--grau); }
/* Platzhalter, die noch ersetzt werden müssen */
.ph { padding: 0 4px; border-radius: 4px; background: rgba(201, 164, 92, .18); color: var(--gold); }
