body {
	padding-top: 35px;
	overflow-x:hidden;
}


.stage {
	margin: 40px auto 20px;
	max-width: 630px; width: 90%; height: 300px
}

.overall {
	width: 100%;
	height: 100%;
}

.overall > * {
	float: left;
}

.vertical-bar {
	height: 100%;
	width: 0%;
	transition: .5s all;
	position: relative;
	font-size: 10pt;
	color: #666;
}

.vertical-bar .title {
	position: absolute;
	font-family: "Proxima Nova", sans-serif;
	top: -18px;
	transition: .25s all;
	opacity: 1;
}

	.no-title>.title{
		opacity: 0;
	}

.proportion {
	font-weight: 600;
	opacity: 1;
	transition: .5s all;
}

	.proportion.hidden {
		opacity: 0;
	}

.believers {
	//background-color: #007D68;
	background-color: rgba(0,125,104, 1);
	background-opacity: 1;

}

.believers.hidden {
	background-color: rgba(0,125,104, 0);
}

.sympathizers {
	background-color: rgba(0,125,104,.5);

}

.skeptics {
	background-color: rgba(0,125,104,.3);
}

.biggest-environmental-challenge {
	perspective: 1000;
	position: absolute;
	top: 0;
	right: 0;
	//background-color: #003A63;
	// background-color: rgba(255,255,255,.2);
	background-color: rgb(51, 151, 134);
	transition: .5s all;
	opacity: 0;
}

	.biggest-environmental-challenge.visible {
		opacity: 1;
	}
	
	.biggest-environmental-challenge.no-background {
		background-color: transparent;
	}

.box {
	width: 10%;
	height: 10%;
	float:left;
	border-left: 1px solid #f1f1f1;
	border-top: 1px solid #f1f1f1;
	box-sizing: border-box;
	position:relative;
	background-color: rgb(51, 151, 134);
	opacity:0;
	transition: .25s all;
	transform-style: preserve-3d;
	transform: rotateY(0deg);
}

.box.visible {
	opacity: 1;
}

.box.highlighted {
	background-color: #2EDFC1;
}

.box.flipped {
	transform: rotateY(90deg);
}

p {
	font-family: "Lyon Text", serif;
	line-height: 1.3em;
}

	p:first-child {
		margin-top: 0;
	}
	
p.bigger {
	font-size: 13pt;
	line-height: 1.2em;
}

.biggest-overall-challenge {
	position: absolute;
	top: 0px;
	right: 0px;
//	box-shadow: inset 0 -2px 0 0px rgba(0,0,0,.3), inset 2px 0px 0 0px rgba(0,0,0,.3);
	background-color: rgba(255,255,255,.2);
	opacity: 0;
	transition: .5s all;
}

	.biggest-overall-challenge.visible {
		opacity: 1;
	}

.legend {
	border-top: 1px solid rgba(0,0,0,1);
	border-left: 1px solid rgba(0,0,0,1);
	width: 100px;
	height: 0px;
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 2;
	opacity: 0;
	transition: .25s opacity, .25s border-top, .25s border-left;
}

	.legend.visible {
		opacity: 1;
	}

	.legend .circle {
		border-radius: 50%;
		width: 6px;
		height: 6px;
		border: 2px solid black;
		position: absolute;
		top: -6px;
		left: -9px;
		opacity: 1;
	}
	
	.legend .text {
		position: relative;
		left: 110%;
		font-family: "Proxima Nova";
		font-weight: 300;
		top: -25px;
		min-width: 100px;
		transition: all .25s;
	}
	
.legend.on-top {
	border-top: 1px solid rgba(0,0,0,0);
	border-left: 1px solid rgba(0,0,0,0);
	left: 0px !important;
	top: -30px !important;
}

	.legend.on-top .circle {
		opacity: 0;
	}
	
	.legend.on-top .text {
		left: 0px;
		top: 0px;
	}
	
	
