/* adisyo: Rechtstexte (Impressum, Datenschutz, AGB, AVV). Keine externen Schriften (Datenschutz). */
:root{--ink:#1d1d1f;--ink2:#424245;--muted:#6e6e73;--line:#e3e3e8;--soft:#f5f5f7;--blue:#1E8FC4;--blue2:#2BA7E0;--vio:#7B6CF6;--max:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;color:var(--ink);background:#fff;-webkit-font-smoothing:antialiased;line-height:1.7;font-size:16px}
a{color:var(--blue)}
.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}

/* Navigation */
.lnav{position:sticky;top:0;z-index:50;height:52px;display:flex;align-items:center;background:rgba(22,22,23,.82);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);color:#f5f5f7}
.lnav .wrap{display:flex;align-items:center;gap:20px;width:100%}
.lnav .brand img{height:24px;display:block}
.lnav nav{display:flex;gap:18px;margin-left:auto;font-size:12.5px}
.lnav nav a{color:#f5f5f7;text-decoration:none;opacity:.75}.lnav nav a:hover,.lnav nav a.on{opacity:1}
.lnav nav a.on{font-weight:700}
@media (max-width:760px){.lnav nav{gap:12px;font-size:12px}.lnav nav a.hm{display:none}}

/* Kopf */
.lhero{background:radial-gradient(900px 420px at 80% -20%,rgba(123,108,246,.35),transparent 60%),radial-gradient(800px 400px at 0% 0%,rgba(43,167,224,.30),transparent 55%),#000;color:#f5f5f7;padding:70px 0 56px}
.lhero .eyebrow{font-size:14px;font-weight:700;color:#8fd0f0;margin:0 0 8px;letter-spacing:.02em}
.lhero h1{font-size:clamp(34px,5.2vw,60px);line-height:1.05;letter-spacing:-.035em;margin:0;font-weight:800}
.lhero h1 span{background:linear-gradient(90deg,#2BA7E0,#7B6CF6 55%,#E0435A);-webkit-background-clip:text;background-clip:text;color:transparent}
.lhero p{max-width:760px;color:#a1a1a6;font-size:17px;margin:14px 0 0}
.meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.meta span{font-size:12.5px;font-weight:600;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);color:#d2d2d7}
.meta .todo{background:rgba(242,182,75,.16);border-color:rgba(242,182,75,.4);color:#ffd88a}
.meta .done{background:rgba(47,191,113,.16);border-color:rgba(47,191,113,.4);color:#8ff0b8}

/* Inhalt */
.lbody{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;padding:56px 0 90px}
@media (max-width:980px){.lbody{grid-template-columns:1fr;gap:28px;padding-top:34px}}
.toc{position:sticky;top:76px;align-self:start;max-height:calc(100vh - 100px);overflow:auto;font-size:13.5px;padding-right:6px}
.toc b{display:block;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.toc a{display:block;padding:6px 10px;border-radius:9px;color:var(--ink2);text-decoration:none;line-height:1.4;border-left:2px solid transparent}
.toc a:hover{background:var(--soft)}.toc a.on{background:var(--soft);color:var(--ink);font-weight:600;border-left-color:var(--blue)}
@media (max-width:980px){.toc{position:static;max-height:none;background:var(--soft);border-radius:16px;padding:16px}}
.doc{min-width:0;max-width:820px}
.doc h2{font-size:clamp(22px,2.4vw,28px);letter-spacing:-.02em;line-height:1.25;margin:48px 0 12px;scroll-margin-top:80px}
.doc h2:first-child{margin-top:0}
.doc h2 .n{color:var(--blue);margin-right:8px}
.doc h3{font-size:17.5px;margin:28px 0 8px;scroll-margin-top:80px}
.doc p,.doc li{color:var(--ink2)}
.doc p{margin:0 0 14px}
.doc ul,.doc ol{margin:0 0 16px;padding-left:22px}.doc li{margin-bottom:6px}
.doc strong{color:var(--ink)}
.box{background:var(--soft);border-radius:18px;padding:20px 22px;margin:0 0 18px}
.box.addr{font-size:16px;line-height:1.8}
.box.note{background:#eef7fc;border:1px solid #cfe8f5}
.box.warn{background:#fff7e6;border:1px solid #f5dfae}
.box.tr{background:#f4f2fd;border:1px solid #e0dbfa;font-size:14.5px}
.box p:last-child,.box ul:last-child{margin-bottom:0}
.tbl{width:100%;border-collapse:collapse;margin:6px 0 18px;font-size:14.5px}
.tbl th,.tbl td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line)}
.tbl th{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.tw{overflow-x:auto}
.ph{background:#fff1c2;color:#7a4b00;border-radius:6px;padding:1px 6px;font-weight:600;white-space:nowrap}
.sig{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:26px}.sig div{border-top:1px solid var(--ink);padding-top:8px;font-size:13.5px;color:var(--muted)}
@media (max-width:600px){.sig{grid-template-columns:1fr}}
.pbtn{display:inline-flex;align-items:center;gap:8px;margin-top:6px;padding:10px 18px;border-radius:999px;border:1px solid var(--line);background:#fff;font:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer}
.pbtn:hover{border-color:var(--ink)}

/* Fuß */
.lfoot{background:#000;color:#6e6e73;font-size:12.5px;padding:30px 0 44px}
.lfoot .wrap{display:flex;flex-wrap:wrap;gap:14px 26px;justify-content:space-between;align-items:center}
.lfoot a{color:#a1a1a6;text-decoration:none;margin-right:18px}.lfoot a:hover{color:#fff}
.lfoot img{height:18px;vertical-align:middle;opacity:.9}

@media print{
  .lnav,.toc,.lfoot,.pbtn,.meta{display:none!important}
  .lhero{background:none;color:#000;padding:0 0 10px}.lhero h1 span{color:#000;-webkit-text-fill-color:#000;background:none}.lhero p{color:#333}
  .lbody{display:block;padding:10px 0}.doc{max-width:none}
  .ph{background:none;border:1px dashed #999}
  body{font-size:11pt}
}
/* adisyo.de · mobile Umbrüche */
.ph{white-space:normal;overflow-wrap:anywhere;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.doc,.doc p,.doc li,.doc td{overflow-wrap:break-word}
@media (max-width:700px){.doc table{display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.doc td,.doc th{min-width:150px}}
html,body{overflow-x:hidden}
@media (max-width:600px){.lhero h1{font-size:clamp(26px,9vw,40px);overflow-wrap:break-word}.lhero h1 span{display:block}}
