@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 400;
  src: url('../font/RobotoSlab-Regular.woff2') format('woff2'), 
       url('../font/RobotoSlab-Regular.ttf') format('truetype');
}

* {	margin:0; padding:0; border:0; list-style:none; outline:none; vertical-align:baseline; }

header, footer, aside, section, nav, figure {
	display:block;
}

table {table-layout: auto; border-collapse:collapse; width:100%;}
img { vertical-align:top; max-width:100%; height:auto; }
strong {font-weight:bold;}
em {font-style:italic;}
.clear { clear:both; }
a {color:#004493; font-size:18px;}
a:hover, a:focus {text-decoration:none;}
input {-webkit-appearance: none; outline: none;}

::selection {background: #fff; color:#000;}
::-moz-selection {background: #fff; color:#000;}
::-webkit-selection {background: #fff; color:#000;}

h1, h2 {
	font-size:18px;
}

html {
	font-size:100%;
	overflow-y:scroll;
}
body {
	font-family: 'Roboto Slab', serif;
	font-weight:300;
	color:#000;
	background:#DDD;
	font-size:20px;
	line-height:1;
}

	#splash {
		z-index:999;
		font-size:24px;
		background-color: #034ea2;
		overflow:hidden;
		height: 100%;
		width: 100%;
		}
		#splash-img {
			background: #034ea2;
			padding:0 20px;
			margin:130px 0 0;
			text-align:center;
			height:615px;
			width: 100%;
		}
		#splash-footer {
			background:#034EA2;
			color:#FFF;
		}
			#splash-f-inner {
				position:relative;
				width:415px; margin:0 auto;
				padding:16px 175px 16px 85px;
			}
			#splash-footer strong {
				
			}
			#splash-loader {
				position:absolute; right:0; top:-4px;
				width:65px; height:65px;
				background:url(../img/splash_loader.png) repeat-x 0 0;
			}
	
	.splash #main {
		position:absolute; top:0; left:-9000px;
		visibility:hidden;
	}
	#main {
		padding:1px 0 0;
	}
		#main .mq {
			width: auto;
			margin: -1px auto;
		}
		header {
			background-color: #1a3768;
		}
			#topheader {}	
				#innerheader {
					position:relative;
					background: url(../img/top_banner.jpg) no-repeat;
					padding: 10px 0 0 230px;
					height: 122px;
					overflow: hidden;
				}
					#toptitle {
						color: #FFF;
						font-size: 26px;
                        line-height: 40px;
					}
					#topdate {
						font-size:18px;
						line-height: 30px;
                        color: rgb(255, 249, 0);
					}

			nav {
				overflow:hidden;
				background:#1a3768;;
			}
				nav li {
					float:left;
					margin:0 12px;
				}
					nav li a {
						float:left;
						padding:16px 12px 12px;
						color:#fff;
						font-size: 16px;
						display:block;
						text-decoration:none;
						outline:none;
					}
					nav li.active a, .no-touch nav a:hover {
						color:#004493;
						background:url(../img/bgactiv.png) repeat-x 0 0;
					}
				#o_calendar {
					margin-left:31px;
				}
		
		#content {
			position:relative;
			background: #DDD;
			color:#333;
			padding: 0 0 13px;
		}
			#wrapper {
				position:relative;
			}
				#content li.ct {
					position:absolute; top:0; left:-200%; height:0px;
					overflow:hidden;
					width:100%;
					list-style:none;
					background: #DDD;
					-moz-transition:left 200ms ease-out; -webkit-transition:left 100ms ease-out; -o-transition:left 100ms ease-out; -ms-transition:left 100ms ease-out; transition:left 100ms ease-out;
					text-align: justify;
				}
				#content li.active {
					height:auto;
					position:relative;	left:0;
				}
				
					#content .topttm, #content .toptt {
						display:block;
						padding: 10px 10px 10px 72px;
                        background: #034EA2;
						color:#fff;
						font-weight:normal;
						font-size:22px;
						opacity: 0.8;
					}
					#content .toptt {
						/*padding:17px 10px 16px 72px;*/
					}
						#content .topttm span {
							font-size:20px;
						}
						#content .topttm strong {
							font-size:26px;
							font-weight:normal;
						}
						#content li li {
							list-style:disc inside;
							padding:5px 0 5px 20px;
						}
						#content p {
							margin:5px 0;
						}
						#content sup {
							font-size: 12px;
							vertical-align: top;
						}
					
					#content .alrgt {
						text-align:right;
					}
					#content hr {
						display:block;
						height:1px;
						border:0; border-top:1px solid #1B2E49;
						margin:1em 0;
						padding:0;
					}
					
					#content .ctl {
						margin:0 10px;
						line-height:22px;
					}
					#content .col12 {
						width: 98%;
						margin: 0 1%;
					}
					#content .col1, #content .col2, #content .col3 {
						width: 31%;
						margin: 0 1%;
						float: left;
					}
					
					.intro {
                        background-color: #1a3768;
						height: 120px;
						margin-bottom: -42px;
						line-height: 21px;
						padding: 15px 40px 0 40px;
						text-align: center;
					}
						.intro p {
							margin: 0 !important;
						}
						
						#intro_speakers, #intro_about, #intro_schedule.no-title {
							margin-bottom: 10px;
							height: 93px;
						}