.textBox {
	max-width: 460px;
	width: 98%;
	margin: 36px auto 20px;
	text-align: center;
	font-family: "Lyon Text", serif;
	border-top: 1px solid #999;
	padding: 25px 0px;
	opacity: 1;
	transition: opacity .25s;
}



.textBox .text {
	font-size: 12pt;
	transition: opacity .25s;
	opacity: 1;
	height: 130px;
}

	.textBox .text.hidden {
		opacity: 0;
	}

.textBox .text p {
	text-align: left;
}

	.textBox .text p strong {
		height: 16px;
		    display: inline-block;
	}

	strong.highlight {
		font-family: "Proxima Nova", sans-serif !important;
	    padding: 2px 2px 1px;
	    font-weight: bold !important;
	    border-bottom: 5px solid #2edfc1;
	}

.button {
	display: inline-block;
	padding: 8px 15px 7px;
	font-family: "Rajdhani", "Proxima Nova", serif;
	text-transform: uppercase;
	margin-top: 10px;
	cursor: pointer;
	font-size: 12pt;
	font-weight: 600;
	letter-spacing: 1px;
	color: white;
	background-color: #150F0F;
	border: 2px solid #150F0F;
	-webkit-user-select: none;  /* Chrome all / Safari all */
  	-moz-user-select: none;     /* Firefox all */
  	-ms-user-select: none;      /* IE 10+ */
  	user-select: none;
}

	.button:not(.disabled):hover {
		background-color: rgba(0,125,104, 1);
		border-color: rgba(0,125,104, 1);
	}
	
	.button:not(.disabled)#previous:hover {
		border-color: rgba(0,125,104, 1);
		color: rgba(0,125,104, 1);
	}
	
	.button.disabled {
		opacity: .3;
		cursor: default;
	}
	
	.button.hidden {
		display: none;
	}

	
.button:first-child {
	margin-right: 10px;
}

.button#previous {
	background-color: transparent;
	color: #999;
	border-color:#999;
}

.us-box {
	width: 33%;
	height: 33%;
	position: absolute;
	right: -35%;
	bottom: 0;
	background-color: rgba(51, 151, 134, .5);
	opacity: 1;
	transition: .25s all;
}

.us-box.hidden {
	opacity: 0;
}

	.us-box.no-background {
		background-color: transparent;
	}
	
.percentage { 
	width: 100%;
	position: absolute;
	bottom: -20px;
	left: 0px;
	text-align: center;
	font-family: Rajdhani, sans-serif;
	opacity: 1;
	transition: .25s all;
	color: black;
}

	.percentage.hidden {
		opacity: 0;
	}
	
.number {
    background-color: rgba(0,125,104, .2);
    display: inline-block;
    padding: 0 4pt;
	font-weight: bold;
	font-family: "Proxima Nova", sans-serif;
}

	
p em {
	font-family: "proxima nova";
	    font-style: normal;
	    font-weight: bold;
	    color: rgba(0,125,104, 1);
}

@media screen and (max-width: 630px) {
	
	.stage {
		height: 150px;
	}
	
	.textBox {
	}
	
	.textBox .text {
		height: 150px;
		font-size: 11pt;

	}
	
	.legend {
		border-color: white;
	}
	
	.legend .circle {
		left: 100%;
		border-color: white;
		
	}
	
	.legend .text {
		color: white;
		text-align:right;
		position:absolute;
		left: auto;
		right: 110%;
		width: 100%;
	}
	
	.sympathizers {
		background-color: rgba(0,125,104,.8);
	}
	
	.skeptics {
		background-color: rgba(0,125,104,.6);
	}
	
	.vertical-bar>.title {
		top: 5px;
		left: 4px;
		color: rgba(255,255,255,.9);
		font-size: 7pt
	}
	
	.biggest-environmental-challenge .title { 
		top: -35px;
		font-size: 8pt;
	}
	
	.legend .text {
	  top: -15px;
	}
}