body{
	margin:0;
	padding:0;
    font-family: "Lato", Helvetica, Arial, sans-serif;
	font-size:1em;
    line-height: 1.375em;
    color: #000;
}
@media screen and (max-width: 414px){
	body{
		font-size:85%;
	}
	.related_events h3{
		font-size:90%;
	}
	.related_events ul li figure{
		top:-30px !important;
	}
	#filter{
		border-right:0px solid transparent !important;

	}
	#panel-selector li#events-panel-tab{
		width:75px !important;
	}

}
@media screen and ( max-height: 414px ){
	body{
		font-size:85%;
	}
	#filter{
		border-left:0px solid transparent !important;

	}
	#themeslist{
		box-shadow:none !important;
	}
	#bubble{
		width:450px !important;
	}
}
.intro{
	padding:1em;
}

.overallIntro button{
	padding:5px;
	font-size:1em;
	background-color:#c12026;
	color:#FFF;
	border-radius:none;
	border:1px solid #c12026;
	margin-top:10px;
	cursor:pointer;
}

table{
	border-collapse: collapse;
	font-size:90%;
}
td{
	border-top:1px solid #DDD;
	padding:5px;
}

.sharethis-wrapper{
	text-align:right;
	margin-top:10px;
	margin-bottom:5px;
}

h1,h2,h3,h4,h5,h6{
	font-family: "Montserrat", Helvetica, Arial, sans-serif;
}

canvas{
        -moz-user-select: none;
        -webkit-user-select: none;
        -ms-user-select: none;
        width:100%;
}

#canvas{
	z-index:1;
	position:relative;
}

#container{
	top:84px;
	left:0;
	right:0;
	height:100%;
	overflow-x:auto;
	-webkit-overflow-scrolling: touch;
	overflow-y:hidden;
	display:block;
	position:fixed;
	background-color:#f0f0f0;
}

.noselect {
  -webkit-touch-callout: none; /* iOS Safari */
    -webkit-user-select: none; /* Chrome/Safari/Opera */
     -khtml-user-select: none; /* Konqueror */
       -moz-user-select: none; /* Firefox */
        -ms-user-select: none; /* Internet Explorer/Edge */
            user-select: none;
}

#joyRideContent{
	position:absolute;
	left:-90000px;
	top:-90000px;
}

#toolbar{
	position:fixed;
	top:40px;
	left:0;
	right:0;
	height:44px;
	background-color:#FFF;
	z-index:100;
    -webkit-box-shadow: 0px 0px 4px 1px #c2c2c2;
    -moz-box-shadow: 0px 0px 4px 1px #c2c2c2;
    box-shadow: 0px 0px 4px 1px #c2c2c2;
}

@media screen and (max-width: 768px){
	#toolbar{
		height:84px;
		top:0;
	}
	.top_header{
		display:none;
	}
}

#themes{
	position:absolute;
	bottom:-500px;
	left:0;
	right:0;
	background-color:#f0f0f0;
	list-style-type:none;
	margin:10;
    padding:0;
	z-index:1000;
	-webkit-transition: bottom 2s;
	transition: bottom 2s;
	display:none;
}

#themes li{
	margin:0;
	padding:0;
	text-align:left;
	position:absolute;
	line-height:32px;
	font-size:1.125em;
    font-weight: normal;
    text-indent: 1em;
    letter-spacing: .05em;
    color: #fff;
	-webkit-transition: width 0.6s, left 0.6s;
    transition: width 0.6s, left 0.6s;
    -ms-transform: skewX(-20deg);
    -webkit-transform: skewX(-20deg);
    transform: skewX(-20deg);
    overflow:hidden;
    cursor:pointer;
}

@media screen and (max-width: 768px){
	#themes li{
		font-size:1em;
	}
}

