/* Gameserver-Landing (gameserver.php, templates/lagom2/gameserver.tpl). Aufbau und Grundstile aus vnx-funktionen.css
   (Hero, f-zahlen, m3-intro, m3-steps, f-row, m3-cmp, m3-faq, m3-links), hier nur die Bausteine dieser Seite:
   Zeitstrahl im Hero, Vergleichskarten, Spielkarten mit Bild, Serverkarten. Farben aus den Variablen von vx-hero.css, folgen dem Modus.
   Spielbilder: nexserv-Bestand (emeraldhost), Quellen in assets/img/gameserver/QUELLEN.md. */

/* Hero: Überschrift-Zeile „In 5 Minuten online.“ bleibt zusammen (nbsp), dafür keine 16ch-Grenze */
.vnx-home.vnx-gameserver .vx-hero--kompakt h1{max-width:none}

.gs-lead{margin:12px 0 0;font-size:16px;line-height:1.5;color:var(--vx-fg2, var(--vnx-text-secondary))}

/* Hero: Zeitstrahl */
.gs-time{display:flex;flex-wrap:wrap;gap:0;margin:26px 0 0;padding:0;list-style:none;counter-reset:t}
.gs-time li{position:relative;flex:1 1 0;min-width:140px;padding:0 14px 0 0;counter-increment:t}
.gs-time li::before{content:counter(t);display:flex;align-items:center;justify-content:center;width:26px;height:26px;margin-bottom:8px;border-radius:50%;border:1px solid var(--vx-fg3);font-size:13px;font-weight:600;color:var(--vx-fg);background:var(--vx-bg)}
.gs-time li:not(:last-child)::after{content:"";position:absolute;top:13px;left:30px;right:4px;height:1px;background:var(--vx-fg3);opacity:.6}
.gs-time b{display:block;font-size:15px;line-height:1.3;color:var(--vx-fg)}
.gs-time span{display:block;font-size:14px;line-height:1.4;color:var(--vx-fg2)}

/* Ist das ein Gameserver? */
.gs-vs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:28px 0 0}
.gs-vs>.h-card{padding:24px}
.gs-vs>.h-card.is-hi{border-color:var(--vnx-text);box-shadow:inset 0 0 0 1px var(--vnx-text)}
.gs-vs-k{margin:0;font-size:14px;font-weight:700;color:var(--vnx-text-muted)}
.gs-vs-big{margin:8px 0 0;font-size:32px;line-height:1.15;font-weight:700;letter-spacing:-.2px;color:var(--vnx-text)}
.gs-vs-big span{display:block;margin-top:4px;font-size:17px;font-weight:600;letter-spacing:0;color:var(--vnx-text-secondary)}
.gs-vs>.h-card>p:last-child{margin:14px 0 0;font-size:16px;line-height:1.5;color:var(--vnx-text-secondary)}

/* Spielkarten: Farbfläche oben (keine Key-Arts), darunter Infos und Warenkorb-Knopf */
.gs-games{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:28px 0 0;padding:0;list-style:none}
.gs-game{display:flex;flex-direction:column;border:1px solid var(--vx-card-ln);border-radius:12px;overflow:hidden;background:var(--vx-card)}
.gs-game-h{position:relative;isolation:isolate;aspect-ratio:16/9;padding:14px 16px;display:flex;align-items:flex-end;background:#1a1d20}
.gs-game-h img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover;object-position:center 30%}
.gs-game-h:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.35) 60%,rgba(0,0,0,.78))}
.vnx-home .vx-dark2 .gs-game-h h3{margin:0;font-size:19px;line-height:1.2;font-weight:700;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.5)}
html.lagom-dark-mode .gs-game-h{border-bottom:1px solid var(--vx-card-ln)}
.gs-game-b{display:flex;flex-direction:column;flex:1;padding:16px}
.gs-game-b p{margin:0;font-size:15px;line-height:1.5;color:var(--vx-fg2)}
.gs-game-b ul{margin:12px 0 0;padding:0;list-style:none;font-size:14px;color:var(--vx-fg)}
.gs-game-b ul li{padding:3px 0}
.gs-game-b .h-btn{margin-top:auto;width:100%;justify-content:center}
.gs-game-b ul{margin-bottom:16px}

