/* Navigation: eine Struktur für Desktop und Mobil (25.10.2026) */
.nv-top{position:fixed;top:0;left:0;right:0;z-index:999;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px clamp(16px,4vw,40px);background:rgba(7,7,26,.86);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(255,255,255,.08);font-family:Inter,system-ui,sans-serif}
.nv-brand{text-decoration:none}
.nv-links{display:flex;align-items:center;gap:6px}
.nv-links>a,.nv-dd>summary{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:10px;color:#94A3B8;font-size:.88rem;font-weight:500;text-decoration:none;cursor:pointer;list-style:none;white-space:nowrap}
.nv-dd>summary::-webkit-details-marker{display:none}
.nv-dd>summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);opacity:.7}
.nv-links>a:hover,.nv-dd>summary:hover,.nv-dd[open]>summary{color:#fff;background:rgba(255,255,255,.06)}
.nv-links>a.is-riff,.nv-dd.is-riff>summary{color:#A78BFA;font-weight:700}
.nv-links a[aria-current="page"],.nv-dd.is-current>summary{color:#fff;box-shadow:inset 0 -2px 0 #06B6D4}
.nv-dd{position:relative}
.nv-menu{position:absolute;top:calc(100% + 8px);left:0;min-width:260px;padding:8px;border-radius:14px;background:#0A0A1E;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 40px -12px rgba(0,0,0,.7);display:flex;flex-direction:column}
.nv-menu a{display:block;padding:10px 12px;border-radius:10px;color:#E8ECF8;font-size:.9rem;text-decoration:none;line-height:1.3}
.nv-menu a small{display:block;color:#7C8BA1;font-size:.76rem;margin-top:2px}
.nv-menu a:hover,.nv-menu a:focus-visible{background:rgba(6,182,212,.10);color:#fff}
.nv-right{display:flex;align-items:center;gap:10px}
.nv-cta{display:inline-flex;align-items:center;min-height:40px;padding:0 16px;border-radius:10px;background:#2563EB;color:#fff;font-weight:700;font-size:.85rem;text-decoration:none;white-space:nowrap}
.nv-cta:hover{background:#1D4ED8}
.nv-burger{display:none;width:42px;height:42px;border:1px solid rgba(255,255,255,.16);border-radius:10px;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;padding:0}
.nv-burger span{display:block;width:18px;height:2px;background:#E8ECF8;border-radius:2px;transition:transform .3s,opacity .2s}
.nv-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nv-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.nv-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nv-drawer{position:fixed;top:0;right:0;bottom:0;width:88%;max-width:380px;z-index:998;background:#07071A;border-left:1px solid rgba(255,255,255,.1);padding:84px 22px 30px;overflow-y:auto;transform:translateX(100%);transition:transform .4s cubic-bezier(.16,1,.3,1);font-family:Inter,system-ui,sans-serif}
.nv-drawer.open{transform:none}
.nv-drawer>a,.nv-drawer details>summary{display:flex;align-items:center;justify-content:space-between;min-height:52px;padding:0 4px;border-bottom:1px solid rgba(255,255,255,.1);color:#E8ECF8;font-size:1.08rem;font-weight:500;text-decoration:none;cursor:pointer;list-style:none}
.nv-drawer details>summary::-webkit-details-marker{display:none}
.nv-drawer details>summary::after{content:"";width:8px;height:8px;border-right:2px solid #22D3EE;border-bottom:2px solid #22D3EE;transform:rotate(45deg);transition:transform .2s}
.nv-drawer details[open]>summary::after{transform:rotate(-135deg)}
.nv-drawer details div{display:flex;flex-direction:column;padding:4px 0 8px 12px;border-bottom:1px solid rgba(255,255,255,.1)}
.nv-drawer details div a{padding:11px 4px;color:#94A3B8;font-size:.98rem;text-decoration:none}
.nv-drawer details div a:hover{color:#22D3EE}
.nv-drawer .is-riff>summary,.nv-drawer>a.is-riff{color:#A78BFA;font-weight:700}
.nv-drawer .nv-cta{margin-top:22px;justify-content:center;min-height:50px;font-size:1rem}
.nv-shade{position:fixed;inset:0;z-index:997;background:rgba(0,0,0,.5);opacity:0;pointer-events:none;transition:opacity .3s}
.nv-shade.open{opacity:1;pointer-events:auto}
@media (max-width:980px){.nv-links{display:none}.nv-burger{display:flex}.nv-top .nv-cta.desk{display:none}}
@media (min-width:981px){.nv-drawer,.nv-shade{display:none}}
