@charset "UTF-8";

body {
	background-color: #9e9a8d;
	margin: 0;
	padding: 0;
	padding-bottom: 60px;
}

div {
	font-family: Arial, sans-serif;
	font-size: small;
}

table {
	border-collapse: collapse;
	width: 100%;
}

th {
	vertical-align: top;
}

td {
	margin: 0px;
	padding: 0px;
	vertical-align: top;
}

dt {
	font-weight: bolder;
}

div {
	vertical-align: top;
}

h1 {
	z-index: 0; /* IE hack */
}

img {
	border: none;
}

a, label {
	text-decoration: none;
	color: #1199ca;
	font-weight: bolder;
	
	-webkit-transition: 0.2s;
	-moz-transition: 0.2s;
	transition: 0.2s;
}

a:hover, label:hover {
	color: #ff7f2a;
}

q {
	font-style: italic;
}

fieldset {
	border: 1px solid green;
	margin-top: 0.5em;
	margin-bottom: 1.5em;
}

textarea {
	font-family: Arial, sans-serif;
	font-size: small;
	height: 5em;
}

#container {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

#content {
	min-height: 400px;
	padding: 30px;
	padding-bottom: 40px;
	background-color: white;
	flex-basis: 100%;
}

#content *:target {
	-webkit-transition: 1s;
	-moz-transition: 1s;
	transition: 1s;

}
#content p {
	text-align: justify;
}

#content img {
	border: solid 2px white;
	margin-bottom: 20px;
	-moz-box-shadow: 0px 0px 40px #d0d0d0;
	-webkit-box-shadow: 0px 0px 40px #d0d0d0;
	box-shadow: 0px 0px 40px #d0d0d0;
}

#content table img {
	margin-bottom:0px;
}

#content .noshadow {
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	box-shadow: none;
}

/* Tables */
#content tr {
	background-color: #f0f0f0;
}

#content tr:nth-of-type(odd) {
	background-color: #e0e0e0;
}

#content th {
	background-color: #e0e0ff;
	padding: 0.5em;
	border: 1px solid white;
}

#content td {
	padding: 0.5em;
	border: 1px solid white;
}

.deemphasis {
	background-color: white !important;
	padding: 0 !important;
	text-align: left !important;
}

/* Disabled zebra effect */
.plain tr > * {
	background-color: white;
}

/* Compact table */
.tcompact {
	width: auto;
}

.tcompact th {
	text-align: left;
}

/* Note */
.note {
	font-size: smaller;
	font-weight: bolder;
}

/* Indentation */
.indent {
	padding-left: 2em;
}

.pad {
	padding: 1em;
	margin: 1em;
}

.nopad {
	margin-top: 0px;
	padding-top: 0px;
	margin-bottom: 0px;
	padding-bottom: 0px;
}

.toppad {
	margin-top: 0px;
	padding-top: 1em;
	margin-bottom: 0px;
	padding-bottom: 0px;
	clear: both;
}

.bottompad {
	margin-top: 0px;
	padding-top: 0px;
	margin-bottom: 0px;
	padding-bottom: 1em;
}

/* Image floats */
.floatleft {
	float: left;
	margin-right: 20px;
}

.floatleft_small {
	float: left;
	margin-right: 8px;
}

.floatright {
	float: right;
	margin-left: 20px;
}

.multicol {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}

.multicol > div {
	min-width: 250px;
	width: 100%;
	margin-right: 2em;
}

.multicol > div:last-child {
	margin-right: 0;
}

.insetright {
	float: right;
	position: relative;
	z-index: 1;
	background-color: #f0f0f0;
	border-left: 10px solid white;
	border-top: none;
	border-right: none;
	border-bottom: 10px solid white;
	padding-left: 10px;
	padding-top: 0;
	padding-right: 10px;
	padding-bottom: 10px;
	max-width: 450px;
}

/* Emphasis */
.emphasis {
	color: #ff0000;
}

.centerform {
	text-align: center !important;
	background-color: #f0f0f0;
	padding: 1em;
	margin-bottom: 1em;
}

#content dd {
	padding-bottom: 0.7em;
}

/* Headings */
#content h1 {
	color: #34393b;
	font-size: large;
	/* text-shadow: white 0px 0px 3px; */
	background-color: #cacdc6;
	
	border-left: solid 6px #ffa500;
	border-bottom: solid 1px #b0b0b0;
	padding-left: 12px;
	padding-right: 12px;
	padding-top: 3px;
	padding-bottom: 3px;
	
	/* -moz-border-radius: 0 4px 8px 0; /* tl, tr, bl, br */
	/* -webkit-border-radius: 0px 4px 4px 0px;  tl, tr, bl, br */
	
	position: relative;
	clear: both;
}

#content h1 a {
	color: #34393b;
	display: block;
}

#content h1 a:hover {
	color: #bf7c00;
}

#content h1:target {
	color: #e3e3e0;
	background-color: #888a85;
	border-bottom: solid 1px #505050;
	text-shadow: #34393b 0px 0px 5px;
}

