
body
{
	background: #fff;
	color: #383838;
	font: normal 11pt PTSerif, Arial,Helvetica,sans-serif;
	line-height: 165%;
	margin: 0;
	padding: 0;
}

/*body, html { height: 100vh; }*/

body.fixed
{
	overflow-y: hidden;
	padding: 0 17px 0 0;
}

body.fixed.no-space { padding: 0; }

.errors 
{ 
	background: #eee;
	height: 100%; 
	left: 0;
	position: fixed;
	top: 0;
	width: 100%; 
	z-index: 10; 
}

.error-msg
{
	font-size: 1.2em;
	left: 50%;
	position: fixed;
	text-align: center;
	top: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	z-index: 11;
}

.error-msg .icons
{
	background: #000000;
	border-radius: 50%;
	display: block;
	height: 70px;
	margin: 0 auto 30px auto;
	padding: 20px;
	width: 70px;
}

.error-msg .codes
{
	color: #000000;
	font-family: LatoBl;
	font-size: 4.5em;
	margin: 0 0 60px;
}

.error-msg .sub-text
{
	color: #666;
	font-family: LatoT;
	font-size: 1.5em;
	margin: 0 0 10px;
}

.error-msg a
{
	color: #888;
	font-family: LatoB;
	text-decoration: none;
	transition: color .25s;
	-webkit-transition: color .25s;
}

