/* Rechtsseiten (Impressum, Datenschutz, AGB). Baut auf style.css auf: Tokens, Nav, Buttons, Footer kommen von dort. */
/* Weicher Trennstrich in der h1 nur dort, wo das Wort sonst nicht passt (schmale Geräte). */
@media(min-width:735px){.shy{display:none}}

main{padding:calc(var(--nav-h) + clamp(48px,7vw,96px)) 0 clamp(64px,9vw,128px)}
.legal-head{max-width:760px;margin-bottom:clamp(40px,5vw,64px)}
.legal-head h1{font-family:var(--disp);font-weight:600;font-size:var(--t-56);letter-spacing:-.045em;line-height:1.06;color:var(--text-h);hyphens:manual}
.stand{margin-top:16px;font-size:var(--t-14);color:var(--muted)}

.legal-grid{display:grid;grid-template-columns:1fr;gap:40px}
@media(min-width:960px){.legal-grid{grid-template-columns:240px minmax(0,620px);gap:72px;align-items:start}}
.legal-grid.single{grid-template-columns:minmax(0,620px)}

/* Inhaltsverzeichnis */
.toc{order:-1}
@media(min-width:960px){.toc{position:sticky;top:calc(var(--nav-h) + 40px)}}
.toc-title{font-family:var(--disp);font-size:var(--t-14);font-weight:600;color:var(--text-h);margin-bottom:10px}
.toc ol{list-style:none;border-left:1px solid var(--line)}
.toc li a{display:block;padding:8px 0 8px 16px;margin-left:-1px;border-left:2px solid transparent;color:var(--muted);text-decoration:none;font-size:var(--t-14);line-height:1.45;transition:opacity .15s linear}
.toc li a:hover{color:var(--text-h)}
.toc li a.is-active{color:var(--text-h);border-left-color:var(--accent)}
@media(max-width:959px){.toc ol{border-left:0}.toc li a{padding:5px 0;border-left:0;margin:0}.toc li a.is-active{color:var(--accent)}}

/* Fließtext */
.legal-body{line-height:1.65;color:var(--text)}
.legal-body h2{max-width:none;text-wrap:pretty;font-family:var(--disp);font-weight:600;font-size:var(--t-21);letter-spacing:-.03em;line-height:1.3;color:var(--text-h);margin:40px 0 12px;padding-top:28px;border-top:1px solid var(--line);scroll-margin-top:calc(var(--nav-h) + 24px)}
.legal-body h2:first-child{margin-top:0;padding-top:0;border-top:0}
.legal-body h3{font-family:var(--disp);font-weight:600;font-size:var(--t-17);color:var(--text-h);margin:24px 0 8px}
.legal-body p{margin-bottom:14px}
.legal-body ul{margin:0 0 14px 20px}
.legal-body li{margin-bottom:4px}
.legal-body a{color:var(--accent);text-decoration:none;border-bottom:1px solid rgba(76,132,255,.35);transition:opacity .15s linear}
.legal-body a:hover{border-bottom-color:var(--accent)}
:is(.toc li a,.legal-body a):active{opacity:.7}
.legal-body strong{color:var(--text-h);font-weight:600}

/* Anrufregeln (/calling-rules, /anrufregeln): Rechtsseiten-Layout plus Kennzahlen-Leiste und Brotkrumen. */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:clamp(20px,2.4vw,32px);font-family:var(--disp);font-weight:600;font-size:var(--t-14);color:var(--muted)}
.crumbs a{color:var(--muted);text-decoration:none;transition:opacity .15s linear}
.crumbs a:hover{color:var(--text-h)}
.crumbs a:active{opacity:.6}
.crumbs [aria-current]{color:var(--text-h)}
.rules .legal-head{max-width:820px}
.rules-lead{max-width:36em;margin-top:22px;font-size:clamp(17px,1.35vw,20px);line-height:1.55;color:#C3CAD6}
.rules .stand{margin-top:18px}
.rules-facts{margin:0 0 clamp(48px,6vw,88px)}
.rules-facts dt{font-size:clamp(26px,3vw,44px)}
@media(max-width:860px){
  .rules-facts{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rules-facts div:nth-child(3){border-left:0}
  .rules-facts div:nth-child(n+3){border-top:1px solid var(--line)}
}

.nf-de{margin-top:clamp(56px,7vw,96px);padding-top:clamp(40px,5vw,64px);border-top:1px solid var(--line)}
