:root {
	--bg0: #fbf1c7;
	--bg1: #ebdbb2;
	--bg2: #d5c4a1;

	--fg0: #282828;
	--fg1: #3c3836;

	--accent0: #8f3f71;
	--accent1: #b16286;
}

@media (prefers-color-scheme: dark) {
	:root {
		--bg0: #282828;
		--bg1: #3c3836;
		--bg2: #504945;

		--fg0: #fbf1c7;
		--fg1: #ebdbb2;

		--accent0: #d3869b;
		--accent1: #b16286;
	}
}

body {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	min-height: calc(100vh - 2 * 20vh);
	width: calc(100vw - 2 * 0.8rem);
	padding: 0.8rem;
	padding-top: 20vh;
	padding-bottom: 20vh;
	margin: 0;
	background: var(--bg0);
	color: var(--fg1);
}

main img {
	max-width: min(40vw, 400px);
	max-height: 20vh;
	border-radius: 50%;
}

h1, h2 {
	color: var(--fg0);
}

main,section {
	max-width: 90vw;
	display: flex;
	flex-direction: column;
	align-items: center;
}
@media (orientation: landscape) {
	main, section {
		max-width: min(66vw, 660px);
	}
}

h2 {
	padding: 0;
	margin: 0;
	margin-top: 10vh;
}

.card a {
	display: block;
	text-decoration: none;
	cursor: default;
	background: var(--bg1);
	padding: 0.8rem;
	border-radius: 0.4rem;
	transition: background .4s;
}
.card:hover a {
	background: var(--bg2);
}

#projects {
	display: flex;
	flex-direction: column;
	gap: 0.4rem;
	list-style: none;
	padding: 0;
}

.project-card a {
	display: flex;
	flex-direction: row;
	align-items: center;
	gap: 0.8rem;
}
.project-card span {
	display: flex;
	flex-direction: column;
}
.project-card img {
	max-height: 4lh;
	max-width: 8rem;
}
.project-card h3, .project-card p {
	color: var(--fg1);
	padding: 0;
	margin: 0;
}
.project-card h3 {
	color: var(--accent0);
}

#external {
	display: flex;
	flex-wrap: wrap;
	gap: 0.4rem;
	list-style: none;
}

a {
	color: var(--accent0);
	transition: color .4s;
}
a:hover {
	color: var(--accent1);
}

.platform-card a {
	padding: 0.4rem 0.8rem;
	color: var(--accent0);
}
