/* E1-19: explicit relations, scoped to the product detail block. */
.e1-related-products { clear:both; margin:36px 0 0; padding:0; }
.e1-related-products h2 { margin:0 0 22px; font-size:28px; line-height:1.3; font-weight:600; color:#222; }
.e1-related-products__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.e1-related-products__card { display:flex; flex-direction:column; min-width:0; border:1px solid #dedede; border-radius:5px; color:#222; text-decoration:none; background:#fff; }
.e1-related-products__image { display:flex; align-items:center; justify-content:center; aspect-ratio:1; padding:18px; min-width:0; }
.e1-related-products__image picture { display:contents; }
.e1-related-products__image img { display:block; width:100%; height:100%; max-width:100%; max-height:100%; object-fit:contain; }
.e1-related-products__caption { flex:1; min-width:0; padding:14px 16px; border-top:1px solid #eee; background:#f7f7f7; border-radius:0 0 4px 4px; }
.e1-related-products__name { font-size:14px; line-height:1.5; font-weight:400; overflow-wrap:anywhere; }
.e1-related-products__article { margin-top:8px; color:#666; font-size:12px; line-height:1.5; overflow-wrap:anywhere; }
.e1-related-products__placeholder { color:#777; font-size:14px; text-align:center; }
.e1-related-products__card:hover { color:#980d00; border-color:#980d00; }
.e1-related-products__card:focus-visible { outline:2px solid #980d00 !important; outline-offset:3px; }
@media(max-width:767px) { .e1-related-products__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; } .e1-related-products h2 { font-size:24px; } }
@media(max-width:479px) { .e1-related-products__grid { grid-template-columns:minmax(0,1fr); } }