/*						#intro_schedule.no-rooms {
							margin-bottom: -100px;
						}
						#intro_calendar {
							margin-bottom: -100px;
						}*/
						
						#rooms {
							text-align: center;
							padding-top: 10px;
							position: absolute;
							left: 0;
							width: 100%;
						}
						
						.select-room {
							background-color: #eab454;
							color: #FFF;
							cursor: pointer;
							display: inline;
							font-size: 14px;
								font-weight: bold;
							margin: 30px;
							padding: 11px 24px !important;
						}
							.select-room.selected {
								background-color: #034EA2;
								box-shadow: 1px 1px 4px #000 inset;
								font-weight: bold;
							}
						
							#room1-button {
								background-color: #8CA051;
							}
								#room1-button.selected {
									background-color: #6B8420;
								}
								
							#room2-button {
								background-color: #A46C44;
							}
								#room2-button.selected {
									background-color: #8B471B;
								}
						
					
					#ct_calendar {}
						#ct_calendar .col {
							float:left;	width:50%;
						}
							#ct_calendar .line {
								background: #FFF;
								padding: 0 4% 15px 1%;
								margin: 2px 0;
								overflow:hidden;
								min-height: 100px;
								/*width:43%; float:left;
								clear:left;*/
								list-style:none;
								position: relative;
							}
								#ct_calendar .line.today {
									background: url("../img/today.png") no-repeat top right #BBD1DC;
								}
								
								#ct_calendar .line a {
									height: 100%;
									width: 88%;
								}

							#ct_calendar h1 {
								color: #004493;
								padding:0 0 6px 0;
							}
								 #ct_calendar h1 em {
									font-weight:normal;
									font-size:18px;
									color:#333;
								}
								
							#ct_calendar .cts {
								padding: 25px 0 0 111px;
								cursor: pointer;
							}
							
							#ct_calendar .dtl {
								padding-left: 111px;
							}
							
							#ct_calendar span.clkSwitch {
								position: absolute;
								height: 100%;
								width: 100%;
								margin-left: -1%;
								cursor: pointer;
								z-index: 100;
							}
							#ct_calendar span.clkSwitch.hasdtl {
								width: 88%;
							}
							
							#ct_calendar span.clkDtl {
								position: absolute;
								height: 100%;
								right: 0;
								width: 12%;
								cursor: pointer;
								z-index: 100;
							}
							
							#ct_calendar .day-text {
								position: absolute;
								width: 80px;
								height: 25px;
								padding-top: 6px;
								text-align: center;
								background: url(../img/calendar-icon-1.png) no-repeat;
								font-size: 10px;
								color: #FFF;
								top: 16px;
								left: 16px;
								cursor: pointer;
							}
							
							#ct_calendar .date-text {
								position: absolute;
								width: 80px;
								height: 51px;
								padding-top: 5px;
								text-align: center;
								background: url(../img/calendar-icon-2.png) no-repeat;
								font-size: 40px;
								color: #000;
								top: 43px;
								left: 16px;
								cursor: pointer;
							}
							
							#ct_calendar a {
								text-decoration: none;
							}

					
					#ct_schedule {}
						#nextcurrent {
							font-size:22px;
							margin:0 0 10px;
							padding:0 0 0 40px;
						}
							#nextcurrent .in {
								display:inline;
							}
							#nextcurrent strong {
								color:#6993CC;
								font-weight:normal;
							}
							#nextcurrent span {
								color:#212121;
							}
							#nextcurrent em.mqh {
								padding:0 10px;
								font-weight:bold;
							}
						
						#ct_calendar .col {
							width:48%; 
							float:left;
							margin:0 1%;
						}
						#ct_schedule .track {
							width:48%; 
							float:left;
							margin:0 1%;
						}
						#ct_schedule .track.track3 {
							width:31%;
						}
						#ct_schedule .line {
							position:relative;
							background-color: #DADDDB;
							background-repeat:no-repeat;
							margin:4px 0;
							padding:10px 45px 15px 34px;
							list-style:none;
							border: 1px solid #BFC0B6;
							border-radius: 1px;
						}
							#ct_schedule .line.current {
								background: url("../img/current.png") no-repeat top right #BBD1DC;
							}
						
						#ct_schedule .hasdtl {
							cursor:pointer;
						}
						#ct_schedule .session {
							background-color: #FFF;
						}
						
						#ct_schedule .line span.coffee {
							background: url(../img/picto_coffee_mini.png) no-repeat;
							margin-left: 15px;
							padding: 5px 0px 0 25px;
						}
						#ct_schedule .coffee {
							padding: 0px 110px 0px 34px;
							background: url(../img/picto_coffee.png) no-repeat top right #D1D1D1;
						}
						#ct_schedule .coffee.current {
							padding: 0px 110px 0px 34px;
							background: url(../img/picto_coffee_current.png) no-repeat top right #BBD1DC;
						}
						#ct_schedule .line span.lunch {
							background: url(../img/picto_lunch_mini.png) no-repeat;
							margin-left: 15px;
							padding: 0px 0px 0 25px;
							line-height: 1.5em;
						}
						#ct_schedule .lunch {
							padding: 0px 110px 0px 34px;
							background: url(../img/picto_lunch.png) no-repeat top right #D1D1D1;
						}
						#ct_schedule .lunch.current {
							padding: 0px 110px 0px 34px;
							background: url(../img/picto_lunch_current.png) no-repeat top right #BBD1DC;
						}
						#ct_schedule .line span.drink {
							background: url(../img/picto_drink_mini.png) no-repeat;
							margin-left: 15px;
							padding: 0px 0px 0 25px;
							line-height: 1.5em;
						}
						#ct_schedule .drink {
							padding: 0px 110px 0px 34px;
							background: url(../img/picto_drink.png) no-repeat top right #D1D1D1;
						}
						#ct_schedule .drink.current {
							padding: 0px 110px 0px 34px;
							background: url(../img/picto_drink_current.png) no-repeat top right #BBD1DC;
						}
							#ct_schedule .hours {
								color:#004493;
								display:block;
								padding:2px 0 8px 0;
								float:left;
							}
							#ct_schedule h2 {
								clear:both;
								padding:2px 0;
								line-height:24px;
							}
							
							#ct_schedule .spks, #ct_schedule .orgs, #ct_schedule .kws {
								font-size:80%;
							}
							
							#ct_schedule .spk, #ct_schedule .org, #ct_schedule .kw {
								color:#004493;
							}
							
							#ct_schedule #no-event {
								background-color: #FFF;
								border: 1px solid #BEBEB5;
								border-radius: 1px;
								margin-top: 52px;
								padding: 20px;
								font-size: 14px;
								text-align: center;
							}	
							
							#ct_schedule .dtl {
								display:none;
								font-size:18px;
								margin:10px 0 0;
								line-height:22px;
							}
							#ct_schedule .clpexp, #ct_calendar .clpexp {
								position:absolute; top:0; right:29px;
								background:url(../img/expcol_arrows.png) no-repeat 0 10px;
								width:16px; height:100%;
							} #ct_schedule .line:hover .clpexp, #ct_calendar .line:hover .clpexp {
								background-position: 0 13px;
							}
							#ct_schedule .exp .clpexp, #ct_calendar .exp .clpexp {
								background-position: -16px 95%;
							} #ct_schedule .exp:hover .clpexp, #ct_calendar .exp:hover .clpexp {
								background-position: -16px 94%;
							}
							
					#ct_speakers #ct_organisers {}
						#ct_speakers .col, #ct_organisers .col {
							float:left;	width:50%;
						}
							#ct_speakers .line, #ct_organisers .line {
								/*background: #EAECE6;*/
								background: #FFF;
								padding:0 4% 10px 1%;
								margin: 1px 2%;
								overflow: hidden;
								/*width:43%; float:left;
								clear:left;*/
								list-style:none;
								box-shadow: 1px 1px 1px #AAA;
								border-radius: 1px;
							}
								#ct_speakers .line.even, #ct_organisers .line.even {
									background: #EAECE6;
								}
							/*#ct_speakers .l2 {
								float:right;
								clear:none;
							}*/
								#ct_speakers h1,#ct_organisers h1 {
									color: #004493;
									padding:0 0 6px 0;
								}
									#ct_speakers h1 em, #ct_organisers h1 em {
										font-weight:normal;
										font-size:18px;
										color:#333;
									}
								#ct_speakers .p_soc, #ct_organisers .p_soc {
									float:left;
									width:90px;
								}
									#ct_speakers .p_soc a, #ct_organisers .p_soc a {
										font-size:16px;
									}
									#ct_speakers .www, #ct_organisers .www {
										display:block;
										padding:0 0 0 20px;
										margin:5px 0 0;
										background:url(../img/ico_web.png) no-repeat 0 50%;
									}
									#ct_speakers .social, #ct_organisers .social {
										overflow:hidden;
										margin:6px 0 0;
									}
										#ct_speakers .social a, #ct_organisers .social a {
											display:block; width:24px; height:24px; line-height:24px;
											margin:0 3px 0 0;
											float:left;
											background-repeat:no-repeat; background-position:0 0;
											text-indent:-200px;
										}
										#ct_speakers .social .at, #ct_organisers .social .at {
											background-image:url(../img/ico_arobase.png);
										}
										#ct_speakers .social .facebook, #ct_organisers .social .facebook {
											background-image:url(../img/ico_facebook.png);
										}
										#ct_speakers .social .twitter, #ct_organisers .social .twitter {
											width:33px;
											background-image:url(../img/ico_twitter.png);
										}
									
								#ct_speakers .cts, #ct_organisers .cts {
									padding:10px 0 0 111px;
								}
								.n-l-c-speakers #ct_speakers .cts, .n-l-c-speakers #ct_organisers .cts {
									padding-left:15px;
								}
									#ct_speakers .bio, #ct_organisers .bio {
										font-size:18px;
										line-height:20px;
									}
					
					#ct_venue {}
						h1.venue-title {
							margin-bottom: 5px;
						}
						
						#gmap_adress {
							text-align:center;
						}
						#ct_gmap {
							max-width:100%; height:0; line-height:1;
							width:85%;
							margin:0 auto;
							padding-bottom:85%;
							border:2px solid #1B2E49;
							position:relative;
							overflow:hidden;
						}
						
						#ct_venue .olMap {
							border: 1px solid #BEBEB5;
						}
							#ct_venue .olMapViewport {
								border: none !important;
							}
						
						
						.gmap #ct_gmap {
							height:auto;
						}
							.gmap #ct_inner_gmap {
								width:100%; height:100%;
								position:absolute; top:0; left:0;
							}
								#ct_gmap a {
									font-size:12px;
								}
								#ct_gmap img {
									width:100%;
								}
								.gmap #ct_gmap img {
									max-width:none; width:auto;
								}
						#ct_venue .ctl {
							background-color: #FFF;
							border: 1px solid #BEBEB5;
							border-radius: 1px;
							margin: 10px 0;
							padding: 20px;
							font-size: 14px;
						}
							#ct_venue .ctl#location {
								text-align: center;
								font-size: 18px;
							}
							#ct_venue .ctl h1 {
								color: #034EA2;
							}
							
						
						
					#ct_about {}
						#ct_about #intro_about_img {
							/* background: url(../img/about-us.png) no-repeat; */
							position: absolute;
							left: 50%;
							margin-top: 5px;
							margin-left: -112px;
							width: 224px;
							height: 80px;
						}
						
						#ct_about .ctl {
							background-color: #FFF;
							border: 1px solid #BEBEB5;
							border-radius: 1px;
							margin: 10px 0;
							padding: 20px;
							font-size: 14px;
						}
						
						#ct_about .ctl a {
							color: #000;
							text-decoration: none;
						}
					
		footer {
			font-size: 16px;
			padding: 6px 0;
		}
		footer span {
			padding:0 74px 0 3px;
		}
		footer span.right {
			float: right;
		}

