/* ============================================================
   AlfaStage · Rechtstexte (Template legal.html.twig)
   Setzt alfastage.css voraus, die im Template davor geladen wird.
   ============================================================ */

.legal-head{max-width:760px;padding-top:88px;padding-bottom:48px}
.legal-head h1{font-size:clamp(34px,4.4vw,50px);margin-top:20px;line-height:1.2}
.legal-stand{margin-top:22px;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;opacity:.5}

.legal-sheet{
  position:relative;max-width:820px;margin-bottom:20px;background:var(--papier);
  border:2px solid var(--strich);border-radius:18px;
  padding:64px 72px 72px;box-shadow:0 16px 44px rgba(4,59,127,.10);
}
.legal-sheet::before{
  content:"";position:absolute;left:26px;top:0;bottom:0;width:2px;
  background:var(--apricot);
}
.legal-punch{position:absolute;left:8px;width:14px;height:14px;border-radius:50%;background:var(--creme);border:2px solid var(--strich)}
.legal-punch.tl{top:44px}
.legal-punch.bl{bottom:44px}
@media(max-width:720px){
  .legal-sheet{padding:34px 22px 40px}
  .legal-sheet::before,.legal-punch{display:none}
}

.legal-prose{font-size:17px;line-height:1.8}
.legal-prose > *:first-child{margin-top:0}
.legal-prose h2{
  font-size:26px;margin:60px 0 22px;padding-top:34px;
  border-top:2px dashed var(--strich);line-height:1.3;
}
.legal-prose > *:first-child,
.legal-prose h2:first-child{border-top:0;padding-top:0;margin-top:0}
.legal-prose h3{font-size:19px;margin:40px 0 14px;color:var(--blau);line-height:1.35}
.legal-prose h4{font-family:var(--body);font-weight:600;font-size:16px;margin:30px 0 12px;letter-spacing:.02em}
.legal-prose p{margin-bottom:24px}
.legal-prose ul,.legal-prose ol{margin:0 0 28px 24px}
.legal-prose li{margin-bottom:12px;padding-left:6px;line-height:1.7}
.legal-prose li::marker{color:var(--orange)}
.legal-prose a{color:var(--blau);text-decoration:none;border-bottom:2px solid var(--apricot);word-break:break-word}
.legal-prose a:hover{color:var(--orange);border-color:var(--orange)}
.legal-prose strong{font-weight:600}
.legal-prose hr{border:0;border-top:2px dashed var(--strich);margin:48px 0}
.legal-prose blockquote{
  margin:30px 0;padding:22px 26px;background:var(--creme);
  border-left:3px solid var(--orange);border-radius:0 10px 10px 0;font-size:15.5px;
}
.legal-prose table{width:100%;border-collapse:collapse;margin:0 0 30px;font-size:15.5px}
.legal-prose th,.legal-prose td{text-align:left;padding:15px 14px;border-bottom:1px dashed var(--strich);vertical-align:top}
.legal-prose th{font-family:var(--display);font-weight:700;color:var(--blau)}
.legal-prose code{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px;
  background:var(--creme);padding:2px 6px;border-radius:5px;
}


/* Druckansicht, praktisch fürs Impressum */
@media print{
  body{background:#fff;background-image:none}
  .site-header,.site-footer,  .legal-sheet{border:0;box-shadow:none;padding:0}
  .legal-sheet::before{display:none}
    .legal-prose a{border:0;color:inherit}
}
