.rpl-products { margin: 1.5em 0; clear: both; }
.rpl-products .rpl-products__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px 20px; list-style: none; padding: 0; margin: 0; }
.rpl-products .rpl-products__item { min-width: 0; list-style: none; margin: 0; padding: 0; border: 0; background: transparent; }
.rpl-products .rpl-products__item::before,.rpl-products .rpl-products__item::after { content: none; }
.rpl-products .rpl-products__link { display: block; color: inherit; text-decoration: none; box-shadow: none; border: 0; }
.rpl-products .rpl-products__link:hover .rpl-products__name { text-decoration: underline; }
.rpl-products .rpl-products__link:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
.rpl-products .rpl-products__image { display: flex; align-items: center; justify-content: center; aspect-ratio: 1; margin-bottom: 10px; }
.rpl-products .rpl-products__image img { display: block; width: 100%; height: 100%; max-width: 100%; max-height: 100%; object-fit: contain; margin: 0; border: 0; border-radius: 0; box-shadow: none; }
.rpl-products .rpl-products__name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: 16px; font-weight: normal; line-height: 1.6; max-height: 3.2em; overflow-wrap: anywhere; }
.rpl-products .rpl-products__credit,.rpl-products .rpl-products__updated,.rpl-products .rpl-products__notice { font-size: 11px; line-height: 1.6; margin: 8px 0 0; }
.rpl-products .rpl-products__notice { color: #555; }
@media (max-width: 600px) { .rpl-products .rpl-products__grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 20px 14px; } .rpl-products .rpl-products__name { font-size: 14px; } }
