@media (max-width: 1120px) {
  .catalog-workspace.catalog-command--atlas .catalog-controls--atlas { grid-template-columns: minmax(14rem, 1fr) minmax(16rem, 20rem); }
}

@media (max-width: 860px) {
  .catalog-main { width: min(calc(100% - 1rem), 1540px); }
  .catalog-hero { grid-template-columns: 1fr; min-height: auto; padding-top: 4rem; }
  .catalog-hero-art { min-height: 14rem; }
  .catalog-hero-art img { width: 10rem; }
  .catalog-hero-art::before { width: 14rem; }
  .catalog-hero-art::after { width: 9rem; }
  .catalog-workspace.catalog-command--atlas .catalog-controls--atlas,
  .catalog-workspace.catalog-command--atlas .inline-filter-groups,
  .catalog-page--items .catalog-workspace.catalog-command--atlas .inline-filter-groups { grid-template-columns: 1fr; }
  .catalog-source-note { grid-template-columns: 1fr; }
  .catalog-page--items .catalog-workspace.catalog-command--atlas .inline-filter-groups,
  .catalog-page--structures .catalog-workspace.catalog-command--atlas .inline-filter-groups {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 600px) {
  .catalog-hero { padding-inline: .75rem; }
  .catalog-hero h1 { font-size: clamp(2.8rem, 17vw, 4.5rem); }
  .catalog-coverage { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .8rem; }
  .catalog-coverage div { min-width: 0; padding: .7rem; margin: 0; border: 1px solid var(--pal-line); }
  .catalog-switch { display: grid; grid-template-columns: 1fr 1fr; }
  .catalog-switch a { justify-content: center; }
  .catalog-workspace { padding: 1rem; }
  .catalog-results-heading { align-items: flex-start; flex-direction: column; }
  .catalog-result-status { text-align: left; }
  .catalog-workspace.catalog-command--atlas .catalog-primary-sort { grid-template-columns: 1fr; }
  .catalog-workspace.catalog-command--atlas .catalog-primary-sort .atlas-reset { width: 100%; }
  .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
  .catalog-card-media { min-height: 8.2rem; }
  .catalog-card-media img { width: 6.6rem; height: 6.6rem; }
  .catalog-card-copy { min-height: 9.7rem; padding: .75rem; }
  .catalog-card-copy strong { font-size: .9rem; }
  .catalog-card-facts > span:nth-child(2) { display: none; }
  .catalog-page--items .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
  .catalog-page--items .catalog-card--item .catalog-card-button {
    min-height: 13rem;
  }
  .catalog-page--items .catalog-card--item { min-height: 13rem; }
  .catalog-page--items .catalog-card--item .catalog-card-media { top: 1.15rem; right: .45rem; width: 6.1rem; min-height: 6.1rem; }
  .catalog-page--items .catalog-card--item .catalog-card-media::before { width: 6.25rem; }
  .catalog-page--items .catalog-card--item .catalog-card-media img { width: 5.9rem; height: 5.9rem; }
  .catalog-page--items .catalog-card--item .catalog-card-copy { min-height: 13rem; padding: .8rem .75rem .7rem .85rem; }
  .catalog-page--items .catalog-card--item .catalog-card-copy strong { max-width: calc(100% - 6.5rem); font-size: .92rem; }
  .catalog-page--items .catalog-card--item .catalog-card-id,
  .catalog-page--items .catalog-card-rarity { max-width: calc(100% - 7rem); }
  .catalog-page--items .catalog-card--item .catalog-card-id { max-width: 100%; font-size: .48rem; }
  .catalog-page--items .catalog-card-description { margin-top: auto; font-size: .62rem; }
  .catalog-page--items .catalog-card--item .catalog-card-facts > span { display: inline-flex; font-size: .58rem; }
  .catalog-page--structures .catalog-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; }
  .catalog-page--structures .catalog-card--structure .catalog-card-button { min-height: 13rem; }
  .catalog-page--structures .catalog-card--structure { min-height: 13rem; }
  .catalog-page--structures .catalog-card--structure .catalog-card-media { top: 1.15rem; right: .45rem; width: 6.1rem; min-height: 6.1rem; }
  .catalog-page--structures .catalog-card--structure .catalog-card-media img { width: 5.9rem; height: 5.9rem; }
  .catalog-page--structures .catalog-card--structure .catalog-card-copy { min-height: 13rem; padding: .8rem .75rem .7rem .85rem; }
  .catalog-page--structures .catalog-card--structure .catalog-card-copy strong { max-width: calc(100% - 6.5rem); font-size: .92rem; }
  .catalog-page--structures .catalog-card--structure .catalog-card-id,
  .catalog-page--structures .catalog-card--structure .catalog-card-rarity,
  .catalog-page--structures .catalog-card--structure .catalog-card-tech-level { max-width: calc(100% - 7rem); }
  .catalog-page--structures .catalog-card--structure .catalog-card-id { max-width: 100%; font-size: .48rem; }
  .catalog-page--structures .catalog-card--structure .catalog-card-description { margin-top: auto; font-size: .62rem; }
  .catalog-page--structures .catalog-card--structure .catalog-card-facts > span { display: inline-flex; font-size: .58rem; }
  .catalog-pagination { display: grid; grid-template-columns: 1fr 1fr; }
  .catalog-pagination span { grid-column: 1 / -1; grid-row: 1; }
  .catalog-pagination button { min-width: 0; }
}

@media (max-width: 420px) {
  .catalog-main { width: min(calc(100% - 1rem), 1540px); }
  .catalog-workspace { padding: .8rem; }
  .catalog-switch { grid-template-columns: 1fr; }
  .catalog-switch a { width: 100%; }
  .catalog-coverage { gap: .5rem; }
  .catalog-coverage div { min-width: 0; padding: .6rem .55rem; margin: 0; }
  .catalog-coverage dd { font-size: 1.25rem; }
  .catalog-pagination { gap: .45rem; }
  .catalog-pagination button { padding-inline: .55rem; font-size: .62rem; }
}

@media (max-width: 520px) {
  .catalog-page--items .catalog-grid { width: min(100%, 20rem); grid-template-columns: 1fr; margin-inline: auto; }
  .catalog-page--structures .catalog-grid { width: min(100%, 20rem); grid-template-columns: 1fr; margin-inline: auto; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}

@media (max-width: 600px) {
  .catalog-page--items .catalog-workspace.catalog-command--mobile-filters-2 .inline-filter-groups,
  .catalog-page--structures .catalog-workspace.catalog-command--mobile-filters-2 .inline-filter-groups {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .35rem;
  }

  /* Items hides the powered field, so Direction becomes the first control in row two. */
  .catalog-page--items .catalog-workspace.catalog-command--mobile-filters-2 .catalog-field--direction .mobile-filter-panel { left: 0; }
}