#themes li span{
    -ms-transform: skewX(20deg);
    -webkit-transform: skewX(20deg);
    transform: skewX(20deg);
    display:block;
    white-space:nowrap;
    text-overflow:ellipsis;
    width:95%;
    overflow:hidden;
    cursor:pointer;
}



#themes li span:after{
	content: ' i';
	font-family:courier,mono;
	font-size:90%;
	color:#FFF;
	width:18px;
	height:18px;
	border-radius:50%;
	text-align:center;
	line-height:18px;
	background-color:rgba(0,0,0,0.2);
	padding:0;
	margin:0;

	margin-top:7px;
	display:inline-block;
	text-indent:1px;
	float:right;
	position:absolute;
	right:0;
}



#filter{
	position:absolute;
	right:0px;
	top:2px;
    background-color:#fff;
    border:none;
    cursor:pointer;
    color:#c12026;
    font-size:1em;
    vertical-align:middle;
    height:40px;
    line-height:40px;
    padding-top:0;
     padding-right:30px;
     padding-left:10px;
     background-image: url("../assets/icons/search.svg");
     background-repeat:no-repeat;
     background-size:30px auto;
     background-position: right center;
     border-left:1px solid #CCC;
     border-right:10px solid transparent;
     display:none;
}
#themeslist{
	margin:0;

	position:absolute;
	bottom:0;
	height:44px;
	padding-top:4px;
	padding-left:0;
	line-height:40px;
	overflow:hidden;
	white-space:nowrap;
	left:270px;
	right:130px;
	box-shadow:inset -4px 0px 2px #CCC;
	-webkit-transition: scrolling 1s, -webkit-scrolling 1s;
	transition: scrolling 1s;
}
#navArrow,#navLeftArrow{
	display:block;
	position:absolute;
	right:105px;
	width:25px;
	height:44px;
	bottom:0;
	line-height:44px;
	text-align:center;
	cursor:pointer;
}
#navLeftArrow{
	left:250px;
	right:auto;
	background-color:#FFF;
	box-shadow:4px 0px 2px #CCC;
}
@media screen and (max-width: 768px){
	#navArrow,#navLeftArrow{
		display:none;
	}
}
@media screen and (max-width: 768px){
	#themeslist{
		left:0px;
		right:0;
		overflow-x:scroll;
		-webkit-overflow-scrolling: touch;
		overflow-scrolling: touch;
	}
}
#themeslist li{
	display:inline-block;
	padding:0px 10px;
	margin-top:4px;
	cursor:pointer;
}

#themeslist li.selected{
	background-color:#c12026;
	color:#FFF;
}

#filter span{

	display:inline-block;
	padding-top:3px;
}

@media screen and (max-width: 500px){
	#filter{
		border-left:0px solid transparent;
	}
	#filter span{
		display:none;
	}
}

#categories{
	position:fixed;
	right:0px;
    top:40px;
	background-color:#FFF;
	width: 343px;
    height: 100%;
    overflow-y:auto;
	display:none;
	z-index:10000000000;
    -webkit-box-shadow: 0px 0px 4px 1px #c2c2c2;
    -moz-box-shadow: 0px 0px 4px 1px #c2c2c2;
    box-shadow: 0px 0px 4px 1px #c2c2c2;
}

#categories h4{
	padding:1em 1em 0.5em 1em;
	margin:0;
}

#categories ul,#categories li{
	margin: 0;
	padding:1em 1em;
    font-size: 1em;
    line-height: 1.1em;
	list-style-type:none;
}

#categories ul{
	padding-top:0;
}

#categories p{
	margin:0;
	padding:0 1em;
}

#categories .topbar{
	position:absolute;
	top:0;
	left:0;
	right:0;
	height:35px;
	background-color:#c12026;
}

#searchbox{
	font-size:1em !important;
	border:1px solid #000 !important;
	margin:45px 1em 1em 1em;
	padding:15px;
	border-radius:0;
	width:90%;
	-webkit-appearance: none;
	appearance:none;
}

