/* MinecoreGroup — Recht (rechtliche Dokumente, rein informativ) */
*{box-sizing:border-box;margin:0;padding:0}
:root{
  --bg:#07090a; --bg2:#0c0f0e; --panel:#101312; --panel2:#151918;
  --border:rgba(34,197,94,.14); --border-strong:rgba(34,197,94,.32);
  --text:#edf2ef; --text-muted:#8a9690;
  --accent:#22c55e; --accent-light:#4ade80; --accent-soft:rgba(34,197,94,.14);
  --radius:14px;
}
html{scroll-behavior:smooth}
body{
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  background:var(--bg); color:var(--text); line-height:1.6; min-height:100vh;
}
a{color:inherit}
img{max-width:100%; display:block}

body::before{
  content:''; position:fixed; inset:0; z-index:-2; pointer-events:none;
  background:
    radial-gradient(ellipse 900px 500px at 12% -8%, rgba(34,197,94,.14), transparent 60%),
    var(--bg);
}

/* Header */
.mw-header{
  position:sticky; top:0; z-index:50;
  background:rgba(7,9,10,.9); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  border-bottom:1px solid var(--border);
}
.mw-header-inner{
  max-width:1180px; margin:0 auto; padding:16px 24px;
  display:flex; align-items:center; gap:28px; flex-wrap:wrap;
}
.mw-brand{font-weight:800; font-size:1.05rem; text-decoration:none; flex-shrink:0}
.mw-nav{display:flex; gap:22px; margin-left:auto; flex-wrap:wrap}
.mw-nav a{font-size:.86rem; font-weight:600; color:var(--text-muted); text-decoration:none; transition:color .15s}
.mw-nav a:hover{color:var(--accent-light)}

/* Sub-pages */
.mw-breadcrumb{max-width:1180px; margin:20px auto 0; padding:0 24px; font-size:.82rem; color:var(--text-muted)}
.mw-breadcrumb a{color:var(--text-muted); text-decoration:none}
.mw-breadcrumb a:hover{color:var(--accent-light)}

.mw-page-hero{max-width:1180px; margin:0 auto; padding:36px 24px 20px}
.mw-page-hero h1{font-size:clamp(1.8rem,3.6vw,2.5rem); font-weight:900; letter-spacing:-.02em; margin-bottom:6px}
.mw-page-hero p{color:var(--text-muted); font-size:1rem; max-width:640px}

.mw-content-wide{max-width:1180px; margin:0 auto; padding:20px 24px 80px}

/* Startseite: Service-Karten */
.recht-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:20px; max-width:960px; margin:20px auto 0}
.recht-card{
  background:linear-gradient(180deg, var(--panel), var(--panel2)); border:1px solid var(--border); border-radius:var(--radius);
  padding:28px 24px; text-decoration:none; color:var(--text); transition:all .2s;
}
.recht-card:hover{border-color:var(--border-strong); transform:translateY(-3px)}
.recht-card .ico{font-size:1.6rem; margin-bottom:12px}
.recht-card h3{font-size:1.1rem; font-weight:700; margin-bottom:6px}
.recht-card p{font-size:.85rem; color:var(--text-muted)}

/* Inhaltsverzeichnis */
.recht-toc{background:var(--panel); border:1px solid var(--border); border-radius:var(--radius); padding:24px 28px; margin-bottom:40px}
.recht-toc h4{font-size:.78rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; color:var(--text-muted); margin-bottom:12px}
.recht-toc a{display:block; font-size:.9rem; color:var(--accent-light); text-decoration:none; padding:4px 0}
.recht-toc a:hover{text-decoration:underline}

/* Dokument-Abschnitte */
.recht-doc{padding-bottom:36px; margin-bottom:36px; border-bottom:1px solid var(--border)}
.recht-doc:last-child{border-bottom:none}
.recht-doc h2{font-size:1.5rem; font-weight:800; margin-bottom:4px; letter-spacing:-.01em}
.recht-doc h3{font-size:1.05rem; font-weight:700; margin:22px 0 8px}
.recht-doc h3:first-of-type{margin-top:20px}
.recht-doc p{color:var(--text-muted); margin-bottom:12px; font-size:.92rem; line-height:1.7}
.recht-doc ul{margin:0 0 12px 20px; color:var(--text-muted); font-size:.92rem}
.recht-doc li{margin-bottom:5px}
.recht-stand{font-size:.76rem; color:var(--accent-light); text-transform:uppercase; letter-spacing:.05em; margin-bottom:18px}

/* Impressum etc. */
.mw-content{max-width:820px; margin:0 auto; padding:20px 24px 80px}
.mw-content h2{font-size:1.4rem; font-weight:800; margin:32px 0 12px}
.mw-content h2:first-child{margin-top:0}
.mw-content p{color:var(--text-muted); margin-bottom:14px; font-size:.95rem}
.mw-content a.inline-link{color:var(--accent-light); text-decoration:underline}

/* Footer */
.mw-footer{border-top:1px solid var(--border); padding:32px 24px; margin-top:40px}
.mw-footer-inner{max-width:1180px; margin:0 auto}
.mw-footer-bottom{display:flex; justify-content:center}
.mw-footer-copy{font-size:.8rem; color:var(--text-muted)}

@media(max-width:720px){
  .mw-nav{gap:14px}
}
