body {
	color: #FFF7E5;
	background: url(http://cdn-ftu.negramaro.com/cover-reveal/img/bg.jpg) no-repeat center center #222;
	background-size: cover;
	font-family: 'Open Sans', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
	color: #FFF7E5;
	font-family: 'Open Sans', sans-serif;
}

.flex {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.flex-column {
	-webkit-flex-direction: column;
	-moz-flex-direction: column;
	-ms-flex-direction: column;
	-o-flex-direction: column;
	flex-direction: column;
}

.flex-1 {
	-webkit-flex: 1;
	-moz-flex: 1;
	-ms-flex: 1;
	-o-flex: 1;
	flex: 1;
}

.flex-align-center {
	-webkit-align-items: center;
	-moz-align-items: center;
	-ms-align-items: center;
	-o-align-items: center;
	align-items: center;
}

.flex-justify-center {
	-webkit-justify-content: center;
	-moz-justify-content: center;
	-ms-justify-content: center;
	-o-justify-content: center;
	justify-content: center;
}

.flex-justify-between {
	-webkit-justify-content: space-between;
	-moz-justify-content: space-between;
	-ms-justify-content: space-between;
	-o-justify-content: space-between;
	justify-content: space-between;
}

.flex-justify-end {
	-webkit-justify-content: flex-end;
	-moz-justify-content: flex-end;
	-ms-justify-content: flex-end;
	-o-justify-content: flex-end;
	justify-content: flex-end;
}

#wrapper {
	-webkit-align-items: stretch;
	-moz-align-items: stretch;
	-ms-align-items: stretch;
	-o-align-items: stretch;
	align-items: stretch;
}

.new-element, 
.hidden {
	opacity: 0;
	transition: opacity 0.3s linear 1s;
}

#album-cover-wrapper,  
#avatars-wrapper {
	position: relative;
}

#album-cover-wrapper .cover,
#progress-wrapper .progress, 
#avatars-wrapper .avatars {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

#album-cover-wrapper {
	height: 600px;
}

#progress-wrapper {
	position: relative;
	height: 70px;
	margin-top: 20px;
}

#avatars-wrapper {
	padding: 0;
}

.row {
	max-width: 80rem;
}

.cover img {
	border: 2px solid #aaa;
}

.hashtag {
	color: #01B7EE;
}

.progress {
	height: 2rem;
	background: #FFF7E5;
	border-color: #FFF7E5;
}

.progress .meter {
	background: #01273A;
	color: white;
}

.avatars-row {
	margin-bottom: 10px;
}

.avatars-row img {
	width: 48px;
	height: 48px;
}

.avatars-row:last-child {
	margin-bottom: 0;
}

@media only screen and (max-width: 40em) {

	body {
		margin-top: 40px;
	}

	#wrapper {
		flex-direction: column;
	}

	#album-cover-wrapper {
		margin-bottom: 40px;
		height: auto;
	}

	#avatars {
		height: 250px;
	}

	.small-flex-justify-start {
		justify-content: flex-start;
	}

}