#searchresults p{
	color:#666;
}

#searchresults p strong{
	color:#000;
}

#categories li{
	padding:10px 3px;
	cursor:pointer;
	border-bottom:1px solid #CCC;
}

h1{
    font-family: "Montserrat", Arial, Helvetica, sans-serif;
    font-size: 1.2em;
    color: #c12026;
	line-height:1em;
    text-indent:0.5em;
	padding:8px 0 0 0;
	margin:8px 0 0 0;
	height:34px;
}

#toolbar h1:after{
	content: ' i';
	font-family:courier,mono;
	font-size:90%;
	color:#FFF;
	width:18px;
	height:18px;
	border-radius:50%;
	text-align:center;
	line-height:18px;
	background-color:#CCC;
	padding:0;
	margin:0;
	margin-left:3px;
	display:inline-block;
	text-indent:1px;
}

h2{
    font-family: "Montserrat", Arial, Helvetica, sans-serif;
    font-size: 1.375em;
    line-height:1.625em;
    font-weight:lighter;
    color: #fff;
	padding:0;
}

h3{
    font-family: "Montserrat", Arial, Helvetica, sans-serif;
    font-size: 1.1em;
    line-height:1.3em;
    font-weight:lighter;
    color: #fff;
	padding:0;
}

h1 span{
	display:inline-block;
	text-indent:-30000px;
	background: url(../assets/logo_name.png) no-repeat left center;
	background-size: contain;
	width:95px;
	height:41px;
	position:relative;
	top:-15px;
	left: -5px;
}

#toolbar h1{
	cursor:pointer;
}

@media screen and (max-width: 500px){
	h1{
		font-size:1em;
		position:relative;
		left:-20px;
		top:-5px;
	}
	h1 span{
		width:45px;
		background-image:url(../assets/avert-small.png);
		top:-12px;
		height:35px;
		background-size:auto 75%;
		background-position:right center;
	}
}

.fullscreen{
	position:absolute;
	top:0px;
	left:0;
	width:100%;
	height:100%;
}

#data-panel{
	-webkit-transition: top 1s;
    transition: top 1s;
    background-color:#f0f0f0;
    z-index:-20;
    border-top:2px solid #000;
}

#timeline-panel{

	background-color: #f0f0f0;
	background-color: transparent;
	-webkit-transition: top 0.6s;
    transition: top 0.6s;
}

#bubble{
	width:400px;
	cursor:pointer;
	height:auto;
	background-color:#FFF;
	position:absolute;
	opacity:0;
	z-index:2000;
	-webkit-transition: opacity 0.4s, left 0.4s, top 0.4s;
    transition: opacity opacity 0.4s, left 0.4s, top 0.4s;
    -webkit-box-shadow: 4px 4px 10px -1px #c2c2c2;
    -moz-box-shadow: 4px 4px 10px -1px #c2c2c2;
    box-shadow: 4px 4px 10px -1px #c2c2c2;
}

#bubble figcaption p:last-child:after{

	content:' More \0276F';
	color:#999;
	font-size:0.9em;

	float:right;
	display:inline-block;

}
#bubble h3{
		background-repeat:no-repeat;
		background-position:3% 50% !important;
		background-size:auto 70%;
		padding-left:45px;
}
#bubble h3:before{
		width:45px;
		height:40px;
		background-repeat:no-repeat;
		background-size:auto 60%;
		background-position:left center;
		content: ' ';
		display:block;
		position:absolute;
		left:10px;
		top:0;
}
#bubble h3.type-video,#bubble h3.type-audio,#bubble h3.type-photo-gallery,#bubble h3.type-gallery,#bubble h3.type-image-gallery,#bubble h3.type-data-chart{
	padding-left:50px;
}
#bubble h3.type-video:before{

		background-image:url("../assets/icons/video.svg");

}



