html,body,section,article,div,h1,h2,h3,h4,h5,p,table,tr,th,td,ol,ul,li,form,input,select,textarea {
	font-family: 'Roboto', Arial, Helvetica, Geneva, Swiss, SunSans-Regular, sans-serif;
	font-weight: 300;
	font-size: 17px;
	color: rgb(89,84,84);
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
b,i,a {
	color: rgb(89,84,84);
}
html, body {
}
body {
	background: none;
	background-color: rgb(255,255,255);
}
header, aside, main, footer {
	position: relative;
}
header {
	width: 100%;
	margin: auto;
    background-color: rgb(255,255,255);
    padding-top: 20px;
    padding-bottom: 20px;
}
nav {
	width: 100%;
	height: 20px;
	background: rgb(190,43,187);
}
main {
	display: block;
	width: 100%;
	min-height: 650px;
}
aside {
	display: none;
	width: 250px;
	float: right;
}
footer {
	width: 100%;
	margin: auto;
	background: none;
	background-color: rgb(238, 231, 231);
	height: auto;
	padding: 0;
	clear: both;
}
div {
	position: relative;
}
section {
	width: 100%;
}
article {
	max-width: 900px;
	margin: auto;
}
header article {
	background: none;
	height: auto;
	padding-left: 10px;
	}
main article {
	margin-bottom: 20px;
	padding-top: 40px;
	padding-left: 10px;
	padding-bottom: 20px;
}
footer article {
	text-align: left;
	padding-top: 15px;
	padding-left: 10px;
}

/* 
################################################################################
General classes 
################################################################################
*/

h1 {
	font-size: 30px;
	font-weight: 400;
	color:rgb(89,84,84);
}
h2 {
    color: rgb(89,84,84);
    padding-bottom: 5px;
    margin-bottom: 10px;
	font-size: 24px;
	border-bottom: solid 1px rgb(237,237,237);
	font-weight: 300;
}
h3 {
	font-size: 18px;
	font-weight: 400;
	color:rgb(089,84,84);
	margin-bottom: 10px;
}
h4 {
	font-size: 14px;
	font-weight: 400;
	color: rgb(89,84,84);
	margin-top: 20px;
	margin-bottom: 5px;
}
p {
	line-height: 17px;
	line-height: 22px;
	margin-bottom: 7px;
}
b {
	font-weight: 400;
}
sub, sup { 
	font-size: 0.7em;
	line-height: 0; 
	position: relative; 
	vertical-align: baseline; 
}
sup { 
	top: -0.4em; 
}
sub { 
	bottom: -0.25em; 
}
a {
	text-decoration: none;
	color:rgb(0,150,55);
	font-weight: 400;
}
a:hover {
	text-decoration: underline;
}
ol {
	margin: 0 0 10px 0;
}
ol li {
	margin: 0 0 10px 18px;
}
ul li {
	margin: 0 0 10px 15px;
}
input[type="text"], input[type="password"], select {
	width: 300px;
	background-color: rgb(245,245,245);
    border: solid 1px rgb(239,239,239);
    padding: 4px 3px 4px 3px;
}
textarea {
	width: 206px;
	height: 100px;
}
input[type="submit"] {
	padding: 2px 10px 2px 10px;
	line-height: 17px;
}
img {
	border: 0;
}
table {
	margin: 0;
	border: 0;
	padding: 0;
	border-collapse: collapse;
}
th {
	text-align: left;
}
td {
	vertical-align: top;
}

/* 
################################################################################
Sub classes
################################################################################
*/


section.linklist {
	margin-top: 40px;
}
section.linklist a {
	font-weight: 400;
}
article.event {
	margin-top: 50px;
	border-bottom: solid 1px rgb(0,150,55);
	padding-bottom: 50px;
	background-color: rgb(247,248,249);
	padding: 15px;
}
div.clear {
	clear: left;
	height: 1px;
}
article.logins {
	margin-top: 40px;
}
div.logins {
	margin-top: 20px;
	padding-right: 35px;
}
span.nobr {
	white-space: nowrap;
}
iframe.vimeo {
	margin: 20px 0 20px 0;
}
form td {
	padding: 2px 5px 2px 0px;
}
table.checkboxes {}
table.checkboxes td {
	vertical-align: top;
	height: 20px;
}
table.checkboxes td input[type="checkbox"]{
	margin-top: 3px;
}
td h2 {
	margin-top: 0;
	padding-top: 0;
}
table.agenda {}
td.agenda0 {
	color: rgb(89,84,84);
	background-color: rgb(238, 231, 231);
	padding: 5px 2px 5px 2px;
}
td.agenda1 {
	color: rgb(89,84,84);
	padding-top: 7px;
	padding-bottom: 7px;
	padding-right: 7px;
}
td.agenda2 {
	color: rgb(89,84,84);
	padding-top: 7px;
	padding-bottom: 7px;
}
table.datafields {
	width: 100%;
}
table.datafields td:nth-child(1) {
	width: 200px;
}
table.datafields td:nth-child(2) {
	width: auto;
}
table.optins {
	margin-top: 15px;
	width: 100%;
}
table.optins td {
	vertical-align: top;
}
table.optins td:nth-child(1) {
	width: 50px;
}
table.optins td:nth-child(2) {
	width: auto;
}
h2.speakerheadline {
}
p.error {
	font-weight: 400;
	color: rgb(255,0,0);
}
p.message {
	font-weight: 400;
	color: rgb(255,177,9);
}
p.small {
	font-size: 12px;
	line-height: 14px;
}
h3.speakers {
	font-weight: 300;
	padding-top: 15px;
}
/* abstract */
div.abstract {
	padding-top: 10px;
}
h3.abstract {
	margin-top: 35px;
}
/* speaker */
section.speakers {
	margin-top: 20px;
}
section.speakers h2 {
	margin-bottom: 20px;
}
div.speaker {
	margin-top: 10px;
}
p.sp_name {
	color: rgb(89,84,84);
	font-weight: 400;
	margin-bottom: 5px;
}
p.sp_lecture {
	font-style: italic;
	margin-bottom: 5px;
	margin-top: 5px;
}
p.sp_jobtitle {
	margin-bottom: 0;
}
p.sp_employer {
	margin-bottom: 0;
}
p.sp_city {
	margin-bottom: 0;
}
img.speaker {
	margin-bottom: 10px;
	width: 90px;
	height: 120px;
	float: left;
	margin: 0 20px 0 0;
}
img.teaserimage {
	width: 250px;
	height: auto;
	float: right;
	margin: 0px 0 20px 40px;
}
img.sponsor {
	width: 80%;
	height: auto;
}
img.right {
	float: right;
	margin: 0 0 10px 10px;
}

a.start {
	display: block;
	width: 150px;
	text-align: center;
	border: solid 1px rgb(34,80,144);
	color: rgb(34,80,144);
	background-color: rgb(197,219,233);
	margin-top: 20px;
	border-radius: 3px;
	padding: 2px 5px 2px 5px;
}
a.start:hover {
	background-color: rgb(34,80,144);
	color: rgb(255,255,255);
	text-decoration: none;
}
a.button {
	margin: 10px 0 10px 0;
	border: solid 1px rgb(112,112,112);
	padding: 6px 12px 6px 12px;
	font-size: 14px;
	line-height: 18px;
	font-weight: 400;
	color: rgb(0,0,0);
	background-color: rgb(222,222,222);
	background: linear-gradient(to bottom, rgb(242,242,242), rgb(207,207,207));
	border-radius: 3px;
	text-decoration: none;
}
a.button:hover {
	background: linear-gradient(to bottom, rgb(207,207,207), rgb(242,242,242));
}
input.efn {
	border: 0;
	border-radius: 0;
	margin-top: 10px;
	margin-bottom: 5px;
	width: 100%;
	padding: 5px 4px 5px 4px;
	border: solid 1px rgb(0,70,130);
}
input.design {
	background: rgb(0,150,55);
	color: rgb(255,255,255);
	border: solid 1px rgb(0,150,55);
	font-weight: 300;
	font-size: 17px;
	line-height: 26px;
	padding-left: 30px;
	padding-right: 30px;
	text-transform: uppercase;
	letter-spacing: 2px;
	transition: all 0.5s;
	cursor: pointer;
}
input.design:hover {
	background: rgb(255,255,255);
	color: rgb(0,150,55);
	transition: all 0.5s;
}
input[type="submit"].design {
    padding: 5px 25px 5px 25px;
    line-height: 21px;
    transition: all linear 0.2s;
    font-weight: 400;
	
	background: rgb(190,43,187);
	color: rgb(255,255,255);
	border: solid 1px rgb(190,43,187);
	cursor: pointer;
}
input[type="submit"].design:hover {
	background: rgb(255,255,255);
	color: rgb(190,43,187);
}
div.securitycontainer {
	position: absolute;
	top: 20px;
	left: 20px;
}
div.security {
	display: table-cell;
	width: 150px;
	height: 150px;
	background: rgb(255,0,0);
	border-radius: 75px;
	transform: rotateZ(-15deg);
	color: rgb(255,255,255);
	text-align: center;
	vertical-align: middle;
	line-height: 22px;
	font-size: 1.2em;
}

/* 
################################################################################
Dependent classes
################################################################################
*/

header h1, header h2, header h3 {
	padding: 0;
	font-weight: 300;
}
header h1 {
	margin-bottom: 15px;
	font-size: 32px;
	line-height: 38px;
	color: rgb(190,43,187);
	font-weight: 400;
	padding: 20px 0 0 0;
}
header h2 {
	font-size: 23px;
	margin: 0 0 15px 0;
	border: 0;
	border-bottom: solid 1px rgb(89,84,84);
	padding: 7px 0 7px 0;
	color: rgb(89, 84, 84);
	font-weight: 400;
}
header h2.small {
	font-size: 14px;
}
header h3 {
	font-size: 17px;
	line-height: 19px;
	padding: 5px 0 0 0;
	font-weight: 400;
	color: rgb(190,43,187);
}

aside div.top {
	background: url(../img/bg_box01.png) repeat-x;
	border-radius: 0 0 12px 0;
	color: rgb(255,255,255);
	padding: 20px;
	height: 40px;
	display: none;
}
aside div.links {
	background-color: rgb(247,248,250);
	margin: 25px 0 0 0;
	border-top: solid 1px rgb(0,70,130);
	padding: 10px;
}
aside div.links p {
	font-size: 13px;
	line-height: 1em;
	line-height: 1.3em;
}
aside div.links h2 {
	font-size: 18px;
	margin-top: 10px;
	border-bottom: 0;
}
aside div.links h3 {
	font-size: 14px;
	margin-bottom: 0;
}
main div.content > * {
	margin-left: 0;
	margin-right: 0;
}
main div.content h1 {
	display: block;
	width: auto;
	height: auto;
	background: none;
	margin: 0 0 0 0;
	border-radius: 0;
	padding: 0 0 0 0;
	font-size: 30px;
	line-height: 28px;
	font-weight: normal;
}
main div.content h1 + p, main div.content h1 + section {
	margin-top: 35px;
}
main div.content a {
	color: rgb(190, 43, 187);
	text-decoration: underline;
}
main div.content a:hover {
	text-decoration: none;
}
footer p, footer a {
	color: rgb(255,255,255);
}
footer p {
	margin-bottom: 15px;
	color: rgb(74, 69, 69);
}
footer a {
	color: rgb(74, 69, 69);
	font-weight: 400;
}
footer a:first-of-type {
    padding-left: 0;
}
footer a:hover {
	text-decoration: underline;
}
footer img.logo {
	width: 100px;
	height: auto;
	float: right;
}
footer span.hide {
	padding-left: 10px;
	padding-right: 10px;
}

form td {
	vertical-align: middle;
}

/*
################################################################################
TOGGLE 
################################################################################
*/
div.toggleBox {
	margin-top: 20px;
}
.toggleLink {
	font-weight:bold;
	line-height:25px;
	cursor:pointer;
}
.toggleIcon {
	background:rgb(0,70,130);
	color:#fff;
	font-weight:bold;
	width:25px;
	height:25px;
	line-height:25px;
	display:inline-block;
	margin-right:5px;
	text-align:center;
	font-size:18px;
}
.toggleHide {
	display:none;
}
.toggleBox div.abstract {
	display:none;
}
.toggleBox .toggleHide {
	display:none;
}
.activeBox div.abstract {
	display:block;
}
.activeBox .toggleHide {
	display:inline-block;
}
.activeBox .toggleShow {
	display:none;
}

/*
################################################################################
GRAFICS 
################################################################################
*/
div.right-triangle {
   width: 0;
   height: 0;
   border-left: 10px solid rgb(1,150,55);
   border-top: 5px solid transparent;
   border-bottom: 5px solid transparent;
   display: inline-block;
   margin-right: 10px;
}
span.right-triangle {
   width: 0;
   height: 0;
   border-left: 10px solid rgb(1,150,55);
   border-top: 5px solid transparent;
   border-bottom: 5px solid transparent;
   display: inline-block;
   margin-right: 10px;
}

div.arrow-up {
	width: 0; 
	height: 0; 
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-bottom: 8px solid rgb(255,255,255);
	display: inline-block;
	margin-bottom: 3px;
}
div.arrow-down {
	width: 0; 
	height: 0; 
	border-left: 8px solid transparent;
	border-right: 8px solid transparent;
	border-top: 8px solid rgb(255,255,255);
	display: inline-block;
	margin-bottom: 2px;
}
div.arrow-left {
	width: 0; 
	height: 0; 
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-right: 8px solid rgb(255,255,255);
	display: inline-block;
	margin-bottom: 0px;
}
div.arrow-right {
	width: 0; 
	height: 0; 
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 8px solid rgb(255,255,255);
	display: inline-block;
	margin-top: 2px;
	margin-bottom: -2px;
	margin-left: 3px;
}