.journal-hero { padding-block: var(--space-6) var(--space-7); }
.journal-eyebrow { margin: 0 0 var(--space-4); color: var(--muted); font-size: var(--font-label); }
.journal-hero h1 { margin: 0; max-width: 24ch; font-size: clamp(var(--font-3xl), 4vw, var(--font-display)); line-height: 1.1; letter-spacing: -.05em; font-weight: 600; }
.journal-lead { max-width: 65ch; margin: var(--space-5) 0 0; font-size: var(--font-lead); line-height: 1.6; color: var(--muted); }
.journal-topics { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: var(--space-4); padding-block: 0 var(--space-7); }
.journal-topic { border-top: var(--border-width) solid var(--line); padding-top: var(--space-5); }
.journal-topic h2 { margin: 0 0 var(--space-3); font-size: var(--font-lg); font-weight: 550; }
.journal-topic p { margin: 0; color: var(--muted); line-height: 1.7; }
.journal-section { padding-block: var(--space-7); border-top: var(--border-width) solid var(--line); }
.journal-section h2 { margin: 0 0 var(--space-5); font-size: var(--font-3xl); letter-spacing: -.04em; font-weight: 550; }
.journal-empty { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: var(--space-5); border: var(--border-width) solid var(--line); border-radius: var(--radius-card); padding: var(--space-6); }
.journal-empty p { margin: 0; color: var(--muted); font-size: var(--font-md); }
.journal-empty a { display: inline-flex; align-items: center; gap: var(--space-3); min-height: var(--control-size); }
.journal-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: var(--space-5); }
.journal-card { border: var(--border-width) solid var(--line); border-radius: var(--radius-card); overflow: hidden; }
.journal-card-cover { display: block; overflow: hidden; }
.journal-card-cover img, .journal-article-cover { display: block; width: 100%; height: auto; aspect-ratio: 3 / 2; object-fit: cover; }
.journal-card-body { padding: var(--space-5); }
.journal-card-body > p:last-of-type { margin-bottom: var(--space-4); }
.journal-article-cover { max-width: 78ch; margin: var(--space-6) 0; border-radius: var(--radius-card); }
.journal-card h3 { margin: var(--space-4) 0; font-size: var(--font-xl); line-height: 1.35; }
.journal-card h3 a { text-decoration: none; }
.journal-card h3 a:hover { text-decoration: underline; }
.journal-card p { line-height: 1.7; color: var(--muted); }
.journal-meta { display: flex; flex-wrap: wrap; gap: var(--space-3); color: var(--muted); font-size: var(--font-label); }
.journal-reading-layout { display: grid; grid-template-columns: minmax(0, 78ch) minmax(0, 1fr); gap: var(--space-8); align-items: start; }
.journal-reading-main { min-width: 0; }
.journal-toc-sidebar { position: sticky; top: var(--space-5); }
.journal-toc-mobile { display: none; }
.journal-article { max-width: 78ch; padding-bottom: var(--space-7); overflow-wrap: anywhere; }
.journal-toc { margin-block: var(--space-6); padding: var(--space-5); border: var(--border-width) solid var(--line); border-radius: var(--radius-card); }
.journal-toc p { margin: 0 0 var(--space-3); font-size: var(--font-body); font-weight: 600; }
.journal-toc ol { margin: 0; padding-left: var(--space-5); }
.journal-toc li { font-size: var(--font-body); line-height: 1.6; }
.journal-toc li + li { margin-top: var(--space-2); }
.journal-toc a { text-underline-offset: var(--space-1); }
.journal-toc summary { cursor: pointer; font-size: var(--font-body); font-weight: 600; }
.journal-toc details[open] summary { margin-bottom: var(--space-3); }
.journal-figure { margin: var(--space-6) 0; }
.journal-figure-scroll { overflow-x: auto; }
.journal-figure img { display: block; width: 100%; min-width: 600px; height: auto; border-radius: var(--radius-card); }
.journal-figure figcaption { margin-top: var(--space-2); color: var(--muted); font-size: var(--font-label); line-height: 1.6; }
.journal-article h2[id] { scroll-margin-top: var(--space-5); }
.journal-article > p, .journal-article li { font-size: var(--font-md); line-height: 1.8; }
.journal-article > p { margin: 0 0 var(--copy-paragraph-gap); }
.journal-article h2 { font-size: var(--font-2xl); margin: var(--space-7) 0 var(--space-5); }
.journal-article li + li { margin-top: var(--space-2); }
.journal-methodology { padding: var(--space-5); background: var(--surface); border-radius: var(--radius-card); margin-block: var(--space-6); }
.journal-methodology h2 { margin: 0 0 var(--space-4); font-size: var(--font-xl); }
.journal-methodology dl { margin: 0; display: grid; gap: var(--space-4); }
.journal-methodology dt { color: var(--muted); font-size: var(--font-label); }
.journal-methodology dd { margin: var(--space-1) 0 0; line-height: 1.7; }
.journal-table-scroll { container-type: inline-size; min-width: 0; margin-block: var(--space-5); }
.journal-table-scroll table { width: 100%; table-layout: fixed; border-collapse: collapse; overflow-wrap: anywhere; }
.journal-course-list td > p { margin: 0 0 var(--space-3); }
.journal-course-list td > p:last-child { margin-bottom: 0; }
.journal-price { font-weight: 650; white-space: nowrap; }
.journal-learning-table { margin-block: var(--space-6) var(--space-8); border: var(--border-width) solid var(--line); border-radius: var(--radius-card); }
.journal-comparison-block { margin-block: var(--space-5) var(--space-8); padding: var(--space-5); border: var(--border-width) solid var(--line); border-radius: var(--radius-card); background: var(--surface); }
.journal-comparison-block .journal-table-scroll { margin: 0; }
.journal-course-list { background: var(--background); }
.journal-table-scroll caption { text-align: left; padding: var(--space-4); color: var(--muted); font-size: var(--font-body); }
.journal-course-list thead th { background: var(--surface); font-size: var(--font-body); font-weight: 550; }
.journal-course-list th:first-child, .journal-course-list td:first-child { background: var(--background); border-right: var(--border-width) solid var(--line); }
.journal-course-list thead th:first-child { background: var(--surface); }
.journal-course-list .journal-price { font-size: var(--font-xl); margin-bottom: var(--space-2); }
.journal-offer-terms { margin-top: var(--space-5); padding-top: var(--space-4); border-top: var(--border-width) solid var(--line); }
.journal-offer-terms summary { cursor: pointer; font-size: var(--font-body); }
.journal-offer-detail { padding-block: var(--space-5); }
.journal-offer-detail + .journal-offer-detail { border-top: var(--border-width) solid var(--line); }
.journal-offer-detail h3 { margin: 0 0 var(--space-3); font-size: var(--font-md); }
.journal-offer-detail p { margin: 0 0 var(--space-3); line-height: 1.6; }
.journal-inline-courses.course-grid { grid-template-columns: minmax(0,1fr); margin-block: var(--space-5) var(--space-7); }
.journal-sources { border-top: var(--border-width) solid var(--line); margin-top: var(--space-7); padding-top: var(--space-5); }
.journal-sources summary { cursor: pointer; color: var(--muted); font-size: var(--font-body); }
.journal-sources ul { padding-left: var(--space-5); margin-block: var(--space-4) 0; }
.journal-table-scroll th, .journal-table-scroll td { text-align: left; vertical-align: top; padding: var(--space-4); border-bottom: var(--border-width) solid var(--line); line-height: 1.7; }
@media (max-width:1050px) { .journal-topics, .journal-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } .journal-reading-layout { display: block; } .journal-toc-sidebar { display: none; } .journal-toc-mobile { display: block; } .journal-toc-mobile .journal-toc { margin-bottom: 0; } }
@media (max-width:680px) { .journal-topics, .journal-grid { grid-template-columns: minmax(0,1fr); gap: var(--space-5); } .journal-hero, .journal-section { padding-block: var(--space-5) var(--space-6); } .journal-empty { padding: var(--space-5); } }
@media (max-width:680px) { .journal-figure img { min-width: 900px; } }
@media (max-width:680px) { .journal-comparison-block { padding: var(--space-3); } }
@container (max-width:760px) {
  .journal-table-scroll table, .journal-table-scroll tbody, .journal-table-scroll caption { display: block; }
  .journal-table-scroll thead { display: none; }
  .journal-table-scroll tbody { display: grid; gap: var(--space-4); }
  .journal-table-scroll tr { display: block; padding: var(--space-3); border: var(--border-width) solid var(--line); border-radius: var(--radius-card); background: var(--background); }
  .journal-table-scroll td { display: block; width: auto; min-width: 0; max-width: none; padding: var(--space-3); border: 0; }
  .journal-table-scroll td::before { content: attr(data-label); display: block; margin-bottom: var(--space-2); color: var(--muted); font-size: var(--font-label); font-weight: 400; }
  .journal-table-scroll td + td { border-top: var(--border-width) solid var(--line); }
  .journal-table-scroll .journal-course-list td:first-child { border-right: 0; }
}
