/* Keep 约现经历 typography in step with the formal appreciation articles. */
@font-face {
  font-family: "Jianshang Appreciation Serif";
  src: url("fonts/jianshang-serif-complete-v64.woff2?v=20260913-1") format("woff2");
  font-style: normal;
  font-weight: 250 900;
  font-display: block;
}

body[data-meetup-article="true"] {
  --appreciation-serif: "Songti SC", "STSong", "Jianshang Appreciation Serif", "Jianshang Serif", "Noto Serif CJK SC", "Noto Serif SC", "Source Han Serif SC", "SimSun", serif;
  font-family: var(--appreciation-serif);
  font-synthesis: none;
  text-rendering: optimizeLegibility;
}

html:not([data-reading-font]) body[data-meetup-article="true"],
html[data-reading-font="serif"] body[data-meetup-article="true"] {
  --reading-cn: var(--appreciation-serif);
  --reading-weight: 400;
}

body[data-meetup-article="true"] .masthead h1 {
  width: min(calc(100vw - 48px), 1100px);
  max-width: none;
  margin-left: 50%;
  font-family: var(--appreciation-serif);
  font-size: clamp(34px, 4.1vw, 52px);
  font-synthesis: none;
  white-space: nowrap;
  transform: translateX(-50%);
}

body[data-meetup-article="true"] main.article > p {
  margin-top: 0;
  margin-bottom: 1.35em;
  font-family: var(--reading-cn, var(--appreciation-serif)) !important;
  font-size: 18px !important;
  font-weight: var(--reading-weight, 400) !important;
  line-height: 1.95 !important;
  letter-spacing: .012em !important;
  text-align: justify;
  text-justify: inter-character;
  text-wrap: pretty;
  font-synthesis: none;
  hanging-punctuation: first allow-end last;
  orphans: 3;
  widows: 3;
}

@media (max-width: 700px) {
  body[data-meetup-article="true"] .masthead h1 {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    font-size: clamp(28px, 8vw, 39px);
    white-space: normal;
    text-wrap: balance;
    transform: none;
  }

  body[data-meetup-article="true"] main.article > p {
    margin-bottom: 1.25em;
    font-size: clamp(16px, 4.2vw, 17px) !important;
    line-height: 1.9 !important;
    letter-spacing: .006em !important;
  }
}
