* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

html, body { 
	height: 100%;
	width: 100%;
	overflow: scroll;
}

body {
	background: url('../imgs/sunset-2022-veil.jpg') bottom left no-repeat;
	background-size: cover;
	background-attachment: fixed;
	font-family: sans-serif;
	color: white;
	padding: 1rem 1.6rem;
}

img { max-width: 100%; }

p, a {
	font-size: 1rem;
	color: white;
	text-decoration: none;
	text-shadow: 0 1px 1px rgba(0,0,0,1);
}

p {
	margin-bottom: 1.2rem;
}

p.quote {
	font-style: italic;
}

p.author {
	text-align: right;
	margin-right: .5rem;
}

div.langs {
	text-align: right;
}

div.langs a, div.langs span { 
	font-size: 1rem; 
	transition: all .2s ease-in-out;
}

div.langs a:hover, span.active {
	border-bottom: 1px solid white;
	padding-bottom: 3px;
}

div.container {
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	max-width: 700px;
	margin: 0 auto;
}

div.david-info, div.contact {
	display: flex;
	flex-direction: column;
	align-items: center;
}

div.linkedin {
	display: flex;
	align-items: center;
}

div.contact {
	margin-top: .8rem;
}

img.logo {
	max-width: 100px;
	margin: 1rem 0 2rem;
}

img.david {
	max-width: 96px;
}

img.linkedin {
	width: 20px;
	margin-right: .5rem;
}

@media screen and (min-width: 760px) {
	body {
		padding: 2.4rem;
	}
	
	p, a {
		font-size: 1.4rem;
	}
	
	img.logo {
		max-width: 200px;
		margin: 1rem 0 2.8rem;
	}

	img.david {
		max-width: 166px;
	}

	div.contact, div.david-info {
		margin-top: 3rem;
	}
}

@media screen and (min-width: 1920px) {
	div.david-info {
		margin-top: 5rem;
	}

	img.logo {
		margin-bottom: 7rem;
	}

}

.hidden {
	opacity: 0;
	transition: .7s ease-in-out;
}

.hidden.visible {
	opacity: 1;
}