/* related-posts.css — runhockeyapparel.com related articles.
 * Structure A (post-optimizer / render_article grid) + Structure B (Bootstrap row). */
.related-posts-section{padding:2.75rem 0 1rem;margin-top:2.5rem;border-top:1px solid #DCE3EC}
.related-posts-header{text-align:center;margin-bottom:1.75rem}
.related-posts-eyebrow{display:block;font-size:.75rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#1F4E79;margin-bottom:.4rem}
.related-posts-title{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:clamp(1.4rem,2.4vw,1.75rem);font-weight:800;color:#0B1B33;margin:0}

.related-posts-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.related-posts-card{display:flex;flex-direction:column;background:#fff;border:1px solid #DCE3EC;border-radius:12px;overflow:hidden;box-shadow:0 2px 10px rgba(11,27,51,.05);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;text-decoration:none;color:inherit}
.related-posts-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(11,27,51,.12);border-color:#C3CFDD}
.related-posts-card-media{display:block;background:#F7F9FC}
.related-posts-card-image{display:block;width:100%;height:200px;object-fit:cover;margin:0}
.related-posts-card-content{padding:1.1rem 1.25rem 1.3rem;flex:1;display:flex;flex-direction:column}
.related-posts-card-kicker{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#1F4E79;margin:0 0 .45rem}
.related-posts-card-title{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:1.05rem;font-weight:700;line-height:1.35;color:#0B1B33;margin:0 0 .5rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.related-posts-card-link{color:inherit;text-decoration:none}
.related-posts-card-link:hover{color:#1F4E79}
.related-posts-card-excerpt{font-size:.9rem;color:#53647A;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.related-post-card{height:100%;display:flex;flex-direction:column;background:#fff;border:1px solid #DCE3EC;border-radius:12px;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}
.related-post-card:hover{transform:translateY(-4px);box-shadow:0 12px 28px rgba(11,27,51,.12)}
.related-post-image{width:100%;height:200px;object-fit:cover;display:block}
.related-post-body{padding:1.1rem 1.25rem 1.3rem;flex:1}
.related-post-category{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#1F4E79;margin-bottom:.45rem}
.related-post-title{font-size:1.05rem;font-weight:700;line-height:1.35;margin:0 0 .5rem}
.related-post-title a{color:#0B1B33;text-decoration:none}
.related-post-title a:hover{color:#1F4E79}
.related-post-excerpt{font-size:.9rem;color:#53647A;line-height:1.6;margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

@media (max-width:991.98px){.related-posts-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:767.98px){.related-posts-list{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.related-posts-card,.related-post-card{transition:none}.related-posts-card:hover,.related-post-card:hover{transform:none}}
