.games-hero h1, .world-card h3, .game-list h3 { font-family: var(--sans); font-weight: 500; }
.games-hero .lede { max-width: 780px; }
.games-hero p:not(.eyebrow) { max-width: 780px; }
.games-hero .lede + p { margin-top: 24px; }
.games-jumps { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 32px; }
.games-jumps a, .game-link, .game-list a { text-decoration: underline; text-underline-offset: .22em; }
.games-jumps a { font-size: 14px; }
section[id], article[id] { scroll-margin-top: 90px; }
.world-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.world-card { border: 1px solid var(--rule); border-top: 4px solid var(--world-color); padding: 28px 24px; background: var(--paper); display: flex; flex-direction: column; }
.moorstead { --world-color: #526b49; }
.saltstead { --world-color: #386578; }
.marsstead { --world-color: #a65337; }
.world-card h3 { font-size: 26px; margin: 12px 0 18px; }
.world-card p:not(.game-kind) { font-size: 15px; flex: 1; }
.game-kind { display: block; color: var(--ink-3); font-size: 12px; line-height: 1.6; }
.game-link { display: inline-block; margin-top: 24px; font-size: 14px; }
.game-list { list-style: none; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 48px; }
.game-list li { border-top: 1px solid var(--rule); padding: 25px 0; }
.game-list h3 { font-size: 20px; line-height: 1.4; }
.game-list h3 a { color: var(--ink); }
.game-list h3 a:hover { color: var(--accent); }
.game-list p { font-size: 15px; margin: 12px 0; }
.game-list .game-kind { text-transform: capitalize; }
#learning h2, .band .prose h2 { margin-bottom: 20px; }
#arcade h3 { margin: 28px 0 12px; font-family: var(--sans); font-size: 20px; font-weight: 500; }
a:focus-visible { outline: 2px solid var(--accent); outline-offset: 4px; }
@media (max-width: 860px) { .world-grid { grid-template-columns: 1fr; } }
@media (min-width: 861px) { #arcade .split, #learning .split { grid-template-columns: 3fr 7fr; } }
@media (max-width: 600px) { .game-list { grid-template-columns: 1fr; } .games-jumps { gap: 16px 24px; } }

.havenstead { --world-color: #82733e; }
.havenstead .game-still img { object-fit: contain; background: #071115; }
.game-still { margin: -28px -24px 24px; }
.game-still img { display: block; width: 100%; height: auto; aspect-ratio: 16/10; object-fit: cover; }
.game-still figcaption { padding: 9px 16px; border-bottom: 1px solid var(--rule); color: var(--ink-3); font-size: 12px; }
.lesson-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; }
.lesson-grid article { border-top: 2px solid var(--rule); padding-top: 24px; }
.lesson-grid h3 { font: 500 20px/1.4 var(--sans); margin-bottom: 16px; }
.lesson-grid p { font-size: 16px; }
.games-conclusion { max-width: 780px; margin: 40px 0; }
.post-links { border-block: 1px solid var(--rule); padding: 24px 0; }
.post-links a { display: block; margin-top: 16px; text-decoration: underline; text-underline-offset: .2em; }
.games-related { margin-top: 32px; }
.game-film { margin-top: 40px; max-width: 840px; }
.game-film video { display: block; width: 100%; height: auto; background: #111; }
.game-film figcaption { font-size: 14px; color: var(--ink-3); margin-top: 12px; }
@media (max-width: 860px) { .lesson-grid { grid-template-columns: 1fr; } }
