/* blog-card.css — WallPrintJet blog cards (blog list, category, author, tag pages). */
.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:24px}
.blog-card{display:flex;flex-direction:column;background:var(--white,#fff);border:1px solid var(--line,rgba(35,39,43,.14));border-radius:var(--radius,6px);overflow:hidden;transition:transform .2s,box-shadow .2s}
.blog-card:hover{transform:translateY(-2px);box-shadow:var(--shadow,0 12px 32px rgba(35,39,43,.12))}
.blog-card-img-wrap{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--paper,#EEEBE5)}
.blog-card-img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.blog-card:hover .blog-card-img{transform:scale(1.03)}
.blog-card-body{display:flex;flex-direction:column;gap:10px;flex:1;padding:20px 22px 22px}
.blog-card-category{font-family:var(--f-head,Arial,sans-serif);font-size:var(--fs-xs,.75rem);font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.blog-card-cat-link{color:var(--red-2,#B8221A);text-decoration:none}
.blog-card-title{font-size:var(--fs-lg,1.25rem);line-height:1.25;margin:0}
.blog-card-title a{color:var(--ink,#23272B);text-decoration:none}
.blog-card-title a:hover{color:var(--red-2,#B8221A)}
.blog-card-excerpt{margin:0;font-size:var(--fs-md,1rem);color:var(--muted,#5A6067);line-height:1.55}
.blog-card-tags{display:flex;flex-wrap:wrap;gap:6px}
.blog-card-tag{font-size:var(--fs-xs,.75rem);padding:2px 8px;border-radius:999px;background:var(--paper,#EEEBE5);color:var(--ink,#23272B);text-decoration:none}
.blog-card-meta{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:var(--fs-sm,.875rem);color:var(--muted,#5A6067);margin-top:auto}
.blog-card-meta i{color:var(--red,#E02B20);margin-right:3px}
.blog-card-read-more{align-self:flex-start;font-family:var(--f-head,Arial,sans-serif);font-weight:700;font-size:var(--fs-md,1rem);color:var(--red-2,#B8221A);text-decoration:none;border-bottom:2px solid currentColor;padding-bottom:1px}
.blog-card-read-more i{margin-left:4px}
.empty-state{padding:24px;border:1px dashed var(--line,rgba(35,39,43,.14));border-radius:var(--radius,6px);color:var(--muted,#5A6067);background:var(--white,#fff)}
