/* Compact square tiles with tradition-specific type icons. */
.cards { grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr)); }
.card-inner { width: 100%; height: auto; min-height: 0; aspect-ratio: 1; }
.front > img { min-height: 0; aspect-ratio: auto; flex: 1 1 auto; object-fit: contain; }
.caption { display: flex; align-items: center; gap: 11px; min-height: 56px; padding: 7px 13px 8px; }
.caption .type-icon { display: block; flex: 0 0 42px; width: 42px; height: 42px; aspect-ratio: auto; object-fit: contain; background: #fff; }
.card-title { font-size: clamp(16px, 1.35vw, 20px); line-height: 1.12; }
.back { overflow: hidden; padding: 17px 18px 16px; }
.back h3 { margin: 0 0 9px; font-size: clamp(18px, 1.55vw, 23px); line-height: 1.12; }
.back .long-summary { margin: 0 0 8px; font-size: clamp(10.5px, .84vw, 12px); line-height: 1.45; }
.back .source { margin: 0 0 7px; font-size: clamp(8px, .65vw, 9.5px); line-height: 1.35; }
.back .links { gap: 8px; padding-top: 8px; }
.back a { font-size: 10px; }
.back button { min-height: 32px; padding: 6px 8px; font-size: 9px; }
.card, .back a, .back button { cursor: pointer; }
@media (max-width: 700px) { .card-inner { min-height: 0; } }
@media (max-width: 700px) {
 main { padding-inline: 16px; }
 .masthead { min-height: 60px; }
 .brand { font-size: 25px; }
 .masthead > div { gap: 20px; }
 .masthead > div a { min-height: 44px; display: flex; align-items: center; }
 header { padding: 27px 0 21px; }
 header .eyebrow { margin-bottom: 11px; }
 h1 { font-size: clamp(35px, 10.5vw, 42px); line-height: 1.08; letter-spacing: -1px; }
 .intro { margin-top: 15px; line-height: 1.6; }
 .intro br { display: none; }
 .collection-count { margin-top: 13px; }
 .traditions {
  gap: 25px;
  margin: 0 -16px 20px;
  padding: 0 16px;
  scroll-padding-inline: 16px;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
 }
 .traditions::-webkit-scrollbar,
 .collections::-webkit-scrollbar { display: none; }
 .traditions button { min-height: 55px; scroll-snap-align: start; }
 .collections {
  margin: 0 -16px 20px;
  padding: 0 16px 7px;
  scroll-padding-inline: 16px;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
 }
 .collections button { min-height: 46px; scroll-snap-align: start; }
 .taxonomy { margin-bottom: 22px; }
 .section-top { align-items: flex-start; }
 .section-top > div { min-width: 0; }
 .description { margin-bottom: 18px; }
 .filters { gap: 10px; }
 .filters input,
 .filters select { min-height: 48px; font-size: 13px; }
 .back a { font-size: 12px; }
 .back button { min-height: 40px; padding: 8px 10px; font-size: 11px; }
 .more { width: 100%; min-height: 48px; }
}
@media (max-width: 640px) {
 .cards { grid-template-columns: 1fr; gap: 16px; }
}
@media (min-width: 701px) and (max-width: 820px) {
 .workspace { display: block; }
 aside > .eyebrow { display: none; }
 .collections {
  display: flex;
  gap: 7px;
  margin: 0 -4px 22px;
  padding: 0 4px 8px;
  overflow-x: auto;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
 }
 .collections::-webkit-scrollbar { display: none; }
 .collections button {
  flex: 0 0 auto;
  min-height: 46px;
  white-space: nowrap;
  border: 1px solid var(--line);
  scroll-snap-align: start;
 }
 .taxonomy { margin: 0 0 24px; padding-top: 12px; }
}
@media (max-width: 420px) {
 .card-inner { min-height: 0; }
 .front > img { max-height: none; }
 .back { padding: 18px; }
 .back .long-summary { font-size: 11.5px; line-height: 1.45; }
 .back .source { font-size: 9.5px; }
 .section-top { display: grid; grid-template-columns: minmax(0,1fr) auto; }
 .section-top .quiet { min-height: 44px; }
}
@media (max-width: 360px) {
 .card-inner { aspect-ratio: auto; }
}

/* All traditions share the same reading interactions. */
.back { overflow-y: auto; }

.tradition-hero{display:flex;align-items:center;gap:32px;padding:28px;background:#eee8d955;margin:24px 0 40px}.tradition-hero img{width:220px;height:220px;object-fit:contain}.tradition-hero p{max-width:650px;line-height:1.7}.tradition-hero a{color:#216751}@media(max-width:650px){.tradition-hero{gap:16px;padding:16px;align-items:flex-start}.tradition-hero img{width:110px;height:130px}.tradition-hero p{font-size:13px}}

.card-label{display:flex;flex-direction:column;gap:.35rem;text-align:left}.card-kind{font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:#65726a;font-weight:600}.back>.card-kind{margin-bottom:.6rem}

.background-sources{font-size:10px;line-height:1.5;color:#63716a;margin:0 0 12px}.background-sources summary{cursor:pointer;color:#22664e}.background-sources ul{padding-left:16px}.background-sources li{margin-top:6px}

/* Back to the fire: link home to prometheus.is, set before the Mythos brand */
.pm-crumb{display:flex;align-items:center;gap:14px;min-width:0}.pm-home{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;min-width:44px;padding-right:14px;border-right:1px solid var(--line);color:var(--ink);text-decoration:none;font:italic 15px/1 Georgia,'EB Garamond',serif;letter-spacing:.01em;white-space:nowrap}.pm-home img{display:block;width:26px;height:26px;flex:none}.pm-home:hover span{text-decoration:underline;text-underline-offset:4px}.pm-home:focus-visible{outline:3px solid #b3882f;outline-offset:4px}@media(max-width:359px){.pm-crumb{gap:10px}.pm-home{padding-right:10px}.pm-home span{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}}