#bubble h3.type-photo-gallery:before,#bubble h3.type-gallery:before,#bubble h3.type-image-gallery:before{

		background-image:url("../assets/icons/image.svg");

}



#bubble h3.type-audio:before{

		background-image:url("../assets/icons/audio.svg");

}

#bubble h3.type-data-chart:before,#bubble h3.type-data:before{

		background-image:url("../assets/icons/data-chart.svg");

}

#bubble p.periodIntro:last-child:after{
	content:' More \0276F';
	color:#FFF;
	font-size:0.8em;
	line-height:0.5em;
}


@media screen and (max-width: 768px){
	#bubble{
		width:300px;
	}
}



#bubble img{
	width:60px;
	height:60px;
	float:right;
	margin-left:1em;
    margin-bottom:1em;
}

#closeBubble{
	float:right;
	cursor:pointer;

    background-color: none;
    border:none;
    width: 45px;
    height: 30px;
    background: url("../assets/icons/close.svg");
    background-repeat:no-repeat;
    background-size:24px 24px;
    background-position:right top;
}
#closeCategories{
	background-color: #666;
    width: 24px;
    height: 24px;
    background: url("../assets/icons/close.svg");
    position:absolute;
    top:5px;
    right:5px;
    cursor:pointer;
    z-index:100000;
    display:block;
    border:none;
}

.related_events{
	background-color:#EEE;
	padding:5px 10px 15px 10px;
	overflow:auto;
}

.related_events h4{
	margin-top:15px;
	margin-left:0 !important;
}

.imagecredit,#sources{
	background-color:#666;
	color:#FFF;
	padding:5px 10px 5px 10px;
	font-size:0.9em;
}

#sources a{
	color:#FFF;
	width:20px;
	height:20px;
	display:inline-block;
	text-decoration:none;
	margin-left:10px;
	font-weight:bold;
	background-color:#000;
	text-align:center;
	line-height:20px;
}

#bubble figure{
	margin:0;
	padding:0;
	overflow:auto;
}

#bubble h3{
    height: auto;
	background-color:#c12026;
	color:#FFF;
	margin:0;
    padding-top:10px;
    padding-right:1em;
    padding-bottom:10px;
    padding-left:1em;
}



#bubble figure p,.periodIntro,.overallIntro{
    margin:0;
	padding:1em;
}

.event{
	width:40px;
	height:40px;
	line-height:40px;
    list-style-type:none;
	margin:0;
	padding:0;
	text-align:center;
	top:-50px;
	position:absolute;
	-webkit-transition: top 2s, left 0.4s;
    transition: top 2s, left 0.4s;
    display:none;
    z-index:5;
}

.event.focused{
	display:block !important;
}

.event.prehistory:before{
	content:'«';
	position:absolute;
	left:3px;
	font-size:20px;
	line-height:20px;
	color:#000;
	top:9px;
	-webkit-transition: top 0.4s, left 0.4s;
    transition: top 0.4s, left 0.4s;
}

.event.prehistory.focused:before,.event.prehistory.feature:before{
	background-color:#000;
	color:#FFF;
	width:20px;
	height:20px;
	text-align:center;
	border-radius:50%;
	left:0;
	line-height:15px;
	vertical-align:center;
	top:0;
}

.event figure{

	display:inline-block;
	display:none;
	border-radius:50%;
	border:4px solid;
	cursor:pointer;
	overflow:hidden;
    width:1px;
	height:1px;
	margin:0;
	padding:0;
	-webkit-transition: width 0.3s, height 0.4s;
    transition: width 0.4s, height 0.4s;
}

/*

	display:inline-block; (changing this makes a better transition, however then the dots change position)

*/

.event > figure > img{
	max-width:100%;
	height:auto;
}

.event figcaption{
	display:none;
}

.event figure{
	border-color:#c12026;
	background-color:#c12026;
}


.event.feature figure,.event.focused figure{
	width:40px;
	height:40px;
	background-color:#FFF;
	display:block;
}

