@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 400;
    src: local('Open Sans'), local('OpenSans'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3VtXRa8TVwTICgirnJhmVJw.woff2) format('woff2'), url(http://fonts.gstatic.com/s/opensans/v13/cJZKeOuBrn4kERxqtaUH3T8E0i7KZn-EPnyo3HZu7kw.woff) format('woff');
}

@font-face {
    font-family: 'Open Sans';
    font-style: normal;
    font-weight: 700;
    src: local('Open Sans Bold'), local('OpenSans-Bold'), url(http://fonts.gstatic.com/s/opensans/v13/k3k702ZOKiLJc3WVjuplzOgdm0LZdjqr5-oayXSOefg.woff2) format('woff2'), url(http://fonts.gstatic.com/s/opensans/v13/k3k702ZOKiLJc3WVjuplzHhCUOGz7vYGh680lGh-uXM.woff) format('woff');
}

@font-face {
    font-family: 'Open Sans';
    font-style: italic;
    font-weight: 400;
    src: local('Open Sans Italic'), local('OpenSans-Italic'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBo4P5ICox8Kq3LLUNMylGO4.woff2) format('woff2'), url(http://fonts.gstatic.com/s/opensans/v13/xjAJXh38I15wypJXxuGMBobN6UDyHWBl620a-IRfuBk.woff) format('woff');
}

@font-face {
    font-family: 'Open Sans';
    font-style: italic;
    font-weight: 700;
    src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxolIZu-HDpmDIZMigmsroc4.woff2) format('woff2'), url(http://fonts.gstatic.com/s/opensans/v13/PRmiXeptR36kaC0GEAetxjqR_3kx9_hJXbbyU8S6IN0.woff) format('woff');
}

body {
    font-family: "Open Sans", sans-serif;
}


html {
	overflow-y: scroll;
}

body {
	background-color: #f0f0f0;
	background-image: url(../image/background6.png);
	/*background-size: 400px 467px;*/
	margin: 0;
	//font-family: Tahoma, Verdana, Segoe, sans-serif;
	background-attachment: fixed;
	font-size: 16px;
	color: #272727;
}

#left-column {
	background-color: white;
}

#right-column {
	background-color: white;
}

nav {
	position: relative;
}

#menu-toggle {
	order: 2;
	color: white;
	cursor: pointer;
	width: 50px;
	height: 50px;
	position: absolute;
	right: 0;
}

#menu-toggle-icon {
	position: absolute;
	left: 10px;
	top: 22.5px;
}

#menu-toggle-icon span, #menu-toggle-icon span:before, #menu-toggle-icon span:after {
	border-radius: 1px;
	height: 4px;
	width: 30px;
	background: white;
	position: absolute;
	display: block;
	content: '';
}

#menu-toggle-icon span:before {
	top: -10px; 
}

#menu-toggle-icon span:after {
	bottom: -10px;
}

#menu-toggle-check {
	display: none;
}

#menu-toggle-check:checked + ul {
	max-height: 500px;
	
}

nav ul {
	transition: max-height 0.5s ease-in-out;
	max-height: 50px;
	flex: 1;
	display: flex;
	flex-direction: column;
	margin: 0;
	//height: 50px;
	overflow: hidden;
	list-style: none;
	padding: 0;
}

.x-small {
	font-size: 0.8em;
}

nav li {
	flex-basis: 40px;
	min-height: 40px;
	line-height: 40px;
	background-color: #333333;
}

nav li.active {
	order: -1;
	font-weight: bold;
	flex-basis: 50px;
	min-height: 50px;
	line-height: 50px;
	font-size: 1.25em;
	background-color: #222222;
}

nav a {
	display: block;
	text-decoration: none;
	width: 100%;
	padding-left: 5px;
	color: white;
}

header {
	color: white;
	height: 150px;
	background-image: url('../image/header1.jpg');
	background-size: cover;
	background-position: 70% 0%;
}

#welcome-page p {
	//padding-left: 26px;
}

