/* Original local publication design. System fonts only; no external requests. */
:root {
  --paper: #fff;
  --ink: #202020;
  --muted: #686663;
  --line: #dcdad6;
  --accent: #b62828;
  --soft: #f4f3f0;
  --white: #fff;
  --serif: "Songti TC", "Noto Serif CJK TC", "Noto Serif TC", "PMingLiU", Georgia, serif;
  --sans: "PingFang TC", "Noto Sans CJK TC", "Microsoft JhengHei", system-ui, sans-serif;
  --max: 1200px;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 24px; }
body { margin: 0; background: var(--paper); color: var(--ink); font: 16px/1.85 var(--sans); -webkit-font-smoothing: antialiased; }
img, svg { max-width: 100%; }
img { display: block; height: auto; }
figure { margin: 0; }
a { color: inherit; text-underline-offset: 5px; text-decoration-thickness: 1px; }
a:hover { color: var(--accent); }
button, input, textarea, select { font: inherit; }
button, a, summary { touch-action: manipulation; }
button, summary { cursor: pointer; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible, summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 5px; }
h1, h2, h3, p { margin: 0; }
h1, h2, h3 { line-height: 1.5; font-weight: 600; overflow-wrap: anywhere; text-wrap: pretty; }
h1, h2, h3 { font-family: var(--serif); }
h1 { font-size: clamp(32px, 4vw, 52px); }
h2 { font-size: 28px; }
h3 { font-size: 23px; }
p { color: var(--muted); overflow-wrap: anywhere; }
main { min-height: 60vh; }
main:focus { outline: none; }
.container, .journal-home, .section, .relationship-strip, .observer-hero, .community-hero, .community-values, .research-layout { width: min(var(--max), calc(100% - 80px)); margin-inline: auto; }
.container { padding-block: 48px 88px; }
.container .section, .journal-home .section, .container .relationship-strip, .journal-home .relationship-strip, .research-layout .section { width: 100%; }
.narrow { max-width: 800px; }
.eyebrow { margin-bottom: 14px; color: var(--accent); font: 600 12px/1.7 var(--sans); letter-spacing: .1em; }
.lead { max-width: 780px; margin-top: 22px; font-size: 18px; line-height: 1.95; }
.preview-note { padding: 5px 16px; text-align: center; background: var(--soft); color: var(--muted); font-size: 10px; letter-spacing: .08em; }
.site-header { border-bottom: 1px solid var(--ink); background: var(--paper); }
.header-inner { width: min(var(--max), calc(100% - 80px)); margin: auto; padding: 27px 0 23px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.brand { display: flex; align-items: center; flex-shrink: 0; gap: 12px; text-decoration: none; font: 700 44px/1.1 var(--serif); letter-spacing: .12em; }
.brand small { display: block; margin-top: 11px; font: 500 9px/1.5 var(--sans); letter-spacing: .19em; }
.brand:hover, .footer-brand:hover { color: var(--ink); }
.desktop-nav { display: flex; align-items: center; gap: 24px; font-size: 13px; }
.desktop-nav a { padding-block: 12px; text-decoration: none; white-space: nowrap; }
.search-link { border-left: 1px solid var(--line); padding-left: 23px; }
.mobile-menu { display: none; }
.skip-link { position: fixed; top: -120px; left: 16px; z-index: 100; background: var(--ink); color: #fff; padding: 12px 20px; }
.skip-link:focus { top: 12px; color: #fff; }
.sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.issue-line, .edition-line { display: flex; justify-content: space-between; gap: 12px 30px; flex-wrap: wrap; padding: 16px 0; border-bottom: 1px solid var(--line); color: var(--muted); font-size: 11px; letter-spacing: .08em; }
.lead-grid { display: grid; grid-template-columns: minmax(0,2fr) minmax(0,1fr); gap: 34px; padding-block: 32px 45px; }
.lead-story, .lead-side { min-width: 0; }
.lead-story > a { display: block; text-decoration: none; }
.lead-story img { width: 100%; aspect-ratio: 16/10; object-fit: cover; }
.lead-copy { padding-top: 25px; }
.lead-copy h2 { font-size: clamp(30px, 3.1vw, 43px); line-height: 1.5; letter-spacing: .015em; }
.lead-copy h2 a { text-decoration: none; }
.lead-copy > p:not(.eyebrow) { margin-top: 16px; font-size: 15px; line-height: 1.95; }
.read-more { display: inline-flex; align-items: center; gap: 25px; margin-top: 22px; padding-bottom: 5px; border-bottom: 1px solid var(--accent); color: var(--accent); font-size: 13px; text-decoration: none; }
.lead-side { border-left: 1px solid var(--line); padding-left: 34px; display: flex; flex-direction: column; gap: 28px; }
.lead-side .article-card + .article-card { padding-top: 26px; border-top: 1px solid var(--line); }
.lead-side .article-card h3, .lead-side .article-card h2 { font-size: 23px; }
.lead-side .article-card p { font-size: 13px; margin-bottom: 14px; }
.lead-side .card-image { aspect-ratio: 16/9; }
.section { padding-block: 35px 42px; }
.section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px 30px; padding-top: 20px; margin-bottom: 28px; border-top: 1px solid var(--ink); }
.section-heading h2 { font-size: 27px; letter-spacing: .04em; }
.section-heading > span, .section-heading > a { color: var(--muted); font-size: 12px; }
.article-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 38px 30px; }
.article-card { min-width: 0; display: flex; flex-direction: column; }
.card-copy { min-width: 0; display: flex; flex-direction: column; flex: 1; }
.card-image { display: block; width: 100%; aspect-ratio: 16/10; overflow: hidden; background: var(--soft); margin-bottom: 18px; }
.card-image img { width: 100%; height: 100%; object-fit: cover; }
img.card-image { object-fit: cover; }
.card-top { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; margin-bottom: 10px; }
.category-label { color: var(--accent); font: 600 12px/1.7 var(--sans); letter-spacing: .06em; }
.issue-number { color: var(--muted); font: 13px/1.7 Georgia,serif; }
.article-card h3, .article-card h2 { font-size: 25px; line-height: 1.55; margin-bottom: 12px; }
.article-card h3 a, .article-card h2 a { text-decoration: none; }
.article-card p { font-size: 14px; line-height: 1.9; margin-bottom: 20px; }
.card-bottom { display: flex; justify-content: space-between; gap: 14px; margin-top: auto; padding-top: 12px; color: var(--muted); font-size: 11px; }
.card-bottom > span:last-child { color: var(--accent); }
.journal-banner { margin-block: 22px 20px; padding: 46px max(40px,calc((100% - var(--max))/2)); background: var(--soft); border-block: 1px solid var(--line); }
.journal-banner h2 { font-size: 30px; }
.journal-banner p { max-width: 760px; margin-top: 14px; font-size: 15px; }
.journal-banner .eyebrow { margin-top: 0; }
.journal-banner .text-link { display: inline-block; margin-top: 22px; }
.contribution { display: flex; align-items: center; justify-content: space-between; gap: 35px; border-top: 1px solid var(--line); }
.contribution > div { max-width: 790px; }
.contribution p:not(.eyebrow) { margin-top: 14px; font-size: 14px; }
.contribution .button { flex-shrink: 0; }
.column-directory { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; }
.column-directory > a { display: flex; gap: 15px; padding-block: 20px; text-decoration: none; }
.column-directory h3 { font-size: 23px; margin-bottom: 9px; }
.column-directory p { font-size: 13px; }
.directory-index { color: var(--accent); font: italic 24px/1.5 Georgia,serif; }
.column-directory > a > span:last-child { margin-left: auto; }
.relationship-strip { display: flex; align-items: center; justify-content: space-between; gap: 35px; padding-block: 32px 45px; border-top: 1px solid var(--line); }
.relationship-strip p { max-width: 850px; font-size: 13px; }
.relationship-strip .eyebrow { margin-bottom: 8px; }
.relationship-strip > a { flex-shrink: 0; font-size: 13px; }
.site-footer { background: var(--soft); border-top: 1px solid var(--line); padding: 48px max(40px,calc((100% - var(--max))/2)) 24px; }
.footer-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 65px; }
.footer-brand { display: inline-flex; align-items: center; gap: 12px; font: 600 33px/1.5 var(--serif); letter-spacing: .1em; text-decoration: none; }
.footer-grid p { max-width: 460px; margin-top: 18px; font-size: 13px; }
.footer-grid nav { display: flex; align-content: start; justify-content: end; flex-wrap: wrap; gap: 15px 25px; }
.footer-grid nav a { font-size: 13px; text-decoration: none; }
.footer-bottom { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 14px 24px; margin-top: 38px; padding-top: 20px; border-top: 1px solid var(--line); color: var(--muted); font-size: 11px; }
.page-intro { padding: 12px 0 44px; }
.page-intro h1 { max-width: 940px; font-size: clamp(34px,4vw,49px); }
.page-intro .lead { max-width: 820px; }
.column-list { display: flex; flex-direction: column; max-width: 1020px; }
.column-list .article-card { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr); column-gap: 34px; padding-block: 28px; border-top: 1px solid var(--line); }
.column-list .article-card > .card-image { grid-column: 1; grid-row: 1; align-self: start; margin-bottom: 0; }
.column-list .article-card > .card-copy { grid-column: 2; grid-row: 1; }
.column-list .article-card .card-bottom { padding-top: 0; }
.breadcrumb { display: flex; flex-wrap: wrap; gap: 8px 12px; margin-bottom: 34px; color: var(--muted); font-size: 12px; }
.breadcrumb a { text-decoration: none; }
.article-header { max-width: 900px; margin: 0 auto 36px; padding-bottom: 30px; border-bottom: 1px solid var(--line); }
.article-header h1 { font-size: clamp(32px,3.7vw,49px); line-height: 1.55; }
.article-header .lead { max-width: 850px; }
.byline { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 20px; margin-top: 27px; color: var(--muted); font-size: 12px; }
.author-badge { display: grid; place-items: center; width: 30px; height: 30px; background: var(--soft); color: var(--accent); }
.article-cover { max-width: 1040px; margin: 0 auto 45px; }
.article-cover img, figure.article-cover img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.article-cover figcaption { padding-top: 10px; font-size: 12px; color: var(--muted); line-height: 1.8; }
.article-layout { display: grid; grid-template-columns: 200px minmax(0,740px); justify-content: center; gap: 48px; }
.article-toc { position: sticky; top: 28px; align-self: start; border-left: 1px solid var(--line); padding-left: 20px; }
.article-toc a { display: block; margin: 15px 0; color: var(--muted); font-size: 13px; line-height: 1.8; text-decoration: none; }
.article-toc a:hover { color: var(--accent); }
.prose { min-width: 0; font-size: 18px; line-height: 2.05; overflow-wrap: anywhere; }
.prose p { margin: 20px 0; color: var(--ink); }
.prose h2 { margin: 44px 0 17px; font-size: 28px; }
.prose h3 { margin-top: 28px; font-size: 24px; }
.prose ul, .prose ol { padding-left: 26px; }
.prose li { margin: 10px 0; }
.prose blockquote { margin: 28px 0; padding: 10px 25px; border-left: 3px solid var(--accent); font-family: var(--serif); font-size: 23px; background: var(--soft); }
.standalone { max-width: 760px; margin: 0 auto 36px; }
.standalone > h2:first-child { margin-top: 0; }
.evidence-note { padding: 23px 26px; background: var(--soft); border-left: 2px solid var(--accent); font-size: 14px; line-height: 1.9; }
.evidence-note p { margin: 8px 0 0; }
.source-box { margin-top: 46px; border-top: 1px solid var(--line); }
.source-box li > span { display: block; font-size: 12px; color: var(--muted); }
.corrections { font-size: 14px; }
.corrections h2 { font-size: 22px; }
.related-grid { grid-template-columns: repeat(2,minmax(0,1fr)); max-width: 1000px; }
.source-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px; }
.source-item { display: block; padding: 28px; border: 1px solid var(--line); text-decoration: none; }
.source-item h2 { margin-block: 16px; font-size: 25px; }
.source-item p { margin-bottom: 20px; font-size: 14px; }
.empty-state { padding: 30px 0; border-block: 1px solid var(--line); display: flex; align-items: start; gap: 25px; }
.empty-state h2, .empty-state h3 { margin-bottom: 15px; font-size: 25px; }
.empty-state p { max-width: 700px; margin-bottom: 18px; font-size: 14px; }
.empty-symbol { font-size: 40px; color: var(--accent); }
.button { display: inline-flex; align-items: center; justify-content: center; gap: 20px; padding: 12px 22px; border: 1px solid var(--accent); border-radius: 0; background: var(--accent); color: #fff; font: 600 14px/1.65 var(--sans); text-decoration: none; }
.button:hover { background: var(--ink); border-color: var(--ink); color: #fff; }
.text-link { font-size: 14px; font-weight: 600; }
.hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 20px 28px; margin-top: 28px; }
input, textarea, select { width: 100%; min-width: 0; padding: 12px 14px; border: 1px solid #aaa7a2; border-radius: 0; background: #fff; color: var(--ink); }
input::placeholder, textarea::placeholder { color: var(--muted); font-size: 14px; }
textarea { resize: vertical; }
.search-form { display: flex; gap: 12px; max-width: 800px; }
.search-form input { flex: 1; }
.search-status { margin-block: 24px; font-size: 14px; }
.worksheet { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; margin-block: 32px; }
.worksheet label { min-width: 0; font-size: 14px; }
.worksheet input, .worksheet select, .worksheet textarea { display: block; margin-top: 8px; }
.worksheet .full { grid-column: 1/-1; }
.check-row { display: flex; align-items: start; gap: 12px; }
.check-row input { width: 20px; height: 20px; flex-shrink: 0; margin-top: 5px; accent-color: var(--accent); }
.form-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 20px; }
.form-actions p { font-size: 13px; }
.notice { padding: 22px 24px; margin-block: 24px; border: 1px solid var(--line); font-size: 14px; }
.tinted { padding: 30px; background: var(--soft); }
.brand-symbol { flex-shrink: 0; object-fit: contain; }
.about-brand { width: 100%; height: auto; margin-block: 32px 14px; }
/* Retained content helpers; no secondary brand theme overrides. */
.community-values { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; padding-block: 22px; border-block: 1px solid var(--line); }
.community-values p { font-size: 13px; }
.community-values strong { color: var(--ink); }
.community-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
.guide-list { display: flex; flex-direction: column; gap: 25px; }
.guide-list .article-card { padding-bottom: 25px; border-bottom: 1px solid var(--line); }
.quick-topics { display: flex; gap: 12px; flex-wrap: wrap; font-size: 12px; }
@media (max-width: 1100px) {
  .desktop-nav { gap: 17px; font-size: 12px; }
  .brand { font-size: 39px; }
  .lead-grid { gap: 27px; }
  .lead-side { padding-left: 27px; }
  .article-grid { gap: 30px 24px; }
  .article-layout { grid-template-columns: 175px minmax(0,1fr); gap: 32px; }
}
@media (max-width: 899px) {
  .desktop-nav { display: none; }
  .mobile-menu { display: block; position: relative; flex-shrink: 0; }
  .mobile-menu summary { padding: 12px 0 12px 16px; font-size: 14px; list-style: none; }
  .mobile-menu summary::-webkit-details-marker { display: none; }
  .mobile-menu nav { position: absolute; top: calc(100% + 12px); right: 0; z-index: 20; width: min(280px,calc(100vw - 40px)); padding: 15px 24px; background: #fff; border: 1px solid var(--line); box-shadow: 0 8px 22px #0000000d; }
  .mobile-menu nav a { display: block; padding-block: 12px; text-decoration: none; font-size: 14px; border-bottom: 1px solid var(--line); }
  .mobile-menu nav a:last-child { border-bottom: 0; }
  .lead-grid { grid-template-columns: minmax(0,1.7fr) minmax(0,1fr); gap: 22px; }
  .lead-side { padding-left: 22px; }
  .lead-side .article-card h3, .lead-side .article-card h2 { font-size: 21px; }
  .article-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .column-directory { gap: 20px; }
  .column-directory h3 { font-size: 21px; }
  .article-layout { display: block; max-width: 740px; margin-inline: auto; }
  .article-toc { position: static; margin-bottom: 32px; padding-block: 4px; }
  .article-toc a { margin-block: 9px; }
  .footer-grid { gap: 35px; }
}
@media (max-width: 640px) {
  .container, .journal-home, .section, .relationship-strip, .observer-hero, .community-hero, .community-values, .research-layout, .header-inner { width: calc(100% - 40px); }
  .container { padding-block: 26px 55px; }
  .header-inner { padding-block: 22px 20px; gap: 14px; }
  .brand { font-size: 36px; letter-spacing: .1em; }
  .brand small { font-size: 7px; letter-spacing: .16em; margin-top: 9px; }
  .preview-note { font-size: 9px; }
  .issue-line, .edition-line { font-size: 10px; padding-block: 13px; gap: 5px 12px; letter-spacing: .02em; }
  .lead-grid { grid-template-columns: minmax(0,1fr); padding-block: 22px 30px; gap: 30px; }
  .lead-copy { padding-top: 18px; }
  .lead-copy h2 { font-size: 31px; }
  .lead-copy > p:not(.eyebrow) { font-size: 14px; margin-top: 14px; }
  .lead-side { padding-left: 0; padding-top: 28px; border-left: 0; border-top: 1px solid var(--line); gap: 28px; }
  .lead-side .article-card h3, .lead-side .article-card h2 { font-size: 25px; }
  .section { padding-block: 26px 32px; }
  .section-heading { margin-bottom: 23px; padding-top: 17px; gap: 14px; }
  .section-heading h2 { font-size: 25px; flex-shrink: 0; }
  .section-heading > span { font-size: 11px; text-align: right; }
  .article-grid, .related-grid, .community-grid, .source-list { grid-template-columns: minmax(0,1fr); gap: 30px; }
  .article-card h3, .article-card h2 { font-size: 25px; }
  .card-image { margin-bottom: 16px; }
  .journal-banner { margin-block: 16px; padding: 26px 22px; }
  .journal-banner h2 { font-size: 26px; }
  .journal-banner p { font-size: 14px; }
  .contribution { display: block; }
  .contribution h2 { font-size: 26px; }
  .contribution .button { margin-top: 24px; }
  .column-directory { grid-template-columns: minmax(0,1fr); gap: 0; }
  .column-directory > a { gap: 18px; padding-block: 22px; }
  .column-directory > a + a { border-top: 1px solid var(--line); }
  .column-directory h3 { font-size: 23px; }
  .relationship-strip { display: block; padding-block: 27px 35px; }
  .relationship-strip > a { display: inline-block; margin-top: 17px; }
  .site-footer { padding: 35px 20px 24px; }
  .footer-grid { grid-template-columns: minmax(0,1fr); gap: 28px; }
  .footer-grid nav { justify-content: start; gap: 12px 24px; }
  .footer-bottom { flex-direction: column; margin-top: 30px; gap: 12px; }
  .page-intro { padding: 12px 0 32px; }
  .page-intro h1 { font-size: 34px; }
  .lead { font-size: 16px; margin-top: 18px; }
  .column-list .article-card { display: flex; padding-block: 24px; }
  .column-list .article-card > .card-image { margin-bottom: 18px; width: 100%; }
  .column-list .article-card .card-bottom { padding-top: 10px; }
  .breadcrumb { margin-bottom: 25px; font-size: 11px; }
  .article-header { padding-bottom: 25px; margin-bottom: 25px; }
  .article-header h1 { font-size: 32px; }
  .byline { font-size: 11px; gap: 8px 14px; }
  .article-cover { margin-bottom: 30px; }
  .article-cover figcaption { font-size: 11px; }
  .prose { font-size: 17px; line-height: 2; }
  .prose h2 { font-size: 25px; margin-top: 35px; }
  .prose h3 { font-size: 22px; }
  .prose blockquote { padding: 12px 19px; font-size: 21px; }
  .evidence-note { padding: 18px 20px; font-size: 13px; }
  .source-item { padding: 23px; }
  .source-item h2 { font-size: 23px; }
  .empty-state { gap: 16px; }
  .empty-state h2, .empty-state h3 { font-size: 23px; }
  .worksheet { grid-template-columns: minmax(0,1fr); gap: 20px; }
  .search-form { gap: 8px; }
  .search-form .button { padding-inline: 17px; flex-shrink: 0; }
  .notice { padding: 19px 20px; }
  .tinted { padding: 24px 20px; }
  .community-values { grid-template-columns: minmax(0,1fr); gap: 12px; }
}
@media (max-width: 360px) {
  .brand { font-size: 32px; }
  .brand small { font-size: 6px; }
  .lead-copy h2, .article-header h1 { font-size: 29px; }
  .page-intro h1 { font-size: 31px; }
  .section-heading { align-items: start; }
  .section-heading h2 { font-size: 23px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
@media print {
  .site-header, .site-footer, .preview-note, .article-toc, .hero-actions, .skip-link, .worksheet, .search-form { display: none; }
  body { background: #fff; color: #000; font-size: 12pt; }
  .container, .journal-home, .section, .relationship-strip { width: 100%; margin: 0; padding-block: 12pt; }
  .article-layout { display: block; }
  .prose { max-width: none; font-size: 12pt; }
  .article-header { max-width: none; }
  .article-card, figure, .source-item { break-inside: avoid; }
  h1, h2, h3 { break-after: avoid; }
  a { color: #000; }
}

/* Brand identity and Project52 editorial context. */
.brand .brand-logo { width: 230px; height: auto; }
.footer-brand img { width: 180px; height: auto; }
.brand-intro { display: grid; grid-template-columns: 1fr 1.35fr; gap: 50px; padding: 32px 0; border-bottom: 1px solid var(--line); align-items: center; }
.brand-intro h1 { font-size: 29px; }
.brand-intro p { font-size: 14px; }
.brand-intro .eyebrow { font-size: 11px; margin-bottom: 8px; }
.brand-intro .text-link { display: inline-block; margin-top: 10px; font-size: 13px; }
.project-feature { display:flex; align-items:center; justify-content:space-between; gap:30px; border-block:1px solid var(--line); padding-block:32px; }
.project-feature p { max-width:760px; margin-top:10px; }
.project-feature .button { flex-shrink:0; }
@media(max-width:1100px){ .brand .brand-logo {width:190px;} }
@media(max-width:640px){
 .brand .brand-logo {width:165px;}
 .brand-intro {grid-template-columns:1fr;gap:14px;padding:24px 0;}
 .brand-intro h1 {font-size:25px;}
 .project-feature {display:block;}
 .project-feature h2 {font-size:25px;}
 .project-feature .button {margin-top:20px;}
}

/* Reader edition: photographic lead, quieter caption system, custom wordmark. */
.brand .brand-logo { width: 220px; height: auto; }
.footer-brand img { width: 160px; height: auto; }
.brand-intro { grid-template-columns: 1fr 1.25fr; padding-block:30px; }
.brand-intro h1 {font-size:30px;line-height:1.55;}
.brand-intro p {font-size:15px;}
.article-cover figcaption {display:block;max-width:100%;line-height:1.8;}
.photo-credit {margin-left:10px;white-space:normal;}
.image-credit-list {max-width:850px;margin:0 auto;padding-left:25px;}
.image-credit-list li {padding:28px 0;border-bottom:1px solid var(--line);}
.image-credit-list h2 {font-size:25px;margin-bottom:12px;}
@media(max-width:1100px){.brand .brand-logo{width:180px;}}
@media(max-width:640px){.brand .brand-logo{width:156px;}.brand-intro{grid-template-columns:1fr;}.brand-intro h1{font-size:25px;}.brand-intro p{font-size:14px;}.photo-credit{display:block;margin-left:0;}}

/* Shared pictorial mark alongside the existing Chinese wordmark. */
.brand .brand-symbol { width: 52px; height: 52px; }
.footer-brand .brand-symbol { width: 40px; height: 40px; }
@media (max-width:1100px) { .brand .brand-symbol { width:44px; height:44px; } }
@media (max-width:640px) { .brand { gap:8px; } .brand .brand-symbol { width:36px; height:36px; } }

/* Homepage dossier, reading paths and reader invitation. */
.dossier-feature { display:grid; grid-template-columns:1fr 1fr; gap:64px; margin-block:48px 12px; padding:48px; background:#252d2b; color:#fff; }
.dossier-feature .eyebrow { color:#e8b99c; margin-bottom:20px; }
.dossier-copy h2 { font-size:40px; line-height:1.4; letter-spacing:.02em; }
.dossier-copy > p:not(.eyebrow) { color:#c4ccca; font-size:14px; max-width:390px; margin-top:20px; }
.dossier-link { display:inline-flex; align-items:center; gap:40px; border-bottom:1px solid #d9c2a8; margin-top:28px; padding-bottom:8px; color:#f3ddc4; font-size:14px; text-decoration:none; }
.dossier-link:hover {color:white;}
.dossier-chapters { align-self:center; }
.dossier-caption { display:flex; justify-content:space-between; font-size:11px; letter-spacing:.12em; color:#c4ccca; padding-bottom:16px; }
.dossier-chapters a { display:flex; gap:18px; align-items:center; border-top:1px solid #59605d; padding:22px 0; text-decoration:none; }
.dossier-chapters a > span { color:#d7b18e; font:italic 19px Georgia,serif; }
.dossier-chapters small { color:#b5c0bb; font-size:11px; }
.dossier-chapters h3 { font-size:20px; margin-top:4px; }
.dossier-chapters b { margin-left:auto; font-size:20px; font-weight:400; color:#d7b18e; }
.dossier-chapters a:hover {color:#f3ddc4;}
.reading-paths { padding-block:40px 46px; }
.reading-paths .section-heading { border:0; padding-top:0; }
.reading-paths .column-directory {gap:16px;}
.reading-paths .column-directory > a { display:grid; grid-template-columns:1fr auto; gap:26px 12px; padding:26px; background:#f3f0e9; border:1px solid transparent; transition:background .2s,border-color .2s; }
.reading-paths .column-directory > a:nth-child(2) {background:#edf1ef;}
.reading-paths .column-directory > a:nth-child(3) {background:#f5eeeb;}
.reading-paths .directory-index { font-size:38px; line-height:1; color:#8a7660; }
.reading-paths .column-directory > a > div { grid-column:1/-1; grid-row:2; }
.reading-paths .column-directory > a > span:last-child {grid-column:2;grid-row:1;font-size:23px;}
.reading-paths .column-directory h3 {font-size:27px;}
.reading-paths .column-directory p {font-size:14px;line-height:1.9;}
.reading-paths .column-directory > a:hover { border-color:#a88b72; background:white; color:var(--ink); }
.reader-invitation { display:grid; grid-template-columns:1fr 2fr; gap:48px; padding:40px 48px; margin-bottom:32px; border-block:1px solid #c6b6a2; background:#faf8f4; }
.invitation-label {display:flex;flex-direction:column;justify-content:space-between;}
.invitation-glyph {font:150px/.8 Georgia,serif;color:#cdb69c; height:95px;}
.invitation-copy {display:grid;grid-template-columns:1fr 1fr;gap:20px 32px;align-items:start;}
.invitation-copy h2 {font-size:32px;line-height:1.5;}
.invitation-copy p {font-size:14px;}
.invitation-copy .text-link {font-size:14px;justify-self:start;}
.invitation-copy small {font-size:11px;color:var(--muted);}
@media(max-width:900px){.dossier-feature{gap:30px;padding:32px;}.dossier-copy h2{font-size:34px;}.dossier-chapters h3{font-size:18px;}.reader-invitation{grid-template-columns:1fr 3fr;padding:32px;gap:28px;}.invitation-copy{grid-template-columns:1fr;}.reading-paths .column-directory > a{padding:20px;}}
@media(max-width:640px){.dossier-feature{grid-template-columns:1fr;padding:28px 24px;margin-top:28px;gap:32px;}.dossier-copy h2{font-size:32px;}.dossier-chapters a{padding:18px 0;}.reading-paths .section-heading{display:block;}.reading-paths .section-heading > span{display:block;text-align:left;margin-top:8px;}.reading-paths .column-directory{gap:12px;}.reading-paths .column-directory > a{gap:14px;padding:24px;}.reading-paths .directory-index{font-size:30px;}.reading-paths .column-directory h3{font-size:25px;}.reader-invitation{grid-template-columns:1fr;padding:28px 24px;gap:12px;}.invitation-glyph{display:none;}.invitation-copy h2{font-size:28px;}.invitation-copy{gap:18px;}}
@media(prefers-reduced-motion:reduce){.reading-paths .column-directory > a{transition:none;}}

/* Original editorial illustrations: industry, research and everyday money. */
.dossier-feature { position:relative; overflow:hidden; gap:52px; padding:36px 48px 42px; }
.dossier-feature::after { content:""; position:absolute; width:240px; height:240px; right:-170px; bottom:-170px; border:1px solid #71836a; border-radius:50%; box-shadow:0 0 0 20px #71836a18,0 0 0 40px #71836a12; pointer-events:none; }
.dossier-copy { display:grid; grid-template-columns:1fr 160px; align-items:start; }
.dossier-copy .eyebrow { grid-column:1/-1; grid-row:1; margin-bottom:20px; }
.dossier-copy h2 { grid-column:1/-1; grid-row:2; }
.dossier-copy > p:not(.eyebrow) {grid-column:1/-1;grid-row:3;max-width:360px;}
.dossier-copy .dossier-link {grid-column:1;grid-row:4;align-self:center;justify-self:start;gap:22px;}
.dossier-art {grid-column:2;grid-row:4;width:180px;max-width:none;margin:0 0 -20px -10px;}
.dossier-chapters {padding-top:22px;}
.reading-paths .column-directory > a { position:relative; grid-template-columns:1fr auto; gap:12px; padding:22px 26px 28px; overflow:hidden; }
.reading-paths .directory-index {font-size:24px;}
.reading-paths .directory-art { grid-column:1/-1; grid-row:2; width:100%; height:170px; object-fit:contain; margin-block:0 12px; }
.reading-paths .column-directory > a > div {grid-row:3;}
.reading-paths .column-directory > a > span:last-child {font-size:20px;}
.reading-paths .column-directory h3 {margin-bottom:10px;}
.reader-invitation {grid-template-columns:240px 1fr; padding:32px 40px; align-items:center; background:#f6f0e6; gap:32px;}
.invitation-label {gap:0;}
.invitation-label .eyebrow {margin-left:20px;margin-bottom:0;}
.invitation-art {width:240px;height:auto;}
.invitation-copy {grid-template-columns:1fr 1.2fr;}
@media(max-width:1000px){.dossier-copy{grid-template-columns:1fr 120px;}.dossier-art{width:150px;}.reading-paths .directory-art{height:135px;}.reading-paths .column-directory > a{padding:20px;}.reader-invitation{grid-template-columns:180px 1fr;padding:28px;}.invitation-art{width:180px;}.invitation-copy{grid-template-columns:1fr;gap:14px;}}
@media(max-width:640px){.dossier-feature{padding:28px 24px;gap:24px;}.dossier-copy{grid-template-columns:1fr 130px;}.dossier-copy .dossier-link{gap:12px;font-size:13px;}.dossier-art{width:150px;margin-left:0;}.dossier-chapters{padding-top:0;}.reading-paths .column-directory > a{padding:20px 24px 26px;}.reading-paths .directory-art{height:155px;margin-bottom:0;}.reader-invitation{grid-template-columns:1fr;padding:24px;gap:0;}.invitation-label{flex-direction:row;align-items:center;}.invitation-label .eyebrow{margin-left:0;}.invitation-art{width:170px;margin-top:-12px;margin-bottom:8px;}.invitation-copy{gap:18px;}}
.reading-paths .column-directory > a { grid-template-rows:24px 182px 1fr; align-content:start; }
@media(max-width:1000px){.reading-paths .column-directory > a{grid-template-rows:24px 147px 1fr;}}
@media(max-width:640px){.reading-paths .column-directory > a{grid-template-rows:24px 155px 1fr;}}

/* Publication colophon: restrained masthead, grouped links, warm dark palette. */
.site-footer { background:#222b28; color:#eeeae1; border-top:3px solid #bba080; padding:54px max(40px,calc((100% - var(--max))/2)) 22px; }
.footer-grid { grid-template-columns:minmax(240px,1fr) minmax(0,1.5fr); gap:72px; }
.footer-brand { gap:10px; align-items:center; }
.footer-brand .brand-symbol { width:36px; height:36px; }
.footer-brand .footer-wordmark { width:152px; height:auto; filter:invert(1); }
.footer-grid .footer-motto { color:#eeeae1; font:400 24px/1.65 var(--serif); letter-spacing:.05em; margin-top:22px; }
.footer-edition {display:block;margin-top:18px;font:10px/1.6 var(--sans);letter-spacing:.18em;color:#acb7b0;}
.footer-grid .footer-navigation { display:grid; grid-template-columns:1.15fr 1fr 1fr; align-content:start; justify-content:initial; gap:30px; padding-top:8px; }
.footer-link-group { display:flex; flex-direction:column; align-items:flex-start; gap:12px; }
.footer-link-group h2 {font:500 11px/1.5 var(--sans);letter-spacing:.16em;color:#cfb797;margin:0 0 10px;}
.footer-grid nav a {color:#dddcd4;font-size:13px;line-height:1.7;text-decoration:none;}
.footer-grid nav a:hover {color:white;text-decoration:underline;text-underline-offset:5px;}
.footer-bottom {border-color:#49504b;margin-top:44px;padding-top:20px;align-items:center;color:#acb7b0;font-size:11px;letter-spacing:.02em;}
.footer-signoff {font-family:var(--serif);letter-spacing:.1em;}
.footer-top {display:inline-flex;align-items:center;gap:14px;color:#eeeae1;text-decoration:none;}
.footer-top > span {display:grid;place-items:center;border:1px solid #657267;border-radius:50%;width:30px;height:30px;font-size:16px;}
.footer-top:hover {color:#e5c5a0;}
.site-footer a:focus-visible {outline-color:#e5c5a0;}
@media(max-width:900px){.footer-grid{gap:36px;grid-template-columns:1fr 1.5fr;}.footer-grid .footer-navigation{gap:18px;}.footer-signoff{display:none;}}
@media(max-width:640px){.site-footer{padding:36px 24px 20px;}.footer-grid{grid-template-columns:1fr;gap:34px;}.footer-identity{padding-bottom:28px;border-bottom:1px solid #49504b;}.footer-grid .footer-motto{font-size:22px;margin-top:18px;}.footer-grid .footer-navigation{grid-template-columns:1fr 1fr;gap:28px 20px;padding:0;}.footer-link-group:first-child{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;}.footer-link-group:first-child h2{grid-column:1/-1;}.footer-bottom{margin-top:30px;font-size:10px;}.footer-brand .brand-symbol{width:32px;height:32px;}.footer-brand .footer-wordmark{width:144px;}}
