.pim-downloads * { box-sizing: border-box }
.pim-downloads a { color: inherit }
.download-cat { padding-left: 30px }
.download-cat > h3 { margin-left: -30px; margin-top: 20px; margin-bottom: 5px }
html.js .download-cat > h3 { cursor: pointer; position: relative }
html.js .download-cat > h3::before { content: '\f107'; width: 2em;
	top: 0; left: 0; display: inline-block; font-family: fontawesome }
html.js .download-cat.open > h3::before { content: '\f106' }
html.js .download-files { overflow: hidden; height: 0 }
html.js .download-files.anim { transition: all 400ms }
html.js .download-cat.open .download-files { height: auto }
.download-files { display: flex; flex-direction: columns; flex-wrap: wrap;
	gap: 20px; font-size: 14px }
.download-file { flex: 0 1 calc(32% - 10px);
	display: grid; grid-template: 1fr/1fr 2fr; gap: 10px;
	background: white; padding: 10px }
.download-img { grid-area: 1 / 1 / 3 / 1 }
.download-img img { max-width: 100%; max-height: 300px; object-fit: contain;
	display: block }
.download-desc { grid-area: 1 / 2 / 1 / 2; line-height: 1.3 }
.download-title { font-weight: 700 }
.download-misc { grid-area: 2 / 2 / 2 / 2; display: flex;
	align-content: end; justify-content: space-between }
.download-size { display: flex; flex-direction: columns;
	align-items: end; justify-content: start; font-size: 1.4em;
	color: #808080 }
/* .download-size::before { display: inline-block; content: '\f01a';
	font-family: fontawesome; width: 1.2em; font-size: 1.5em } */
span.download-icon { width: 3.5em; height: 3.5em; display: flex;
	justify-content: center; align-items: center;
	border: .2em solid #e30513; border-radius: .5em;
	text-align: center; font-weight: 700; color: #e30513;
	background: white; text-transform: uppercase }

@media (max-width: 1020px) {
	.download-file { flex: 0 1 calc(50% - 10px) }
}

@media (max-width: 700px) {
	.download-file { flex: 0 1 calc(100% - 10px) }
}

@media (max-width: 400px) {
	.download-size { font-size: 14px }
}
