.mdpr-products { clear: both; margin-block: 2rem; min-width: 0; }
.mdpr-products h2 { font-size: 1.5rem; line-height: 1.3; overflow-wrap: anywhere; letter-spacing: 0; }
.mdpr-products ul.products { display: grid; grid-template-columns: repeat(var(--mdpr-columns, 4), minmax(0, 1fr)); gap: 1.25rem; margin: 0; padding: 0; }
.mdpr-products ul.products::before, .mdpr-products ul.products::after { display: none; }
.mdpr-products ul.products li.product { float: none; width: auto !important; margin: 0 !important; min-width: 0; overflow-wrap: anywhere; }
.mdpr-products ul.products li.product img { width: 100%; height: auto; aspect-ratio: 1; object-fit: contain; }
.mdpr-products .button { white-space: normal; overflow-wrap: anywhere; }
.mdpr-columns-1 { --mdpr-columns: 1; }
.mdpr-columns-2 { --mdpr-columns: 2; }
.mdpr-columns-3 { --mdpr-columns: 3; }
.mdpr-columns-4 { --mdpr-columns: 4; }
.mdpr-columns-5 { --mdpr-columns: 5; }
.mdpr-columns-6 { --mdpr-columns: 6; }
.mdpr-scroll { overflow-x: auto; scroll-snap-type: x mandatory; padding-block-end: 1rem; }
.mdpr-scroll:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.mdpr-scroll ul.products { grid-auto-flow: column; grid-template-columns: none; grid-auto-columns: calc((100% - (var(--mdpr-columns, 4) - 1) * 1.25rem) / var(--mdpr-columns, 4)); }
.mdpr-scroll li.product { scroll-snap-align: start; }
@media (max-width: 782px) { .mdpr-products { --mdpr-columns: 2; } }
@media (max-width: 360px) { .mdpr-products { --mdpr-columns: 1; } }
