.commerce-product { display: grid; grid-template-columns: 6rem minmax(0, 1fr); align-items: center; gap: 1rem; }
.commerce-product__description { min-inline-size: 0; overflow-wrap: anywhere; }
.commerce-product h2 { margin: 0; font-size: 1rem; font-weight: 500; line-height: 1.45; }
.commerce-product h2 a { color: var(--store-text); text-decoration: none; }
.commerce-product h2 a:hover { color: var(--store-accent); text-decoration: underline; text-underline-offset: .2em; }
.commerce-product p { margin: .4rem 0 0; color: var(--store-muted); font-size: .85rem; }
.commerce-product__options { margin: .4rem 0 0; color: var(--store-muted); font-size: .82rem; }
.commerce-product__options > div { display: flex; flex-wrap: wrap; gap: .25rem; }
.commerce-product__options dt, .commerce-product__options dd { margin: 0; }
.commerce-product__media { display: grid; aspect-ratio: 1; overflow: hidden; border-radius: var(--store-radius-sm); background: var(--store-surface); }
.commerce-product__media picture { display: contents; }
.commerce-product__media img { inline-size: 100%; block-size: 100%; object-fit: contain; }
.commerce-product__placeholder { display: grid; place-items: center; color: var(--store-muted); font-size: 1.5rem; }
.commerce-products--fit-cover img { object-fit: cover; }
.commerce-products--ratio-portrait_4_5 .commerce-product__media { aspect-ratio: 4/5; }
.commerce-products--ratio-natural .commerce-product__media { aspect-ratio: auto; }
.commerce-products--ratio-natural .commerce-product__media img { block-size: auto; }
.commerce-products--background-transparent .commerce-product__media { background: transparent; }
.commerce-products--background-muted .commerce-product__media { background: var(--store-bg); }
@media (max-width: 620px) { .commerce-product { grid-template-columns: 5rem minmax(0,1fr); } }
