/* Harmony: einheitliche, barrierearme Seitenleiste auf Landingpage und Rechtsseiten. */
.site-nav-trigger {
  display:inline-flex; align-items:center; justify-content:center; gap:7px;
  flex:0 0 auto; min-width:42px; height:42px; padding:0 13px;
  border:1px solid rgba(145,86,183,.3); border-radius:14px;
  background:rgba(255,255,255,.87); color:#572c78;
  font:700 13px/1.2 Inter,system-ui,sans-serif;
  box-shadow:0 6px 20px rgba(68,20,93,.10); cursor:pointer;
  transition:background .18s ease,transform .18s ease;
}
.site-nav-trigger:hover {background:#f8ecff;transform:translateY(-1px)}
.site-nav-trigger:focus-visible,.site-nav-dialog button:focus-visible,.site-nav-dialog a:focus-visible {outline:3px solid #ee6ab4;outline-offset:3px}
.site-nav-trigger__icon {font-size:21px;line-height:1}
.site-nav-dialog {
  position:fixed; inset:0 0 0 auto; margin:0; padding:0; width:min(380px,94vw);
  height:100vh; height:100dvh; max-height:100vh; max-height:100dvh;
  max-width:none; overflow-y:auto; overscroll-behavior:contain;
  border:0; border-left:1px solid rgba(231,187,252,.3); border-radius:22px 0 0 22px;
  background:#160d20; color:#f9f4ff; box-shadow:-24px 0 70px rgba(10,3,20,.36);
  font:inherit;
}
.site-nav-dialog::backdrop {background:rgba(11,4,22,.64);backdrop-filter:blur(4px)}
.site-nav-dialog[open] {animation:siteNavIn .2s ease-out}
.site-nav-dialog__top {display:flex;justify-content:space-between;align-items:center;gap:14px;padding:26px 23px 20px;border-bottom:1px solid rgba(255,255,255,.12)}
.site-nav-dialog__brand {font-weight:850;font-size:25px;letter-spacing:-.04em}
.site-nav-dialog__sub {display:block;margin-top:4px;color:#cdb6da;font-size:12px}
.site-nav-close {border:1px solid rgba(255,255,255,.25);width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.07);color:#fff;cursor:pointer;font:600 26px/1 system-ui}
.site-nav-dialog__inner {padding:20px 20px 36px}
.site-nav-dialog__section {margin:14px 5px 10px;text-transform:uppercase;letter-spacing:.12em;color:#c8a6dc;font-size:11px;font-weight:800}
.site-nav-dialog__links {display:grid;gap:5px}
.site-nav-dialog__links a {display:flex;align-items:center;gap:12px;min-height:46px;padding:10px 14px;border:1px solid transparent;border-radius:13px;color:#f8efff;text-decoration:none;font-size:14px;font-weight:650;transition:background .18s ease}
.site-nav-dialog__links a:hover,.site-nav-dialog__links a:focus-visible {background:rgba(255,255,255,.11)}
.site-nav-dialog__links a[aria-current="page"] {background:rgba(207,119,247,.16);border-color:rgba(207,119,247,.4)}
.site-nav-dialog__links a.site-nav-dialog__priority {background:linear-gradient(120deg,rgba(222,65,146,.22),rgba(166,91,214,.24));border-color:rgba(255,124,198,.3)}
.site-nav-dialog__icon {display:inline-grid;place-items:center;width:27px;height:27px;border-radius:9px;background:rgba(255,255,255,.09);font-size:17px;flex-shrink:0}
.site-nav-dialog__foot {margin-top:26px;padding:18px 5px 0;border-top:1px solid rgba(255,255,255,.12);color:#bbaac8;font-size:12px;line-height:1.55}
:root[data-theme="dark"] .site-nav-trigger {background:rgba(30,14,43,.9);border-color:rgba(211,135,242,.3);color:#f3e8ff}
:root[data-theme="dark"] .site-nav-trigger:hover {background:#3b2154}
body:has(.bar) .site-nav-trigger {background:#271534;color:#fff;border-color:rgba(255,255,255,.2)}
@media(max-width:720px) {
  .site-nav-trigger {min-width:40px;height:40px;padding:0 10px}
  .site-nav-trigger__label {display:none}
  .topbar nav {gap:4px}
  .topbar nav .nav-cta {display:none}
  .bar .back {margin-left:auto}
}
@media(max-width:380px) {.bar .back {display:none}}
@media(prefers-reduced-motion:reduce){.site-nav-dialog[open]{animation:none}.site-nav-trigger{transition:none}}
@keyframes siteNavIn {from{opacity:.5;transform:translateX(18px)}to{opacity:1;transform:translateX(0)}}
