/* Rechtstexte (Datenschutz, AGB, Impressum). Ergänzt /style.css der
   Landingpage, ändert sie nicht; alle Regeln hängen an .legal-doc. */
.legal-doc{max-width:820px;padding-block:56px 80px}
.legal-doc h1{font-size:clamp(32px,5vw,42px);letter-spacing:-1px;overflow-wrap:break-word}
.legal-doc h1+p{margin-top:18px;font-size:16px}
.legal-doc h2{font-size:clamp(23px,3vw,27px);letter-spacing:-.4px;margin-top:56px;padding-top:24px;border-top:1px solid var(--line)}
.legal-doc h2+p,.legal-doc h2+ul,.legal-doc h2+ol{margin-top:18px}
.legal-doc p{margin-top:18px;color:var(--ink)}
.legal-doc strong{font-weight:700}
.legal-doc a{color:var(--green);overflow-wrap:anywhere}
.legal-doc ul,.legal-doc ol{margin:18px 0 0;padding-left:1.3em}
.legal-doc li{margin-top:10px;color:var(--ink)}
.legal-doc li::marker{color:var(--green)}
.legal-doc code{font-size:.85em;background:var(--mint);padding:1px 6px;border-radius:5px}
.legal-doc .back{margin-top:56px}
.legal-doc .back .button{margin-top:0}

/* Inhaltsverzeichnis */
.toc{margin-top:36px;padding:22px 26px;background:var(--mint);border:1px solid var(--line);border-radius:18px}
.toc .toc-title{margin:0;font:600 18px/1.3 Mitr,system-ui,sans-serif}
.toc ol{margin-top:10px;columns:2;column-gap:36px}
.toc li{margin:0;padding-top:6px;break-inside:avoid;font-size:17px}
.toc a{text-decoration:none;color:var(--ink)}
.toc a:hover{text-decoration:underline}

/* Tabelle; auf schmalen Bildschirmen als Karten */
.table-wrap{margin-top:24px}
.legal-doc table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.5}
.legal-doc th{text-align:left;font-weight:700;background:var(--mint);padding:12px 14px;border-bottom:2px solid var(--line)}
.legal-doc td{padding:12px 14px;border-bottom:1px solid var(--line);vertical-align:top}


/* Aktueller Link im Footer */
footer nav a[aria-current="page"]{font-weight:700;text-decoration-thickness:2px}

@media(max-width:700px){
  .legal-doc{padding-block:36px 56px}
  .legal-doc h2{margin-top:44px}
  .toc{padding:18px 20px}
  .toc ol{columns:1}
  .legal-doc table,.legal-doc tbody,.legal-doc tr,.legal-doc td{display:block;width:100%}
  .legal-doc thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .legal-doc tr{margin-top:14px;padding:6px 16px;border:1px solid var(--line);border-radius:14px;background:#fff}
  .legal-doc td{border:0;padding:8px 0}
  .legal-doc td+td{border-top:1px dashed var(--line)}
  .legal-doc td::before{content:attr(data-label);display:block;font-size:13px;font-weight:700;letter-spacing:.4px;color:var(--green)}
  .legal-doc td:first-child{font-weight:700}
  .legal-doc td:first-child::before{display:none}
}
@media print{
  .site-header nav,.skip,.back,footer nav{display:none}
  .legal-doc{padding:0;max-width:none}
}