.theme-4{
    background-color:#666 !important;
    text-align:right;

    color:#FFF;
    }

.theme-4 span{
	text-align:right !important;
	padding-right:20px;
}



.theme-11{
    background-color:#665aa8 !important;
    color:#FFF;
    }

.theme-12{
    background-color:#319cbc !important;
    color:#FFF;
    }

.theme-13{
    background-color:#419b87 !important;
    color:#FFF;
    }

.theme-2{
    background-color:#e0b811 !important;
    color:#FFF;
    }

.theme-14{
    background-color:#ea7565 !important;
    color:#FFF;
    }

.tick{
	position:absolute;
	top:1px;
	left:0;
	height:8px;
	width:1px;
	background-color:#959595;
	list-style-type:none;
	padding:0;
	margin:0;
	-webkit-transition: left 0.6s;
    transition: left 0.6s;
}
.tick.decade{
	height:35px;
	width:3px;
	background-color:#959595;
}
.tick.decade i{
	width:1px;
	background-color:#959595;
	height:100%;
	position:absolute;
	left:1px;
	top:0;
}
.tick.fiver{
	width:2px;
	background-color:#959595;
}
.tick span{
	position:absolute;
	bottom:0;
	left:4px;
}

.chartjs-tooltip {
	opacity: 1;
	position: absolute;
	background: rgba(0, 0, 0, .8);
	color: white;
	border-radius: 3px;
	-webkit-transition: all .1s ease;
	transition: all .1s ease;
	pointer-events: none;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	padding: 4px;
	z-index:99999999999;
}
.chartjs-tooltip-key {
	display: inline-block;
	width: 10px;
	height: 10px;
}

#zoom{
    display:block;
    cursor:pointer;
	position:fixed;
    text-indent:-9000px;
	top:auto;
	bottom:100px;
	right:20px;
    width: 72px;
    height: 72px;
    background-color: none;
    border:none;
    background: url("../assets/icons/zoom-in.svg");
	z-index:4000;
    -webkit-filter: drop-shadow(0px 2px 4px #c2c2c2);
}

#zoom.zoomOut{
	 background: url("../assets/icons/zoom-out.svg");
}

@media screen and (max-width: 500px){
	#zoom{
		top:auto;
		bottom:7.5em;
		width: 50px;
   		height: 50px;
   		z-index:5000;
	}
}

#detail-window{
	position:fixed;
	top:-200%;
	height:84%;
    width:500px;
    max-width:90%;
    overflow-x:hidden;

	left:27%;
	background-color:#FFF;
	-webkit-transition: top 0.6s;
   /* display:none;*/
    z-index:1000000000;
    -webkit-box-shadow: 4px 4px 10px -1px #c1c1c1;
    -moz-box-shadow: 4px 4px 10px -1px #c1c1c1;
    box-shadow: 4px 4px 10px -1px #c1c1c1;
}

#detail-window #chart-holder{

}

#detail-window iframe{
	max-width:100%;
	overflow:hidden;
	min-height:150px;
}

#detail-window #chart-holder canvas{
	height:400px;
}

#detail-window #chart-holder iframe{
	min-height:0px !important;
}


#detail-content figure{
	margin:0 !important;
	background-color:#000;
	text-align:center;
	position:relative;
	top:-1px;

}

audio{
	width:100%;
	background-color:#222;
}

#detail-content h4{
	margin: 1em 1em 0 1em;
}

#detail-content .flickity-slider figure{
	width:100%;
	height:auto;
}

#detail-window h2{
	position:absolute;
	height:44px;
	color:#fff;
	background-color:#c12026;
	top:0;
	left:0;
	right:0;
	margin:0;
    padding:0;


}

#detail-window h2 span{
	position:absolute;
	display:block;
	left:1em;
	top:5px;
	right:60px;
	bottom:0px;
	white-space:nowrap;
	text-overflow:ellipsis;
	overflow:hidden;
}

