/* ElouraRise – Rechtsseiten im Future-Stil (Oktober 2026)
   Kopf als Glas-Karte, aufklappbares Inhaltsverzeichnis, goldener Lesefortschritt,
   „Nach oben“-Knopf. Der Rechtstext selbst bleibt unverändert. */

:root{--gold:#c9a96a}
body{background:radial-gradient(70% 30% at 15% 0%,rgba(232,191,200,.45),rgba(232,191,200,0) 70%),var(--creme)}

.lese-fortschritt{position:fixed;top:0;left:0;right:0;height:3px;z-index:60;background:linear-gradient(90deg,var(--beere),var(--gold));transform-origin:left;transform:scaleX(0);box-shadow:0 0 10px rgba(201,169,106,.6)}

.legal-kopf{position:relative;padding:clamp(22px,4vw,36px);border-radius:24px;border:1px solid transparent;background:linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.82)) padding-box,linear-gradient(150deg,rgba(201,169,106,.55),rgba(232,191,200,.45) 50%,rgba(141,64,91,.25)) border-box;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 26px 60px -40px rgba(141,64,91,.45)}
.legal .legal-kopf h1{margin:8px 0 0}
.legal-kopf .muted,.legal-kopf .lead{margin-top:10px}

.legal{line-height:1.7}
.legal p,.legal li,.legal address{overflow-wrap:anywhere}
.legal h2{position:relative;padding-left:16px;scroll-margin-top:90px}
.legal h2::before{content:"";position:absolute;left:0;top:.2em;bottom:.2em;width:3px;border-radius:3px;background:linear-gradient(var(--gold),var(--beere))}
.legal address{padding:16px 18px;border-radius:16px;background:rgba(255,255,255,.7);border:1px solid rgba(141,64,91,.1);line-height:1.65}

.inhalt{margin-top:18px;border-radius:18px;background:rgba(255,255,255,.7);border:1px solid rgba(141,64,91,.12);overflow:hidden}
.inhalt summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;padding:15px 18px;font-weight:600;color:var(--dunkel)}
.inhalt summary::-webkit-details-marker{display:none}
.inhalt summary::after{content:"";width:9px;height:9px;border-right:2px solid var(--beere);border-bottom:2px solid var(--beere);transform:rotate(45deg) translateY(-3px);transition:transform .3s}
.inhalt[open] summary::after{transform:rotate(225deg) translateY(-2px)}
.inhalt summary small{font-weight:500;color:var(--text-3);margin-left:8px}
.inhalt ol{list-style:none;margin:0;padding:4px 10px 12px;display:grid;gap:2px;max-height:55vh;overflow:auto}
.inhalt a{display:block;padding:9px 10px;border-radius:10px;text-decoration:none;color:var(--text-2);font-size:.9375rem;line-height:1.35}
.inhalt a:hover,.inhalt a:focus{background:rgba(141,64,91,.07);color:var(--beere)}

.nach-oben{position:fixed;right:16px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:40;width:48px;height:48px;border-radius:50%;border:0;cursor:pointer;color:#fff;font-size:1.2rem;background:linear-gradient(140deg,var(--gold),var(--beere));box-shadow:0 14px 30px -12px rgba(141,64,91,.7);opacity:0;transform:translateY(12px);pointer-events:none;transition:opacity .3s,transform .3s}
.nach-oben.sichtbar{opacity:1;transform:none;pointer-events:auto}

@media (max-width:600px){
  .page-single .sec{padding-block:18px 40px}
  .legal h1{font-size:clamp(1.5rem,7vw,1.9rem);overflow-wrap:anywhere;hyphens:auto}
  .legal h2{font-size:1.2rem;margin-top:34px}
  .legal h3{font-size:1rem}
  .legal p,.legal li{font-size:.97rem}
}
@media (prefers-reduced-motion:reduce){.nach-oben{transition:none}}