#content h2 {
	font-size: medium;
	text-shadow: silver 1px 1px 2px;
}

#content h2:target {
	background-color: #ffe7c3;
}

#content h3 {
	font-size: small;
	text-shadow: silver 1px 1px 2px;
}

/* IE shadow hack */
#content h1, #content h2, #content h3 {
	filter: glow(color=white, strength=1);
	filter: dropshadow(color=silver, offX=1, offY=1);
}

#content dt:target {
	background-color: #ffe7c3;
}

#content div:target {
	border: 1px dashed blue;
}

#showarea {
	width: 280px;
	height: 280px;
	margin-left: auto;
	margin-right: auto;
	cursor: pointer;
}

.lefttable th {
	text-align: left;
}

.fixedcol {
	width: 15em;
	white-space: nowrap;
}

.sfixedcol {
	width: 10em;
	white-space: nowrap;
}

.nowrap {
	white-space: nowrap;
}

.fullwidth {
	width: 100%;
}

#mainmenu {
	background-color: #888a85;
	background-image: url(img/bgmenuitem.png);
	background-repeat: repeat;
	background-position: top;
	/*height: 100%;*/
	position: relative;
	border-bottom: solid 1px #888888;
	z-index: 2; /* IE hack */
	-webkit-transition: 0.2s;
	-moz-transition: 0.2s;
	transition: 0.2s;
}

#mainmenu:after {
	content: "";
	position: absolute;
	height: 12px;
	width: 100%;
	background: url(img/grad_b.png) repeat-x top;
}

.menuitem {
	float: left;
	font-size: small;
}

.rightitem {
	float: right;
	height: 30px;
}

.rightitem img {
	width: 25px;
	height: 25px;
	position: relative;
	top: 5px;
}

.rightitem .searchIEhack,
.rightitem .search {
	border-width: 0px;
	background-color: #888A85;
	border-bottom: solid 5px #888A85;
	font-size: small;
	padding-bottom:0px;
	height: 19px;
	text-align:center;
	color: #e3e3e0;
	font-weight: bolder;
	width: 80px;
	outline-width: 0px;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	transition: 0.5s;
}

.rightitem .searchIEhack,
.rightitem .search:FOCUS {
	background-color: #585A55;
	border-bottom-color: #585A55;
	color: white;
}

.menuitem > a {
	display: block;
	color: #e3e3e0;
	text-decoration: none;
	
	padding-left: 10px;
	padding-right: 20px;
	padding-top: 8px;
	white-space: nowrap;
	
	height: 22px;
	z-index: 101;
}

.menuitem > a img {
	margin-top: -3px;
	margin-right: 4px;
	vertical-align: top;
	width: 25px;
	height: 25px;
}

.menuitem > a:hover {
	color: black;
	text-shadow: white 0px 0px 4px;
}

.menuitem > .selected {
	color: black;
	background-image: url(img/bgmenuitem_active.png);
	background-color: #eeeeec;
}

.menuitem > div {
	visibility: hidden;
	opacity: 0;
}

.menuitem:hover > div {
	visibility: visible;
	opacity: 1;
}

/* Submenu container */
.menuitem > div {
	border: solid 1px #34393b;
	border-top: solid 6px #34393b;
	background-color: #eeeeec;
	
	padding: 10px;
	padding-top: 4px;
	
	position: absolute;
	margin-left: 0px;
	min-width: 150px;
	z-index: 102;
	
	-moz-box-shadow: 2px 2px 6px silver;
	-webkit-box-shadow: 2px 2px 6px silver;
	box-shadow: 2px 2px 6px silver;
	
	-webkit-transition: 0.2s;
	-moz-transition: 0.2s;
	transition: 0.2s;
}

/* Extended hover area */
.menuitem > div:before {
	content: "";
	position: absolute;
	left: -50px;
	right: -50px;
	bottom: -80px;
	top: 0px;
	z-index: -1;
}

/* Orange bottom stripe in a submenu */
.menuitem > div:after {
	content: "";
	background-color: orange;
	
	position: absolute;
	bottom: 0px;
	left: 0px;
	right: 0px;
	
	height: 6px;
}

.menuitem > div a {
	font-weight: normal;
	color: #555555;
	display: block;
	padding-top: 2px;
	padding-bottom: 2px;
	
	/* Compensate container's padding */
	padding-left: 10px;
	padding-right: 10px;
	margin-right: -10px;
	margin-left: -10px;
}

/* Highligted item in a submenu */
.menuitem > div a:hover {
	color: #1c1d1c;
	background-color: #cacdc6;
	
	-webkit-transition: background-color 0s;
	-moz-transition: background-color 0s;
	transition: background-color 0s;
}

.menuitem > div .caption {
	font-size: small;
	color: gray;
	border-bottom: dotted 1px gray;
	
	margin-top: 6px;
	margin-bottom: 2px;
	font-weight: bold;
}

/* Images not allowed in the submenu */
.menuitem > div img {
	display: none;
}

