/* fonts */
@font-face {
	font-family: 'IBM Plex Sans';
	font-weight: 400;
	src:
		local('IBM Plex Sans'),
		local('IBMPlexSans'),
		url('IBM-Plex/IBMPlexSans-Regular.woff2');
}
@font-face {
	font-family: 'IBM Plex Sans';
	font-weight: 700;
	src:
		local('IBM Plex Sans Bold'),
		local('IBMPlexSans-Bold'),
		url('IBM-Plex/IBMPlexSans-Bold.woff2');
}

@font-face {
	font-family: 'IBM Plex Sans Condensed';
	font-weight: 400;
	src:
		local('IBM Plex Sans Condensed'),
		local('IBMPlexSansCondensed'),
		url('IBM-Plex/IBMPlexSansCondensed-Regular.woff2');
}
@font-face {
	font-family: 'IBM Plex Sans Condensed';
	font-weight: 700;
	src:
		local('IBM Plex Sans Condensed Bold'),
		local('IBMPlexSansCondensed-Bold'),
		url('IBM-Plex/IBMPlexSansCondensed-Bold.woff2');
}

/* Custom changes */
#left_header {
	/* position: absolute;*/
	float: left;
}
#right_header {
	float: right;
}
#it_logo_div {
	float: left;
}
#title {
	float: right;
	font-size: 2em;
	font-family: 'IBM Plex Sans Condensed', sans-serif;
}
span.navigation {
	font-size: 1.5em;
}
img.hu_logo {
	position: absolute;
	right: 0px;
	top: 0px;
	/*width: 100px;*/
	height: 4.75em;
	margin: 5px 5px 5px 5px;
	padding:0;
	border:0;
}
img.it_logo {
	position: static;
	top: 0px;
	/* width: 62px; */
	height: 4.75em;
	margin: 5px 5px 5px 5px;
	padding: 0;
	border:0;
}

div.lecture {
	text-align: right;
	line-height:1.4;
}
span.lecture_name {
	float: left;
}

span.lecture_date {
	/* font-weight:bold; */
	vertical-align: middle;
}

img.pdf_logo {
	vertical-align: middle;
	position: static;
	right: 0px;
	width: 1em;
	height: 1em;
	margin:0;
	padding:0;
	border:0;
}

img.html_logo {
	vertical-align: middle;
	position: static;
	right: 0px;
	width: 1em;
	height: 1em;
	margin:0;
	padding:0;
	border:0;
}

img.yt_logo {
	vertical-align: middle;
	position: static;
	right: 0px;
	width: 2.5em;
	height: 1em;
	margin:0;
	padding:0;
	border:0;
}

img.ccc_logo {
	vertical-align: middle;
	position: static;
	right: 0px;
	width: 1.375em;
	height: 1em;
	margin:0;
	padding:0;
	border:0;
}

img.validate {
	float: right; 
	vertical-align: middle;
	height: 1em;
	margin: unset;
}

sup {
	line-height: 10%;
}

/* General styles */

html {
	font-size: clamp(15px, 3px + 2vw, 20px);
	
	/* font-size:90%; */
	font-kerning:normal;
	text-rendering: optimizeLegibility;
	line-height:1.25;
}

body {
	margin:0;
	padding:0;
	border:0;		/* This removes the border around the viewport in old versions of IE */
	width:100%;
	background:#fff;
	min-width:600px;	/* Minimum width of layout - remove line if not required */
				/* The min-width property does not work in old versions of Internet Explorer */
	font-family: 'IBM Plex Sans', sans-serif;
}

a {
	color:#00376c;
	text-decoration: none;
}
a:hover {
	color:#fff;
	background:#00376c;
}

b {
	color:#890000;
}

h1, h2, h3 {
	margin:.8em 0 .2em 0;
	padding:0;
	font-family: 'IBM Plex Sans Condensed', sans-serif;
}

p {
	margin:.4em 0 .8em 0;
	padding:0;
}
img {
	margin:10px 0 5px;
}

/* Header styles */
#header {
	clear:both;
	float:left;
	width:100%;
	text-align: center;
}
#header {
	border-bottom:1px solid #000;
}
#header p,
#header h1,
#header h2 {
	padding:.4em 15px 0 15px;
	margin:0;
	font-weight: normal;
}
#header ul {
	clear:left;
	float:left;
	width:100%;
	list-style:none;
	margin:10px 0 0 0;
	padding:0;
}
#header ul li {
	display:inline;
	list-style:none;
	margin:0;
	padding:0;
}
#header ul li a {
	display:block;
	float:left;
	margin:0 0 0 1px;
	padding:3px 10px;
	text-align:center;
	background:#eee;
	color:#000;
	text-decoration:none;
	position:relative;
	left:15px;
	line-height:1.3em;
}
#header ul li a:hover {
	background:#369;
	color:#fff;
}
#header ul li a.active,
#header ul li a.active:hover {
	color:#fff;
	background:#000;
	font-weight:bold;
}
#header ul li a span {
	display:block;
}
/* 'widths' sub menu */
#layoutdims {
	clear:both;
	background:#eee;
	border-top:4px solid #000;
	margin:0;
	padding:6px 15px !important;
	text-align:right;
}
/* column container */
.colmask {
	position:relative;		/* This fixes the IE7 overflow hidden bug and stops the layout jumping out of place */
	clear:both;
	float:left;
	width:100%;			/* width of whole page */
	overflow:hidden;	/* This chops off any overhanging divs */
}
/* 2 column left menu settings */
.leftmenu {
	background:#E8DEC0;
}
.leftmenu .colright {
	float:left;
	width:200%;
	position:relative;
	left:200px;
	background:#fff;
}
.leftmenu .col1wrap {
	float:right;
	width:50%;
	position:relative;
	right:200px;
	padding-bottom:1em;
	min-height: 600px;
}
.leftmenu .col1 {
	margin:1em 15px 0 215px;
	position:relative;
	right:100%;
	overflow:hidden;
	min-width:45ch;
	max-width:90ch;
}
.leftmenu .col2 {
	margin-top:1em;
	float:left;
	width:170px;
	position:relative;
	right:185px;
	min-height: 600px;
}
/* Footer styles */
#footer {
	clear:both;
	float:left;
	width:100%;
	border-top:1px solid #000;
}
#footer p {
	padding:10px;
	margin:0;
}
