/* ==========================================================================
   Product cards
   Image, name and price tile, shared by the category pages and the
   homepage.
   ========================================================================== */

.shop-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
	gap: 24px;
}

.shop-card a {
	display: flex;
	flex-direction: column;
	height: 100%;
	background: var(--color-surface);
	border-radius: var(--radius-lg);
	padding: 16px;
	box-shadow: var(--shadow-sm);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.shop-card a:hover {
	transform: translateY(-4px);
	box-shadow: var(--shadow-md);
}

.shop-card-thumb {
	display: block;
	margin-bottom: 12px;
	border-radius: var(--radius-md);
	overflow: hidden;
	background: var(--color-surface-muted);
}

.shop-card-thumb img {
	width: 100%;
	height: auto;
	display: block;
}

.shop-card-name {
	font-size: var(--text-base);
	font-weight: 600;
	color: var(--color-secondary);
	line-height: 1.4;
	margin-bottom: 8px;
}

.shop-card-price {
	margin-top: auto;
	font-size: var(--text-md);
	font-weight: 700;
	color: var(--color-primary);
}

@media (max-width: 600px) {
	.shop-grid {
		grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
		gap: 16px;
	}
}
