body {
	background: #fafafa ;
	color: #444;
	font: 100%/30px 'Helvetica Neue', helvetica, arial, sans-serif;
	text-shadow: 0 0px 0 #fff;
}

strong {
	font-weight: bold; 
}

em {
	font-style: italic; 
}
table { 
	width: 100%; 
	border-collapse: collapse;
	background: #f5f5f5;
	box-shadow: inset 0 1px 0 #fff;
	font-size: 12px;
	line-height: 24px;
	margin: 30px auto;
	text-align: left;
	<!-- width: 800px;
	border-collapse: separate; -->
}

th {
	background: #C2C1A7;
	border-left: 1px solid #555;
	border-right: 1px solid #777;
	border-top: 1px solid #555;
	border-bottom: 1px solid #333;
	box-shadow: inset 0 1px 0 #999;
	color: #fff;
	font-weight: bold;
	padding: 10px 15px;
	position: relative;
	text-shadow: 0 1px 0 #000;	
}
	th:after {
		background: #E6E5DC;
		content: '';
		display: block;
		height: 25%;
		left: 0;
		margin: 1px 0 0 0;
		position: absolute;
		top: 25%;
		width: 100%;
	}

	th:first-child {
		border-left: 1px solid #777;	
		box-shadow: inset 1px 1px 0 #999;
	}

	th:last-child {
		box-shadow: inset -1px 1px 0 #999;
	}

td {
	border-right: 1px solid #fff;
	border-left: 1px solid #e8e8e8;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #e8e8e8;
	padding: 10px 15px;
	position: relative;
	transition: all 300ms;
}

	td:first-child {
		box-shadow: inset 1px 0 0 #fff;
	}	

	td:last-child {
		border-right: 1px solid #e8e8e8;
		box-shadow: inset -1px 0 0 #fff;
	}

tr {
	background: #E6E5DC;	
}

	tr:nth-child(odd) td {
		background: #f1f1f1 ;	
	}

	tr:last-of-type td {
		box-shadow: inset 0 -1px 0 #fff; 
	}

	tr:last-of-type td:first-child {
		box-shadow: inset 1px -1px 0 #fff;
	}	

	tr:last-of-type td:last-child {
		box-shadow: inset -1px -1px 0 #fff;
	}
	
thead {
	text-align: center ;
	background-color:  #7D7C78;
	font-weight: bold;
}

tbody:hover td {
	color: transparent;
	text-shadow: 0 0 3px #aaa;
}

tbody:hover tr:hover td {
	color: #444;
	text-shadow: 0 1px 0 #fff;
}

/*table th { font-weight: bold; }
table td, table th { padding: 9px 10px; text-align: left; }*/

.centeredCell{
	text-align: center;
	vertical-align: middle;
}

.verticalCenteredCell{
	vertical-align: middle ;
}

/*
Max width before this PARTICULAR table gets nasty
This query will take effect for any screen smaller than 760px
and also iPads specifically.
*/
@media
only screen and (max-width: 760px),
(min-device-width: 768px) and (max-device-width: 1024px)  {

/* Force table to not be like tables anymore */
table, thead, tbody, th, td, tr {
	display: block;
}

/* Hide table headers (but not display: none;, for accessibility) */
thead tr {
	position: absolute;
	top: -9999px;
	left: -9999px;
}

tr { border: 1px solid #ccc; }

td {
	/* Behave  like a "row" */
	border: 1px solid #eee;
	
	position: relative;
	padding-left: 50%;
}

td:before {
	/* Now like a table header */
	position: absolute;
	/* Top/left values mimic padding */
	top: 6px;
	left: 6px;
	width: 45%;
	padding-right: 10px;
	vertical-align: center;
	text-align: center ;
}

/*
Label the data
*/
#teaching td:nth-of-type(1):before { content: "Year"; font-weight: bold;}
#teaching td:nth-of-type(2):before { content: "Course Title"; font-weight: bold;}
#teaching td:nth-of-type(2) {text-align: center; }
#teaching td:nth-of-type(3):before { content: "Location"; font-weight: bold;}
#teaching td:nth-of-type(4):before { content: "Level"; font-weight: bold;}
#teaching td:nth-of-type(5):before { content: "Role"; font-weight: bold;}
#teaching td:nth-of-type(6):before { content: "# hours"; font-weight: bold;}
#teaching td:nth-of-type(7):before { content: "# students"; font-weight: bold;}

#publication td:nth-of-type(1):before { content: "Authors"; font-weight: bold;}
#publication td:nth-of-type(2):before { content: "Paper Title"; font-weight: bold;}
#publication td:nth-of-type(2) {text-align: center; }
#publication td:nth-of-type(3):before { content: "PDF"; font-weight: bold;}
#publication td:nth-of-type(4):before { content: "BibTex"; font-weight: bold;}
#publication td:nth-of-type(5):before { content: "Video"; font-weight: bold;}

}

/* Smartphones (portrait and landscape) ----------- */
@media only screen
and (min-device-width : 320px)
and (max-device-width : 480px) {
body {
	padding: 0;
	margin: 0;
	width: 320px; }
}

/* iPads (portrait and landscape) ----------- */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
body {
	width: 495px;
}
}