/* Minecraft font (CraftronGaming), embedded so it works anywhere. One face covers every weight, so nothing gets faux-bolded. */
@font-face { font-family: "Minecraft"; src: url(data:font/ttf;base64,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) format("truetype"); font-weight: 100 900; font-style: normal; font-display: swap; }

/* Layout: one long page told by scrolling. It opens on the logo alone, the logo flies up into the nav, a sentence lights up word by word,
   then chapters: explore, kingdoms (ranks slide sideways), war (stages with a rail), balance, economy, live numbers, watch, seasons, store,
   rules, FAQ, and at the very bottom how to join and the Discord. The glow over the sky changes color with each chapter.
   The background is a blocky castle at night, drawn once onto small canvases in Minecraft-style block textures and scaled up so pixels stay square.
   Colors are the imperial palette only. Everything scroll-driven sits under html.anim, so reduced motion gets a plain page.
   Deliberately single-theme, so every color is set explicitly. The Minecraft font stays on its 8px grid: 16, 24, 32 or 48px. */
:root {
  --imperial-crimson: #701F28;
  --royal-gold: #C8A45D;
  --obsidian-black: #181713;
  --dark-stone: #25231F;
  --marble-ivory: #F2E9D8;
  --roman-red: #9E3035;
  --muted-bronze: #8C7450;
  --aged-parchment: #B6A991;
  --surface: rgba(242,233,216,.04);
  --surface-2: rgba(242,233,216,.08);
  --border: rgba(200,164,93,.16);
  --border-2: rgba(200,164,93,.32);
  --ink: var(--marble-ivory);
  --soft: var(--aged-parchment);
  --faint: var(--aged-parchment);
  --accent: var(--royal-gold);
  --on: var(--royal-gold);
  --off: var(--muted-bronze);
  --live: var(--roman-red);
  --row: 76px;
  --notch: polygon(3px 0, calc(100% - 3px) 0, calc(100% - 3px) 3px, 100% 3px, 100% calc(100% - 3px), calc(100% - 3px) calc(100% - 3px), calc(100% - 3px) 100%, 3px 100%, 3px calc(100% - 3px), 0 calc(100% - 3px), 0 3px, 3px 3px);
  --gutter-l: max(16px, env(safe-area-inset-left, 0px));
  --gutter-r: max(16px, env(safe-area-inset-right, 0px));
  --mc: Minecraft, "Segoe UI", system-ui, sans-serif;
  --body: "Segoe UI", "Segoe UI Variable Text", system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color-scheme: dark;
}
* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-padding-top: var(--row); }
body { margin: 0; background: var(--obsidian-black); color: var(--ink); font: 400 16px/1.6 var(--body); overflow-x: clip; }
a { color: inherit; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
h1, h2, h3, p, ul, ol, dl, dd { margin: 0; }
.wrap { max-width: 1092px; margin-inline: auto; padding-left: var(--gutter-l); padding-right: var(--gutter-r); }
@media (min-width: 1124px) { .wrap { max-width: calc(1092px + var(--gutter-l) + var(--gutter-r)); } }
main, .foot { position: relative; z-index: 1; }

/* ---------- the sky behind everything ---------- */
.sky { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; background: linear-gradient(var(--obsidian-black), var(--dark-stone) 60%, #3f2126); }
.sky canvas { position: absolute; left: 0; bottom: 0; display: block; image-rendering: pixelated; }
html:not(.anim) #scMid, html:not(.anim) #scSky { opacity: .55; }
html:not(.anim) #scNear, html:not(.anim) #scFx { display: none; }
.anim #scMid, .anim #scNear { will-change: transform; }
.glow { position: absolute; inset: -10%; background-color: var(--royal-gold); opacity: .05; transition: background-color 1.2s ease, opacity 1.2s ease;
  -webkit-mask-image: radial-gradient(60% 55% at 50% 22%, #000, transparent 100%); mask-image: radial-gradient(60% 55% at 50% 22%, #000, transparent 100%); }
.sky[data-scene="bronze"] .glow { background-color: var(--muted-bronze); opacity: .14; }
.sky[data-scene="red"] .glow { background-color: var(--roman-red); opacity: .24; }
.sky[data-scene="crimson"] .glow { background-color: var(--imperial-crimson); opacity: .32; }
.sky[data-scene="stone"] .glow { background-color: var(--aged-parchment); opacity: .06; }
.sky::after { content: ""; position: absolute; inset: 0; background: radial-gradient(120% 90% at 50% 40%, transparent 55%, rgba(24,23,19,.7)); }

/* ---------- surfaces ---------- */
/* Every panel and button is a flat block, like a Minecraft menu: a solid fill with a faint stone grain, a lit top-left edge, a shaded bottom-right edge and notched pixel corners. */
.glass, .tint, .btn, .ctl, .chip, .menu-btn, .season, .calc, .dc-orb { --fill: #25231F; --lit: #3A3730; --shade: #141310; border: 0; border-radius: 0; background: var(--tex, none) 0 0 / 144px 144px, var(--fill); image-rendering: pixelated;
  box-shadow: inset 3px 3px 0 var(--lit), inset -3px -3px 0 var(--shade); -webkit-clip-path: var(--notch); clip-path: var(--notch); }
.t-stone { --fill: #34312B; --lit: #4C483F; --shade: #211F1B; }
.t-bronze { --fill: #5A4B35; --lit: #8C7450; --shade: #3A3023; --soft: var(--marble-ivory); }
.t-gold { --fill: #4A3C22; --lit: #7A6439; --shade: #2E2617; --soft: var(--marble-ivory); }
.t-crimson { --fill: #701F28; --lit: #9E3035; --shade: #4A141B; --soft: var(--marble-ivory); }
.t-red { --fill: #4F171D; --lit: #701F28; --shade: #2F0F13; --soft: var(--marble-ivory); }
.btn:focus-visible, .ctl:focus-visible, .chip:focus-visible, .season:focus-visible, .jump:focus-visible, .menu-btn:focus-visible { outline: 0; box-shadow: inset 0 0 0 3px var(--marble-ivory); }
.h-title, .card h3, .rank h3, .rank-n, .store h3, .dc-text h3, .edition h3, .stat b, .addr { text-shadow: 2px 2px 0 rgba(0,0,0,.5); }

.btn { --fill: var(--royal-gold); --lit: #E6CC8F; --shade: var(--muted-bronze); display: inline-flex; align-items: center; justify-content: center; gap: 10px; padding: 13px 22px 16px; color: var(--obsidian-black); cursor: pointer; font: 16px/1 var(--mc); text-decoration: none;
  box-shadow: inset 3px 3px 0 var(--lit), inset -3px -6px 0 var(--shade); }
.btn:hover { filter: brightness(1.12); }
.btn:active { box-shadow: inset 3px 6px 0 var(--shade), inset -3px -3px 0 var(--lit); }
.btn svg { width: 20px; height: 20px; flex: none; }
.btn.twitch { --fill: var(--imperial-crimson); --lit: var(--roman-red); --shade: #4A141B; color: var(--marble-ivory); text-shadow: 2px 2px 0 rgba(0,0,0,.45); }
.btn.youtube { --fill: var(--roman-red); --lit: #C04B50; --shade: var(--imperial-crimson); color: var(--marble-ivory); text-shadow: 2px 2px 0 rgba(0,0,0,.45); }
.ctl { --fill: #34312B; --lit: #4C483F; --shade: #181713; flex: none; display: inline-block; padding: 10px 14px 10px; cursor: pointer; font: 16px/1 var(--mc); color: var(--marble-ivory); text-decoration: none; text-shadow: 2px 2px 0 rgba(0,0,0,.45); }
.ctl:hover { color: var(--royal-gold); }
.ctl:active { box-shadow: inset 3px 3px 0 var(--shade), inset -3px -3px 0 var(--lit); }
.ctl.done { color: var(--on); }
.live { display: inline-flex; align-items: center; gap: 6px; padding: 5px 9px 4px; background: var(--live); font: 16px/1 var(--mc); color: var(--marble-ivory); text-decoration: none; }
.live i { width: 6px; height: 6px; background: var(--marble-ivory); }
.row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }

/* ---------- nav ---------- */
.nav { position: fixed; left: 0; right: 0; top: 0; z-index: 8; padding-top: env(safe-area-inset-top, 0px); background: var(--obsidian-black); border-bottom: 3px solid var(--dark-stone); }
.anim .nav { opacity: 0; pointer-events: none; transition: opacity .3s; }
.anim .nav.show { opacity: 1; pointer-events: auto; }
.nav-in { display: flex; align-items: center; gap: 12px; height: 60px; }
.mark { display: block; flex: none; margin-right: 10px; line-height: 0; }
[data-logo], [data-crown] { display: block; image-rendering: pixelated; }
.anim .mark { opacity: 0; }
.anim .mark.show { opacity: 1; }
.links { display: flex; gap: 2px; margin-left: 8px; }
.links a { padding: 7px 10px 6px; font: 16px/1 var(--mc); color: var(--soft); text-decoration: none; transition: color .2s, background-color .2s; }
.links a:hover { color: var(--ink); }
.links a.on { color: var(--marble-ivory); background: var(--dark-stone); }
.nav-end { margin-left: auto; display: flex; align-items: center; gap: 10px; }
.nav-join, .nav-map { padding: 9px 14px 12px; }
.menu-btn { display: none; width: 40px; height: 38px; place-items: center; padding: 0; color: var(--ink); cursor: pointer; }
.menu-btn svg { width: 16px; height: 16px; }
.menu { border-top: 1px solid var(--border); }
.menu .wrap { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 16px; padding-block: 6px 12px; }
.menu a { padding: 11px 0; font: 16px/1 var(--mc); color: var(--ink); text-decoration: none; }
.bar { position: absolute; left: 0; right: 0; bottom: -3px; height: 3px; background: var(--accent); transform: scaleX(0); transform-origin: 0 50%; }

/* ---------- opening: the logo alone ---------- */
.hero { position: relative; height: 100vh; height: 100svh; }
.anim .hero { height: 190vh; height: 190svh; z-index: 9; pointer-events: none; }
.anim .cue { pointer-events: auto; }
.hero-stick { position: sticky; top: 0; height: 100vh; height: 100svh; display: grid; place-items: center; overflow: hidden; padding: 5vh 0 53vh; }
.hero-mid { position: relative; z-index: 2; display: grid; justify-items: center; gap: 12px; }
.hero-logo { position: relative; margin: 0; transform-origin: 50% 50%; will-change: transform; filter: drop-shadow(0 6px 0 rgba(24,23,19,.6)); }
.crown { position: absolute; left: 50%; bottom: calc(100% - 6px); transform: translateX(-50%); }
.anim .crown { animation: crownIn .5s steps(5) 1s both, bob 2s steps(2, jump-none) 1.5s infinite; }
@keyframes crownIn { from { opacity: 0; bottom: calc(100% + 18px); } }
@keyframes bob { 50% { transform: translate(-50%, -4px); } }
.ribbon { position: relative; z-index: 0; padding: 9px 22px 8px; background: var(--imperial-crimson); color: var(--marble-ivory); font: 24px/1 var(--mc); text-shadow: 2px 2px 0 rgba(0,0,0,.55); box-shadow: inset 0 3px 0 var(--roman-red), inset 0 -3px 0 #4A141B; }
.ribbon::before, .ribbon::after { content: ""; position: absolute; z-index: -1; top: 8px; bottom: -8px; width: 26px; background: #4A141B; }
.ribbon::before { left: -14px; -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 8px 75%, 8px 25%); clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 8px 75%, 8px 25%); }
.ribbon::after { right: -14px; -webkit-clip-path: polygon(0 0, 100% 0, calc(100% - 8px) 25%, calc(100% - 8px) 75%, 100% 100%, 0 100%); clip-path: polygon(0 0, 100% 0, calc(100% - 8px) 25%, calc(100% - 8px) 75%, 100% 100%, 0 100%); }
.hero-tag { margin-top: 16px; text-align: center; color: var(--royal-gold); font: 16px/1.2 var(--mc); text-shadow: 2px 2px 0 var(--obsidian-black); }
.anim .ribbon { animation: stepIn .4s steps(4) .9s both; }
.anim .hero-tag { animation: stepIn .4s steps(4) 1.25s both; }
@keyframes stepIn { from { opacity: 0; transform: translateY(8px); } }
.cue { position: absolute; left: 0; right: 0; bottom: max(16px, env(safe-area-inset-bottom, 0px)); width: fit-content; margin-inline: auto; display: grid; justify-items: center; gap: 6px; color: var(--royal-gold); text-decoration: none; }
.cue .btn { padding-inline: 20px; }
.cue-arrows { display: grid; justify-items: center; gap: 3px; filter: drop-shadow(0 3px 0 var(--obsidian-black)); }
.cue-arrows svg { display: block; width: 33px; height: 18px; }
.anim .cue { animation: stepIn .4s steps(4) 1.6s both; }
.anim .cue .btn { animation: nudge 1.2s steps(2, jump-none) 2s infinite; }
.anim .cue-arrows svg { animation: arrow 1.2s steps(1) 2s infinite; opacity: .2; }
.anim .cue-arrows svg:nth-child(2) { animation-delay: 2.2s; }
.anim .cue-arrows svg:nth-child(3) { animation-delay: 2.4s; }
@keyframes nudge { 50% { transform: translateY(4px); } }
@keyframes arrow { 0%, 45% { opacity: 1; } 46%, 100% { opacity: .2; } }

/* ---------- a sentence that lights up ---------- */
.say { position: relative; }
.anim .say { height: 240vh; height: 240svh; }
.say-stick { display: grid; align-content: center; gap: 22px; padding-block: 96px; }
.anim .say-stick { position: sticky; top: 0; height: 100vh; height: 100svh; padding-block: 0; }
.eyebrow { font: 16px/1.3 var(--mc); color: var(--accent); }
.say-text { max-width: 22em; font: 48px/1.25 var(--mc); text-shadow: 3px 3px 0 rgba(0,0,0,.55); text-wrap: balance; }
.anim .say-text span { opacity: .14; }

/* ---------- chapters ---------- */
.chapter { padding-block: clamp(80px, 13vh, 150px); scroll-margin-top: 0; }
.h-title { font: 48px/1.12 var(--mc); margin-top: 6px; text-wrap: balance; }
.lead { margin-top: 14px; max-width: 58ch; font-size: clamp(18px, 1.7vw, 21px); font-weight: 300; line-height: 1.5; color: var(--soft); }
.anim [data-rise] { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1); transition-delay: var(--d, 0s); }
.anim [data-rise].in { opacity: 1; transform: none; }
.grid-3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-top: 36px; }
.card { padding: 22px; }
.card h3 { font: 24px/1.2 var(--mc); }
.card p { margin-top: 8px; color: var(--soft); font-size: 15.5px; line-height: 1.55; }
.chip { --fill: #34312B; --lit: #4C483F; --shade: #181713; display: inline-flex; align-items: center; justify-content: center; gap: 8px; margin-top: 14px; padding: 9px 12px 8px; color: var(--marble-ivory); cursor: pointer; font: 16px/1 var(--mc); text-shadow: 2px 2px 0 rgba(0,0,0,.45); }
.chip:hover { color: var(--royal-gold); }
.chip:active { box-shadow: inset 3px 3px 0 var(--shade), inset -3px -3px 0 var(--lit); }
.chip.done { color: var(--on); }
.chip svg { width: 14px; height: 14px; color: var(--aged-parchment); }

/* Explore: the shortcuts */
.jumps { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-top: 32px; }
.jump { display: grid; place-content: center; justify-items: center; gap: 8px; min-height: 148px; padding: 18px 14px 20px; color: var(--marble-ivory); text-align: center; text-decoration: none; box-shadow: inset 3px 3px 0 var(--lit), inset -3px -6px 0 var(--shade); }
.jump:hover { filter: brightness(1.16); }
.jump:hover b { color: var(--royal-gold); }
.jump:active { box-shadow: inset 3px 6px 0 var(--shade), inset -3px -3px 0 var(--lit); }
.jump.t-red { --fill: var(--roman-red); --lit: #C04B50; --shade: var(--imperial-crimson); }
.jump b { font: 400 32px/1.1 var(--mc); text-shadow: 3px 3px 0 rgba(0,0,0,.55); }
.jump.map-tile { --fill: var(--royal-gold); --lit: #E6CC8F; --shade: var(--muted-bronze); grid-column: 1 / -1; min-height: 112px; color: var(--obsidian-black); }
.jump.map-tile b { color: var(--obsidian-black); text-shadow: none; }
.jump.map-tile span { color: var(--obsidian-black); font-weight: 600; }
.jump span { font-size: 15px; font-weight: 500; line-height: 1.35; color: var(--marble-ivory); }

/* Kingdoms: ranks slide sideways while you scroll down */
.ranks-stick { display: grid; grid-template-columns: minmax(0, 1fr); align-content: center; gap: 28px; padding-block: 80px 40px; }
.anim .ranks:not(.flat) { height: calc(100vh + var(--dist, 0px)); height: calc(100svh + var(--dist, 0px)); }
.anim .ranks:not(.flat) .ranks-stick { position: sticky; top: 0; height: 100vh; height: 100svh; overflow: hidden; padding-block: 60px 0; }
.track { display: flex; flex-wrap: wrap; gap: 16px; width: 100%; padding-left: var(--gutter-l); padding-right: var(--gutter-r); max-width: calc(1092px + var(--gutter-l) + var(--gutter-r)); margin-inline: auto; }
.anim .ranks:not(.flat) .track { flex-wrap: nowrap; justify-self: start; width: max-content; max-width: none; margin: 0; padding-left: var(--edge, 16px); padding-right: var(--edge, 16px); will-change: transform; }
.rank { flex: 1 1 200px; display: grid; align-content: space-between; gap: 22px; padding: 24px; min-height: 240px; }
.anim .ranks:not(.flat) .rank { flex: none; width: clamp(270px, 30vw, 420px); min-height: min(38vh, 300px); }
.rank h3 { font: 32px/1.1 var(--mc); }
.rank-n { font: 48px/1 var(--mc); }
.rank small { display: block; margin-top: 4px; font-size: 14px; color: var(--soft); }
.dots { display: flex; flex-wrap: wrap; gap: 4px; margin-top: 12px; }
.dots i { width: 10px; height: 10px; background: currentColor; opacity: .75; }

.calc { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px 24px; align-items: center; margin-top: 18px; padding: 16px 18px; max-width: 520px; --fill: var(--obsidian-black); --lit: #4F171D; --shade: #0E0D0B; box-shadow: inset 3px 3px 0 var(--shade), inset -3px -3px 0 var(--lit); }
.calc label { font-size: 14px; color: var(--soft); }
.calc output { grid-row: span 2; text-align: right; font: 48px/1 var(--mc); color: var(--royal-gold); }
.calc output small { display: block; margin-top: 4px; font: 400 13px/1.2 var(--body); color: var(--soft); }
.calc input { width: 100%; accent-color: var(--royal-gold); }
.calc b { color: var(--ink); font-weight: 600; }

/* Balance */
.gone { display: grid; gap: 12px; margin-top: 12px; padding: 0; list-style: none; }
.gone li { position: relative; width: fit-content; font: 32px/1.15 var(--mc); color: var(--ink); }
.gone li::after { content: ""; position: absolute; left: -4px; right: -4px; top: 52%; height: 3px; background: var(--roman-red); transform-origin: 0 50%; transform: scaleX(1); }
.anim .gone li::after { transform: scaleX(0); transition: transform .8s cubic-bezier(.6,0,.2,1) var(--d, 0s); }
.anim .gone.in li::after { transform: scaleX(1); }
.bal-grid { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 16px; margin-top: 36px; }
.bal-a { grid-column: span 3; grid-row: span 2; }
.bal-b { grid-column: span 3; }

/* Live numbers */
.live-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 32px; }
.stat { display: grid; gap: 4px; padding: 20px; min-width: 0; }
.stat span { font-size: 14px; line-height: 1.3; color: var(--soft); }
.stat b { font: 400 32px/1.15 var(--mc); overflow-wrap: anywhere; }
.stat.small b { font-size: 24px; }
.who { margin-top: 12px; padding: 16px 20px 18px; }
.who > span { font-size: 14px; color: var(--soft); }
.heads { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.heads img { width: 32px; height: 32px; image-rendering: pixelated; }
.heads span { align-self: center; font: 16px/1 var(--mc); color: var(--soft); }
.note { margin-top: 12px; font-size: 13px; color: var(--faint); }
.player { position: relative; aspect-ratio: 16 / 9; max-width: 100%; margin-top: 24px; overflow: hidden; background: #000; }
.player iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.watch-line { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; }

/* Seasons */
.seasons { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-top: 32px; }
.season { display: grid; justify-items: center; gap: 4px; padding: 16px 10px 18px; color: var(--marble-ivory); cursor: pointer; font: inherit; text-align: center; box-shadow: inset 3px 3px 0 var(--lit), inset -3px -6px 0 var(--shade); }
.season:hover { filter: brightness(1.2); }
.season b { font: 400 32px/1 var(--mc); text-shadow: 3px 3px 0 rgba(0,0,0,.55); }
.season small { font-size: 14px; }
.season[aria-pressed="true"] { --fill: #4A3C22; --lit: #7A6439; --shade: #2E2617; box-shadow: inset 3px 6px 0 var(--shade), inset -3px -3px 0 var(--lit); }
.season[aria-pressed="true"] b { color: var(--royal-gold); }
.season-panel { margin-top: 12px; padding: 22px; }
.season-panel h3 { font: 24px/1.2 var(--mc); text-shadow: 2px 2px 0 rgba(0,0,0,.5); }
.season-panel p { margin-top: 8px; color: var(--soft); max-width: 60ch; }
.shots { display: grid; grid-template-columns: repeat(auto-fill, minmax(160px, 1fr)); gap: 8px; margin-top: 14px; }
.shots img { display: block; width: 100%; aspect-ratio: 16 / 10; max-width: 100%; object-fit: cover; image-rendering: auto; }

/* Store, rules, FAQ */
.store { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; margin-top: 32px; padding: 28px; }
.store h3 { font: 32px/1.15 var(--mc); }
.store p { margin-top: 6px; color: var(--soft); }
.rules { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 28px; padding: 0; list-style: none; }
.rules li { padding: 18px 20px; color: var(--soft); font-size: 15.5px; }
.rules b { display: block; margin-bottom: 4px; font: 400 16px/1.3 var(--mc); color: var(--ink); }
.acc { margin-top: 24px; max-width: 760px; padding: 6px 22px; }
.acc details { border-top: 1px solid var(--border); }
.acc details:first-child { border-top: 0; }
.acc summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-block: 14px; font-size: 17px; font-weight: 600; cursor: pointer; list-style: none; }
.acc summary::-webkit-details-marker { display: none; }
.acc summary svg { flex: none; width: 12px; height: 12px; color: var(--soft); transition: transform .2s; }
.acc details[open] summary svg { transform: rotate(90deg); }
.acc details > p { padding-bottom: 16px; color: var(--soft); max-width: 64ch; }

/* The very bottom: how to join and the Discord */
.final { padding-bottom: clamp(56px, 9vh, 96px); }
.editions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 32px; }
.edition { min-width: 0; display: flex; flex-direction: column; padding: 22px 24px; }
.edition h3 { font: 24px/1.2 var(--mc); }
.status { display: flex; align-items: center; gap: 8px; margin-top: 12px; font-size: 15px; line-height: 1.4; color: var(--soft); }
.status i { flex: none; width: 8px; height: 8px; background: var(--off); }
.status.on i { background: var(--on); }
.field { padding-block: 12px; }
.field + .field { border-top: 1px solid var(--border); }
.field dt { font-size: 13px; line-height: 1.4; color: var(--soft); }
.field dd { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 10px; min-height: 38px; }
.addr { min-width: 0; font: 24px/1.2 var(--mc); color: var(--ink); overflow-wrap: anywhere; }
.none { font-size: 15px; color: var(--soft); }
.how { margin-top: auto; padding-top: 10px; font-size: 14.5px; line-height: 1.5; color: var(--soft); }
.extras { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 16px; }
.count { font: 24px/1.2 var(--mc); }
.discord { display: flex; flex-wrap: wrap; align-items: center; gap: 18px 22px; margin-top: 16px; padding: 26px 28px; }
.dc-orb { --fill: var(--royal-gold); --lit: #E6CC8F; --shade: var(--muted-bronze); flex: none; width: 64px; height: 64px; display: grid; place-items: center; }
.dc-orb svg { width: 38px; height: 38px; }
.dc-orb path { fill: var(--obsidian-black); }
.dc-text { flex: 1 1 260px; min-width: 0; }
.dc-text h3 { font: 32px/1.15 var(--mc); }
.dc-text p { margin-top: 4px; color: var(--soft); }
.dc-text strong { color: var(--ink); font-weight: 600; }
.foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 6px 24px; padding-block: 8px 28px; font-size: 14px; color: var(--faint); }
.foot nav { display: flex; flex-wrap: wrap; gap: 4px 16px; }
.foot a { text-decoration: none; transition: color .2s; }
.foot a:hover { color: var(--ink); }

/* Shared content blocks */
.two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 28px; }
.card > .chip:first-child { margin-top: 0; }
.card .list { margin-top: 12px; }
.list { display: grid; gap: 8px; margin-top: 16px; padding: 0; list-style: none; }
.list li { position: relative; padding-left: 18px; color: var(--soft); font-size: 16px; line-height: 1.5; }
.list li::before { content: ""; position: absolute; left: 0; top: .6em; width: 7px; height: 7px; background: var(--royal-gold); }
.also { margin-top: 16px; max-width: 70ch; color: var(--soft); font-size: 15.5px; }
.sub { margin-top: 44px; font: 32px/1.15 var(--mc); text-shadow: 2px 2px 0 rgba(0,0,0,.5); scroll-margin-top: 84px; }
#start .store, #live .store { margin-top: 12px; }

.chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.chips .chip { margin-top: 0; }
.steps.wide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.steps.wide li { align-items: start; }
.faq-search { display: block; width: 100%; max-width: 520px; margin-top: 20px; padding: 13px 16px; border: 0; background: var(--obsidian-black); color: var(--marble-ivory); font: 16px/1.3 var(--body); box-shadow: inset 3px 3px 0 #0E0D0B, inset -3px -3px 0 #3A3730; -webkit-clip-path: var(--notch); clip-path: var(--notch); }
.faq-search::placeholder { color: var(--aged-parchment); }
.faq-search:focus-visible { outline: 0; box-shadow: inset 0 0 0 3px var(--royal-gold); }
.faq-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px 16px; align-items: start; margin-top: 28px; }
.faq-group h3 { font: 24px/1.2 var(--mc); text-shadow: 2px 2px 0 rgba(0,0,0,.5); }
.faq-group .acc { margin-top: 10px; max-width: none; }
.acc summary { font-size: 16px; }
.acc code { font: 16px/1.2 var(--mc); color: var(--royal-gold); overflow-wrap: anywhere; }
.acc details > .list { margin-top: 0; padding-bottom: 16px; }

/* Pixel icons, drawn in site.js */
.ico { display: block; flex: none; width: 48px; height: 48px; background: center / 100% 100% no-repeat; image-rendering: pixelated; }
.ico.s2 { width: 32px; height: 32px; }
.ico-h { display: flex; align-items: center; gap: 10px; }
.jump:hover .ico { transform: translateY(-3px); }
.jump.map-tile { grid-template-columns: auto auto; column-gap: 16px; justify-content: center; justify-items: start; align-items: center; text-align: left; }
.jump.map-tile .ico { grid-row: span 2; }

/* Castle wall between chapters, with a hanging banner */
.wall { position: relative; height: 72px; margin-top: calc(-1 * clamp(40px, 7vh, 80px)); background: var(--wall) 0 0 / 72px 72px repeat-x; image-rendering: pixelated; pointer-events: none; }
.wall::after { content: ""; position: absolute; left: 50%; top: 60px; width: 42px; height: 78px; margin-left: -21px; background: center / 100% 100% no-repeat; image-rendering: pixelated; }
.wall[data-tone="gold"]::after { background-image: var(--banner-gold); }
.wall[data-tone="bronze"]::after { background-image: var(--banner-bronze); }
.wall[data-tone="crimson"]::after { background-image: var(--banner-crimson); }
.wall[data-tone="stone"]::after { background-image: var(--banner-stone); }
.wall + .chapter { padding-top: clamp(96px, 13vh, 130px) !important; }

/* Kingdoms page */
.k-hero { position: relative; min-height: 88vh; min-height: 88svh; display: grid; place-content: center; justify-items: center; gap: 8px; padding: 72px 16px 42vh; text-align: center; }
.k-hero h1 { margin: 6px 0; filter: drop-shadow(0 6px 0 rgba(24,23,19,.6)); }
.k-hero .lead { margin-top: 12px; color: var(--marble-ivory); text-shadow: 0 2px 0 rgba(24,23,19,.7); }
.k-layout { display: grid; grid-template-columns: 224px minmax(0, 1fr); gap: 40px; align-items: start; }
.toc { position: sticky; top: 84px; display: grid; gap: 2px; padding: 6px; max-height: calc(100vh - 100px); overflow-y: auto; background: var(--obsidian-black); }
.toc a { padding: 8px 10px 7px; font: 16px/1.15 var(--mc); color: var(--soft); text-decoration: none; }
.toc a:hover { color: var(--ink); }
.toc a.on { color: var(--marble-ivory); background: var(--dark-stone); box-shadow: inset 3px 0 0 var(--royal-gold); }
.k-sec { padding-bottom: 80px; scroll-margin-top: 84px; }
.panel { padding: 22px 24px; }
.panel h3 { font: 24px/1.2 var(--mc); text-shadow: 2px 2px 0 rgba(0,0,0,.5); }
.panel > p { margin-top: 8px; color: var(--soft); }
.k-sec > .panel, .k-sec > .list { margin-top: 20px; }
.k-sec > .panel + .panel, .k-sec > .two + .panel, .k-sec > .facts + .panel { margin-top: 12px; }
.k-sec > .two { margin-top: 20px; }
.facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-top: 20px; }
.facts .stat { align-content: space-between; }
.steps { display: grid; gap: 12px; margin-top: 20px; padding: 0; list-style: none; }
.steps li { display: grid; grid-template-columns: 40px minmax(0, 1fr); gap: 4px 16px; align-items: center; padding: 18px 22px; }
.steps > li > b { font: 400 32px/1 var(--mc); color: var(--royal-gold); text-shadow: 2px 2px 0 rgba(0,0,0,.5); }
.steps h3 { font: 24px/1.2 var(--mc); text-shadow: 2px 2px 0 rgba(0,0,0,.5); }
.steps p { margin-top: 4px; color: var(--soft); }
.steps .chip { margin-top: 10px; }
.stairs { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; align-items: end; margin-top: 24px; }
.step { display: grid; align-content: space-between; gap: 12px; min-height: calc(136px + var(--n) * 14px); padding: 16px 14px; }
.step h3 { font: 24px/1.1 var(--mc); text-shadow: 2px 2px 0 rgba(0,0,0,.5); }
.step b { display: block; font: 400 48px/1 var(--mc); text-shadow: 3px 3px 0 rgba(0,0,0,.5); }
.step small { font-size: 14px; color: var(--soft); }
.ptable { width: 100%; margin-top: 16px; border-collapse: collapse; font-size: 16px; }
.ptable th { padding: 6px 10px; font: 16px/1.2 var(--mc); color: var(--royal-gold); text-align: left; }
.ptable td { padding: 8px 10px; border-top: 1px solid var(--border); }
.ptable tr.off td { opacity: .42; }
.ends { display: grid; gap: 10px; margin-top: 20px; }
.end { display: grid; grid-template-columns: minmax(0, 1fr) 230px; gap: 6px 20px; align-items: center; padding: 16px 22px; }
.end p { color: var(--marble-ivory); }
.end b { font: 400 16px/1.3 var(--mc); color: var(--royal-gold); text-shadow: 2px 2px 0 rgba(0,0,0,.5); }
.cmds { display: grid; gap: 10px; margin-top: 16px; }
.cmd { display: grid; grid-template-columns: 290px minmax(0, 1fr); gap: 6px 16px; align-items: center; }
.cmd .chip { margin-top: 0; justify-self: start; }
.cmd p { color: var(--soft); font-size: 15.5px; line-height: 1.45; }

@media (max-width: 1040px) {
  .links { display: none; }
  .menu-btn { display: grid; }
  .jumps { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .jump:last-child { grid-column: 1 / -1; }
  .live-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .h-title, .say-text { font-size: 32px; }
  .wall { height: 48px; background-size: 48px 48px; }
  .wall::after { top: 40px; width: 28px; height: 52px; margin-left: -14px; }
  .wall + .chapter { padding-top: 76px !important; }
  .hero-stick { padding-bottom: 44vh; }
  .grid-3, .editions, .rules, .two, .steps.wide, .faq-groups { grid-template-columns: minmax(0, 1fr); }
  .jumps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .jump { min-height: 128px; }
  .jump b { font-size: 24px; }
  .jump:last-child { grid-column: auto; }
  .bal-grid { grid-template-columns: minmax(0, 1fr); }
  .bal-a, .bal-b { grid-column: auto; grid-row: auto; }
  .gone li { font-size: 24px; }
  .facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .stat { padding: 16px; }
  .facts .stat b { font-size: 24px; }
  .stairs { grid-template-columns: minmax(0, 1fr); }
  .step { width: calc(46% + var(--n) * 4.15%); min-height: 0; display: flex; align-items: center; justify-content: space-between; }
  .step b { font-size: 32px; display: inline; }
  .end, .cmd { grid-template-columns: minmax(0, 1fr); }
  .panel { padding: 18px; }
  .sub { font-size: 24px; }
  .seasons { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .store { padding: 22px; }
}
@media (max-width: 900px) {
  .k-layout { display: block; }
  .toc { top: 63px; z-index: 3; grid-auto-flow: column; grid-auto-columns: max-content; margin: 0 calc(-1 * var(--gutter-r)) 24px calc(-1 * var(--gutter-l)); padding: 8px var(--gutter-r) 8px var(--gutter-l); max-height: none; overflow-x: auto; overflow-y: hidden; scrollbar-width: none; }
  .toc::-webkit-scrollbar { display: none; }
  .toc a.on { box-shadow: inset 0 -3px 0 var(--royal-gold); }
  .k-sec { scroll-margin-top: 124px; padding-bottom: 56px; }
}
@media (max-width: 400px) {
  .nav-join { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .links a, .foot a, .glow, .acc summary svg { transition: none; }
}