/* Marken-Hinweis über dem Fuß */
.gs-legal{padding-top:28px!important;padding-bottom:28px!important;border-top:1px solid var(--h-line)}
.gs-legal p{margin:0;max-width:72em;font-size:13px;line-height:1.55;color:var(--vnx-text-muted)}

/* Serverwahl */
.gs-srv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0 0}
.gs-srv>.h-card{display:flex;flex-direction:column;padding:24px}
.gs-srv>.h-card.is-hi{border-color:var(--vnx-text);box-shadow:inset 0 0 0 1px var(--vnx-text)}
.gs-srv h3{margin:0;font-size:22px;line-height:1.2;font-weight:700}
.gs-for{margin:8px 0 0;font-size:16px;line-height:1.5;color:var(--vnx-text-secondary)}
.gs-srv ul{margin:18px 0 0;padding:0;list-style:none;border-top:1px solid var(--h-line)}
.gs-srv li{padding:10px 0;border-bottom:1px solid var(--h-line);font-size:16px}
.gs-p{margin:auto 0 0;padding-top:20px;font-size:16px;color:var(--vnx-text-secondary)}
.gs-p b{font-size:24px;color:var(--vnx-text)}
.gs-srv .h-btn{margin-top:16px;width:100%;justify-content:center}
.gs-note{margin:18px 0 0;font-size:14px;color:var(--vnx-text-muted)}


@media (max-width:1199px){
  .gs-games{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:991px){
  .gs-srv{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:600px){
  .gs-games,.gs-vs{grid-template-columns:minmax(0,1fr)}
  .gs-time li{flex-basis:100%;padding:0 0 12px 38px}
  .gs-time li::before{position:absolute;left:0;top:0}
  .gs-time li:not(:last-child)::after{top:30px;bottom:2px;left:13px;right:auto;width:1px;height:auto}
}

/* Vergleichstabelle am Handy: drei Spalten passen nur mit Silbentrennung („Gameserver-Hoster“) */
@media (max-width:600px){
  .vnx-gameserver .m3-cmp{table-layout:fixed;font-size:13.5px}
  .vnx-gameserver .m3-cmp th,.vnx-gameserver .m3-cmp td{padding:10px 6px;hyphens:auto;-webkit-hyphens:auto;overflow-wrap:break-word}
  .vnx-gameserver .m3-cmp th:first-child,.vnx-gameserver .m3-cmp td:first-child{width:27%}
}

/* UI/UX-Review 13.11.2026 */
.gs-game-b .h-btn{white-space:normal;text-align:center;line-height:1.3}
.vnx-gameserver .gs-game-b .h-btn,.vnx-gameserver .gs-srv .h-btn{min-height:44px}
@media (min-width:601px) and (max-width:1199px){
  .gs-game.is-big{grid-column:span 2}
  .gs-game.is-big .gs-game-h{aspect-ratio:21/9}
}
.vnx-gameserver section[id]{scroll-margin-top:64px}

/* Abschluss-Review 13.11.2026 */
/* Desktop: 4 Spalten, Minecraft 2×2 → Reihen 2+1+1, 2+1+1, 4 ohne Lücke */
@media (min-width:1200px){
  .gs-games{grid-template-columns:repeat(4,minmax(0,1fr))}
  .gs-game.is-big{grid-column:span 2;grid-row:span 2}
  .gs-game.is-big .gs-game-h{flex:1;aspect-ratio:auto;min-height:220px}
}
/* Handy: Spielbilder flacher (21:9), Hero ohne verkleinerten Screenshot, der Zeitstrahl erklärt den Ablauf */
@media (max-width:600px){
  .gs-game-h{aspect-ratio:21/9}
  .vnx-gameserver .gs-shot{display:none}
}
