/* Compact, centered thumbnail catalogs. */
.catalog.runes-catalog,
.catalog.worlds-catalog {
    width: 100%;
    max-width: 1160px;
    margin-inline: auto;
    padding: 42px clamp(24px, 5vw, 64px) 64px;
}
.runes-catalog h1,
.worlds-catalog h1 { font-size: clamp(32px, 4vw, 52px); }
.runes-catalog .intro,
.worlds-catalog .intro { font-size: 17px; margin-bottom: 30px; }
.catalog.worlds-catalog { max-width: 96%; }
.catalog.runes-catalog {
    max-width: none;
    padding-inline: clamp(12px, 2.5vw, 48px);
}
.worlds-catalog .cards.worlds {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 24px;
}
.worlds-catalog .card-image {
    aspect-ratio: auto;
    max-width: 90%;
    margin-inline: auto;
    border-radius: 0;
}
.worlds-catalog .card-image img { height: auto; object-fit: contain; }
.worlds-catalog .card-label { text-align: center; padding: 12px 0 0; }
.worlds-catalog .card h2 { font-size: clamp(14px, 2vw, 22px); overflow-wrap: anywhere; }
.worlds-catalog .card p { font-size: 13px; margin: 7px 0; }
.worlds-catalog .card-label > span,
.runes-catalog .card-label > span { display: none; }
.rune-atts { display: grid; gap: 28px; }
.att-title {
    margin: 0 0 14px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--line);
    font: 13px Arial, sans-serif;
    letter-spacing: 2px;
    color: var(--gold);
}
.att-scroll { overflow-x: auto; padding-bottom: 8px; }
.runes-catalog .cards.runes {
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: clamp(4px, 1.2vw, 24px);
    min-width: 0;
}
.runes-catalog .card-image { aspect-ratio: 3 / 4; }
.runes-catalog .card-image img { object-fit: contain; }
.runes-catalog .card-label { padding: 9px 0 0; text-align: center; }
.runes-catalog .card { min-width: 0; }
.runes-catalog .card h2 { font-size: clamp(9px, 1.25vw, 22px); overflow-wrap: anywhere; }
.runes-catalog .card p { font-size: clamp(8px, .85vw, 13px); margin: 5px 0 0; }
@media (max-width: 600px) {
    .worlds-catalog .cards.worlds { gap: 20px 12px; }
    .worlds-catalog .card p { font-size: 11px; }
}
