/* Compact introductions let the side lighting frame the title before the content. */
body:not(.is-home) :is(.shop-page, .tools-page, .library-page) { padding-top: 56px; }
.shop-page .shop-heading {
  display: block;
  max-width: 900px;
  margin: 0 auto 48px;
  text-align: center;
}
.shop-page .shop-heading p { max-width: 64ch; margin: 20px auto 0; }
.tools-page .workflow-detail-heading {
  flex-direction: column;
  align-items: center;
  gap: 20px;
  margin-bottom: 40px;
  text-align: center;
}
.tools-page .workflow-detail-heading .pack-collection-tabs { justify-content: center; }
.library-page .library-heading {
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  gap: 20px;
}
.library-page .library-heading .page-title { max-width: 760px; text-align: center; }
.library-page .library-heading .page-title p { margin: 20px auto 0; }
.library-page .library-heading .library-start {
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 12px 18px;
}
.library-page .library-jumps { justify-content: center; }
@media (max-width: 836px) {
  body:not(.is-home) :is(.shop-page, .tools-page, .library-page) { padding-top: 32px; }
  .shop-page .shop-heading { margin-bottom: 32px; }
  .shop-page .shop-heading p, .library-page .library-heading .page-title p { margin-top: 16px; }
  .tools-page .workflow-detail-heading { gap: 16px; margin-bottom: 28px; }
  .tools-page .workflow-detail-heading .pack-collection-tabs { display: flex; flex-wrap: wrap; gap: 8px 16px; }
  .library-page .library-heading { gap: 16px; }
}
