

main {
	padding: 0 8px;
}

.list {
	padding: 0;
	display: grid;

	grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));

	gap: 16px;
}

.card {
	/* transform: skew(14deg); */
	aspect-ratio: 1;
	border: 1px solid currentColor;
	padding: 32px;
	font-stretch: 50%;

	display: flex;
	justify-content: center;
	align-items: center;

	font-size: 32px;
	text-align: center;

	position: relative;
}

.card:hover {
	background-color: grey;
}

.card > * {
	/* transform: skew(-28deg); */
}

.card svg {
	width: 32px;
	height: 32px;
}

@media (max-width: 767px) {
	header {
		display: block;
		font-size: 28px;
	}

	header .title {
		display: inline;
		font-size: 28px;
	}

	.search {
		margin-top: 16px;
		display: block;
	}

	.search input {
		font-size: 28px;
	}
}