.related_events ul li{
	display:block;
	margin-right:10px;
	margin-top:0px;
	margin-bottom:15px;
	width:90% !important;
	clear:both;
}

.related_events ul li figure{
	position:static !important;
	top: 0px !important;
	width:25%;
	float:left;
	text-align:right;
}

.related_events ul li h3{
	text-align:left;
	color:#000;
	width:75%;
	float:right;
	cursor:pointer;
	font-weight:normal;
}

.related_events ul{
	padding-left:0;
	margin:0;

}

.related_events{
	padding-bottom:10px;
}

#opacity-window {
        position: fixed;
        top: 0px;
        left: 0%;
        width: 100%;
        height: 100%;
        background-color: #f0f0f0;
        z-index:90000;
        -moz-opacity: 0.7;
        opacity:.70;
        filter: alpha(opacity=70);
}

#detail-window h2 button{
	position:absolute;
	cursor:pointer;
    top: 7px;
    right:10px;
    background-color: none;
    border:none;
    width: 30px;
    height: 30px;

    background: url("../assets/icons/close.svg");
    background-repeat:no-repeat;
    background-position:center center;
    background-size:24px 24px;
}

#detail-content{
	overflow-y:auto;
	-webkit-overflow-scrolling: touch;
	position:absolute;
	top:44px;
	left:0;
	right:0;
	bottom:0;
}

#detail-content figure img{
	max-width:100%;
	height:auto;
}

/*

    1.The top should be postioned 1em from the bottom of the h2 section.

    2. How do I make the image full-width?

*/

#detail-content > div{
	padding:0 1em;
}

#detail-content #media-container{
	padding:0;
	margin:0;
}

#events-panel-tab{
	position:fixed;
	bottom:130px;

    z-index:10001;
	left:10px;
	-webkit-transition: top 0.6s; /* For Safari 3.1 to 6.0 */
    transition: top 0.6s;
    cursor:pointer;
}

#data-panel-tab{
	position:fixed;
	bottom:90px;

	z-index:10000;
	left:10px;
	-webkit-transition: top 1s; /* For Safari 3.1 to 6.0 */
    transition: top 1s;
    cursor:pointer;
}
#panel-selector li{
	background-color:#fff;
	text-align:left;
	height:36px;
	width:85px;
	padding:0 0 0 5px;
	margin:0;
	line-height:35px;
	list-style-type:none;
	white-space:nowrap;
	display:none;
}
#data-choice{
	position:fixed;
	left:10px;
	top:130px;
	z-index:1000;
}
#data-choice span{
	cursor:pointer;
	background-color:#DDD;
	padding:5px;
	display:block;
	margin-bottom:10px;
}
#data-set1{
	border-left:25px solid rgba(151,187,205,0.5);
}
#data-set2{
	border-left:25px solid rgba(60,156,135,0.3);
}
#data-choice span.selected{
	background-color:#FFF;
	font-weight:bold;
}
@media screen and (max-width: 768px){
	#events-panel-tab{
		left:65%;
		top:3px;
		background-color:transparent !important;
	}

	#data-panel-tab{
		left:45%;
		top:3px;
		background-color:transparent !important;
	}
}
#panel-selector li:after{
	content:  " \00a0 ";
	font-weight:bold;
	border:1px solid #CCC;
	width:20px;
	height:20px;
	text-align:center;
	display:inline-block;
	margin-left:5px;
	line-height:20px;
}
#panel-selector li.visible-pane:after{
	content:  " \2713 ";


}

.slidecover{
	display:block;
	width:100%;
	height:250px;
	background-color:rgba(255,255,255,0);
	position:absolute;
	top:0;
	left:0;
	z-index:80;

}
.jssocials{
	clear:both;
}

.jssocials-share-link{
	padding:0.1em 0.3em !important;
}

