:root {
	--padding-top: 0vh;
	--padding-bottom: 7vh;
	--margin-bottom: 10vh;
	--background-shadow: 0 0 1.5vh 1vh rgba(0, 0, 0, 0.3);
	--text-shadow: 0.2vh 0.2vh 0.4vh black;
	--thumbnail-max-width: 40vh;
	--thumbnail-margin-right: 10vh;
	--game-title-size: 6.5vh;
	--game-desc-size: 2.8vh;
	--button-store-badge-height: 8vh;
	--game-text-width: 90vh;
	--game-visual-height: 50vh;
	
	--padding-bottom-mobile: 5vh;
	--margin-bottom-mobile: 5vh;
	--thumbnail-max-width-mobile: 20vh;
	--game-title-size-mobile: 4vh;
	--game-desc-size-mobile: 2vh;
	--button-store-badge-height-mobile: 6vh;
}

.section-content {
	flex-grow: 1;
	padding-top: var(--padding-top);
	padding-bottom: var(--padding-bottom);
}

.games-catalog {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.game-entry {
	width: 100%;
	margin-bottom: var(--margin-bottom);
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

.game-visual {
	width: 100%;
	min-height: var(--game-visual-height);
	background-size: cover;
	background-position: center;
	display: flex;
	justify-content: center;
	position: relative;
	box-shadow: var(--background-shadow);
	overflow: hidden;
	transition: none;
	filter: none;
}

.game-visual::before, .game-visual::after {
    content: none;
}

.game-visual:hover {
    transform: none;
    box-shadow: var(--background-shadow);
    filter: none;
}

.game-details {
	display: flex;
	flex-direction: row;
	align-items: center;
	margin-top: 5vh;
	margin-bottom: 5vh;
	justify-content: flex-start;
	text-shadow: var(--text-shadow);
	flex-wrap: nowrap;
	position: relative;
	z-index: 1;
	transition: none;
}

.game-visual:hover .game-details {
    transform: none;
}

.game-thumbnail {
	max-width: var(--thumbnail-max-width);
	min-width: var(--thumbnail-max-width);
	margin-right: var(--thumbnail-margin-right);
	flex-shrink: 0;
	clip-path: polygon(0% 15.625%, 0% 15.625%, 0.002% 13.523%, 0.018% 11.629%, 0.062% 9.928%, 0.146% 8.407%, 0.286% 7.053%, 0.494% 5.85%, 0.785% 4.786%, 1.172% 3.847%, 1.668% 3.019%, 2.288% 2.288%, 2.288% 2.288%, 3.019% 1.668%, 3.847% 1.172%, 4.786% 0.785%, 5.85% 0.494%, 7.053% 0.286%, 8.407% 0.146%, 9.928% 0.062%, 11.629% 0.018%, 13.523% 0.002%, 15.625% 0%, 84.375% 0%, 84.375% 0%, 86.476% 0.002%, 88.371% 0.018%, 90.072% 0.062%, 91.593% 0.146%, 92.947% 0.286%, 94.15% 0.494%, 95.214% 0.785%, 96.153% 1.172%, 96.981% 1.668%, 97.712% 2.288%, 97.712% 2.288%, 98.332% 3.019%, 98.828% 3.847%, 99.215% 4.786%, 99.506% 5.85%, 99.714% 7.053%, 99.854% 8.407%, 99.938% 9.928%, 99.982% 11.629%, 99.998% 13.523%, 100% 15.625%, 100% 84.375%, 100% 84.375%, 99.998% 86.476%, 99.982% 88.371%, 99.938% 90.072%, 99.854% 91.593%, 99.714% 92.947%, 99.506% 94.15%, 99.215% 95.214%, 98.828% 96.153%, 98.332% 96.981%, 97.712% 97.712%, 97.712% 97.712%, 96.981% 98.332%, 96.153% 98.828%, 95.214% 99.215%, 94.15% 99.506%, 92.947% 99.714%, 91.593% 99.854%, 90.072% 99.938%, 88.371% 99.982%, 86.476% 99.998%, 84.375% 100%, 15.625% 100%, 15.625% 100%, 13.523% 99.998%, 11.629% 99.982%, 9.928% 99.938%, 8.407% 99.854%, 7.053% 99.714%, 5.85% 99.506%, 4.786% 99.215%, 3.847% 98.828%, 3.019% 98.332%, 2.288% 97.712%, 2.288% 97.712%, 1.668% 96.981%, 1.172% 96.153%, 0.785% 95.214%, 0.494% 94.15%, 0.286% 92.947%, 0.146% 91.593%, 0.062% 90.072%, 0.018% 88.371%, 0.002% 86.476%, 0% 84.375%, 0% 15.625%);
	transition: none;
	filter: none;
}

.game-visual:hover .game-thumbnail {
    transform: none;
    filter: none;
}

.game-title {
	font-size: var(--game-title-size);
	color: #ffffff;
	margin: 0 0 2vh 0;
	font-weight: 900;
	transition: none;
}

.game-description {
	font-size: var(--game-desc-size);
	color: #ffffff;
	margin: 0 0 4vh 0;
	font-weight: 400;
	max-width: 100%;
	text-shadow: var(--text-shadow);
	white-space: normal;
	word-wrap: break-word;
	transition: none;
}

.game-visual:hover .game-title,
.game-visual:hover .game-description {
    color: #ffffff;
    transform: none;
    text-shadow: var(--text-shadow);
}

.button-store-catalog {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	justify-content: flex-start;
	gap: 1.5vh 3vh;
	padding-bottom: 0;
}

.button-store-badge {
	width: auto;
	max-width: 26vh;
	min-width: 26vh;
}

.game-text {
	width: auto;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

@media (max-width: 768px), (orientation: portrait) {
	.game-entry {
		flex-direction: column;
		align-items: center;
		margin-bottom: var(--margin-bottom-mobile);
	}

	.game-thumbnail {
		max-width: var(--thumbnail-max-width-mobile);
		min-width: var(--thumbnail-max-width-mobile);
		margin: 0 auto 3vh;
		margin-top: 3vh;
		display: block;
	}

	.game-visual {
		height: auto;
		justify-content: center;
	}

	.game-details {
		flex-direction: column;
		align-items: center;
		text-align: center;
		margin-top: 2vh;
		margin-bottom: 2vh;
	}

	.game-title {
		font-size: var(--game-title-size-mobile);
		margin: 1vh 0 1vh;
	}

	.game-description {
		font-size: var(--game-desc-size-mobile);
		margin-bottom: 3vh;
	}

	.button-store-catalog {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		justify-content: center;
		grid-gap: 1vh 2vh;
		padding-bottom: 2vh;
	}

	.button-store-catalog > *:only-child {
		grid-column: 1 / -1;
		justify-self: center;
		max-width: 20vh;
	}

	.button-store-badge {
		margin: auto;
		max-width: 20vh;
		min-width: 20vh;
	}

	.game-text {
		width: auto;
		align-items: center;
	}
}