* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.hidden {
	display: none;
}

.clearfix {
	clear: both;
}

/* Viz */
#viz {
	background-color: #FFF;
}
@media (min-width: 550px) {
	#viz { padding-bottom: 20px!important; }
}



/* Typo */
#viz h1,
#viz h2,
#viz h3,
#viz h4,
#viz h5,
#viz h6 {
	font-family: 'DharmaGothicE', sans-serif;
}

#viz h1 {
	font-size: 2.7rem;
	font-weight: 600;
	line-height: 1;
}
@media (min-width: 550px) {
	#viz h1 { font-size: 3.1rem;
	}
}
@media (min-width: 750px) {
	#viz h1 { font-size: 3.5rem;
	}
}
@media (min-width: 1000px) {
	#viz h1 { font-size: 5rem; }
}

#viz h2 {
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 1.0;
  margin: 0 0 10px 0;
}
@media (min-width: 550px) {
	#viz h2 { font-size: 2.2rem; }
}
@media (min-width: 750px) {
	#viz h2 { font-size: 3rem; }
}
@media (min-width: 1000px) {
	#viz h2 { font-size: 3.5rem; }
}

#viz p {
	font-family: 'Droid Serif', serif;
	line-height: 1.35!important;
}

#viz a {
	backgroundfont-family: 'Droid Serif', serif;
}



/* Headers */
#viz .header {
}

#viz .header h1 {
	margin-bottom: 20px!important;
}

#viz .header img {
	width: 100%;
	margin-bottom: 20px;
}

#viz .header p {
	font-size: 1.1rem;
	line-height: 1.45!important;
	margin-bottom: 0px;
}



/* Attributions */
#viz .attribution {
	font-family: 'epocapro', sans-serif;
	font-size: 0.75rem!important;
}

#viz .attribution a {
	text-decoration: none;
	border-bottom: 5px solid #BDF;
	color: #444;
}




/* Legends */
#viz p.legend {
	font-family: 'epocapro', sans-serif;
	font-weight: normal!important;
	font-style: italic!important;
	font-size: 1rem!important;
	line-height: 1.4!important;
	margin: 0 0 10px 0;
}
#viz p.legend .label {
	font-style: normal;
	font-weight: 300;
	font-size:  0.8rem;

	background-color: #000;
	color: #FFF;
	border-radius: 2px;

	padding: 2px 4px;
	position: relative;
	top:  -1px;
	margin-right: 2px;
}
#viz p.legend img {
	max-height: 1.4rem;
	vertical-align: bottom;
	position: relative;
	top: -2px;
	padding: 0!important;
	display: inline!important;
}
@media (min-width: 550px) {
	#viz p.legend { padding: 0; }
}


/* UI related */
#viz .ui-group {
  float: left;
  
	margin-top: 5px;
  margin-right: 15px;
  margin-bottom: 5px;
}

#viz .ui-group label {
	display: block;
	font-family: 'epocapro', sans-serif;
	font-size: 0.9rem;
	margin-bottom: 5px;
}

#viz select {
	margin: 0 10px 10px 0;
}

#viz input {
	margin-left: 3px;
	width: 200px!important;
}

#viz .tt-dropdown-menu {
	z-index: 10000!important;
}
.tt-dropdown-menu {
  width: 100%;
  min-width: 160px;
  margin-top: 2px;
  padding: 5px 0;
  background-color: #fff;
  border: 1px solid #ccc;
  border: 1px solid rgba(0, 0, 0, 0.2);
  *border-right-width: 2px;
  *border-bottom-width: 2px;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  -webkit-background-clip: padding-box;
  -moz-background-clip: padding;
  background-clip: padding-box;
z-index:9999;
}
.tt-suggestion {
  display: block;
  padding: 3px 20px;
}
.tt-suggestion.tt-is-under-cursor {
  color: #fff;
  background-color: #0081c2;
  background-image: -moz-linear-gradient(top, #0088cc, #0077b3);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));
  background-image: -webkit-linear-gradient(top, #0088cc, #0077b3);
  background-image: -o-linear-gradient(top, #0088cc, #0077b3);
  background-image: linear-gradient(to bottom, #0088cc, #0077b3);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', GradientType=0);
}
.tt-suggestion.tt-is-under-cursor a {
  color: #fff;
}
.tt-suggestion p {
  margin: 0;
}



/* Maps */
#viz .map-container {
  margin-bottom: 30px;
}

#viz .map img{
  padding: 0;
}

#viz .map .leaflet-bar, .leaflet-control-layers {
	oborder:  none!important;
}

#viz .map .leaflet-control-attribution {
	font-family: 'epocapro', 'sans-serif';
	font-weight: 500;
	color: #000;
	font-style: italic;
}

#viz .map .leaflet-control-attribution a {
	color: #bdf;
	font-weight: 500;
	font-style: normal;
}

#viz .map .leaflet-container {
	background-color: white;
	margin: 0;
	padding: 0;
}

#viz .map .popup {
	font-family: 'epocapro', sans-serif;
	font-weight: normal!important;
	font-style: normal;
	font-size: 1.3rem;
	
	position: relative;
	padding-bottom: 5px;
}

#viz .map .leaflet-popup-pane {
	background-color: white;
	margin: 0;
	padding: 0;
}

#viz .map .leaflet-popup-content-wrapper {
	background-color: white;
	margin: 0;
	border-radius: 0!important;
	border: 5px solid white;
}

#viz .map .leaflet-popup-content {
	background-color: white;
	margin: 0;
	padding: 5px!important;
	max-width: 270px;
}

@media (min-width: 550px) {
	#viz .map .leaflet-popup-content {
		max-width: 320px;
	}
}


/* Charts */
#viz .chart-container {
  margin-bottom: 20px;
}

#viz .chart {
  height: 250px;
  background-color: rgba(0,0,0,0.07);
  oborder: 1px solid #ddd;
}

#viz .chart #node-0 {
  display: none;
}

#viz .chart text {
	font-family: 'DharmaGothicE', sans-serif;
	font-size: 1.1rem;
	font-weight: 400;
	fill:  #FFF;
}

/* Media Queries
–––––––––––––––––––––––––––––––––––––––––––––––––– */
/*
Note: The best way to structure the use of media queries is to create the queries 
near the relevant code. For example, if you wanted to change the styles for buttons
on small devices, paste the mobile query code up in the buttons section and style it 
there. 
*/
/* Larger than mobile */
@media (min-width: 400px) {}

/* Larger than phablet (also point when grid becomes active) */
@media (min-width: 550px) {}

/* Larger than tablet */
@media (min-width: 750px) {}

/* Larger than desktop */
@media (min-width: 1000px) {}

/* Larger than Desktop HD */
@media (min-width: 1200px) {}
