.publications-page { padding: 136px 0 64px; }
.publications-page .container { max-width: 1020px; }
.publications-intro { margin-bottom: 40px; }
.publications-eyebrow, .publication-topic { color: #27658b; font-size: var(--type-meta); font-weight: 600; letter-spacing: .04em; }
.publications-intro h1 { font-size: clamp(1.75rem, 3.2vw, 2.25rem); font-weight: 400; line-height: 1.3; margin: 0 0 16px; }
.publications-page p { margin-bottom: 16px; }
.publications-shortcuts { display: flex; flex-wrap: wrap; gap: 10px 22px; margin-top: 18px; font-size: var(--type-meta); }
.publications-page a:not(.btn) { color: #226187; text-decoration: underline; text-underline-offset: 4px; }
.publications-page a:focus-visible { outline: 3px solid var(--accent); outline-offset: 5px; }
.publications-list { display: grid; gap: 24px; }
.publication-entry { padding: 30px; background: white; border: 1px solid #dfe5e9; border-radius: 8px; scroll-margin-top: 110px; }
.publication-entry h2, .publication-entry h3 { font-size: var(--type-card); line-height: 1.4; margin: 8px 0 12px; }
.publication-entry h2::after, .publications-archive h2::after { display: none; }
.publication-entry .publication-meta { font-size: var(--type-meta); color: #505d66; margin-bottom: 4px; }
.publication-entry .publication-author { font-size: var(--type-meta); margin-bottom: 16px; }
.publication-link { display: inline-block; font-size: .95rem; font-weight: 600; }
.publications-page .publication-with-thumbnail { display:grid; grid-template-columns:minmax(220px, 28%) minmax(0, 1fr); align-items:start; gap:28px; }
.publication-copy { min-width:0; }
.publications-page a.publication-thumbnail { display:block; padding:8px; border:1px solid #e1e7eb; border-radius:4px; background:#f8f9fa; text-decoration:none; }
.publication-thumbnail img { display:block; width:100%; height:auto; }
.publications-page a.publication-thumbnail:hover { border-color:#e67e22; }
.publications-archive { margin-top: 40px; padding: 30px; background: #eaf0f4; border-radius: 8px; }
.publications-archive h2 { font-size: 1.5rem; margin-bottom: 16px; }
.publisher-sources { margin-bottom: 48px; }
.publisher-sources > h2, .print-publications-title { font-size: var(--type-section); line-height: 1.4; margin-bottom: 16px; }
.publisher-sources > h2::after, .print-publications-title::after { display: none; }
.publications-sections { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 24px; }
.publications-page .publications-sections a { display: inline-flex; align-items: center; gap: 18px; padding: 11px 16px; border: 1px solid #cbd8e1; border-radius: 5px; font-size: .95rem; font-weight: 600; text-decoration: none; }
.publications-page .publications-sections a:hover { background: #edf2f5; }
.publisher-sources > .publications-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.publisher-sources .publication-entry { min-width: 0; display: flex; flex-direction: column; }
.publisher-sources .publication-link { margin-top: auto; padding-top: 8px; }
.publisher-sources .publication-entry:last-child:nth-child(odd) { grid-column: 1 / -1; }
.publications-page h2[id] { scroll-margin-top: 12px; }
@media (max-width: 700px) {
    .publisher-sources > .publications-list { grid-template-columns: 1fr; }
    .publications-page .publication-with-thumbnail { grid-template-columns:1fr; gap:20px; }
    .publication-thumbnail { width:100%; max-width:520px; margin-inline:auto; }
}
@media (max-width: 600px) {
    .publications-page { padding-top: 112px; }
    .publication-entry, .publications-archive { padding: 22px; }
    .publications-shortcuts { flex-direction: column; }
}
