/* ============================================================
   LEGAL.CSS — Stylesheet für Impressum, Datenschutz,
   Cookie-Einstellungen.
   Design-Tokens 1:1 aus dem Hauptstylesheet (style.css)
   übernommen, damit die Rechtsseiten optisch zur restlichen
   Website passen.
   ============================================================ */

:root{
  --ink:#2b1b14;
  --paper:#efe2c3;
  --paper-2:#e6d5ab;
  --wine:#6e1423;
  --wine-dark:#3c0a12;
  --forest:#3c4a2e;
  --gold:#c08a2e;
  --gold-light:#e0b463;
  --cream-card:#faf3e1;
  --line: rgba(43,27,20,0.18);
  --shadow: 0 14px 30px -18px rgba(43,27,20,0.45);
  --radius: 2px;
  --maxw: 1180px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto;}
  *{animation-duration:0.01ms !important; animation-iteration-count:1 !important; transition-duration:0.01ms !important;}
}

body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:'Jost', sans-serif;
  font-size:16px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

h1,h2,h3,h4{
  font-family:'Cormorant Garamond', serif;
  font-weight:600;
  margin:0 0 .4em 0;
  color:var(--wine-dark);
  letter-spacing:.01em;
}

a{color:inherit; text-decoration:none;}
img{max-width:100%; display:block;}
ul{margin:0; padding:0; list-style:none;}

:focus-visible{
  outline:3px solid var(--gold);
  outline-offset:3px;
}

.wrap{
  max-width:var(--maxw);
  margin:0 auto;
  padding:0 32px;
}

.eyebrow{
  font-family:'Jost', sans-serif;
  font-size:.72rem;
  font-weight:600;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--wine);
}

/* ---------- Kopfbereich der Rechtsseiten ---------- */
.legal-header{
  position:sticky;
  top:0;
  z-index:100;
  background:rgba(239,226,195,0.94);
  backdrop-filter:blur(6px);
  border-bottom:1px solid var(--line);
}
.legal-header .wrap{
  padding:18px 32px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.legal-header img{height:48px; width:auto;}
.legal-header .back-link{
  font-size:.82rem;
  font-weight:600;
  letter-spacing:.04em;
  color:var(--wine);
  padding:8px 0;
  transition:color .2s ease;
}
.legal-header .back-link:hover{color:var(--wine-dark); text-decoration:underline;}

/* ---------- Inhalt ---------- */
main.legal{
  max-width:760px;
  margin:0 auto;
  padding:70px 32px 100px;
}
main.legal h1{
  font-size:clamp(2rem, 4vw, 2.8rem);
  margin-top:10px;
}
main.legal h2{
  font-size:1.5rem;
  margin-top:2.2em;
  padding-top:.6em;
  border-top:1px solid var(--line);
}
main.legal h2:first-of-type{border-top:none; padding-top:0; margin-top:1.6em;}
main.legal p{margin:0 0 1em; color:rgba(43,27,20,0.82);}
main.legal a{color:var(--wine); text-decoration:underline; text-decoration-color:rgba(110,20,35,0.35);}
main.legal a:hover{color:var(--wine-dark);}

.updated{
  font-size:.85rem;
  font-style:italic;
  color:rgba(43,27,20,0.55);
  margin-top:-6px;
}

.draft-note{
  background:rgba(224,180,99,0.18);
  border:1px solid var(--gold);
  border-left:4px solid var(--gold);
  border-radius:var(--radius);
  padding:16px 20px;
  margin:26px 0 34px;
  font-size:.9rem;
  color:var(--wine-dark);
}
.draft-note strong{color:var(--wine);}

.info-card{
  background:var(--cream-card);
  border:1px solid var(--line);
  border-radius:var(--radius);
  padding:18px 22px;
  margin:16px 0;
}
.info-card p{margin:0; color:rgba(43,27,20,0.78);}

.legal-table{
  width:100%;
  border-collapse:collapse;
  margin:18px 0 28px;
  font-size:.92rem;
}
.legal-table td{
  padding:12px 14px;
  border-bottom:1px solid var(--line);
  vertical-align:top;
}
.legal-table tr td:first-child{
  width:38%;
  font-weight:600;
  color:var(--wine-dark);
}

/* ---------- Fußbereich der Rechtsseiten ---------- */
.legal-footer{
  background:var(--wine-dark);
  color:rgba(239,226,195,0.75);
  padding:26px 0;
  margin-top:60px;
}
.legal-footer .wrap{
  display:flex;
  justify-content:space-between;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
  font-size:.78rem;
}
.legal-footer ul{display:flex; gap:20px; flex-wrap:wrap;}
.legal-footer a:hover{color:var(--gold-light);}
