/* Editorial extension: existing GAIST palette, no additional web fonts. */
.journal { --reading-font: Georgia, 'Times New Roman', serif; --reading-size: 1.125rem; --journal-gap: 32px; }
.journal-head { padding-block: 64px 40px; border-bottom: 1px solid var(--line); }
.journal-head h1 { font-family: var(--reading-font); font-weight: 400; font-size: clamp(2.2rem, 5vw, 4rem); max-width: 23ch; line-height: 1.13; text-wrap: balance; }
.journal-head .lede { max-width: 62ch; }
.journal-meta { display: flex; flex-wrap: wrap; gap: 8px 20px; color: var(--ink-soft); font-size: .9rem; margin-block: 24px 8px; }
.journal-translation { color: var(--ink-soft); font-size: .875rem; }
.journal-list { padding-block: 24px 64px; }
.journal-entry { display: grid; gap: 16px; padding-block: var(--journal-gap); border-bottom: 1px solid var(--line); }
.journal-entry h2 { font: 400 clamp(1.65rem, 3vw, 2.25rem)/1.25 var(--reading-font); max-width: 30ch; margin: 0 0 16px; }
.journal-entry p { max-width: 65ch; }
.journal a { text-underline-offset: .2em; }
.journal-entry h2 a { text-decoration: none; }
.journal-entry h2 a:hover { text-decoration: underline; }
.journal-entry .entry-number { font: 400 2rem var(--reading-font); color: var(--accent); }
.journal-layout { display: grid; gap: 48px; padding-block: 48px 80px; }
.journal-body { min-width: 0; max-width: 70ch; }
.journal-body p { font: 400 var(--reading-size)/1.8 var(--reading-font); color: var(--ink); }
.journal-body section { margin-bottom: 40px; scroll-margin-top: 24px; }
.journal-body h2 { font: 400 clamp(1.6rem, 3vw, 2rem)/1.25 var(--reading-font); margin-block: 32px 16px; }
.journal-toc { align-self: start; border-top: 2px solid var(--accent); padding-top: 16px; }
.journal-toc a, .journal-links a { display: block; padding-block: 12px; min-height: 44px; }
.journal-links { border-top: 1px solid var(--line); padding-block: 24px; }
.journal-note { border-top: 1px solid var(--line); padding-top: 24px; color: var(--ink-soft); font-size: .9rem; }
.chart-comparison { display: grid; gap: 24px; }
.chart-comparison figure { margin: 0; min-width: 0; }
.chart-comparison svg { width: 100%; height: auto; display: block; background: var(--paper); border-radius: 16px; }
.chart-comparison figcaption { text-align: center; font-weight: 700; padding-block: 8px; }
.chart-note { font-size: .9rem; color: var(--ink-soft); max-width: 75ch; }
.chart-table { width: 100%; border-collapse: collapse; font-size: .9rem; margin-block: 24px; }
.chart-table caption { text-align: left; font-weight: 700; margin-bottom: 16px; }
.chart-table th, .chart-table td { padding: 12px 6px; border-bottom: 1px solid var(--line); text-align: left; overflow-wrap: anywhere; }
.chart-table thead th { background: var(--soft); }
.chart-table tbody th { font-weight: 600; }
.home-editorial { border-top: 1px solid var(--line); }
.home-editorial .example-grid { display: grid; gap: 32px; align-items: start; }
.home-editorial .example-grid figure { margin: 0; }
.home-editorial .example-grid svg { width: 100%; max-width: 520px; height: auto; }
.home-editorial .example-grid figcaption { font-size: .875rem; color: var(--ink-soft); max-width: 65ch; }
.home-editorial .example-facts { margin: 0; }
.home-editorial dt { margin-top: 24px; font-weight: 700; }
.home-editorial dt:first-child { margin-top: 0; }
.home-editorial dd { margin: 8px 0 0; max-width: 65ch; }
.home-editorial .article-teasers { display: grid; gap: 24px; margin-top: 32px; }
.home-editorial .article-teasers article { border-top: 1px solid var(--line); padding-top: 16px; }
.home-editorial .article-teasers h3 { font-size: 1.25rem; }
.journal a:focus-visible, .home-editorial a:focus-visible { outline: 3px solid var(--accent); outline-offset: 4px; }
@media (min-width: 700px) {
 .journal-entry { grid-template-columns: 64px 1fr; gap: 32px; }
 .home-editorial .article-teasers { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .home-editorial .example-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (min-width: 1100px) {
 .journal-layout { grid-template-columns: minmax(0,3fr) minmax(220px,1fr); gap: 64px; }
 .journal-toc { position: sticky; top: 24px; }
 .chart-comparison { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
/* The added Articles link needs a little more room than the original menu. */
@media (min-width: 1081px) and (max-width: 1240px) {
 .desktop-nav { display: none; }
 .mobile-menu { display: block; }
 .header-actions { margin-left: auto; }
}
