:root{--bg:#0d0b14;--panel:#15121f;--line:#2a2540;--text:#ece9f6;--mute:#a49fba;--acc:#8b5cf6;--acc2:#a78bfa;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(900px 500px at 50% -10%,#2a1458 0,transparent 70%),var(--bg);color:var(--text);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--acc2);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:980px;margin:0 auto;padding:0 20px}
html[lang=de] .en,html[lang=en] .de{display:none}
header{display:flex;justify-content:space-between;align-items:center;padding:18px 0}
.logo{font-weight:800;letter-spacing:.14em;font-size:20px}.logo b{color:var(--acc)}
#lang{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:6px 12px;cursor:pointer;font:inherit}
#lang:hover{border-color:var(--acc)}
#lang{display:flex;gap:2px;padding:3px}
#lang span{padding:3px 10px;border-radius:6px;color:var(--mute);font-weight:600;font-size:14px}
#lang span.on{background:var(--acc);color:#fff}
.hero{text-align:center;padding:72px 0 56px}
h1{font-size:clamp(34px,6vw,56px);line-height:1.1;margin:0 0 16px}
h1 em{font-style:normal;color:var(--acc2)}
.sub{color:var(--mute);font-size:18px;max-width:600px;margin:0 auto 32px}
.btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-block;padding:12px 22px;border-radius:10px;border:1px solid var(--line);background:var(--panel);color:var(--text);font-weight:600}
.btn:hover{border-color:var(--acc);text-decoration:none}
.btn.primary{background:var(--acc);border-color:var(--acc);color:#fff}.btn.primary:hover{background:#7c3aed}
.note{color:var(--mute);font-size:14px;margin-top:14px}
section{padding:48px 0}
h2{font-size:28px;margin:0 0 8px}.lead{color:var(--mute);margin:0 0 28px}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.card{background:rgba(21,18,31,.6);border:1px solid transparent;border-radius:14px;padding:22px;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);transition:transform .2s ease,border-color .2s ease,background .2s ease}
.card:hover{transform:scale(1.04);border-color:var(--acc);background:rgba(21,18,31,.75)}
.card h3{margin:0 0 6px;font-size:18px}.card p{margin:0;color:var(--mute)}
.tag{display:inline-block;font-size:12px;background:#2a1458;color:var(--acc2);border-radius:99px;padding:2px 10px;margin-bottom:10px}
ul.more{columns:2;gap:32px;color:var(--mute);padding-left:20px}ul.more li{margin-bottom:6px}
.community{text-align:center}
footer{border-top:1px solid var(--line);margin-top:40px;padding:28px 0 40px;color:var(--mute);font-size:14px;text-align:center}
footer a{margin:0 8px}
@media(max-width:600px){ul.more{columns:1}.hero{padding-top:40px}}
.card{cursor:pointer}
body.ov-open .card{transform:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.ov{position:fixed;inset:0;z-index:100;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(8,6,14,.35);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.ov.open{display:flex;animation:ovfade .2s ease}
@keyframes ovfade{from{opacity:0}to{opacity:1}}
.big{position:relative;width:min(600px,100%);background:var(--panel);border:1px solid var(--acc);border-radius:18px;padding:40px;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.big h3{font-size:30px;margin:0 0 14px}
.big p{font-size:19px;line-height:1.6;color:var(--mute);margin:0}
.big .tag{font-size:14px}
.x{position:absolute;top:10px;right:16px;background:none;border:0;color:var(--mute);font-size:32px;cursor:pointer;line-height:1}
.x:hover{color:var(--text)}