@media only screen and (max-width: 1220px) {
	
	#main .mq {
		width:auto;
	}
	
	#topflagop {
		right:4%;
	}
}

@media only screen and (max-width: 910px) {
	#toptitle, #topdate {
		float:none;
	}
	#topdate {
		margin:15px 0 0;
	}
}

@media only screen and (max-width: 820px) {
	#ct_schedule .track, #ct_calendar .col {
		float:none;	width:auto;	margin:0;
	}
	#ct_schedule .track.track3 {
		width:auto;
	}
	
	#ct_speakers .line, #ct_organisers .line {
		float:none;	width:auto;	margin: 0;
	}
	
	#nextcurrent .in {
		display:block;
	}
	
	#content .col {
		width:auto; float:none;
	}
	
	#content .col1, #content .col2 {
		width:auto; margin:0 0 10px 0; float:none;
	}
	
	.mqh {
		display:none !important;
	}
}

@media only screen and (max-width: 740px) {
	.hide_small {
		display:none !important;
	}
}

@media (orientation: landscape) {
	body {
		-webkit-text-size-adjust:90%;
	}
}
		
@media only screen and (max-width: 640px) {
	
	#splash-f-inner {
		width:auto;
		padding:16px 25% 16px 5%;
	}
	
}

@media only screen and (max-width: 620px) {
	#splash-img {
		margin-top:10%;
	}
}

@media only screen and (max-width: 590px) {
	.hide_xsmall {
		display:none !important;
	}
}

@media only screen and (max-width: 320px) {
}

.link {
	font-size:0.8em;
	text-decoration:underline;
}

.link2 {
	font-size:0.7em;
	text-decoration:underline;
}