/* Landing Page für Besucher ohne Konto (landing.js) und Kopf/Fuß für Gäste.
   Immer dunkel, auch im hellen Modus: Spielszenen und Marke wirken nur auf dunklem Grund.
   Eigene Formensprache: Sechseck-Wabe, schräge Bänder, abgeschrägte Ecken, Bebas-Überschriften links bündig,
   nummerierte Abschnitte. Farben Space Cadet und Imperial Red. */

/* ---------------------------------------------------------------- Gäste: keine Icon-Leiste, keine Suche */
body.guest .nav-sm, body.guest .search { display:none !important; }
@media (min-width:1101px) {
  body.guest { padding-left:0; }
  body.guest .topbar { margin-left:0; }
}
body.guest .top-nav { gap:0; }
body[data-route="landing"] .preview-bar { display:none; }
body:is([data-route="landing"], [data-route="about"]) main { max-width:none; padding:0; }
body:is([data-route="landing"], [data-route="about"]) .foot { margin-top:0; background:#0b0c13; border-top-color:rgba(237,242,244,.06); }

/* ---------------------------------------------------------------- Grundlage */
.land, body:is([data-route="landing"], [data-route="about"]) .foot {
  --bg:#0f1018; --surface:#171826; --card:#181a29; --card-2:#22243a; --line:#2a2c42; --fg:#EDF2F4; --muted:#a3abc0; --muted-2:#6d7490;
  --btn:#262940; --btn-h:#32365a; --input:#141522; --input-line:#383c5a; --prose:#cfd5df;
  color:var(--fg);
}
.land { --gut:max(24px, calc((100% - 1240px) / 2)); background:var(--bg); overflow:hidden; }
.land a:not(.btn) { color:#fff; }
.land h1, .land h2, .land h3 { margin:0; color:#fff; }
.land p { margin:0; }
.land .btn { height:50px; padding:0 24px; font-size:1rem; }
.land .btn.ghost { box-shadow:inset 0 0 0 2px rgba(237,242,244,.2); color:#fff; background:transparent; }
.land .btn.ghost:hover { box-shadow:inset 0 0 0 2px rgba(237,242,244,.55); }
.land-acts { display:flex; flex-wrap:wrap; gap:12px; }
.land-tag { display:inline-block; padding:3px 8px; border-radius:6px; background:rgba(237,242,244,.08); color:var(--muted); font:700 .68rem/1.2 var(--text); letter-spacing:.1em; text-transform:uppercase; vertical-align:2px; }

/* Abschnitte und Köpfe: links bündig, mit Nummer */
.land-sec { position:relative; padding:104px var(--gut); }
.land-band { background:#131422; clip-path:polygon(0 48px, 100% 0, 100% calc(100% - 48px), 0 100%); padding-top:152px; padding-bottom:152px; margin:-24px 0; }
.land-band::before { content:""; position:absolute; inset:0; background:var(--hex) center/56px 96px; opacity:.04; pointer-events:none; }
.land-h { position:relative; display:grid; gap:14px; justify-items:start; margin-bottom:40px; max-width:760px; }
.land-idx { display:inline-flex; align-items:center; gap:12px; font:700 .8rem/1 var(--text); letter-spacing:.2em; text-transform:uppercase; color:var(--muted); }
.land-idx b { font:400 1.25rem/1 var(--display); letter-spacing:.06em; color:var(--accent); }
.land-idx::after { content:""; width:40px; height:2px; background:linear-gradient(90deg, var(--accent), transparent); }
.land-h h2 { font:400 clamp(2.7rem, 5.6vw, 4.6rem)/.92 var(--display); letter-spacing:.012em; text-transform:uppercase; text-wrap:balance; }
.land-h h2 em, .land-end h2 em { font-style:normal; color:var(--accent); }
.land-h p { color:var(--muted); font-size:1.12rem; line-height:1.55; max-width:640px; }
.land-h p a { text-decoration:underline; text-underline-offset:3px; }
.land-fine { margin-top:16px !important; color:var(--muted-2); font-size:.84rem; }

/* ---------------------------------------------------------------- Hero: Text links, Wabe rechts */
.land-hero { position:relative; display:grid; grid-template-columns:minmax(0, 1fr) auto; gap:56px; align-items:center;
  min-height:min(calc(100vh - var(--top-h)), 860px); min-height:min(calc(100svh - var(--top-h)), 860px); padding:48px var(--gut) 40px; isolation:isolate; }
.land-hero::before { content:""; position:absolute; inset:0; z-index:-2; background:var(--hex) center/56px 96px; opacity:.07;
  -webkit-mask:radial-gradient(ellipse 55% 70% at 75% 50%, #000, transparent 75%); mask:radial-gradient(ellipse 55% 70% at 75% 50%, #000, transparent 75%); }
.land-hero::after { content:""; position:absolute; left:0; right:0; bottom:0; height:120px; z-index:-1; background:linear-gradient(180deg, transparent, var(--bg)); }
.land-hero-txt { display:flex; flex-direction:column; align-items:flex-start; gap:22px; max-width:600px; }
.land-badge { display:inline-flex; align-items:center; gap:8px; padding:8px 14px 8px 11px; border-left:3px solid var(--accent); background:rgba(239,35,60,.1);
  color:#ff8090; font:700 .78rem/1 var(--text); letter-spacing:.18em; text-transform:uppercase; }
.land-badge svg.i { width:14px; height:14px; fill:var(--accent); stroke:none; animation:land-pulse 2.2s ease-in-out infinite; }
@keyframes land-pulse { 50% { opacity:.35; } }
.land-hero h1 { font:400 clamp(3.4rem, 7.4vw, 7rem)/.86 var(--display); letter-spacing:.008em; text-transform:uppercase; }
.land-hero h1 span { display:block; }
.land-hero h1 .o { color:transparent; -webkit-text-stroke:2px #EDF2F4; }
.land-hero h1 .r { color:var(--accent); }
.land-lead { font-size:clamp(1.05rem, 1.7vw, 1.22rem); line-height:1.55; color:#cfd5e2; max-width:540px; }
.land-gate { display:flex; gap:12px; align-items:flex-start; padding:14px 18px 14px 16px; border-left:3px solid var(--accent); background:rgba(239,35,60,.1); border-radius:0 10px 10px 0; max-width:540px; }
.land-gate svg.i { flex:none; width:20px; height:20px; color:#ff8090; margin-top:2px; }
.land-gate b { display:block; font:700 1.05rem/1.2 var(--text); text-transform:uppercase; letter-spacing:.06em; color:#fff; margin-bottom:4px; }
.land-gate span { color:#d6dbe6; line-height:1.45; }
.land-sso:empty { display:none; }
.land-sso .or { display:none; }
.land-sso .sso { display:flex; flex-wrap:wrap; gap:8px; }
.land-sso .sso .btn { width:auto; height:42px; padding:0 16px; font-size:.92rem; background:rgba(237,242,244,.06); color:#fff; }
.land-sso .sso .btn:hover { background:rgba(237,242,244,.12); }
.land-sso .form-msg:empty { display:none; }
.land-note { color:var(--muted); font-size:.92rem; }
.land-note a { text-decoration:underline; text-underline-offset:3px; }

/* Wabe: sieben Sechsecke wie die Avatare im Portal (Maske --hex-fill, 100 × 110) */
.land-comb { --w:clamp(118px, 12.4vw, 186px); --h:calc(var(--w) * 1.1); --g:10px; --dx:calc((var(--w) + var(--g)) / 2); --dy:calc(var(--h) * .75 + var(--g) * .87);
  position:relative; width:calc(var(--w) * 3 + var(--g) * 2); height:calc(var(--h) + var(--dy) * 2); }
.land-comb::before { content:""; position:absolute; inset:-12%; z-index:-1; background:radial-gradient(closest-side, rgba(239,35,60,.26), transparent); }
.land-hex { position:absolute; left:50%; top:50%; width:var(--w); height:var(--h); margin:calc(var(--h) / -2) 0 0 calc(var(--w) / -2);
  transform:translate(var(--x, 0), var(--y, 0)); -webkit-mask:var(--hex-fill) 0 0/100% 100% no-repeat; mask:var(--hex-fill) 0 0/100% 100% no-repeat;
  background:var(--card); display:block; animation:land-bob 7s ease-in-out infinite; animation-delay:var(--d, 0s); }
.land-hex img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .5s, filter .3s; filter:saturate(.92); }
.land-hex::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, transparent 40%, rgba(10,11,18,.88) 92%); transition:opacity .3s; }
.land-hex:hover img, .land-hex:focus-visible img { transform:scale(1.1); filter:saturate(1.1); }
.land-hex:focus-visible { outline:none; }
.land-hex:focus-visible::after { background:linear-gradient(180deg, rgba(239,35,60,.25), rgba(10,11,18,.88) 92%); }
.land-hex-t { position:absolute; left:0; right:0; bottom:24%; z-index:1; display:grid; justify-items:center; gap:2px; text-align:center; pointer-events:none; }
.land-hex-t b { font:700 1.02rem/1 var(--text); letter-spacing:.06em; text-transform:uppercase; color:#fff; }
.land-hex-t small { font:600 .68rem/1 var(--text); letter-spacing:.14em; text-transform:uppercase; color:#ffb3bd; }
.land-hex.p0 { --x:calc(var(--dx) * -1); --y:calc(var(--dy) * -1); --d:-1s; }
.land-hex.p1 { --x:var(--dx); --y:calc(var(--dy) * -1); --d:-2.5s; }
.land-hex.p2 { --x:calc(var(--dx) * 2); --d:-4s; }
.land-hex.p3 { --x:var(--dx); --y:var(--dy); --d:-5.5s; }
.land-hex.p4 { --x:calc(var(--dx) * -1); --y:var(--dy); --d:-3s; }
.land-hex.p5 { --x:calc(var(--dx) * -2); --d:-6s; }
.land-hex.mid { display:grid; place-content:center; justify-items:center; gap:10px; background:var(--accent); animation:none; }
.land-hex.mid::before { content:""; position:absolute; inset:0; background:var(--hex) center/28px 48px; opacity:.35; }
.land-hex.mid::after { display:none; }
.land-hex.mid .land-hex-t { position:relative; bottom:auto; }
.land-hex.mid .land-hex-t small { color:rgba(255,255,255,.85); }
.land-hex-plus { position:relative; display:grid; place-items:center; width:44px; height:44px; border-radius:50%; background:rgba(15,16,24,.25); transition:transform .3s; }
.land-hex-plus svg.i { width:22px; height:22px; color:#fff; stroke-width:2.6; }
.land-hex.mid:hover .land-hex-plus { transform:rotate(90deg) scale(1.08); }
@keyframes land-bob { 50% { translate:0 -7px; } }

/* ---------------------------------------------------------------- 01 Welten */
.land-worlds { display:grid; grid-template-columns:minmax(0, 1fr) 300px; gap:18px; align-items:stretch; }
.land-stage { align-self:start; position:relative; aspect-ratio:16/9; border-radius:14px; overflow:hidden; background:var(--card); border:1px solid var(--line); }
.land-slide { position:absolute; inset:0; margin:0; opacity:0; transition:opacity .6s; }
.land-slide.on { opacity:1; }
.land-slide img { width:100%; height:100%; object-fit:cover; display:block; transform:scale(1.04); transition:transform 6s linear; }
.land-slide.on img { transform:scale(1); }
.land-slide figcaption { position:absolute; left:0; right:0; bottom:0; display:grid; justify-items:start; gap:8px; padding:80px 28px 26px;
  background:linear-gradient(180deg, transparent, rgba(10,11,18,.9)); }
.land-slide figcaption b { font:400 clamp(2.2rem, 4vw, 3.4rem)/.9 var(--display); letter-spacing:.02em; text-transform:uppercase; color:#fff; }
.land-slide figcaption > span:last-child { max-width:560px; color:#d6dbe6; font-size:1.05rem; line-height:1.45; }
.land-chip { padding:5px 10px; background:var(--accent); color:#fff; font:700 .72rem/1 var(--text); letter-spacing:.14em; text-transform:uppercase;
  clip-path:polygon(6px 0, 100% 0, 100% calc(100% - 6px), calc(100% - 6px) 100%, 0 100%, 0 6px); }
.land-picker { display:flex; flex-direction:column; gap:6px; }
.land-pick { position:relative; flex:1 1 0; min-height:0; display:grid; grid-template-columns:72px 1fr; gap:12px; align-items:center; padding:5px; border-radius:10px;
  background:transparent; border:1px solid transparent; color:inherit; text-align:left; cursor:pointer; overflow:hidden; font:inherit; transition:background .2s, border-color .2s; }
.land-pick:hover { background:rgba(237,242,244,.04); }
.land-pick.on { background:var(--card); border-color:var(--line); }
.land-pick img { width:72px; height:44px; object-fit:cover; border-radius:6px; display:block; opacity:.7; transition:opacity .2s; }
.land-pick.on img, .land-pick:hover img { opacity:1; }
.land-pick span { display:grid; gap:3px; }
.land-pick b { font:700 1rem/1.1 var(--text); letter-spacing:.05em; text-transform:uppercase; color:#fff; }
.land-pick small { font:600 .76rem/1 var(--text); color:var(--muted); letter-spacing:.04em; }
.land-pick.on small { color:#ff8090; }
.land-pick i { position:absolute; left:0; bottom:0; height:2px; width:0; background:var(--accent); }
.land-pick.on i { width:100%; }
.land-worlds.running .land-pick.on i { animation:land-prog 6s linear; }
.land-pick:focus-visible { outline:2px solid #fff; outline-offset:-2px; }
@keyframes land-prog { from { width:0; } to { width:100%; } }

/* ---------------------------------------------------------------- 02 Stile */
.land-styles { display:grid; grid-template-columns:minmax(0, .82fr) minmax(0, 1.18fr); gap:48px; align-items:center; }
.land-styles .land-h { margin-bottom:28px; }
.land-seg { display:grid; grid-template-columns:repeat(2, 1fr); gap:10px; }
.land-seg button { display:grid; gap:4px; padding:14px 16px; text-align:left; border-radius:10px; background:rgba(237,242,244,.03); border:1px solid var(--line);
  color:inherit; font:inherit; cursor:pointer; transition:border-color .2s, background .2s; }
.land-seg button:hover { border-color:rgba(237,242,244,.25); }
.land-seg button.on { border-color:var(--accent); background:rgba(239,35,60,.1); }
.land-seg b { font:700 1.05rem/1.1 var(--text); text-transform:uppercase; letter-spacing:.06em; color:#fff; }
.land-seg small { color:var(--muted); font-size:.88rem; line-height:1.35; }
.land-seg button:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.land-frame { position:relative; aspect-ratio:16/9; border-radius:14px; overflow:hidden; background:var(--card); border:1px solid var(--line);
  box-shadow:0 40px 80px -40px rgba(0,0,0,.9); }
/* Wischblende: das neue Bild schiebt sich über das alte, das alte verschwindet erst danach */
.land-frame img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; z-index:1;
  clip-path:inset(0 100% 0 0); transition:clip-path 0s .8s; }
.land-frame img.on { z-index:2; clip-path:inset(0); transition:clip-path .8s cubic-bezier(.7, 0, .2, 1); }
.land-frame-tag { position:absolute; left:16px; top:16px; z-index:3; padding:7px 12px; background:rgba(10,11,18,.78); color:#fff; font:700 .78rem/1 var(--text);
  letter-spacing:.16em; text-transform:uppercase; border-left:3px solid var(--accent); }

/* ---------------------------------------------------------------- 03 Play, Build, Share */
.land-steps { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(3, 1fr); gap:18px; }
.land-step { position:relative; display:flex; flex-direction:column; gap:12px; padding:30px 28px 28px; border-radius:14px; background:var(--card); border:1px solid var(--line); overflow:hidden; }
.land-step::before { content:""; position:absolute; left:0; top:0; right:0; height:3px; background:linear-gradient(90deg, var(--accent), transparent 80%); }
.land-step-n { position:absolute; right:18px; top:6px; font:400 6.4rem/1 var(--display); color:transparent; -webkit-text-stroke:1.5px rgba(237,242,244,.1); pointer-events:none; }
.land-step-ico { display:grid; place-items:center; width:52px; height:57px; background:var(--accent); color:#fff;
  -webkit-mask:var(--hex-fill) 0 0/100% 100% no-repeat; mask:var(--hex-fill) 0 0/100% 100% no-repeat; }
.land-step-ico svg.i { width:22px; height:22px; }
.land-step h3 { font:400 2.4rem/1 var(--display); letter-spacing:.03em; text-transform:uppercase; margin-top:6px; }
.land-step > p { color:var(--muted); font-size:1.04rem; line-height:1.5; }
.land-step ul { list-style:none; margin:6px 0 0; padding:14px 0 0; border-top:1px solid var(--line); display:grid; gap:10px; }
.land-step li { display:flex; gap:10px; align-items:flex-start; color:#d6dbe6; font-size:.98rem; line-height:1.4; }
.land-step li svg.i { flex:none; width:18px; height:18px; color:#ff6b7d; stroke-width:2.6; margin-top:1px; }
.land-lab { margin-top:18px; display:flex; flex-wrap:wrap; align-items:center; gap:12px 36px; padding:18px 24px; border-radius:12px;
  border:1px dashed rgba(237,242,244,.18); background:rgba(237,242,244,.02); }
.land-lab-k { display:inline-flex; align-items:center; gap:8px; font:700 .78rem/1 var(--text); letter-spacing:.16em; text-transform:uppercase; color:var(--muted); }
.land-lab-k svg.i { width:16px; height:16px; color:var(--accent); }
.land-lab-v { color:#d6dbe6; font-size:1rem; }
.land-lab-v b { font:400 2.1rem/1 var(--display); letter-spacing:.02em; color:#fff; margin-right:6px; vertical-align:-3px; }
.land-lab a { margin-left:auto; display:inline-flex; align-items:center; gap:6px; font-weight:700; color:#ff8090 !important; }
.land-lab a svg.i { width:14px; height:14px; }

/* ---------------------------------------------------------------- 04 Für Creator: Code und Ergebnis */
.land-dev-tabs { display:inline-flex; flex-wrap:wrap; gap:6px; padding:6px; margin-bottom:18px; border-radius:12px; background:rgba(10,11,18,.6); border:1px solid var(--line); }
.land-dev-tabs button { display:inline-flex; align-items:center; gap:8px; height:42px; padding:0 16px; border-radius:8px; border:0; background:transparent; color:var(--muted);
  font:700 .95rem/1 var(--text); letter-spacing:.04em; text-transform:uppercase; cursor:pointer; transition:background .2s, color .2s; }
.land-dev-tabs button svg.i { width:16px; height:16px; }
.land-dev-tabs button:hover { color:#fff; }
.land-dev-tabs button.on { background:var(--accent); color:#fff; }
.land-dev-tabs button:focus-visible { outline:2px solid #fff; outline-offset:2px; }
.land-dev-p { display:grid; grid-template-columns:minmax(0, 1.3fr) minmax(0, 1fr); gap:18px; align-items:stretch; }
.land-dev-p[hidden] { display:none; }
.land-win { border-radius:14px; overflow:hidden; background:#0b0c13; border:1px solid var(--line); box-shadow:0 30px 70px -30px rgba(0,0,0,.9); }
.land-win-bar { display:flex; align-items:center; gap:8px; padding:12px 16px; background:#14151f; border-bottom:1px solid var(--line); color:var(--muted); font:600 .88rem/1 var(--text); }
.land-win-bar svg.i { width:15px; height:15px; color:#ff6b7d; }
.land pre { margin:0; padding:22px 24px 26px; overflow-x:auto; font:500 .9rem/1.7 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; color:#d8dde8; tab-size:2; }
.land pre k { color:#ff6b7d; }
.land pre s { color:#9fe0b0; text-decoration:none; }
.land pre c { color:#6d7490; font-style:italic; }
.land pre f { color:#8fc3ff; }
.land pre n { color:#ffc27a; }
.land-out { display:flex; flex-direction:column; gap:12px; padding:20px; border-radius:14px; background:var(--card); border:1px solid var(--line); }
.land-out-k { font:700 .76rem/1 var(--text); letter-spacing:.18em; text-transform:uppercase; color:#ff8090; }
.land-out-n { margin-top:auto; color:var(--muted-2); font-size:.84rem; }
.land-gamechat { flex:1; min-height:190px; display:flex; flex-direction:column; justify-content:flex-end; gap:6px; padding:16px; border-radius:10px;
  background:linear-gradient(180deg, rgba(10,11,18,.35), rgba(10,11,18,.8)), url(img/land/racing-sm.webp) center/cover; }
.land-gamechat p { align-self:flex-start; padding:5px 10px; border-radius:6px; background:rgba(10,11,18,.62); font:600 .95rem/1.3 var(--text); color:#fff; }
.land-gamechat b { color:#ffb3bd; margin-right:6px; }
.land-gamechat b::before { content:"["; }
.land-gamechat b::after { content:"]"; }
.land-dev-p.on .land-gamechat p { animation:land-in .45s both; }
.land-dev-p.on .land-gamechat p:nth-child(2) { animation-delay:.7s; }
.land-dev-p.on .land-gamechat p:nth-child(3) { animation-delay:1.4s; }
@keyframes land-in { from { opacity:0; transform:translateY(8px); } }
.land-chat { display:grid; gap:14px; padding:22px; }
.land-chat > div { display:grid; gap:6px; max-width:88%; }
.land-chat b { font:700 .74rem/1 var(--text); letter-spacing:.16em; text-transform:uppercase; color:var(--muted); }
.land-chat .you { justify-self:end; text-align:right; }
.land-chat .you p { padding:12px 14px; border-radius:12px 12px 2px 12px; background:rgba(239,35,60,.16); color:#fff; line-height:1.45; text-align:left; }
.land-chat .bot ul { list-style:none; margin:0; padding:12px 14px; border-radius:12px 12px 12px 2px; background:#181a29; display:grid; gap:8px; }
.land-chat .bot li { display:flex; gap:8px; align-items:flex-start; color:#d6dbe6; line-height:1.4; }
.land-chat .bot li svg.i { flex:none; width:16px; height:16px; color:#7fe0aa; stroke-width:2.6; margin-top:2px; }
.land-files { list-style:none; margin:0; padding:14px 16px; border-radius:10px; background:#0b0c13; display:grid; gap:10px; font:500 .9rem/1.3 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.land-files li { display:flex; align-items:center; gap:8px; color:#d8dde8; }
.land-files li.in { padding-left:24px; }
.land-files svg.i { flex:none; width:16px; height:16px; color:var(--muted); }
.land-files em { margin-left:auto; padding:2px 7px; border-radius:5px; background:rgba(63,182,122,.16); color:#7fe0aa; font:700 .68rem/1.3 var(--text); letter-spacing:.1em; text-transform:uppercase; font-style:normal; }
.land .land-json { padding:14px 16px; border-radius:10px; background:#0b0c13; font-size:.86rem; }
.land-dev-acts { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }

/* ---------------------------------------------------------------- 05 News */
.land-news-top { display:flex; justify-content:space-between; align-items:flex-end; gap:16px 32px; flex-wrap:wrap; margin-bottom:40px; }
.land-news-top .land-h { margin-bottom:0; }
.land-news { display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1.35fr); gap:32px; align-items:start; }
.land-post { display:flex; flex-direction:column; gap:8px; padding:0 0 24px; border-radius:14px; overflow:hidden; background:var(--card); border:1px solid var(--line); transition:border-color .2s, transform .2s; }
.land-post:hover { border-color:rgba(239,35,60,.45); transform:translateY(-2px); }
.land-post > span:not(.land-post-pic) { padding:0 22px; }
.land-post-pic { aspect-ratio:16/9; background:linear-gradient(135deg, #1d1f30, #2B2D42); margin-bottom:8px; }
.land-post-pic img { width:100%; height:100%; object-fit:cover; display:block; }
.land-post-meta { color:var(--muted-2); font:600 .85rem/1 var(--text); letter-spacing:.04em; }
.land-post-t { font:700 1.35rem/1.2 var(--text); color:#fff; }
.land-post-s { color:var(--muted); font-size:1rem; line-height:1.45; }
.land-post-more { display:inline-flex !important; align-items:center; gap:6px; color:#ff6b7d; font-weight:700; margin-top:4px; }
.land-post-more svg.i { width:14px; height:14px; }
.land-post.skel .land-post-pic { animation:land-pulse 1.6s ease-in-out infinite; }
.land-feed { list-style:none; margin:0; padding:0 0 0 26px; position:relative; display:grid; }
.land-feed::before { content:""; position:absolute; left:5px; top:10px; bottom:10px; width:2px; background:linear-gradient(180deg, var(--accent), var(--line) 30%); }
.land-feed li { position:relative; display:grid; grid-template-columns:auto 1fr; gap:6px 12px; padding:14px 0 16px; border-bottom:1px solid var(--line); }
.land-feed li:first-child { padding-top:0; }
.land-feed li:last-child { border-bottom:0; }
.land-feed li::before { content:""; position:absolute; left:-26px; top:16px; width:12px; height:13px; background:var(--line);
  -webkit-mask:var(--hex-fill) 0 0/100% 100% no-repeat; mask:var(--hex-fill) 0 0/100% 100% no-repeat; }
.land-feed li:first-child::before { top:2px; background:var(--accent); }
.land-feed li.muted { display:block; color:var(--muted); }
.land-feed li.muted::before { display:none; }
.land-feed-d { grid-column:1 / -1; color:var(--muted-2); font:600 .82rem/1 var(--text); letter-spacing:.06em; text-transform:uppercase; }
.land-feed-t { align-self:start; padding:3px 7px; border-radius:6px; background:rgba(237,242,244,.08); font:700 .68rem/1.3 var(--text); letter-spacing:.1em; text-transform:uppercase; color:var(--muted); }
.land-feed-t.new { background:rgba(63,182,122,.16); color:#7fe0aa; }
.land-feed-t.improved { background:rgba(110,160,255,.16); color:#a9c6ff; }
.land-feed-t.fixed { background:rgba(255,194,122,.14); color:#ffd29e; }
.land-feed-t.removed { background:rgba(239,35,60,.16); color:#ff8f9d; }
.land-feed-x { color:#d6dbe6; line-height:1.45; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; }
.land-feed-a { grid-column:2; color:var(--muted-2); font-size:.84rem; }

/* ---------------------------------------------------------------- 06 Fragen */
.land-faq-wrap { display:grid; grid-template-columns:minmax(0, .8fr) minmax(0, 1.2fr); gap:56px; align-items:start; }
.land-faq-side { position:sticky; top:calc(var(--top-h, 72px) + 32px); }
.land-faq { display:grid; border-top:1px solid var(--line); }
.land-faq details { border-bottom:1px solid var(--line); }
.land-faq summary { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 4px; cursor:pointer; list-style:none;
  font:700 1.15rem/1.3 var(--text); color:#fff; letter-spacing:.02em; }
.land-faq summary::-webkit-details-marker { display:none; }
.land-faq summary svg.i { flex:none; width:20px; height:20px; color:var(--muted); transition:transform .25s, color .25s; }
.land-faq details[open] summary svg.i { transform:rotate(45deg); color:var(--accent); }
.land-faq summary:hover { color:#ffb3bd; }
.land-faq summary:focus-visible { outline:2px solid #fff; outline-offset:2px; border-radius:6px; }
.land-faq details p { padding:0 40px 22px 4px; color:var(--muted); font-size:1.04rem; line-height:1.6; }

/* ---------------------------------------------------------------- Abschluss */
.land-end { padding:104px var(--gut) 112px; }
.land-end-in { position:relative; display:flex; align-items:center; justify-content:space-between; gap:24px 40px; flex-wrap:wrap; padding:48px 52px;
  background:var(--accent); clip-path:polygon(28px 0, 100% 0, 100% calc(100% - 28px), calc(100% - 28px) 100%, 0 100%, 0 28px); isolation:isolate; }
.land-end-in::before { content:""; position:absolute; inset:0; z-index:-1; background:var(--hex) right center/56px 96px; opacity:.4;
  -webkit-mask:linear-gradient(90deg, transparent 30%, #000); mask:linear-gradient(90deg, transparent 30%, #000); }
.land-end h2 { font:400 clamp(2.4rem, 4.6vw, 3.8rem)/.92 var(--display); text-transform:uppercase; letter-spacing:.012em; }
.land-end h2 em { color:#2B2D42; }
.land-end p { margin-top:10px; color:rgba(255,255,255,.88); font-size:1.1rem; max-width:520px; }
.land .land-end a.btn.land-white { background:#fff; color:#d90429; box-shadow:none; }
.land .land-end a.btn.land-white:hover { background:#EDF2F4; }
.land .land-end .btn.ghost { box-shadow:inset 0 0 0 2px rgba(255,255,255,.55); color:#fff; }
.land .land-end .btn.ghost:hover { box-shadow:inset 0 0 0 2px #fff; background:rgba(255,255,255,.08); }

/* ---------------------------------------------------------------- Bewegung reduzieren */
@media (prefers-reduced-motion: reduce) {
  .land-hex, .land-badge svg.i { animation:none; }
  .land-slide, .land-slide img, .land-frame img, .land-frame img.on { transition:none; }
  .land-dev-p.on .land-gamechat p { animation:none; }
}

/* ---------------------------------------------------------------- Kleinere Bildschirme */
@media (max-width:1100px) {
  .land-hero { grid-template-columns:1fr; gap:48px; min-height:0; padding-top:48px; }
  .land-comb { justify-self:center; --w:clamp(104px, 22vw, 170px); }
  .land-worlds { grid-template-columns:1fr; }
  .land-picker { flex-direction:row; overflow-x:auto; padding-bottom:6px; scrollbar-width:thin; }
  .land-pick { flex:0 0 auto; grid-template-columns:56px auto; padding:6px 12px 6px 6px; }
  .land-pick img { width:56px; height:36px; }
  .land-styles, .land-dev-p, .land-news, .land-faq-wrap { grid-template-columns:1fr; }
  .land-styles { gap:32px; }
  .land-steps { grid-template-columns:1fr; }
  .land-faq-wrap { gap:16px; }
  .land-faq-side { position:static; }
  .land-faq-side .land-h { margin-bottom:12px; }
}
@media (max-width:760px) {
  .land { --gut:16px; }
  .land-sec { padding:72px 16px; }
  .land-band { clip-path:polygon(0 24px, 100% 0, 100% calc(100% - 24px), 0 100%); padding-top:96px; padding-bottom:96px; margin:-12px 0; }
  .land-hero { padding:36px 16px 72px; gap:40px; }
  .land-hero h1 .o { -webkit-text-stroke-width:1.5px; }
  .land-comb { --w:clamp(86px, 27vw, 130px); --g:6px; }
  .land-hex-t b { font-size:.84rem; }
  .land-hex-t small { font-size:.6rem; }
  .land-hex-plus { width:34px; height:34px; }
  .land-h { margin-bottom:28px; }
  .land-slide figcaption { padding:48px 16px 14px; gap:6px; }
  .land-slide figcaption > span:last-child { font-size:.92rem; }
  .land-seg small { display:none; }
  .land-seg button { padding:12px; }
  .land-step { padding:24px 20px; }
  .land-lab { padding:16px; gap:10px 20px; }
  .land-lab a { margin-left:0; }
  .land-dev-tabs { display:flex; }
  .land-dev-tabs button { flex:1; justify-content:center; padding:0 8px; font-size:.8rem; white-space:nowrap; }
  .land-dev-tabs button svg.i { display:none; }
  .land pre { padding:16px; font-size:.8rem; }
  .land-end { padding:72px 16px 80px; }
  .land-end-in { padding:32px 24px; }
}
