.publications-section{padding:104px 0 120px}
.publications-section__header{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:48px}
.publications-section__eyebrow{margin:0 0 10px;color:var(--nam-gold);font-size:14px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
.publications-section__title{margin:0;color:var(--nam-navy);font-size:clamp(36px,4vw,56px);line-height:1.05}
.publications-section__link,.publications-section__link:visited,.publications-section__link:hover{color:var(--nam-text)!important;font-weight:600;border-bottom:2px solid var(--nam-gold);padding-bottom:4px}
.publications-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.publication-card{display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--nam-border);border-radius:24px;background:#fff;transition:transform .18s ease,box-shadow .18s ease}
.publication-card:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(20,58,102,.09)}
.publication-card__cover-link{display:block;padding:24px 24px 0}
.publication-card__cover{aspect-ratio:2/3;display:grid;place-items:center;overflow:hidden;border-radius:18px;background:#EAF2F7;color:var(--nam-muted)}
.publication-card__cover img{width:100%;height:100%;object-fit:cover}
.publication-card__body{display:flex;flex-direction:column;flex:1;padding:24px}
.publication-card__meta{display:flex;gap:12px;margin-bottom:12px;color:var(--nam-muted);font-size:14px}
.publication-card__title{margin:0;color:var(--nam-text);font-size:24px;line-height:1.18}
.publication-card__title a,.publication-card__title a:hover,.publication-card__title a:visited{color:var(--nam-text)!important}
.publication-card__authors{margin:14px 0 0;color:var(--nam-muted);font-size:16px;line-height:1.5}
.publication-card__footer{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:24px}
.publication-card__price{font-size:20px;font-weight:600}
.publication-card__action{font-size:15px;font-weight:600}
.publication-card__action::after{content:" →";color:var(--nam-gold)}
@media(max-width:960px){.publications-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){
  .publications-section__header{align-items:flex-start;flex-direction:column}
  .publications-grid{grid-template-columns:1fr}
}
