/** HTML Elements **/

body {
    position: absolute;
    width: 100%;
    height: 100%;
    margin: 0;
    background: #0F3A7C;
}

table {
    height: 100%;
    width: 100%;
    border-spacing: 0;
    text-align: center;
}

section {
    position: relative;
    width: 90%;
    text-align: center;
}

h1 {
    font-size: 42px;
    font-family: "Quicksand", "Bahnschrift", sans-serif;
    text-transform: uppercase;
}

a {
    text-decoration: none;
    cursor: pointer;
}



/** FONTS **/

@font-face {
	font-family: "Quicksand";
	src: url("../fonts/Quicksand-Regular.ttf");
}

@font-face {
	font-family: "Quicksand Bold";
	src: url("../fonts/Quicksand-Medium.ttf");
}



/** ANIMATION **/

@keyframes slideUp {

    from { bottom: -50px }
    to { bottom: 5px }
    
}

@keyframes firework {

    from { top: 500%; width: 5%; height: 5%; }
    to { top: 10%; width: 100%; height: 100%; }

}



/** Layout **/

.hcentered {
    margin-left: 50%;
	transform: translateX(-50%);
}

.centered {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.center {
    text-align: center !important;
}



/** Classes **/

.MainWindow {
    height: 95%;
    background-color: #b9d1f3;
    border-radius: 50px;
}

.TextWindow {
    width: 100%;
    padding: 1% 0 1% 0;
}

.TextBalloon {
    width: 90%;
}

.TextBalloon p {
    position: relative;
    width: 90%;
    padding: 5%;
    background: #fff;
    border-radius: 40px;
    text-align: left;
    font-family: "Quicksand", "Bahnschrift", sans-serif;
    font-weight: bold;
    font-size: 36px;
    word-spacing: -3px;
}

.TextBalloon p span {
    position: relative;
    display: block;
    width: 70%;
    z-index: 1;
}

.TextBalloon p b {
    font-family: "Quicksand Bold", "Quicksand", "Bahnschrift", sans-serif;
}

.TextBalloon h2 {
    position: relative;
    width: 90%;
    padding: 5%;
    background: #0F3A7C;
    border-radius: 40px;
    text-align: center;
    font-family: "Quicksand Bold", "Quicksand", "Bahnschrift", sans-serif;
    font-size: 48px;
    text-transform: uppercase;
    color: #fff;
}

.Animate {
    animation: 0.5s ease slideUp;
}

.AvatarImage {
    position: absolute;
    bottom: -20px;
    right: -65px;
    height: 200%;
    z-index: 0;
}

.Input {
    position: relative;
    width: 5%;
    margin: 0 1% 0 1%;
    padding: 5%;
    background: #fff;
    border-radius: 40px;
    border: 5px solid #0F3A7C;
    text-align: center;
    font-family: "Quicksand", "Bahnschrift", sans-serif;
    font-weight: bold;
    font-size: 36px;
    word-spacing: -3px;
}

.CorrectAnswer {
    background: #009250 !important;
    border: 5px solid #009250 !important;
    color: #fff !important;
}

.Button {
    background: #0F3A7C !important;
    border: none !important;
    color: #fff !important;
}

.ThankMessage {
    position: absolute;
    width: 100%;
    bottom: 1%;
    background: #0F3A7C;
    padding: 3% 0 3% 0;
    font-family: "Quicksand", "Bahnschrift", sans-serif;
    font-weight: bold;
    font-size: 36px;
    word-spacing: -3px;
    color: #fff;
    visibility: hidden;
}

.Visible {
    visibility: visible !important;
}

.Flags {
	transform: translateY(10%);
}

.Flags img {
    width: 300px;
    height: 180px;
    padding-bottom: 10%;
}




/** Laptop / PC resolutions **/

@media screen and (min-width: 1024px) {

    .TextBalloon p {
        padding: 1.5%;
        border-radius: 30px;
        font-size: 18px;
    }

    .TextBalloon p span {
        width: 80%;
    }

    .Input {
        width: 3%;
        padding: 2%;
        border-radius: 30px;
    }

    .ThankMessage {
        top: 5%;
        height: 10%;
        font-size: 30px;
    }

    .MainWindow {
        overflow-x: hidden;
        overflow-y: auto;
    }

}