body {
	font-family: 'Montserrat', sans-serif;
}

.cube__side,
.no-js .cube {
	border: 10px solid;
	outline: 1px solid;
	background-color: currentColor;
	background-blend-mode: soft-light;
}

.cube:not(.cube--inactive):nth-child(1) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(1) {
	background-image: url(../img/1.png);
	color: #f44336;
}

.cube:not(.cube--inactive):nth-child(2) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(2) {
	background-image: url(../img/2.png);
	color: #e91e63;
}

.cube:not(.cube--inactive):nth-child(3) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(3) {
	background-image: url(../img/3.png);
	color: #9c27b0;
}

.cube:not(.cube--inactive):nth-child(4) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(4) {
	background-image: url(../img/4.png);
	color: #673ab7;
}

.cube:not(.cube--inactive):nth-child(5) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(5) {
	background-image: url(../img/5.png);
	color: #3f51b5;
}

.cube:not(.cube--inactive):nth-child(6) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(6) {
	background-image: url(../img/6.png);
	color: #2196f3;
}

.cube:not(.cube--inactive):nth-child(7) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(7) {
	background-image: url(../img/7.png);
	color: #03a9f4;
}

.cube:not(.cube--inactive):nth-child(8) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(8) {
	background-image: url(../img/8.png);
	color: #00bcd4;
}

.cube:not(.cube--inactive):nth-child(9) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(9) {
	background-image: url(../img/9.png);
	color: #009688;
}

.cube:not(.cube--inactive):nth-child(10) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(10) {
	background-image: url(../img/10.png);
	color: #4caf50;
}

.cube:not(.cube--inactive):nth-child(11) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(11) {
	background-image: url(../img/11.png);
	color: #8bc34a;
}

.cube:not(.cube--inactive):nth-child(12) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(12) {
	background-image: url(../img/12.png);
	color: #cddc39;
}

.cube:not(.cube--inactive):nth-child(13) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(13) {
	background-image: url(../img/13.png);
	color: #ffeb3b;
}

.cube:not(.cube--inactive):nth-child(14) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(14) {
	background-image: url(../img/14.png);
	color: #ffc107;
}

.cube:not(.cube--inactive):nth-child(15) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(15) {
	background-image: url(../img/15.png);
	color: #ff9800;
}

.cube:not(.cube--inactive):nth-child(16) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(16) {
	background-image: url(../img/16.png);
	color: #ff5722;
}

.cube:not(.cube--inactive):nth-child(17) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(17) {
	background-image: url(../img/17.png);
	color: #795548;
}

.cube:not(.cube--inactive):nth-child(18) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(18) {
	background-image: url(../img/18.png);
	color: #564545;
}

.cube:not(.cube--inactive):nth-child(19) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(19) {
	background-image: url(../img/19.png);
	color: #607d8b;
}

.cube:not(.cube--inactive):nth-child(20) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(20) {
	background-image: url(../img/20.png);
	color: #405d6b;
}

.cube:not(.cube--inactive):nth-child(21) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(21) {
	background-image: url(../img/21.png);
	color: #9e9e9e;
}

.cube:not(.cube--inactive):nth-child(22) .cube__side,
.no-js .cube:not(.cube--inactive):nth-child(22) {
	background-image: url(../img/22.png);
	color: #70737d;
}

.cube--inactive .cube__side,
.no-js .cube--inactive {
	background: #2e2e37;
}


/* With JS we insert a number span into the cube */

.cube__number,
.no-js .cube::after {
	bottom: auto;
	top: 0.15em;
	left: 0.25em;
	right: auto;
	line-height: 1;
	font-size: 2em;
	color: #fff;
	text-align: center;
	font-weight: bold;
	text-shadow: 0 3px 5px rgba(0, 0, 0, 0.2);
}


@media screen and (max-width: 50.75em) {
	.cube__number,
	.no-js .cube::after {
		font-size: 1em;
	}
}

.js .content__block {
	width: 100%;
	text-align: center;
	left: 0;
	padding: 2em;
}

.js .content__description {
	padding: 0;
	max-width: 30em;
	margin: 2em auto 0.5em;
}

.js .content__meta {
	padding: 0;
}

.content__number {
	color: #fff;
	font-weight: bold;
	line-height: 0.5;
	letter-spacing: -0.175em;
	text-indent: -0.175em;
	font-size: 40vw;
	left: 50%;
	top: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	font-family: 'Avenir Next', Avenir, 'Helvetica Neue', Helvetica, 'Segoe UI', Arial, sans-serif;
}
