/* Chinese line-break baseline: no punctuation stranded at line start. */
body { line-break: strict; word-break: normal; }
.letter-answer__body, .letter-reference { overflow-wrap: anywhere; }

.content-container, .reading-container, .wide-container {
  width: min(100% - (var(--gutter) * 2), var(--width-content));
  margin-inline: auto;
}
.reading-container { max-width: var(--width-reading); }
.wide-container { max-width: var(--width-content); }
.site-main { min-height: 65vh; }
.section { padding-block: 76px; }
.section--hero { padding-block: 70px 84px; }
.stack-lg > * + * { margin-top: var(--space-5); }
.stack-xl > * + * { margin-top: var(--space-6); }
.reading-measure { max-width: 42em; }
.shell-placeholder { min-height: 62vh; display: grid; align-items: center; }
.editorial-rule { width: 3.5rem; height: 1px; background: var(--color-gold); margin-block: var(--space-6); }
.section-heading { margin-bottom: var(--space-6); }
.section-heading > * { margin-block: 0; }
.section-heading > * + * { margin-top: var(--space-3); }
.component-row { display: flex; flex-wrap: wrap; gap: var(--space-3); align-items: center; }
.token-grid, .card-grid { display: grid; gap: var(--space-4); grid-template-columns: 1fr; }

@media (min-width: 761px) and (max-width: 920px) {
  .section { padding-block: clamp(76px, 10vw, 92px); }
  .section--hero { padding-block: 76px 92px; }
  .token-grid, .card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (min-width: 921px) {
  .section { padding-block: clamp(96px, 9vw, 132px); }
  .section--hero { padding-block: 72px 96px; }
  .token-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
