/* Type roles: expressive Chinese display, quiet body, condensed Latin display. */
:root {
  --font-body: 'Noto Sans SC', 'PingFang SC', 'Microsoft YaHei', sans-serif;
  --font-display: 'Smiley Sans', 'Noto Sans SC', sans-serif;
  --font-latin: 'Barlow Condensed', 'Noto Sans SC', sans-serif;
  --font-rounded: 'M PLUS Rounded 1c', 'Noto Sans SC', sans-serif;
  --font-handwritten: 'LXGW WenKai', 'Noto Sans SC', serif;
  --muted: #625b6c;
}

body { font-family: var(--font-body); }
.hero h1, .about-banner h2, .entry-header h1, .archive-main h1, .not-found h1 {
  font-family: var(--font-display);
  font-weight: 400;
  font-synthesis: none;
  letter-spacing: .02em;
  line-height: 1.45;
}
.hero h1 { padding-right: .12em; }
.hero-description { font-size: 18px; line-height: 1.95; }
.news-intro p, .about-banner p { font-size: 14px; }
.hero-description, .about-banner p, .entry-content blockquote {
  font-family: var(--font-handwritten);
  font-weight: 400;
  font-style: normal;
}
.about-banner p { font-size: 18px; line-height: 1.95; }
.entry-content blockquote { font-size: 19px; line-height: 1.95; }
.entry-content blockquote cite {
  font-family: var(--font-body);
  font-size: 13px;
  font-style: normal;
}
.hero-japanese {
  font-family: var(--font-rounded);
  font-weight: 500;
  letter-spacing: .12em;
}
.entry-content { font-size: 16px; line-height: 1.95; }
.pickup-card h3, .news-row h3 { font-weight: 600; }

.section-heading h2, .news-intro h2, .card-art strong,
.site-navigation a, .brand>a, .footer-brand,
.marquee>div, .eyebrow, .section-kicker, .about-signature {
  font-family: var(--font-latin);
  font-weight: 700;
}
.section-heading h2, .news-intro h2 {
  font-weight: 800;
  letter-spacing: .01em;
}
.section-heading h2 span, .news-intro h2 span, .brand small {
  font-family: var(--font-body);
  font-weight: 400;
}
.card-art strong { letter-spacing: 0; font-weight: 800; }
.card-art.art-fallback strong {
  font-family: var(--font-body);
  font-weight: 700;
}
.card-art.art-story strong {
  font-family: var(--font-rounded);
  font-weight: 700;
  letter-spacing: .02em;
}
.site-navigation a { font-size: 15px; letter-spacing: 1px; }
.section-kicker { font-size: 11px; letter-spacing: 1.5px; }
.eyebrow { font-size: 13px; letter-spacing: 1.8px; }
.marquee>div { font-size: 16px; letter-spacing: 2px; }
.about-banner h2 span { font-family: var(--font-body); }
.entry-content pre, .entry-content code { font-family: ui-monospace, Consolas, monospace; }

@media (max-width: 650px) {
  .hero h1 { font-size: 46px; }
  .news-intro p { font-size: 14px; }
  .hero-description, .about-banner p { font-size: 17px; }
  .entry-content blockquote { font-size: 18px; }
  .section-kicker { font-size: 10px; }
  .eyebrow { font-size: 12px; }
  .marquee>div { font-size: 14px; }
  .entry-header h1, .archive-main h1 { font-size: 30px; }
  .about-banner h2 { font-size: 30px; }
}
