* {
	padding: 0;
	margin: 0;
	hyphens: auto;
	font-family: Arial, sans-serif;
}

::-moz-selection {
	color: white;
	background-color: #00f; 
}

::selection {
	color: white;
	background-color: #00f; 
}

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

header {
	width: 100%;
	height: 100%;
	text-align: center;
	overflow: hidden;
}

nav {
	padding: 4vh 2vw 0 2vw;
}

.highlight-black {
	background-color: #000;
	color: #fff;
	border: 0.1em solid #000;
}

ul,ol {
	list-style-type: none;
}

ul li {
	display: inline;
}

	nav#nav ul.insert-comma li:nth-last-child(4):after {
		content: ". ";
	}

	nav#nav ul.insert-comma li:nth-last-child(4):after {
		content: ". ";
	}

	nav#nav ul.insert-comma li:nth-last-child(3):after {
		content: "";
	}

	nav#nav ul.insert-comma li:nth-last-child(2):after {
		content: "";
	}

	nav#nav ul.insert-comma li:nth-last-child(1):before {
		content: "";
	}

	nav#nav ul.insert-comma li:nth-last-child(1):after {
		content: "";
	}

h3, nav ul li, summary {
	font-weight: normal;
	font-size: 6.8vw;
}

nav ul li a:link svg {
	width: 0.8em;
}

nav ul li a:link {
	color: #000;
}

	nav ul li a:visited {
		color: #000;
	}

	nav ul li a:hover {
		color: #000;
		background-color: #ff0;
	}

	nav ul li a:active {
		color: #000;
		background-color: #ff0;
	}

nav ul li.social-media a:hover {
	background-color: #fff;
}

nav ul li.social-media a:hover svg,nav ul li.social-media a:hover svg .st0 {
	fill: #ff0;
}

nav ul li a:visited {
	color: #000;
}

.insert-comma li:after {
	content: ", ";
}

	.insert-comma li:last-child:after {
		content: "";
	}

	.insert-and li:last-child:before {
		content: "and ";
	}

	.insert-period li:last-child:after {
		content: ".";
	}

a:link,a:visited,a:hover,a:active {
	text-decoration: none;
}

main a:hover {
	text-decoration: underline;
}

.off-screen {
	position: absolute;
	top: -100vh;
	left: -100vw;
}

	h1 {
		padding-top: 38vh;
		font-size: 10.4vw;
		letter-spacing: -0.02em;
	}

	h2 {
		display: inline-block;
		font-size: 3vw;
		letter-spacing: -0.02em;
	}

		.horizontal-spacing-padding {
			padding: 0 4vw;
		}

figure {
	margin: 4vh 2vw 4vh 2vw;
	width: 96%;
	height: 92%;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;
}

	.entire-situation-image {
		background-image: url(../projects/img/besler-and-sons-2015-cab-the-entire-situation.jpg);
	}

	.office-supplies-image {
		background-image: url(../img/besler-and-sons-office-supplies.jpg);
	}

		.office-supplies-image::after {
			content: "Photograph courtesy Consort Design";
			font-size: 0.8em;
			display: inline-block;
			margin: 1em;
			padding: 0.25em;
			float: right;
			background-color: rgba(255,255,255,0.25);
		}

section {
	padding: 2vw;
}

section h3 {
	position: sticky;
	top: 0;
}

	section.project-categories h3 {
		text-decoration: underline;
	}

	section.project-categories h3,section.project-categories nav,section.project-categories nav ul,section.project-categories nav ul li {
		display: inline;
		padding: 0;
	}

		section.project-categories h3::after {
			content: ":";
		}

		section.project-categories h3 {
			padding-right: 0.2em;
		}

	section.project-categories nav ul li a:hover {
		text-decoration: none;
	}

		sup.new-project-sticker {
			display: inline-block;
			font-size: 0.2em;
			padding: 1.2em 0.6em;
			transform: rotate(45deg)translate(-1em);
			background-color: yellow;
			border-radius: 50%;
		}

section summary {
	cursor: pointer;
	position: sticky;
	top: 1em;
}

section#about article{
	margin-top: 2vw;
	column-count: 3;
	column-gap: 3vw;
}

strong {
	font-weight: normal;
}

abbr {
	text-decoration: none;
}

h4 {
	font-size: 1.4em;
	margin-top: 4vw;
}

section#news ol,section#press ol,section#texts ol {
	width: 30%;
	margin-bottom: 2vw;
}

section#news ol li,section#press ol li,section#texts ol li {
	margin: 2vw 0;
}

	section ol li {
		border-top: 0.1em solid black;
	}

	section ol li>time {
		font-size: 0.8em;
		color: #fff;
		background-color: #000;
		padding: 0.3em 0.6em;
		text-decoration: none;
	}

		section#news ol li time sup,section#press ol li time sup,section#texts ol li time sup {
			font-size: 0.1em;
		}

	section#about li, p,h6 {
		font-size: 1.4em;
		margin-top: 0.5em;
	}

aside#language {
	position: absolute;
	left: 0%;
	top: 0%;
	width: 100%;
	padding: 1vw 0 0 0;
}

aside#language ul {
	text-align: center;
}

aside#language ul li {
	font-size: 2em;
	display: inline-block;
	margin: 0 1vw;
}

aside#language a:link,aside#language a:visited,aside#language a:hover,aside#language a:active {
	color: rgba(255,255,255,0.2);
	text-transform: uppercase;
}

aside#language a:link.current {
	color: rgba(255,255,255,0.5);
}

aside#language a:hover,aside#language a:hover.current {
	color: rgba(255,255,255,1);
}

h6 {
	font-weight: normal;
}

.float-left {
	float: left;
}

.float-right {
	float: right;
}

.text-align-right {
	text-align: right;
}

.text-align-center {
	text-align: center;
}

.text-direction-right-to-left {
	direction: rtl;
}

.upper-case {
	text-transform: uppercase;
}

.line-through {
	text-decoration: line-through;
}

.flip-x {
	transform: scaleX(-1);
}

.scroll-down-cursor-white:hover {
	cursor: url('../img/cursor-arrow-down-white.png'), auto;
}