.rightgrad, .leftgrad {
	width: 12px;
	min-width: 12px;
	max-width: 12px;
}

.leftgrad {
	background: repeat-y url(img/grad_l.png);
}

.rightgrad {
	background: repeat-y url(img/grad_r.png);
}

#mainpane {
	margin: auto;
	min-width: 780px;
	max-width: 90%;
	width: 1280px;
	margin-top: 18px;
	border: solid 1px #34393B;
	-moz-box-shadow: 0px 0px 14px #333;
	-webkit-box-shadow: 0px 0px 14px #333;
	box-shadow: 0px 0px 14px #333;
	
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
}

#stripe_logo {
	margin: 0;
	padding: 0;
	height: 90px;
	background-color: #eae9e7;
	background-image: url(img/bglogo.png);
	background-repeat: no-repeat;
	background-position: left top;
	
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	
	box-shadow: inset 0px -2px 6px #999;
	-moz-box-shadow: inset 0px -2px 6px #999;
	-webkit-box-shadow: inset 0px -2px 6px #999;
}

#mainfooter {
	background-color: #eeeeec;
	color: #4d4d4d;
	font-size: small;
	font-style: italic;
	padding: 24px 8px 4px 24px;
	clear: both;
	
	background-image: url(img/grad_b.png);
	background-repeat: repeat-x;
	background-position: top;
	
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
}

.ulemul {
	margin-top: 4pt;
	margin-bottom: 4pt;
}

.fhidden {
	border: 0px;
	margin: 0px;
	padding: 0px;
}

.fhidden legend {
	display: none;
}

.centering {
	text-align: center !important;
}

.addr {
	color: #1199ca;
	font-weight: bolder;
}

.clear {
	clear: both;
}

.noclear {
	clear: none !important;
}

.sections a {
	display: block;
}

.inline {
	display: inline-block;
}

.spread {
	text-align: justify;
	padding: 0 80px;
}

.spread ul {
	padding-left: 0;
}

.spread li {
	list-style-type: none;
	margin-bottom: 8px;
	text-align: center;
}

.stretch {
	width: 100%;
	display: inline-block;
}

.news div {
	//margin: 0 0 10px 140px;
	margin: 0 0 10px 20px;
}

.news .current {
	margin: 0 0 10px 0;
	padding-left: 20px;
}

.news .current:before {
	float: left;
	content: "";
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 10px solid black;
	margin: 2px 6px 0 -16px;
}

/*
.news .group {
	margin: 40px 0;
}

.news .label {
	display: inline-block;
	width: 140px;
	float: left;
	font-weight: bold;
}
*/

.news .expanded {
	display: none;
	margin: 0 0 16px 0;
	text-align: justify;
}

.news .expanded .face {
	margin-right: -120px;
	vertical-align: top;
}

.news .expanded .text {
	display: inline-block;
	padding-left: 140px;
	vertical-align: top;
}

.news label .plain:hover {
	color: #ff7f2a;
	cursor: pointer;
}

.show {
	display: none;
}

.show:not ~ .expanded {
	display: none;
}

.show:not ~ .plain {
	display: block;
}

.show:checked ~ .expanded {
	display: block;
}

.show:checked ~ .plain {
	display: none;
}

.person, .course {
	display: inline-block;
	margin: 12px;
	padding: 8px;
	text-align: center;
}

.course {
	width: 200px;
	vertical-align: middle;
}

.course:hover {
	color: white;
	background-color: #ff7f2a;
}

.face {
	display: inline-block;
	width: 100px;
	height: 100px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	border-radius: 50px;
}

.squareface {
	display: inline-block;
	width: 100px;
	height: 120px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;

}

.person .desc {
	text-align: center;
	width: 180px;
	margin-top: 4px;
}

.person .func {
	font-weight: bold;
	margin-bottom: 2px;
}

.person .name {
	font-size: 120%;
	font-weight: bold;
	margin: 12px 0px 4px 0;
}

.popup {
	cursor: help;
}

.popup .content {
	border: solid 1px gray;
	text-align: justify;
	white-space: normal;
	max-width: 300px;
	padding: 10px;
	position: absolute;
	background-color: white;
	margin: -20px;
	display: none;
	visibility: hidden;
	opacity: 0;
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	transition: 0.3s;
}

.popup:hover .content {
	display: block;
	visibility: visible;
	opacity: 1;
	z-index: 1;
}

#content .mff-contacts {
	float: right;
	margin-top: 2px;
	font-weight: bold;
	font-size: 80%;
	color: #1199ca;
}

.labtopics h2 {
	margin-top: 2em;
}

.labtopics p {
	margin-top: 0.5em;
	margin-bottom: 0;
}

.unbold {
	font-weight: normal !important;
}

@media print {
	* {
		background: none;
		border: none;
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
	}
	.face:before {
		content: inherit;
		display: inline-block;
		width: 100px;
		height: 100px;
		overflow: hidden;
	}
	#stripe_logo {
		display: none;
	}
	#container, #content {
		display: inline;
	}
}