.error-msg a:hover { color: #000000; }

#page
{
	background: #fff;
	margin: 0;
}

#header, #content
{
	margin: 0;
	padding: 0;
}

#header { border-bottom: solid #ddd 1px; }

#header .top-nav
{
	background: #000000;
	padding: 0 5%;
}

#header .top-nav ul
{
	margin: 0;
	padding: 0;
}

#header .top-nav ul li
{
	display: inline;
	list-style: none;
	position: relative;
}

#header .top-nav ul li a
{
	color: #fff;
	display: inline-block;
	font-family: LatoBl;
	font-size: .9em;
	padding: 12px 0;
	position: relative;
	margin: 0 20px 0 0;
	text-decoration: none;
	text-transform: uppercase;
}

#header .top-nav ul li a .decors
{
	background: #fff;
	display: inline-block;
	height: 3px;
	left: 50%;
	position: absolute;
	top: 0;
	transition: all .25s;
	width: 0;
}

#header .top-nav ul li a:hover .decors 
{
	left: 0; 
	width: 100%; 
}

#header .top-nav ul.subnavs
{
	background: #fff;
	box-shadow: 0 4px 4px #888;
	-webkit-box-shadow: 0 4px 4px #888;
	left: -20px;
	margin: 0;
	opacity: 0;
	padding: 0;
	position: absolute;
	top: 35px;
	transition: all .25s;
	-webkit-transition: all .25s;
	visibility: hidden;
	white-space: nowrap;
	z-index: 5;
}

#header .top-nav ul.subnavs li { display: block; }

#header .top-nav ul.subnavs li a
{
	box-sizing: border-box;
	color: #383838;
	padding: 12px 20px;
	margin: 0;
	transition: all .25s;
	-webkit-transition: all .25s;
	width: 100%;
}

#header .top-nav ul.subnavs li a:hover 
{ 
	background: #000000; 
	color: #fff;
}

#header .top-nav ul li:hover ul.subnavs 
{ 
	opacity: 1; 
	visibility: visible; 
}

#header .top-nav .searches
{
	float: right;
	height: 30px;
	margin: 8px 0;
	padding: 0;
	position: relative;
	width: 300px;
}

.search-field
{
	background: rgba(255, 255, 255, .3);
	border: none;
	color: #fff;
	font-family: PTSerif;
	font-size: 1em;
	padding: 5px 40px 5px 10px;
	position: absolute; 
	transition: background .25s;
	-webkit-transition: background .25s;
	width: 245px;
}

.search-field:hover { background: rgba(255, 255, 255, .4); }

.search-field:focus 
{ 
	background: #fff;
	color: #383838;
}

.search-button
{
	background: transparent url('../images/public/icons/ico_search_wh.png') no-repeat center;
	border: none;
	cursor: pointer;
	height: 30px;
	margin: 0;
	opacity: 0.4;
	padding: 0;
	position: absolute;
	right: 5px;
	transition: all 250ms;
	-webkit-transition: all 250ms;
	width: 30px;
}

.search-button:hover { opacity: .9; }

.search-field:focus + .search-button { background-image: url('../images/public/icons/ico_search.png'); }

.header-container
{
	display: table;
	margin: 30px 5%;
	width: 90%;
}

.header-container .logo, .header-container .main-heading
{
	display: table-cell;
	vertical-align: middle;
}

.header-container .logo { width: 200px; }

.header-container .logo img { width: 200px; }

.header-container .main-heading { padding: 0 0 0 30px; }

.header-container .main-heading .taglines 
{
	margin: 0 0 35px;
	text-align: right;
}

.header-container .main-heading .taglines span.tagline 
{
	font-family: LatoT; 
	font-size: 1.4em;
}

.header-container .main-heading .mainmenu ul
{
	margin: 0;
	padding: 0;
}

.header-container .main-heading .mainmenu ul li
{
	list-style: none;
	display: inline;
	position: relative;
}

.header-container .main-heading .mainmenu ul li a
{
	color: #aaa;
	display: inline-block;
	font-family: LatoBl;
	padding: 10px;
	text-decoration: none;
	text-transform: uppercase;
	transition: all .25s;
	-webkit-transition: all .25s;
}

.header-container .main-heading .mainmenu .languages { float: right; }

.header-container .main-heading .mainmenu .languages a 
{
	color: #888;
	font-family: LatoT;
}

.header-container .main-heading .mainmenu ul li:hover a { color: #383838; }

.header-container .main-heading .mainmenu ul.submenu
{
	position: absolute;
	top: 35px;
	left: 10px;
	opacity: 0;
	transition: all .25s;
	-webkit-transition: all .25s;
	visibility: hidden;
	white-space: nowrap;
	z-index: 20;
}

.header-container .main-heading .mainmenu ul.submenu li
{ 
	background: #000000; 
	border-bottom: solid #eee 1px;
	display: block;
	transition: background .25s;
	-webkit-transition: background .25s;
}

.header-container .main-heading .mainmenu ul.submenu li a
{
	color: #eee;
	padding: 10px 20px;
	transition: color .25s;
	-webkit-transition: color .25s;
}

.header-container .main-heading .mainmenu ul.submenu li:last-child { border: none; }

.header-container .main-heading .mainmenu ul.submenu li:hover { background: #eee; }

.header-container .main-heading .mainmenu ul.submenu li a:hover { color: #000000; }

.header-container .main-heading .mainmenu ul.submenu:after
{
	border: 8px solid transparent;
	border-bottom-color: #000000;
	content:"";
    position: absolute;
	left: 10px;
	top: -16px;
}

.header-container .main-heading .mainmenu ul li:hover ul.submenu 
{
	opacity: 1;
	visibility: visible;
}

.main-banner
{
	background-color: #ddd;
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto;
	color: #fff;
    font-family: LatoBl;
	position: relative;
    text-shadow: 2px 2px #333;
    -webkit-text-shadow: 2px 2px #333;
}

.main-banner.no-banner
{
	background-image: url('../images/default/logo_gr.png');
	background-size: auto;
}

.main-banner-wrapper, .each-banner
{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    width: 100%;
}

.main-banner-wrapper .each-banner-caption
{
    background-color: rgba(0, 0, 0, .4);
	font-size: 250%;
    left: 20%;
	line-height: 145%;
    padding: 20px 30px;
    position: absolute;
    top: 50%;
    transform: translateY(-60%);
    -webkit-transform: translateY(-60%);
	white-space: nowrap;
}

.main-section
{
	margin: 0 auto;
	padding: 60px 0;
	position: relative;
	width: 70%;
}

.slide-dots
{
	background: #fff;
	padding: 20px 0 10px 0;
	position: absolute;
	text-align: center;
	top: -55px;
	width: 100%;
}

.slide-dots .dot
{
	background: #aaa;
	border-radius: 50%;
	cursor: pointer;
	display: inline-block;
	height: 15px;
	margin: 5px;
	width: 15px;
}

.slide-dots .dot.current { background-color: #000000; }

.value-place { margin: 0 5%; }

#footer
{
	background: #111;
	color: #fff;
	font-family: Lato;
	font-size: .9em;
	padding: 60px 15%;
}

#footer .cols
{
	box-sizing: border-box;
	float: left;
	width: 33.3%;
}

#footer .cols.left-side { padding-right: 2%; }

#footer .cols.center-side { padding: 0 1.5%; width: 38.3%;  }

#footer .cols.right-side { padding-left: 2%; width: 28.3% }

#footer hr { margin: 20px 0; }

#footer .cols img 
{
	display: block;
	margin: 0 0 15px; 
}

#footer ul
{
	margin: 0;
	padding: 0;
}

#footer ul li
{
	display: block;
	list-style: none;
}

#footer ul li a
{
	border-bottom: solid #555 1px;
	color: #aaa;
	display: block;
	font-family: LatoB;
	padding: 10px 0;
	text-decoration: none;
	transition: color .25s;
	-webkit-transition: color .25s;
}

#footer ul li a:hover { color: #fff; }

#footer ul li:last-child a { border: none; }

#notifs
{
	bottom: 2.5%;
	max-height: 95%;
	left: 2%;
	overflow: hidden;
	position: fixed;
	width: 400px;
	z-index: 2000;
}

#notifs .notice
{
	background: #eee;
	border: solid #aaa 1px;
	border-radius: 3px;
	box-sizing: border-box;
	font-family: Lato;
	margin: 10px 0;
	padding: 10px 20px;
	width: 100%;
}

#notifs .notice.ok
{
	background: #cfc; 
	border-color: #0c0;
}

#notifs .notice.no
{
	background: #ffd5d5;
	border-color: #c00;
}

#notifs .notice .titles { font-family: LatoBl; }

#notifs .notice.ok .titles, #notifs .notice.ok .messages { color: #080; }

#notifs .notice.no .titles, #notifs .notice.no .messages { color: #a00; }

#gmap_canvas_container
{
	float: left;
	overflow: hidden;
	width: 40%;
}

.contact-container
{
	float: left;
	margin: 0 0 0 5%;
	width: 55%;
}

.campus-facilities a
{
	color: #383838;
	display: inline-block;
	font-weight: bold;
	font-size: 1.1em;
	margin: 5px 0;
	text-decoration: none;
}

.campus-facilities a:hover { color: #000000; }

.sub-banner
{
	background-color: #ddd;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border-bottom: solid #ddd 1px;
	height: 55vh;
	position: relative;
}

.sub-banner.no-photo
{
	background-image: url('../images/default/logo_gr.png');
	background-size: auto;
}

.sub-content { margin: 60px 5%; }

.sub-content .contents, .sub-content .links { float: left; }

.sub-content .contents
{
	margin: 0 5% 0 0;
	width: 72%;
}

.sub-content .links
{
	padding: 60px 0 0;
	width: 23%;
}

.sub-content .links h3
{ 
	color: #000000;
	margin: 0 0 20px;
}

.sub-content .links ul
{
	margin: 0;
	padding: 0;
}

.sub-content .links ul li
{
	display: block;
	list-style: none;
}

.sub-content .links ul li a
{
	background: #000000;
	border: solid #000000 1px;
	border-radius: 3px;
	color: #fff;
	display: block;
	font-family: Lato;
	padding: 10px;
	margin: 0 0 5px;
	text-decoration: none;
	transition: all .25s;
	-webkit-transition: all .25s;
}

.sub-content .links ul li a:hover 
{
	background: #eee; 
	border-color: #dadada;
	color: #000000; 
}

.schematic
{
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border: solid #ccc 1px;
	border-radius: 3px;
	height: 450px;
	margin: 60px 0 0;
	position: relative;
	transition: border .25s;
	-webkit-transition: border .25s;
}

.schematic.has-schema { cursor: pointer; }

.schematic.has-schema:hover { border-color: #aaa; }

.schematic span.nan
{
	border: none;
	color: #888;
	font-family: Lato;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	white-space: nowrap;
}

.schematic .previews
{
	background: rgba(0, 0, 0, .7);
	border-radius: 3px;
	bottom: 10px;
	color: #fff;
	font-family: LatoB;
	font-size: .9em;
	left: 10px;
	opacity: 0;
	padding: 5px 10px;
	position: absolute;
	transition: all .25s;
	-webkit-transition: all .25s;
	visibility: hidden;
}

.schematic:hover .previews
{
	visibility: visible;
	opacity: 1; 
}

.schema-previewer-mask
{
	background: rgba(0, 0, 0, .2);
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 102;
}

.schema-previewer
{
	background-color: #fff;
	border-radius: 3px;
	box-sizing: border-box;
	display: none;
	height: 90%;
	left: 5%;
	overflow: auto;
	position: fixed;
	top: 5%;
	width: 90%;
	z-index: 103; 
}

.schema-previewer img { margin: 20px; }

.schema-previewer .close-preview
{
	background-color: #fff;
	background-image: url('../images/public/icons/ico_close.png');
	background-position: center;
	background-repeat: no-repeat;
	border: solid #888 2px;
	border-radius: 50%;
	cursor: pointer;
	display: inline-block;
	float: right;
	height: 30px;
	margin: 30px 30px 0 0;
	opacity: .6;
	position: fixed;
	right: 5%;
	transition: all .25s;
	-webkit-transition: all .25s;
	top: 5%;
	width: 30px;
	z-index: 104;
}

.schema-previewer .close-preview:hover { opacity: 1; }

.lab-row
{
	border-bottom: solid #ddd 1px;
	padding-bottom: 40px;
	margin-bottom: 40px;
	position: relative;
}

.lab-row.last { border: none; }

.lab-photo, .lab-desc { float: left; }

.lab-desc h3 { margin-top: 0; }

.lab-photo
{
	background-color: #f1f1f1;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: solid #ccc 1px;
	border-radius: 5px;
	box-sizing: border-box;
	padding: 0 0 20%;
	width: 30%;
}

.lab-photo.no-photo 
{ 
	background-image: url('../images/default/logo_gr.png');
	background-size: auto; 
}

.lab-desc
{
	margin-left: 5%;
	width: 65%;
}

.candidate-row, .organization-row
{
	border-bottom: solid #ccc 1px;
	margin: 0 0 60px;
	padding: 0 0 60px;
}

.candidate-row.last, .organization-row.last { border: none; }

.candidate-row .covers, .organization-row .covers
{
	background-color: #fff;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 3px;
	margin: 0 0 30px;
	padding-bottom: 50%;
}

.news-container
{
	border-collapse: collapse;
	display: table;
	width: 100%;
}

.news-container .share-col, .news-container .detail-col
{
	display: table-cell;
	vertical-align: top;
}

.news-container .share-col { width: 70px; }

.news-container .share-col .share-title
{
	border-bottom: solid 2px #888;
	color: #777;
	font-family: LatoBl;
	margin: 0 0 20px;
	padding: 0 0 5px;
	text-align: center;
	text-transform: uppercase;
}

.news-container .share-col a
{
	color: #777;
	cursor: pointer;
	display: block;
	font-family: Social;
	font-size: 2em;
	margin: 0 0 20px;
	text-align: center;
	text-decoration: none;
	transition: color .25s;
	-webkit-transition: color .25s;
}

.news-container .share-col a:hover { color: #000000; }

.news-container .detail-col { padding: 0 0 0 60px; }

.news-container .detail-col .dates
{
	color: #888;
	font-family: Lato;
	font-size: 1.1em;
	margin: 0 0 10px;
}

.news-photo
{
	background-color: #eee;
	background-image: url('../../images/administrator/icons/ico_add.png');
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	border: solid #ccc 1px;
	border-radius: 3px;
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	margin: 0 1% 2%;
	padding: 0 0 22%;
	position: relative;
	transition: all .25s;
	-webkit-transition: all .25s;
	width: 22%;
}

@media only screen and (max-width: 1024px) {
	.news-photo
	{
		padding: 0 0 30.3%;
		width: 30.3%; 
	}
}

.news-photo:hover
{
	box-shadow: 0 0 8px #aaa;
	-webkit-box-shadow: 0 0 8px #aaa;
}

.news-photo-mask
{
	background: rgba(255, 255, 255, .6);
	position: fixed;
	height: 100%;
	left: 0;
	opacity: 0;
	top: 0;
	transition: all .25s;
	-webkit-transition: all .25s;
	visibility: hidden;
	width: 100%;
	z-index: 99;
}

.news-photo-previewer
{
	background-color: rgba(0, 0, 0, .8);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: fixed;
	height: 90%;
	left: 10%;
	opacity: 0;
	top: 5%;
	transition: all .25s;
	-webkit-transition: all .25s;
	visibility: hidden;
	width: 80%;
	z-index: 100;
}

.news-photo-close, .news-photo-trash
{
	background-color: #fff;
	background-image: url('../images/administrator/icons/ico_delete.png');
	background-position: center;
	background-repeat: no-repeat;
	border: solid #888 2px;
	border-radius: 50%;
	cursor: pointer;
	display: inline-block;
	height: 30px;
	margin: 20px 20px 0 0;
	opacity: 0;
	position: fixed;
	right: 10%;
	top: 5%;
	transition: all .25s;
	-webkit-transition: all .25s;
	visibility: hidden;
	width: 30px;
	z-index: 101;
}

.news-photo-trash
{
	background-image: url('../images/administrator/icons/ico_trash.png');
	margin: 20px 60px 0 0;
}

.news-photo-mask.shown, .news-photo-previewer.shown, .news-photo-close.shown, .news-photo-trash.shown
{
	opacity: 1;
	visibility: visible;
}

.news-photo-close.shown, .news-photo-trash.shown { opacity: .6; }

.news-photo-close.shown:hover, .news-photo-trash.shown:hover { opacity: 1; }

.news-photo-close.shown .tooltip, .news-photo-trash.shown .tooltip
{
	background: #aaa;
	border-radius: 3px;
	color: #888;
	font-family: Lato;
	opacity: 0;
	padding: 1px;
	position: absolute;
	right: -2px;
	top: -42px;
	transition: all .25s;
	-webkit-transition: all .25s;
	visibility: hidden;
	white-space: nowrap;
	z-index: 20;
}

.news-photo-close.shown:hover .tooltip, .news-photo-trash.shown:hover .tooltip
{
	opacity: 1;
	visibility: visible;
}

.news-photo-close.shown .tooltip:before, .news-photo-trash.shown .tooltip:hover
{
	content: "";
	position: absolute;
	right: 5px;
	top: 29px;
	width: 0;
	height: 0;
	border-right: 12px solid transparent;
	border-top: 8px solid #aaa;
	border-left: 12px solid transparent;
}

.news-photo-close.shown .tooltip:after, .news-photo-trash.shown .tooltip:after
{
	content: "";
	position: absolute;
	right: 8px;
	width: 0;
	height: 0;
	top: 29px;
	border-right: 9px solid transparent;
	border-top: 6px solid #fff;
	border-left: 9px solid transparent;
}

.news-photo-close.shown .tooltip span, .news-photo-trash.shown .tooltip span
{
	background: #fff;
	border-radius: 3px;
	display: block;
	padding: 2px 8px;
	top: 1px;
	left: 1px;
}

.faq-row
{
	border-bottom: solid #ddd 1px;
	padding-bottom: 40px;
	margin-bottom: 40px;
}

.faq-row.last
{
	border: none;
	margin: 0;
	padding: 0;
}

.faq-row .questions
{
	color: #777;
	font-size: 1.2em;
	margin: 0 0 10px;
}

.testimonial-container 
{
	padding: 0 0 40px;
	overflow-x: auto; 
	white-space: nowrap;
}

.testimonial-wrapper { text-align: center; }

.testimonial-col
{
	border: solid #ccc 1px;
	display: inline-block;
	margin: 0 2% 0 0;
	vertical-align: top;
}

.testimonial-col .headings
{
	border-collapse: collapse;
	display: table;
	width: 100%;
}

.testimonial-col .headings .photos, .testimonial-col .headings .contents
{
	display: table-cell;
	vertical-align: middle;
}

.testimonial-col .headings .photos
{
	background-color: #ddd;
	background-image: url('../images/default/logo_alumni.png');
	background-position: center;
	background-repeat: no-repeat;
	width: 80px;
}

.testimonial-col .headings .photos.has-photo 
{
	background-color: #fff;
	background-size: cover; 
}

.testimonial-col .headings .bios
{
	background: #000000;
	color: #fff;
	padding: 20px 25px;
	text-align: left;
}

.testimonial-col .headings .bios .names 
{ 
	font-family: Lato;
	font-size: 1.3em; 
}

.testimonial-col .contents
{
	box-sizing: border-box;
	padding: 20px;
	position: relative;
	text-align: left;
	white-space: normal;
	width: 100%;
}

.testimonial-col .contents:after
{
	border: 8px solid transparent;
	border-bottom-color: #fff;
	content:"";
    position: absolute;
	left: 100px;
	top: -16px;
	z-index: 10;
}

.testimonial-col .contents span.big-quote
{
	color: #000000;
	display: inline-block;
	float: left;
	font-family: LatoI;
	font-size: 2.5em;
	margin: 5px 20px 10px 0;
}

.alumni-container
{
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	-moz-flex-flow: row wrap;
}

.alumni-col
{
	border: solid #ccc 1px;
	box-sizing: border-box;
	margin: 0 2% 20px 0;
	transition: border .25s;
	-webkit-transition: border .25s;
	vertical-align: top;
	width: 31.3%;
}

.alumni-col:hover { border-color: #000000; }

.alumni-col .alumni-photo
{
	background-color: #ddd;
	background-image: url('../images/default/logo_alumni.png');
	background-position: center;
	background-repeat: no-repeat;
	padding: 0 0 70%;
}

.alumni-col .alumni-photo.has-photo 
{
	background-color: #fff;
	background-size: cover; 
}

.alumni-col .alumni-bio { padding: 20px; }

.alumni-col .alumni-bio .alumni-name
{
	border-bottom: solid #ccc 1px;
	color: #000000;
	font-size: 1.3em;
	margin: 0 0 5px;
	padding: 0 0 5px;
}

.alumni-col .alumni-bio .alumni-position { font-size: 1.1em; }

.alumni-col .alumni-bio .alumni-workplace { color: #888; font-size: 1.1em; }

.staff-container
{
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	-moz-flex-flow: row wrap;
	margin: 30px 0;
	width: 100%;
}

.staff-col 
{
	box-sizing: border-box;
	margin: 0 0 60px;
	padding: 0 20px 0 0;
	width: 25%; 
}

a.staff-photo
{
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: solid #ccc 1px;
	border-radius: 3px;
	display: block;
	margin: 0 0 15px;
	padding-bottom: 100%;
	transition: border .25s;
	-webkit-transition: border .25s;
}

a.staff-photo.no-photo { background-size: auto; }

a.staff-photo:hover { border-color: #000000; }

a.staff-name
{
	color: #555;
	font-family: LatoBl;
	font-size: 1.3em;
	text-decoration: none;
	transition: color .25s;
	-webkit-transition: color .25s;
}

a.staff-name:hover { color: #000000; }

.staff-position { font-size: 1.1em; }

.staff-content-divider { margin: 0 0 90px; }

.profiles
{
	margin: 0;
	padding: 0;
}

.profiles .main-info, .profiles .additional-info { float: left; }

.profiles .main-info 
{
	text-align: center;
	width: 35%; 
}

.profiles .main-info .profile-photo
{
	margin: 0 auto 30px;
	max-width: 200px;
    overflow: hidden;
	position: relative;
    width: 100%;
}

.profiles .main-info .profile-photo:before
{
    content: "";
    display: block;
    padding-top: 100%;
}

.profiles .main-info .profile-photo .inner-profile-photo
{
    background-color: #fff;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border: solid #ccc 1px;
	border-radius: 3px;
    bottom: 0;
    left: 0;
	position: absolute;
    right: 0;
    top: 0;
    text-align: center;
}

.profiles .main-info .profile-photo .inner-profile-photo.no-photo
{
	background-size: auto;
	background-image: url('../images/default/logo_staff.png');
}

.profiles .main-info .main-row { margin: 0 0 15px; }

.profiles .main-info .main-row label.profile-label
{
	font-family: LatoBl;
	display: block;
}

.profiles .additional-info
{ 
	box-sizing: border-box;
	padding: 0 0 0 30px;
	width: 65%; 
}

.profiles .additional-info h2 { margin-top: 0; }

.profiles .profile-nan
{
	color: #888;
	font-family: Lato;
}

.profiles .accordion-profile { margin: 30px 0 0; }

.profiles .accordion-profile ul
{
	margin: 0;
	padding: 0;
}

.profiles .accordion-profile ul li
{
	display: block;
	list-style: none;
	margin: 0;
	padding: 0;
}

.profiles .accordion-profile ul li span.accordion-label
{
	border: solid #ccc 1px;
	color: #888;
	cursor: pointer;
	display: block;
	font-family: LatoB;
	padding: 15px;
	position: relative;
	text-transform: uppercase;
	transition: color .25s;
	-webkit-transition: color .25s;
}

.profiles .accordion-profile ul li:hover span.accordion-label, .profiles .accordion-profile ul li.expanded span.accordion-label { color: #383838; }

.profiles .accordion-profile ul li.expanded span.accordion-label
{
	background-color: #000000;
	border-color: #000000;
	color: #fff;
	cursor: default;
}

.profiles .accordion-profile ul li span.accordion-label .arrows
{
	background-image: url('../images/public/icons/ico_arrow_down.png');
	height: 20px;
	opacity: .6;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: all .25s;
	-webkit-transition: all .25s;
	width: 20px;
}

.profiles .accordion-profile ul li:hover span.accordion-label .arrows { opacity: 1; }

.profiles .accordion-profile ul li.expanded span.accordion-label .arrows
{
	background-image: url('../images/public/icons/ico_arrow_down_hv.png');
	opacity: 1;
	transform: translateY(-50%) rotate(180deg);
	-webkit-transform: translateY(-50%) rotate(180deg);
}

.profiles .accordion-profile ul li .accordion-more-detail
{
	display: none;
	padding: 15px;
}

.profiles .accordion-more-detail .profile-education-row 
{
	border-bottom: solid #ccc 1px;
	margin: 0 0 10px; 
	padding: 0 0 10px;
}

.profiles .accordion-more-detail .profile-education-row .profile-education-major { font-size: 1.1em; }

.profiles .accordion-more-detail .profile-education-row .profile-education-institution { font-family: LatoBl; }

.profiles .accordion-more-detail .profile-education-row .profile-education-year { color: #888; }

.profiles .accordion-more-detail .profile-education-row:last-child 
{
	border: none;
	margin: 0; 
	padding: 0;
}

.main-event-container
{
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	-moz-flex-flow: row wrap;
	text-align: center;
}

.main-event-container a.event-col
{
	background: #e5e5e5;
	border-radius: 3px;
	display: table;
	margin: 1% 1% 15px;
	text-align: left;
	text-decoration: none;
	transition: background .25s;
	-webkit-transition: background .25s;
	width: 31.3%;
}

.main-event-container a.event-col .event-dates, .main-event-container .event-names
{
	display: table-cell;
	padding: 15px 10px;
	vertical-align: middle;
}

.main-event-container a.event-col .event-dates
{
	border-right: solid #fff 2px;
	color: #666;
	font-family: 'LatoB';
	text-align: center;
	text-transform: uppercase;
	transition: color .25s;
	-webkit-transition: color .25s;
	width: 75px;
}

.main-event-container a.event-col .event-dates > .days 
{
	font-size: 2em; 
	margin: 0 0 5px;
}

.main-event-container a.event-col .event-dates > .months {font-size: 1.5em; }

.main-event-container a.event-col .event-dates > .years {font-size: 1.1em; }

.main-event-container .event-names
{
	color: #555;
	font-size: 1.3em;
	padding: 10px 10px 10px 30px;
	transition: color .25s;
	-webkit-transition: color .25s;
}

.main-event-container a.event-col:hover { background: #000000; }

.main-event-container a.event-col:hover .event-dates, .main-event-container a.event-col:hover .event-names {color: #fff; }

.main-publication-container
{
	display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
	flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	-moz-flex-flow: row wrap;
	text-align: center;
}

.main-publication-container > a.publication-col
{
	background: #e5e5e5;
	border-radius: 3px;
	display: table;
	margin: 1% 1% 15px;
	padding: 0 0 31.3%;
	position: relative;
	text-align: left;
	text-decoration: none;
	transition: background .25s;
	-webkit-transition: background .25s;
	width: 31.3%;
}

.main-publication-container > a.publication-col .backdrops
{
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 3px;
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 1;
}

.main-publication-container > a.publication-col .backdrops.no-photo
{
	background-image: url('../images/default/logo_gr.png');
	background-position: center;
	background-repeat: no-repeat;
	background-size: auto;
}

.main-publication-container > a.publication-col .masks
{
	background: #000000;
	border-radius: 3px;
	height: 100%;
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	transition: all .25s;
	-webkit-transition: all .25s;
	width: 100%;
	z-index: 2;
}

.main-publication-container > a.publication-col .arrows
{
	background-image: url('../images/public/icons/ico_arrow_next.png');
	height: 20px;
	opacity: 0;
	position: absolute;
	right: 5%;
	top: 5%;
	transition: all .25s;
	-webkit-transition: all .25s;
	width: 20px;
	z-index: 3;
}

.main-publication-container > a.publication-col:hover .masks { opacity: .8; }

.main-publication-container > a.publication-col:hover .arrows { opacity: 1; }

.main-publication-container > a.publication-col .titles
{
	bottom: 20px;
	color: #fff;
	font-size: 1.5em;
	margin: 0 5%;
	position: absolute;
	text-shadow: 2px 2px #222;
	-webkit-text-shadow: 2px 2px #222;
	transition: color .25s;
	-webkit-transition: color .25s;
	width: 90%;
	z-index: 4;
}

.see-all 
{
	margin: 45px 1% 0 auto;
	text-align: right;
}

.see-all a
{
	background: #000000;
	border-radius: 3px;
	color: #fff;
	display: inline-block;
	margin: 45px 1% 0 auto;
	padding: 10px 20px;
	position: relative;
	text-align: right;
	text-decoration: none;
	transition: all .25s;
	-webkit-transition: all .25s;
}

.see-all a span.arrow 
{
	font-family: LatoBl; 
	margin: 0 0 0 5px;
}

.see-all a:hover
{
	background: #e5e5e5;
	color: #555; 
}

.course-record
{
	background: #fff;
	border: solid #ccc 1px;
	border-radius: 3px;
	box-sizing: border-box;
	cursor: pointer;
	margin: 0 0 15px;
	padding: 15px 30px;
	position: relative;
	transition: border .25s;
	-webkit-transition: border .25s;
}

.course-record:hover, .course-record.expanded { border-color: #000000; }

.course-record .course-main { position: relative; }

.course-record .course-row
{
	display: table;
	margin: 5px 0;
	width: 100%;
}

.course-record .course-row label, .course-record .course-row span.values
{
	display: table-cell;
	vertical-align: top;
}

.course-record .course-row label
{
	color: #383838;
	font-family: LatoBl;
	width: 150px;
}

.course-record .course-details { display: none; }

.course-record .course-details .no-detail
{
	color: #888;
	display: block;
	font-family: Lato;
	margin: 15px 0 0;
	text-align: center;
}

.course-record .course-main .course-expand
{
	background-color: #fff;
	background-image: url('../images/public/icons/ico_arrow_down.png');
	background-position: center;
	background-repeat: no-repeat;
	height: 20px;
	opacity: .6;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transition: all .25s;
	-webkit-transition: all .25s;
	width: 20px;
}

.course-record:hover .course-main .course-expand, .course-record.expanded .course-main .course-expand { opacity: 1; }

.course-record.expanded .course-main .course-expand
{
	transform: translateY(-50%) rotate(180deg);
	-webkit-transform: translateY(-50%) rotate(180deg);
}

.course-grouping-mask
{
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 51;
}

.course-grouping-mask.shown { display: block; }

.course-grouping 
{
	display: inline-block;
	position: relative; 
	min-width: 50%;
	z-index: 52;
}

.course-grouping .selected-grouping
{
	background-color: #ddd;
	background-image: url('../images/public/icons/ico_arrow_down.png');
	background-repeat: no-repeat;
	background-position: right 15px center;
	border: solid #ddd 1px;
	border-radius: 3px;
	box-sizing: border-box;
	cursor: pointer;
	display: inline-block;
	padding: 15px 90px 15px 30px;
	margin: 0 0 15px;
	transition: all .25s;
	-webkit-transition: all .25s;
	width: 100%;
}

.course-grouping .selected-grouping:hover { background-color: #fff; }

.course-grouping.expand .selected-grouping , .course-grouping.expand .selected-grouping:hover
{
	background-color: #333;
	background-image: url('../images/public/icons/ico_arrow_down_hv.png');
	color: #fff;
}

.course-grouping ul
{
	background: #333;
	border-radius: 3px;
	margin: 0;
	opacity: 0;
	padding: 0;
	position: absolute;
	top: 57px;
	transition: all .25s;
	-webkit-transition: all .25s;
	visibility: hidden;
	z-index: 10;
}

.course-grouping.expand ul
{
	opacity: 1;
	visibility: visible;
}

.course-grouping ul li
{
	color: #fff;
	cursor: pointer;
	list-style: none;
	padding: 15px 30px;
	transition: all .25s;
	-webkit-transition: all .25s;
}

.course-grouping ul li:hover { background-color: #000000; }

ul.archive-list { padding: 0; }

ul.archive-list li
{
	background-image: url('../images/public/icons/list_archive.png');
	background-position: center left;
	background-repeat: no-repeat;
	border-top: solid #ccc 1px;
	list-style: none;
	padding: 30px 15px 30px 45px;
	position: relative;
}

ul.archive-list li:last-child { border-bottom: solid #ccc 1px; }

ul.archive-list li a
{
	color: #383838;
	font-size: 1.2em;
	text-decoration: none;
	transition: color .25s;
	-webkit-transition: color .25s;
}

ul.archive-list li a:hover { color: #000000; }
	
.search-row
{
	color: #383838;
	margin: 0 0 45px;
}

.search-row a.search-title
{
	color: #000000;
	display: inline-block;
	font-size: 1.4em;
	margin: 0 0 10px;
	text-decoration: none;
}

.search-row a.search-title:hover 
{
	color: #383838;
	text-decoration: underline;
}

.search-row .search-title span.search-title-uppercase
{
	text-transform: capitalize;
}

.search-row .search-content
{
	max-height: 90px;
	overflow-y: hidden;
}

.search-row .search-content p { margin-top: 0; }

#gmap_canvas_container 
{
	float:left;
	overflow: hidden;
	width: 40%;
}

.m-searches, .m-navigations, .m-languages, .m-mainmenu-button, .m-mainmenu, #footer .cols .sm-arrow { display: none; }

@media only screen and (max-width: 1000px) {
	.searches, .navigations, .taglines, .mainmenu { display: none; }
	
	.m-searches
	{
		display: block;
		float: right;
		height: 30px;
		margin: 8px 0;
		padding: 0;
		position: relative;
		width: 300px;
	}
	
	.m-searches .m-searches-button
	{
		background: transparent url('../images/public/icons/ico_search_wh.png') no-repeat center;
		border: none;
		height: 30px;
		margin: 0;
		padding: 0;
		position: absolute;
		right: 5px;
		transition: all 250ms;
		-webkit-transition: all 250ms;
		width: 30px;
	}
	
	.m-searches .m-searches-field
	{
		background: rgba(255, 255, 255, .3);
		border: none;
		color: #fff;
		font-family: PTSerif;
		font-size: 1em;
		opacity: 0;
		padding: 5px 40px 5px 10px;
		position: absolute; 
		transition: all .25s;
		-webkit-transition: all .25s;
		visibility: hidden;
		width: 245px;
	}
	
	.m-searches .m-searches-field.shown
	{
		opacity: 1;
		visibility: visible;
	}
	
	.m-languages
	{
		border-top: solid #ccc 1px;
		display: block;
		margin: 0 5%;
		text-align: center;
	}
	
	.m-languages ul
	{
		margin: 0;
		padding: 0;
	}
	
	.m-languages ul li
	{
		display: inline-block;
		list-style: none;
	}
	
	.m-languages ul li a
	{
		color: #888;
		display: inline-block;
		font-family: LatoT;
		padding: 10px;
		text-decoration: none;
	}
	
	.m-mainmenu-button
	{
		display: block;
		float: right;
		height: 40px;
		position: relative;
		width: 40px;
	}
	
	.m-mainmenu-button .bars
	{
		background-color: #000000;
		height: 3px;
		position: absolute;
		width: 40px;
	}
	
	.m-mainmenu-button .bars:nth-child(0) { top: 2px; }
	
	.m-mainmenu-button .bars:nth-child(1) { top: 17px; }
	
	.m-mainmenu-button .bars:nth-child(2) { top: 32px; }
	
	.m-mainmenu .m-close
	{
		background-image: url('../images/public/m_icons/ico_close.png');
		background-position: center;
		background-repeat: no-repeat;
		float: right;
		height: 24px;
		width: 24px;
	}
	
	.m-mainmenu
	{
		background-color: #f5f5f5;
		box-sizing: border-box;
		display: block;
		height: 100%;
		overflow-y: auto;
		padding: 20px;
		position: fixed;
		right: -300px;
		top: 0;
		transition: right .25s;
		-webkit-transition: right .25s;
		width: 300px;
		z-index: 4000;
	}
	
	.m-mainmenu.shown { right: 0; }
	
	.m-mainmenu .m-tagline
	{
		font-family: LatoT; 
		font-size: 1.2em;
	}
	
	.m-mainmenu .m-top-menu
	{
		border-top: solid #ccc 1px;
		margin: 10px 0 0;
		padding: 5px 0 0;
	}
	
	.m-mainmenu .m-top-menu > ul, .m-mainmenu .m-menu > ul
	{
		margin: 0;
		padding: 0;
	}
	
	.m-mainmenu .m-top-menu > ul > li, .m-mainmenu .m-menu > ul > li
	{
		color: #000000;
		display: block;
		list-style: none;
	}
	
	.m-mainmenu .m-top-menu > ul > li > a, .m-mainmenu .m-menu > ul > li > a
	{
		color: #000000;
		display: block;
		font-family: LatoBl;
		padding: 0;
		position: relative;
		margin: 5px 0;
		text-decoration: none;
		text-transform: uppercase;
		-webkit-user-select: none;  
		-moz-user-select: none;    
		-ms-user-select: none;      
		user-select: none;
	}
	
	.m-mainmenu .m-top-menu > ul > li > ul, .m-mainmenu .m-menu > ul > li > ul
	{
		display: none; 
		padding: 0 0 0 15px;
	}
	
	.m-mainmenu .m-top-menu > ul > li > ul > li, .m-mainmenu .m-menu > ul > li > ul > li
	{
		list-style: none;
		display: block;
	}
	
	.m-mainmenu .m-top-menu > ul > li > ul > li > a, .m-mainmenu .m-menu > ul > li > ul > li > a
	{
		color: #000000;
		display: block;
		font-family: Lato;
		padding: 3px 0;
		position: relative;
		margin: 0;
		text-decoration: none;
		text-transform: uppercase;
		-webkit-user-select: none;  
		-moz-user-select: none;    
		-ms-user-select: none;      
		user-select: none;
	}
	
	.m-mainmenu .m-menu > ul > li, .m-mainmenu .m-menu > ul > li > a, .m-mainmenu .m-menu > ul > li > ul > li > a { color: #383838; }
	
	.m-mainmenu .m-menu
	{
		border-top: solid #ccc 1px;
		margin: 10px 0 0;
		padding: 5px 0 0;
	}
	
	.each-banner-caption
	{
		left: 50% !important;
		transform: translate(-50%, -50%) !important;
		-webkit-transform: translate(-50%, -50%) !important;
		width: auto !important;
	}
	
	.main-section 
	{
		padding: 45px 0;
		width: 90%;
	}
	
	.main-event-container a.event-col
	{
		background: #000000; 
		width: 47%;
	}
	
	.main-publication-container a.publication-col 
	{
		padding-bottom: 47%;
		width: 47%; 
	}
	
	.main-publication-container a.publication-col .masks { opacity: .8 !important; }
	
	.main-publication-container a.publication-col .arrows { opacity: 1; }
	
	.main-event-container a.event-col .event-dates, .main-event-container a.event-col .event-names { color: #fff; }
	
	h1 { margin-bottom: 30px !important; }
	
	.see-all
	{
		margin-top: 15px !important;
		text-align: center; 
	}
	
	.see-all a, .see-all a:hover 
	{
		background-color: #383838; 
		color: #fff;
	}
	
	.sub-content .contents 
	{
		float: none;
		margin: 0; 
		width: 100%;
	}
	
	.sub-content .links { display: none; }
	
	.course-grouping { width: 100%; }
	
	.course-grouping span.selected-grouping { padding: 15px 90px 15px 15px; }
	
	.course-grouping span.selected-grouping:hover { background-color: #ddd; }
	
	.course-grouping ul { width: 100%; }
	
	.course-grouping ul li { padding: 15px; }
	
	.course-grouping ul li:hover { background-color: #333; }
	
	.course-record { padding: 15px; }
	
	.course-record .course-main .course-expand { display: none; }
	
	.lab-photo { padding: 0 0 30%; }
	
	#gmap_canvas_container { width: 100%; }
	
	.contact-container
	{
		margin: 0;
		width: 100%;
	}
	
	.news-container, .news-container .share-col, .news-container .detail-col { display: block; }
	
	.news-container .share-col
	{
		margin: -20px 0 0;
		width: 100%; 
	}
	
	.news-container .share-col .share-title, .news-container .share-col a { display: inline-block; }
	
	.news-container .share-col .share-title
	{
		border-bottom: none;
		border-right: solid 3px #888;
		font-size: 1.3em;
		padding: 5px 10px 5px 0;
	}
	
	.news-container .share-col a 
	{
		border-right: solid 1px #aaa;
		font-size: 1.2em;
		padding: 5px 10px 6px 5px;
	}
	
	.news-container .detail-col
	{
		margin: 15px 0 0;
		padding: 0;
	}
	
	.news-container .detail-col .dates { margin: 0 0 5px; }
	
	.news-container .detail-col p { margin-top: 0; }
	
	.news-photo 
	{
		padding-bottom: 40%;
		width: 47%; 
	}
	
	.testimonial-container 
	{
		overflow: hidden;
		width: 100%;
	}

	.testimonial-col
	{
		display: block;
		margin: 0 0 30px;
		padding: 0;
		width: 100%;
	}
	
	.alumni-col
	{
		box-sizing: border-box;
		overflow: hidden;
		position: relative;
		width: 47%;
		height: 275px;
	}
	
	.alumni-photo, .alumni-bio { position: absolute; }
	
	.alumni-photo
	{
		box-sizing: border-box;
		height: 275px;
		left: 0;
		padding: 0 !important;
		top: 0;
		width: 100%;
	}
	
	.alumni-photo.has-photo
	{
		background-size: cover;
		background-position: center;
	}
	
	.alumni-bio
	{
		background-color: rgba(0, 0, 0, .4);
		bottom: 0;
		box-sizing: border-box;
		color: #fff;
		padding: 10px 20px !important;
		width: 100%;
	}
	
	.alumni-bio .alumni-name, .alumni-bio .alumni-position, .alumni-bio .alumni-workplace { color: #fff !important; }
	
	.staff-col { width: 32%; }
	
	#footer 
	{
		margin-top: 30px; 
		padding: 45px 5%;
	}
	
	#footer .cols
	{
		display: block !important;
		float: none !important;
		margin: 0 0 15px !important;
		padding: 0 !important;
		width: 100% !important;
	}
	
	#footer .cols.center-side, #footer .cols.right-side
	{
		border-top: solid #fff 1px;
		margin: 15px 0 0 !important;
		padding: 30px 0 0 !important;
	}
	
	#footer .cols ul li a { color: #fff; }
	
	#footer .cols .sm-arrow
	{
		background-image: url('../images/public/m_icons/ico_sm_arrow.png');
		background-position: center;
		background-repeat: no-repeat;
		background-size: contain;
		display: block;
		float: right;
		height: 16px;
		margin: 14px 0 0;
		width: 16px;
	}
}

@media only screen and (max-width: 700px) {
	.main-event-container a.event-col, .main-publication-container a.publication-col
	{
		margin: 0 0 15px;
		width: 100%;
	}
	
	.main-publication-container a.publication-col { padding-bottom: 60%; }
	
	.lab-row { margin-bottom: 60px; }
	
	.lab-photo, .lab-desc { float: none; }
	
	.lab-photo
	{
		margin: 0 auto 30px;
		padding: 0 0 40%;
		width: 50%;
	}
	
	.lab-desc
	{
		margin: 0;
		padding: 0;
		width: 100%;
	}
	
	.alumni-col 
	{
		height: 350px;
		width: 100%; 
	}
	
	.alumni-photo { height: 350px; }
	
	.staff-col { width: 50%; }
	
	.profiles
	{
		margin: 0;
		padding: 0;
	}

	.profiles .main-info, .profiles .additional-info 
	{
		float: none; 
		width: 100%;
	}
	
	.profiles .main-info { margin: 0 0 45px; }
	
	.profiles .main-info .main-row 
	{
		display: block;
		margin: 0 0 5px; 
		text-align: left;
	}
	
	.profiles .main-info .main-row .profile-label, .profiles .main-info .main-row .profile-value
	{
		display: inline-block !important;
	}
	
	.profiles .main-info .main-row .profile-label 
	{
		margin: 0 15px 0 0 !important; 
		width: 70px;
	}
	
	.profiles .additional-info { padding: 0; }
}

@media only screen and (max-width: 500px) {
	.each-banner-caption { font-size: 200% !important; }
	
	.staff-col 
	{
		margin: 0 auto 45px;
		max-width: 200px;
		width: 90%; 
	}
}