body {
	color: var(--text-100);
	background-color: var(--primary-10);
	font-family: var(--main-font-family);
}

h1 {
	color: var(--accent-40);
}

hr {
	color: var(--text-0);
}

a {
	color: var(--accent-40);
	cursor: pointer;
}

a:hover {
	color: var(--accent-10);
	transition: cubic-bezier(0.075, 0.82, 0.165, 1);
}

strong {
	color: var(--accent-40);
}

pre {
	background-color: var(--secondary-80);
	color: var(--text-0);
	margin: 0 50px;
	padding: 20px;
	border-radius: 5px;
}

code {
	background-color: var(--secondary-80);
	color: var(--text-0);
	padding: 2px 4px;
	border-radius: 5px;
}

select {
	background-color: var(--secondary-10);
	color: var(--text-100);
}

::selection,::-moz-selection {
	background-color: var(--accent-40);
	color: var(--text-0);
}

.cv-subtitle {
	color: var(--neutral-80);
}

.cv-infoline {
	color: var(--neutral-40);
}

.cv-list-item .bullet {
	width: 20px;
}

.cv-list-item .item {
	width: 90%;
}

.cv-certlink {
	color: var(--accent-40);
}

.cv-top-info h3 {
	color: var(--primary-80);
}

@media print, screen and (min-width: 124em) {
	.cv-top-info {
		position: absolute;
		bottom: 0;
	}
}

@media screen and not (min-width: 124em) {
	.cv-top-info {
		padding: 20px 0;
	}
	
	.cv-top-info div {
		width: 100%;
		margin-bottom: 8px;
		margin-left: 20px;
	}
}

@media print {
	.f1.lh-headline { margin-top: 0; }

	.f1 { font-size: 2.25rem; }
	.f2 { font-size: 1.5rem; }
	.f3 { font-size: 1.25rem; }
	.f4 { font-size: 1rem; }
	.f5 { font-size: .875rem; }

	.f1-ns { font-size: 2.25rem; }
	.f2-ns { font-size: 1.5rem; }
	.f3-ns { font-size: 1.25rem; }
	.f4-ns { font-size: 1rem; }
	.f5-ns { font-size: .875rem; }

	.w-10-ns { width: 10%; }
	.w-20-ns { width: 20%; }
	.w-25-ns { width: 25%; }
	.w-30-ns { width: 30%; }
	.w-40-ns { width: 40%; }
	.w-50-ns { width: 50%; }
	.w-60-ns { width: 60%; }
	.w-70-ns { width: 70%; }
	.w-75-ns { width: 75%; }
	.w-80-ns { width: 80%; }
	.w-90-ns { width: 90%; }

	#col_centre { width: 100%; }
	#main_left { width: 70%; padding-right: 16px; }
	#main_right { width: 30%; padding-left: 16px; }

	#main_right .w-80-ns { width: 100%; }

	.cv-top-info .mr4 {
		margin-right: 16px;
		min-width: 40%;
	}

	#main_content>div>img {
		margin-bottom: 75px;
	}

	#main_content>hr {
		display: none;
	}
}