/* The cross-publication catalog uses the publication archive's card language,
   with a fuller search form and publication metadata for mixed results. */

.shell:has(.catalog-archive) { inline-size: min(1380px, calc(100% - 2rem)); max-inline-size: none; }
.catalog-archive.article-pages { inline-size: min(1216px, 100%); margin-inline: auto; max-inline-size: none; padding: clamp(28px, 4vw, 48px) 0 64px; }
.catalog-archive__intro { align-items: initial; display: block; max-inline-size: none; padding-block-end: 20px; text-align: start; }
.catalog-archive__eyebrow,
.catalog-archive .article-card__meta { color: var(--muted); font: 700 12px/1.2 var(--font-sans); letter-spacing: .08em; margin: 0 0 5.6px; text-transform: uppercase; }
.catalog-archive__intro h1 { font: 650 clamp(36px, 4vw, 44px)/1 var(--font-serif); letter-spacing: -.04em; margin: 0; }
.catalog-archive__search { align-items: end; display: grid; gap: 12px; grid-template-columns: minmax(16rem, 1.45fr) minmax(11rem, .8fr) minmax(11rem, .8fr) auto auto; inline-size: 100%; margin-block-start: 14.4px; max-inline-size: none; }
.catalog-archive__search label { display: grid; font: 700 13.12px/1.2 var(--font-sans); gap: 4.8px; max-inline-size: none; }
.catalog-archive__search input,
.catalog-archive__search select { background: var(--reading); border: 1px solid var(--rule); color: var(--ink); font: inherit; max-inline-size: none; min-block-size: 40px; padding: 7.2px 9.6px; }
.catalog-archive__filters { align-items: end; display: contents; }
.catalog-archive__filters label { min-inline-size: 0; }
.catalog-archive__filters button,
.catalog-archive__filters > a { font: 700 13.12px/1.2 var(--font-sans); max-inline-size: none; min-block-size: 40px; padding: 7.2px 9.6px; }
.catalog-archive__filters button { background: var(--ink); border: 1px solid var(--ink); color: var(--canvas); cursor: pointer; }
.catalog-archive__filters > a { align-content: center; color: inherit; }
.catalog-archive__count { color: var(--muted); font: 18px/1.2 var(--font-serif); margin: 7.2px 0 0; }
.catalog-archive__empty { margin-block: 0 64px; }
.catalog-archive__list { display: grid; gap: 32px 16px; grid-template-columns: repeat(3, minmax(0, 1fr)); inline-size: 100%; max-inline-size: none; padding-block-end: 64px; }
.catalog-archive__list .article-card { border: 0; display: block; inline-size: 100%; max-inline-size: none; }
.catalog-archive__list .article-card__image,
.catalog-archive__list .article-card__image picture { aspect-ratio: 4 / 3; display: block; inline-size: 100%; max-inline-size: none; min-block-size: 0; overflow: hidden; }
.catalog-archive__list .article-card__image img { aspect-ratio: auto; block-size: 100%; inline-size: 100%; max-inline-size: none; object-fit: cover; }
.catalog-archive__list .article-card__copy { display: block; inline-size: 100%; max-inline-size: none; padding: 12px 0 0; }
.catalog-archive__list .article-card :is(h1, h2) { font: 600 21.6px/1.1 var(--font-serif); letter-spacing: -.025em; margin: 1.6px 0; }
.catalog-archive__list .article-card :is(h1, h2) a,
.catalog-archive__list .article-card a { color: inherit; }
.catalog-archive__list .article-card :is(h1, h2) a { text-decoration: none; }
.catalog-archive__list .article-card__summary { color: var(--muted); font: 14.72px/1.3 var(--font-serif); margin-block: 6.4px 0; max-inline-size: none; }

@media (max-width: 900px) {
    .catalog-archive__search { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .catalog-archive__search > label { grid-column: 1 / -1; }
    .catalog-archive__filters > a { display: none; }
    .catalog-archive__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 720px) {
    .catalog-archive.article-pages { inline-size: calc(100% - 32px); }
    .catalog-archive__list { grid-template-columns: 1fr; }
    .catalog-archive__search { align-items: stretch; grid-template-columns: 1fr; }
    .catalog-archive__filters { display: grid; gap: 12px; }
    .catalog-archive__filters > a { display: block; }
}
