/* Journal — full article archive, light background (unlike the dark
   .journal-band teaser embedded in Our Stories — this is its own page, so
   it follows the same light page-head convention as About/Contact/etc.). */

.page-head { max-width:720px; margin:0 auto; padding:96px 24px 0; text-align:center; }
.page-head .eyebrow { margin:0 0 20px; }
.page-head h1 { font-family:'Newsreader',serif; font-weight:500; font-size:44px; line-height:1.18; margin:0 0 20px; letter-spacing:-.01em; }
.page-head .lede { font-size:16px; line-height:1.7; color:var(--ink-soft); margin:0 auto; max-width:520px; }
@media (max-width:900px){ .page-head h1 { font-size:32px; } }

.journal-archive { max-width:1160px; margin:0 auto; padding:64px 48px 96px; }

.journal-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:40px 32px; }
.article { display:flex; flex-direction:column; text-decoration:none; color:inherit; }
.article-cover { aspect-ratio:4/3; border-radius:var(--radius-lg); overflow:hidden; margin-bottom:20px; background:var(--line); position:relative; transition:transform .35s var(--ease); }
.article:hover .article-cover { transform:scale(1.04); }
.article-cover img { width:100%; height:100%; object-fit:cover; display:block; }
.article-meta { display:flex; gap:8px; margin-bottom:12px; flex-wrap:wrap; }
.article-meta span { font-size:10.5px; letter-spacing:.06em; color:var(--muted); font-weight:500; text-transform:uppercase; }
.article-meta span:not(:last-child)::after { content:'·'; margin-left:8px; color:var(--line-soft); }
.article-title { font-family:'Newsreader',serif; font-weight:500; font-size:19px; line-height:1.3; margin:0 0 8px; color:var(--ink); letter-spacing:-.005em; }
.article-excerpt { font-size:13.5px; line-height:1.6; color:var(--muted); margin:0; }

.journal-empty { grid-column:1 / -1; text-align:center; color:var(--muted); font-size:14px; padding:48px 0; }

.journal-pagination { display:flex; justify-content:center; align-items:center; gap:8px; margin-top:64px; flex-wrap:wrap; }
.journal-pagination .page-numbers { font-size:13px; font-weight:500; color:var(--ink-soft); text-decoration:none; padding:8px 14px; border-radius:var(--radius-md); transition:background-color .25s ease, color .25s ease; }
.journal-pagination .page-numbers:hover { background:var(--paper); color:var(--ink); }
.journal-pagination .page-numbers.current { background:var(--gold); color:#fff; }
.journal-pagination .page-numbers.dots { padding:8px 4px; color:var(--muted); }

@media (max-width:900px){
  .journal-archive { padding:48px 24px 72px; }
  .journal-grid { grid-template-columns:repeat(2,1fr); gap:32px 24px; }
}
@media (max-width:600px){
  .journal-grid { grid-template-columns:1fr; }
}
