/* CSS Document 
main style sheet 2020-05-14 */


@font-face {
	font-family: jGaramond;
	src: url(jGara2.tff);
}

@font-face {
	font-family: jGaramond;
	src: url(jGara2bd.tff);
	font-weight: bold;
}

@font-face {
	font-family: jGaramond;
	src: url(jGara2it.tff);
	font-style: italic;
}





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

body {
	font: 100%/160% Verdana, Arial, Helvetica, sans-serif;
	color: black;
	background-color: #C5D2DA;
}

/* make the iframe content have transperent backgrounds */
.state {
    background-color: white;
    background-color: rgba(0, 0, 0, 0);
}

.container {
	overflow: auto;
	padding: 0;
	border: 2px solid #405968;
	border-radius: 20px;
	box-shadow: 1 0 10 #333;
}

.main-content {
	background-color: #FFFFFF;
	background-image: url(/images/repeating-crane-background-small.png);
	background-repeat: repeat-y;
	background-size: 20%;
	padding-left: 10%;
	overflow: auto;
}	

.clearfix {
	content: "";
	clear: both;
	display: table;
}

.appearance {
	border-bottom: 2px solid black;
	margin-bottom: 20px;
}

.appearance:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
}





/* header */
#header {
	background-color: white;
}

#header img {
	display: block;
	margin: auto;
	max-width: 100%;
	height: auto;
}




/* navigation bar */
#nav-bar {
	background-color: #383274;
	text-align: center;
	list-style-type: none;
}

#nav-bar li {
	display: inline-block;
	margin: 0;
	padding-left: 1em;
	padding-right: 1em;
	padding-top: .2em;
	padding-bottom: .2em;
}

#nav-bar li a {
	color: white;
	font-weight: bold;
	text-decoration: none;
}

#nav-bar li a:hover {
	color: #CFCFCF;
}

/* highlight current page in nav bar */
#home #nav-bar #home,
#osdi #nav-bar #osdi,
#books #nav-bar #books,
#projects #nav-bar #projects,
#GLH-CA #nav-bar #glh,
#GLH-IN #nav-bar #glh,
#GLH-OR #nav-bar #glh,
#GLH-PN #nav-bar #glh,
#GLH-SC #nav-bar #glh,
#GLH-WI #nav-bar #glh,
#engagements #nav-bar #engagements,
#contact #nav-bar #contact {
	color: #A2E1AA;
}





/* footer */
#footer {
	padding: 3px;
	overflow: auto;
	background: #393073;	
	text-align: center;
}

#footer li {
	font-size: .6em;
	line-height: 1.2em;
	display: inline-block;
	padding-left: 30px;
	padding-right: 30px;
	padding-top: 0;
	padding-bottom: 0;
	color: #D6D6D6;
	margin: 0;
}

#footer a {
	color: #D6D6D6;	
}

#footer a:visited {
	color: #D6D6D6;	
}





/* text */
.OSDI-purple {
    color: var(--OSDI-purple);
}

h1 {
	color: #393073;
	font-size: 2.5em;
	font-weight: lighter;
	line-height: 1.3em;
	margin-bottom: .4em;
	padding-top: .4em;
	text-align: center;
}

h2 {
	margin-bottom: -.4em;
	font-weight: bold;
	font-size: 1.2em;
}

h3 {
	color: #393073;
	font-size: 1.6em;
	line-height: 1.8em;
	font-weight: lighter;
	margin: .4em;
	text-align: center;
}

h4 {
	font-weight: bold;
	text-align: center;
	margin-bottom: -.1em;
}

p {
	margin: .8em;
}

.italic {
	font-style: italic;
}




	
/* Image formatting */
.image-group {
	width: 100%;
}

img {
	max-width: 100%;
	height: auto;
}

.center {
	margin: auto;
	text-align: center;
	display: block;
}

.image-and-caption {
	margin: 5px;
	padding: 1px;
	border: solid 1px black;
	width: 97%;
	float: left;
}

.image-and-caption img {
	padding: 0;
	margin: 0;
	display: block;
	width: 100%;
}

.caption {
	font-style: italic;
	font-size: .9em;
	line-height: 1.3em;
	text-align: center;
}

/* format wider images on a single row */
.span3 {
    width: 100%;
}

.span2 {
    width: 66%;
}

.span1 {
    width: 33%;
}

.span-half {
    width: 49%;
}





/* allow custom reordering of images for different screens */
	.single_column_version {
		display: block;
		float: left;
		width: 100%;
	}

	.double_column_version {
		display: none;
		float: left;
		width: 49%;
	}

	.triple_column_version {
		display: none;
		float: left;
		width: 33%;
	}


/* phones and small tablets larger than 600px */
@media only screen and (min-width: 600px) {
	
	.container {
		width: 97%;
		margin: 20px auto;
	}

	.main_content {
	background-color: white;
	background-image: url(/images/repeating-crane-background.png);
	background-repeat: repeat-y;
	background-size: 15%;
	padding-left: 13%;
	}
	
	.single_column_version {
		display: none;
	}

	.double_column_version {
		display: block;
	}

	.triple_column_version {
		display: none;
	}
	
}


/* desktops larger than 922px */
@media only screen and (min-width: 922px) {
	
	.container {
		width: 97%;
		margin: 20px auto;
	}

	.main_content {
	background-color: white;
	background-image: url(/images/repeating-crane-background.png);
	background-repeat: repeat-y;
	background-size: 20%;
	padding-left: 18%;
	}
	
	.single_column_version {
		display: none;
	}

	.double_column_version {
		display: none;
	}

	.triple_column_version {
		display: block;
	}
	
}