.frontend-content-list {
	--items-per-row: 4;
	--color-title: #fff;
	--card-image-width: 160px;
	--card-image-height: 160px;
	--card-width: var(--card-image-width);
	--card-height: auto;

	.frontend-content-list__items {
		display: grid;
		grid-template-columns: repeat(var(--items-per-row), var(--card-image-width));
		justify-content: space-evenly;
		gap: 2rem 1rem;
		color: var(--body-text-color);
		background-color: var(--body-bg-color);
		padding: 1rem;
		padding-top: 1rem;
		padding-bottom: 1rem;
		padding-top: calc(1.5rem + var(--header-body-spacing));
		padding-bottom: 1.5rem;
		z-index: 10;

		.card.localita-card {
			--card-width: inherit;
			--card-height: inherit;
			--card-image-width: inherit;
			--card-image-height: inherit;

			.card__link {
				gap: 0.5rem;

				.card__upper {
					position: relative;
					width: var(--card-image-width);
					height: var(--card-image-height);
					overflow: hidden;

					.card__image-wrapper {
						position: absolute;
						top: 0;
						left: 0;
						width: 100%;
						height: 100%;
						z-index: 1;
					}

					img {
						object-fit: cover;
						width: 100%;
						height: 100%;
					}

					.card__content {
						position: absolute;
						left: 1px;
						right: 1px;
						bottom: 0;
						display: flex;
						align-items: center;
						justify-content: center;
						width: calc(100% - 2px);
						height: 60px;
						padding: 0.25rem 0.5rem;
						background: rgba(0, 0, 0, 0.7);
						z-index: 2;

						h3 {
							white-space: wrap;
							text-align: center;
							margin: 0;
						}
					}
				}

				.card__description {
					display: -webkit-box;
					-webkit-box-orient: vertical;
					-webkit-line-clamp: 3;
					line-clamp: 3;
					width: 100%;
					max-height: 50px;
					overflow: hidden;
					font-size: 11px;
					line-height: 1.3;
					text-overflow: ellipsis;
				}
			}
		}
	}
}

/* Media queries */
@media (max-width: 1200px) {
	.frontend-content-list {
		--items-per-row: 3;
	}
}

/* Media queries */
@media (max-width: 1024px) {
	.frontend-content-list {
		--items-per-row: 4;
	}
}

@media (max-width: 980px) {
	.frontend-content-list {
		--items-per-row: 4;
	}
}

@media (max-width: 768px) {
	.frontend-content-list {
		--items-per-row: 3;
	}
}

@media (max-width: 580px) {
	.frontend-content-list {
		--items-per-row: 2;
	}
}

@media (max-width: 380px) {
	.frontend-content-list {
		--items-per-row: 2;
		--card-image-width: 140px;
		--card-image-height: 140px;
	}
}


@media (max-width: 330px) {
	.frontend-content-list {
		--items-per-row: 1;
		--card-image-width: 160px;
		--card-image-height: 160px;
	}
}
