/**
 * blog-card.css — shared blog card grid, ported from labelrollpro.com with the
 * teal/orange palette fully swapped for Cycling Apparel Factory's:
 *   #0B3D5C navy · #E8541E orange · #F3F5F6 bg-light · #DDE3E8 line · #5f6b78 slate
 * Radius/shadow follow post-page.css + rightbar.css (12px card, 8px chip,
 * rgba(0,0,0,.08) rest / rgba(11,61,92,.12) hover). Selector names are byte-identical
 * to the upstream file so blog/category/author markup can adopt them unchanged.
 * NOTE: blog.html styles its cards inline as .blog-card + .blog-thumbnail/.blog-content,
 * and category/author pages use .cat-card/.au-pcard — nothing renders .blog-card-* yet.
 */
.blog-grid-row{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
@media(max-width:980px){.blog-grid-row{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.blog-grid-row{grid-template-columns:1fr}}
.blog-card{background:#fff;border:1px solid #DDE3E8;border-radius:12px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.08);display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.blog-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(11,61,92,.12)}
.blog-card-img-wrap{display:block}
.blog-card-img{width:100%;height:200px;object-fit:cover;background:#F3F5F6;display:block}
.blog-card-body{padding:24px;flex:1;display:flex;flex-direction:column}
.blog-card-category{display:inline-block;font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#E8541E;margin-bottom:.5rem}
.blog-card-category a{color:inherit;text-decoration:none}
.blog-card-title{font-size:1.15rem;font-weight:800;color:#0B3D5C;margin:0 0 .65rem;line-height:1.3}
.blog-card-title a{color:inherit;text-decoration:none}
.blog-card-title a:hover{color:#E8541E}
.blog-card-excerpt{font-size:.92rem;color:#5f6b78;line-height:1.6;margin-bottom:1rem;flex:1}
.blog-card-tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.75rem}
.blog-card-tag{display:inline-block;padding:.2rem .6rem;background:#F3F5F6;color:#5f6b78;font-size:.75rem;border-radius:8px;text-decoration:none;transition:background .2s,color .2s}
.blog-card-tag:hover{background:#0B3D5C;color:#fff}
.blog-card-meta{display:flex;flex-wrap:wrap;gap:.85rem;font-size:.8rem;color:#5f6b78;padding-top:.75rem;border-top:1px solid #DDE3E8;margin-bottom:.75rem}
.blog-card-meta a{color:inherit;text-decoration:none}
.blog-card-meta i{margin-right:.25rem;color:#E8541E}
.blog-card-read-more{display:inline-flex;align-items:center;gap:.4rem;color:#0B3D5C;font-size:.9rem;font-weight:800;text-decoration:none;transition:gap .2s}
.blog-card-read-more:hover{gap:.65rem;color:#E8541E}
.empty-state{grid-column:1/-1;text-align:center;padding:60px 20px;background:#fff;border:1px dashed #DDE3E8;border-radius:12px;color:#5f6b78;font-size:1rem}
