/* V31 contextual image treatment: no structural layout change. */
.memory-card .memory-photo {
  position: relative;
  display: block;
  margin: 0;
  height: 270px;
  overflow: hidden;
  background: #21342d;
}
.memory-card .memory-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 44%;
  filter: saturate(.83) contrast(1.025);
}
.memory-card .memory-photo:nth-child(1) img[alt*="olive"] { object-position: center 55%; }
.memory-card .memory-photo figcaption {
  position: absolute;
  inset: auto 0 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 34px 16px 13px;
  color: #fff8e7;
  background: linear-gradient(transparent,rgba(9,20,15,.85));
  font: 10px/1.45 ui-monospace,monospace;
  letter-spacing: .06em;
}
.memory-card .memory-photo figcaption span {
  position: static;
  font: inherit;
  color: #e8d1a3;
  letter-spacing: .12em;
}
.memory-card .memory-photo figcaption a {
  position: relative;
  color: #faf7ed;
  width: fit-content;
  text-underline-offset: 3px;
}
.reading-block.primary-source .source-entry + .source-entry {
  border-top: 1px solid rgba(43,86,67,.17);
  margin-top: 14px;
  padding-top: 12px;
}
