/* News Photocard - clean style (inspired, original) */
.npc-grid{ display:flex; flex-wrap:wrap; gap:20px; margin:0 -10px; }
.npc-grid.columns-1 .npc-card{ width:100%; }
.npc-grid.columns-2 .npc-card{ width:calc(50% - 20px); }
.npc-grid.columns-3 .npc-card{ width:calc(33.333% - 20px); }
.npc-grid.columns-4 .npc-card{ width:calc(25% - 20px); }

.npc-card{ background:#fff; border:1px solid #eee; border-radius:8px; overflow:hidden; box-shadow:0 2px 8px rgba(0,0,0,0.04); transition:transform .18s ease, box-shadow .18s ease; display:flex; flex-direction:column; text-decoration:none; }
.npc-card:hover{ transform:translateY(-6px); box-shadow:0 14px 30px rgba(0,0,0,0.08); }

.npc-thumb img{ width:100%; height:200px; object-fit:cover; display:block; }

.npc-body{ padding:14px; display:flex; flex-direction:column; gap:8px; flex:1 1 auto; }
.npc-title{ margin:0; font-size:16px; line-height:1.25; }
.npc-title a{ color:#111; text-decoration:none; }
.npc-meta{ color:#888; font-size:13px; }
.npc-excerpt{ margin:0; color:#444; font-size:14px; flex:1 1 auto; }

@media (max-width:900px){
  .npc-grid.columns-3 .npc-card{ width:calc(50% - 20px); }
  .npc-grid.columns-4 .npc-card{ width:calc(50% - 20px); }
}
@media (max-width:600px){
  .npc-grid.columns-2 .npc-card,
  .npc-grid.columns-3 .npc-card,
  .npc-grid.columns-4 .npc-card{ width:100%; }
}