#info-box {
	display: flex;
	flex-direction: vertical;
	align-items: center;
	background-color: rgba(0, 0, 0, 0.5);
	width: 300px;
	height: 100%;
	box-sizing: border-box;
	padding: 10px;
	font-size: 0.8em;
}

#info-box h1 {
	margin: 0;
	font-size: 1.2em;
}

.bibliography {
	text-align: justify;
}

main {
	/* The next three lines are necessary for padding to work on IE. */
	box-sizing: border-box;
	display: inline-block;
	width: 100%;
	padding: 7px 10px;
	padding-right: 25px;
	padding-left: 25px;
	font-size: 0.95em;
}

main h1, main h2, main h3, main h4, main h5, main h6 {
	margin: 0.7em -15px 0.25em;
}

p {
	margin-top: 0.25em;
	text-align: justify;
}

.news {
	border-left: 3px solid rgb(168, 168, 168);
	margin-left: -8px;
	padding-left: 10px;
	display: inline-block;
}
.date {
	font-size:70%; 
	margin-top:-2px; 
	margin-left: -14px;
	margin-bottom:-8px;
}

main h1, #welcome-page h2 {
	font-size: 1.5em;
}

main h2 {
	font-size: 1.2em;
}

main h2.x-small {
	margin-left: 0;
}

main a {
	color: #335980;
	text-decoration: none;
}

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

.image-right {
	float: right;
	margin: 5px 0px 5px 25px;
}

.image-left {
	float: left;
	margin: 5px 10px 5px 0px;
}

#headshot {
	height: 150px;
	padding: 0px;
	border: 2px solid #335980;
}

.my-email {
	cursor: default;
	user-select: none;
}

.my-email::before {
	content: "david.eckhoff";
}

.my-email::after {
	content: "tum-create.edu.sg";
}

.bibliography {
	font-size: 0.95em;
}

.bibliography li {
	margin-bottom: 6px;
}

.bibliography li img {
	position: relative;
	top: 2px;
}

.bibliography li small img {
	top: 3px;
}

#teaching-page ul {
	list-style: none;
}

#teaching-page>section>ul {
	padding: 0;
}

.projects {
	display: flex;
	flex-wrap: wrap;
}

.projects span {
	flex-basis: 300px; 
}

.projects span img {
	max-width: 150px;
}

footer {
	font-size: 0.8em;
	background-color: #335980;
	color: white;
	padding: 10px;
	display: flex;
	justify-content: space-between;
}

section>h3 {
	font-size: 1em;
	margin-left: 0px;

}
main>ol, section>ol {
	margin-left: -25px;
}

@media screen and (min-width: 900px) {
	body {
		margin-top:10px;
	}

	#wrapper {
		display: flex;
		align-items: flex-start;
		justify-content: center;
		width: 85%;
		max-width: 1000px;
		margin: 0 auto;
	}

	#left-column {
		flex-basis: 200px;
		margin-right: 10px;
	}

	#right-column {
		flex: 1;
	}

	nav {
		background-color: white;
	}

	#menu-toggle {
		display: none;
	}

	nav ul {
		max-height: 500px;
	}

	nav li {
		border-left: 5px solid #A8A8A8;
		flex-basis: 30px;
		min-height: 30px;
		line-height: 30px;
		background-color: white;
	}
	

	nav li.active {
		order: 0;	
		font-size: 1em;
		flex-basis: 30px;
		min-height: 30px;
		line-height: 30px;
		background-color: white;
		//background-color: #4882a7;
		border-left: 5px solid #335980;
	}

	nav li.active a {
	//color: white;
	}
	
	nav a {
		color: #272727;
		font-weight: normal;
	}

	nav li:hover {
		background-color: #4882a7;
	}

	nav li:hover a {
		color: white;
	}
}

#teaching-page ul {
	padding: 0px;
}

#teaching-page li {
	display: flex;
}

#teaching-page .period {
	flex-basis: 6em;
	min-width: 6em;
	text-align: right;
	margin-right: 1em;
}

main>h1 {
	display: block;
	height: 27px;
	color: white;
	background-color: #335980;
	margin: 0px -25px 0px -25px;
	padding: 0px 0px 5px 13px;
}

.next_page {
	float: right;
}
