* {
    box-sizing: border-box;
}

html, body {
    color: #301710;
    text-align: center;
    font-family: sans-serif;
    font-weight: bold;
}

body {
    background-color: #fdfe02;
    background-image: radial-gradient(#fdfe02, orange);
}

table, th, td {
    border: 0;
    border-collapse: collapse;
}

th {
    background: #70de00;
}

table {
    width: 100%;
    border-bottom: solid 2px #70de00;
}

th, td {
    padding: 5px;
}

td:nth-child(3),
td:nth-child(4) {
    word-break: break-all;
}

tr:nth-child(odd) {
    background: #f1f1f1;
}

tr:nth-child(odd) td {
    /*padding: 10px 20px;
    border-bottom: 2px solid #70de00;*/
}

tbody {
    font-weight: normal;
    font-size: 90%;
}

label{
    font-weight: bold;
}

aside {
    font-family: monospace;
    text-transform: uppercase;
    color: #ce0016;
    padding: 10px 0;
    font-size: small;
}

img {
    width: 100%;
}

h1 {
    width: 100%;
    margin: 0;
    font-size: large;
}

.white-background {
    background-color: white;
    color: #301710;
    padding: 20px;
    margin: 10px auto;
    text-align: left;
    border-radius: 5px;
}

p {
    margin: 0 0 10px 0;
    padding: 0;
}

header {
    width: 90%;
    margin: 40px auto 30px auto;
}

footer {
    width: 100%;
    margin: 40px 0;
    float: left;
}

a {

    color: #ce0016;
}

/* ===================================================== */
/*  End message */
/* ===================================================== */

.end {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 800;
    height: 100%;
    width: 100%;
    background: rgb(0, 0, 0); /* Fallback for older browsers without RGBA-support */
    background: rgba(0, 0, 0, 0.8);
    display: none;
}

.end-message {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.end-message .end-message-question {
    text-align: center;
    margin: 0 auto;
    padding: 20px;
    background-color: #fdfe02;
    background-image: radial-gradient(#fdfe02, orange);
    display: block;
}

.end-message .end-message-buttons {
    padding: 0 0 20px 0;
}

.end-message .button {
    background-color: #46ee03;
    color: black;
    margin: 0 auto 20px auto;
    padding: 15px 20px;
    display: block;
    max-width: 300px;
    text-decoration: none;
    text-transform: uppercase;
    clear: both;
    box-shadow: 5px 5px 10px grey;
    border-radius: 10px;
    border: 2px solid black;
}

.end-message .button:hover {
    background-color: #5c2624;
    color: white;
}

.end-message .button:active {
  background-color: black;
  color: white;
}

.container {
    margin: 0 auto;
    max-width: 1000px;
    width: 100%;
    display: inline-block;
}

/* entire container, keeps perspective */
.flip-container {
    perspective: 1000px;
    float: left;
    margin: 12px;
    cursor: pointer;
}

/* flip the pane */
.flip-container.flip .flipper {
    transform: rotateY(-180deg);
}

.front, .back {
    width: 100%;
    box-shadow: 5px 5px 10px grey;
}

.front-content, .back-content {
    -webkit-transition: opacity .3s ease-in-out;
       -moz-transition: opacity .3s ease-in-out;
        -ms-transition: opacity .3s ease-in-out;
         -o-transition: opacity .3s ease-in-out;
            transition: opacity .3s ease-in-out;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-position: center center;
    border-radius: 5px;
    background-size: inherit;
}

.flip-container, .front, .back {
    border-radius: 5px;
    -ms-transform: rotate(0deg); /* IE 9 */
    -webkit-transform: rotate(0deg); /* Safari */
    transform: rotate(0deg);
}

/* flip speed goes here */
.flipper {
	transition: 0.6s;
	transform-style: preserve-3d;
    position: relative;
    
}

/* hide back of pane during swap */
.front, .back {
	backface-visibility: hidden;
	position: absolute;
	top: 0;
	left: 0;
    background-color: #5c2624;
}

/* front pane, placed above back */
.front {
	z-index: 2;
	/* for firefox 31 */
    transform: rotateY(0deg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% 100%;
}

/* back, initially hidden pane */
.back {
	transform: rotateY(180deg);
    background-size: cover;
    background-repeat: no-repeat;
    text-align: center;
    color: #64749b;
    line-height: 1.3;
}

.flip-container {
    width: 23%;
    margin: 3px;
}
.flip-container, .front, .back {
    height: 130px;
}

@media only screen and (min-width: 500px) {
    body {
        font-size: xx-large;
    }
    aside {
        font-size: xx-large;
    }
    .flip-container {
        width: 23.2%;
        margin: 5px;
    }
    .flip-container, .front, .back {
        height: 250px;
    }
}

@media only screen and (min-width: 700px) {
    body {
        font-size: xx-large;
    }
    aside {
        font-size: inherit;
    }
    h1 {
        font-size: inherit;
        max-width: none;
    }
    .flip-container {
        width: 23.4%;
    }
    .flip-container, .front, .back {
        height: 270px;
    }
    a.button {
        max-width: 600px;
    }
}

@media only screen and (min-width: 992px) {
    body {
        font-size: large;
    }
    header {
        width: 50%;
    }
    .flip-container {
        width: 24%;
    }
    .flip-container, .front, .back {
        height: 380px;
    }
}

@media only screen and (min-width: 1025px) {
    /*
    .container {
        max-width: 800px;
    }
    */
    .flip-container {
        width: 15.6%;
    }
    .flip-container, .front, .back {
        height: 235px;
    }
    a {
        max-width: 300px;
    }
    .flip-container:hover .front-content,
    .flip-container:hover .back-content {
        border: 8px solid #ce0016;
    }
}
