/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
    background-color: #F8F5F4;
    background-image: url("img/bg-white.jpg");
    font-family: 'Comic Neue', arial, sans-serif;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    z-index: 1;
}
img {
    -o-user-select: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
#wrapper {
    display: none;
    width: 100%;
}
.highlighter_focus_in {
    -webkit-box-shadow: 0px 0px 44px 0px rgba(238, 255, 0, 1);
    -moz-box-shadow: 0px 0px 44px 0px rgba(238, 255, 0, 1);
    box-shadow: 0px 0px 20px 10px rgba(238, 255, 0, .5), inset 0px 0px 20px 10px rgba(238, 255, 0, .5);
    ;
}
.highlighter_focus_out {
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}
.bgBook {
    position: fixed;
    bottom: 0px;
    left: 0px;
    width: 30%;
    height: auto;
    z-index: -100;
}
.bgBook img {
    width: 100%;
    height: auto;
    z-index: -99;
}
.clearBoth {
    clear: both;
}
.w50 {
    width: 50%;
}
.fLeft {
    float: left;
}
#win {
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    height: 100%;
    z-index: 5000;
}
#win img {
    position: fixed;
    top: 50%;
    left: 50%;
    /* bring your own prefixes */
    transform: translate(-50%, -50%);
    width: 20%;
    height: auto;
}
h1 {
    font-size: 48px;
    padding: 10px 25px 10px 25px;
    text-shadow: 3px 3px 2px rgba(0, 0, 0, 0.13);
    color: white;
    font-family: 'riffic-bold';
}
h2 {
    font-family: 'riffic-bold';
    font-size: 2em;
}
.orange {
		color: #cb6e00;
}
.word {
    font-size: 3em;
    font-family: 'riffic-bold';
    margin: 50px 0px 50px 0px;
}
.orange {
    color: #e18f00;
}
.blue {
    color: #1179d1;
}
p {
    font-size: 24px;
    line-height: 36px;
    margin: 25px;
}
strong {
    font-weight: bold;
}
#nav {
    background-color: #0766bf;
    font-family: 'riffic-bold';
    padding: 10px;
    background-image: url("img/bgtile.jpg");
}
#subnav {
    background-color: #1179d1;
    font-family: 'riffic-bold';
    padding: 10px 0px 7px 0px;
    color: #FFFFFF;
    font-size: 22px;
}
#subnav a {
    color: #ffffff;
    text-decoration: none;
    text-shadow: 3px 3px 2px rgba(0, 0, 0, 0.13);
}
#subnav a:hover {
    color: #ffc000;
}
#subnav li {
    float: left;
    margin: 0px 20px 0px 0px;
}
#subnav img {
    width: 22px;
    margin: 0px 0px 0px 10px;
}
#exName {
    background-color: #e18f00;
    font-family: 'riffic-bold';
    padding: 10px;
    color: #FFFFFF;
    font-size: 22px;
    text-shadow: 3px 3px 2px rgba(0, 0, 0, 0.13);
}
#logoHome {
    color: white;
    font-weight: 700;
    font-size: 88px;
    text-shadow: 3px 3px 2px rgba(0, 0, 0, 0.13);
    margin: 20px auto 20px auto;
    text-align: center;
}
#logoHome a {
    color: #FFFFFF;
    text-decoration: none;
}
#logoHome span {
    margin: 0px;
}
#logo {
    color: white;
    font-weight: 700;
    font-size: 28px;
    text-shadow: 3px 3px 2px rgba(0, 0, 0, 0.13);
}
#logo a {
    color: #FFFFFF;
    text-decoration: none;
}
.yellow {
    background-color: #ffffba !important;
}
#t {
    text-align: center;
    margin: 20px;
    font-size: 20px;
}
.glow {
    animation: glow 1s infinite alternate;
}
@keyframes glow {
    from {
        box-shadow: 0 0 20px -20px #F3F200;
    }
    to {
        box-shadow: 0 0 20px 20px #F3F200;
    }
}
.alertBox {
    /*
    text-align: center;
    background-color: #44c767;
    -moz-border-radius: 28px;
    -webkit-border-radius: 28px;
    border-radius: 28px;
    border: 1px solid #18ab29;
    display: inline-block;
    cursor: pointer;
    color: #ffffff;
    font-size: 20px;
    padding: 10px 15px;
    text-decoration: none;
    text-shadow: 0px 1px 0px #2f6627;
    width: auto;*/
}
.games {
    width: 40%;
    display: inline-block;
    margin: 20px auto 50px auto;
}
.games h2 {
    margin-bottom: 20px;
}
.endText a {
    font-weight: bold;
    text-decoration: none;
    color: #e18f00;
}
.endText img {
    width: 80px;
    height: auto;
    margin: 20px 0px 0px 0px;
}
.gameButton {
    box-shadow: 3px 4px 0px 0px #1564ad;
    background: linear-gradient(to bottom, #79bbff 5%, #378de5 100%);
    background-color: #79bbff;
    border-radius: 10px;
    border: 1px solid #337bc4;
    /*display:inline-block;*/
    cursor: pointer;
    color: #ffffff;
    font-size: 24px;
    font-weight: normal;
    text-decoration: none;
    width: 90%;
    margin: 0px auto 10px auto;
    text-align: center;
    text-shadow: 2px 1px 0px rgba(0, 0, 0, 0.36);
}
.gameButton:hover {
    background: linear-gradient(to bottom, #378de5 5%, #79bbff 100%);
    background-color: #378de5;
}
.gameButton:active {
    position: relative;
    top: 1px;
}
.gameButton a {
    color: #FFFFFF;
    text-decoration: none;
    display: block;
    padding: 10px 0px 10px 0px;
}
.container {
    text-align: center;
    margin: 20px;
}
.container h1 {
    text-shadow: none;
    color: #0766bf;
}
.container h2 {
    text-shadow: none;
    color: #d00e04;
    font-size: 38px;
}
.containerBox {
    text-align: center;
    margin: 0px;
    padding: 20px 0px 20px 0px;
}
.wideBox {
    max-width: 1200px;
    margin: 0px auto 0px auto;
}
.buttons {
    text-align: center;
    vertical-align: middle;
    line-height: 34px;
    margin: 20px;
}
.buttonDiv {
    display: inline-block;
    font-size: 20px;
}
/* The switch - the box around the slider */
.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 30px;
    margin: 0px 10px 0px 10px;
}
/* Hide default HTML checkbox */
.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}
/* The slider */
.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: .4s;
    transition: .4s;
}
.slider:before {
    position: absolute;
    content: "";
    height: 22px;
    width: 22px;
    left: 7px;
    bottom: 4px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}
input:checked + .slider {
    background-color: #ffb3ba;
}
input:focus + .slider {
    box-shadow: 0 0 1px #ffb3ba;
}
input:checked + .slider:before {
    -webkit-transform: translateX(26px);
    -ms-transform: translateX(26px);
    transform: translateX(26px);
}
/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}
.slider.round:before {
    border-radius: 50%;
}
.levels {
    text-align: center;
}
.levels a {
    color: white;
    text-decoration: none;
}
.levelButton {
    box-shadow: 0px 0px 10px 1px #9fb4f2;
    background: linear-gradient(to bottom, #7892c2 5%, #476e9e 100%);
    background-color: #7892c2;
    border-radius: 10px;
    border: 1px solid #4e6096;
    display: inline-block;
    cursor: pointer;
    color: #ffffff;
    font-size: 19px;
    padding: 12px 37px;
    text-decoration: none;
    text-shadow: 0px 1px 0px #283966;
    font-weight: 700;
    margin: 20px;
}
.levelButton:hover {
    background: linear-gradient(to bottom, #476e9e 5%, #7892c2 100%);
    background-color: #476e9e;
}
.levelButton:active {
    position: relative;
    top: 1px;
}
/*
.gwirio {
    background-color: #333333;
    padding: 20px;
    margin: 10px auto;
    width: 200px;
    text-align: center;
    color: #FFFFFF;
}
*/
.gwirio {
    box-shadow: 0px 10px 14px -7px #276873;
    background: linear-gradient(to bottom, #599bb3 5%, #408c99 100%);
    background-color: #599bb3;
    border-radius: 8px;
    /*display:inline-block;*/
    cursor: pointer;
    color: #ffffff;
    font-size: 24px;
    font-weight: bold;
    padding: 13px 32px;
    text-decoration: none;
    text-shadow: 0px 1px 0px #3d768a;
    margin: 10px auto;
    width: 100px;
    text-align: center;
}
.gwirio:hover {
    background: linear-gradient(to bottom, #408c99 5%, #599bb3 100%);
    background-color: #408c99;
}
.gwirio:active {
    position: relative;
    top: 1px;
}
.speechContainer {
    max-width: 60%;
    margin: 20px auto;
    display: table;
}
.speechContainer img {
    /*float: right;*/
}
.vMiddle {
    /* float: left;*/
    display: table-cell;
    vertical-align: middle;
}
.bubble {
    position: relative;
    display: inline-block;
    max-width: 100%;
    min-height: 1.5em;
    padding: 20px;
    background: #FFFFFF;
    border: #7F7F7F solid 4px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    /*float: left;*/
}
.bubble p {
    margin: 0px;
    font-size: 20px;
}
.bubble:after {
    content: '';
    border: 20px solid transparent;
    border-right-color: #7F7F7F;
    border-left: 0;
    position: absolute;
    left: -20px;
    top: 50%;
    margin-top: -20px;
}
.bubbleright {
    position: relative;
    display: inline-block;
    max-width: 100%;
    min-height: 1.5em;
    padding: 20px;
    background: #FFFFFF;
    border: #7F7F7F solid 4px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    border-radius: 20px;
    /*float: left;*/
}
.bubbleright p {
    margin: 0px;
    font-size: 20px;
}
.bubbleright:after {
    content: '';
    border: 20px solid transparent;
    border-left-color: #7F7F7F;
    border-right: 0;
    position: absolute;
    right: -20px;
    top: 50%;
    margin-top: -20px;
}
#introBox {
    margin: 0px auto 0px auto !important;
    width: 40%;
}
.intropara {
    width: 30%;
    margin: 30px auto;
}
canvas {
    position: fixed;
    top: 0px;
    left: 0px;
    pointer-events: none;
    overflow: hidden;
}

.instructions {
	width: 100%;
	position: relative;
	margin: -20% 0 0 5px;
	z-index: 100;
	text-align: center;
}

.soundOff {display: none;}

.instructions img {width: 40%; height: auto; margin: 0 auto; cursor: pointer; }

.speechImg {position: relative; z-index: 0}


@media only screen and (max-width: 768px) {
    .speechContainer {
        max-width: 90%;
    }
    .flower {
        width: 60% !important;
    }
    .intropara {
        width: 70%;
    }
}
@media only screen and (max-width: 480px) {
    #logoHome h1 span {
        font-size: 50px !important;
        text-shadow: 0 1px 0 #ccc, 0 2px 0 #ccc, 0 3px 0 #ccc, 0 4px 0 #ccc, 0 5px 0 #ccc, 0 6px 0 transparent, 0 7px 0 transparent, 0 8px 0 transparent, 0 9px 0 transparent, 0 10px 10px rgba(0, 0, 0, 0.4) !important;
    }
    #introBox {
        width: 70%;
    }
	.container{
		margin:10px;
	}	
	.container h1{
		font-size: 36px;
		padding: 20px;
	}
	.speechContainer .w25{
		width: 25%;
		
	}
	.speechContainer .w75{
		width: 75%;
		
	}
	.speechContainer img {
		/*width:100%;*/
		height: auto;
	}
	
	.alertBox {margin: 150px 0px 0px 0px;}
	
	.word {margin:40px 0px;}
	
	.bubble, .bubbleright {padding: 10px;}
	
	.bubble p, .bubbleright p {font-size: 1em;}
    .games {
        width: 100%;
        margin: 0px 0px 20px 0px;
    }
    .intropara {
        width: 90%;
    }
	
	.col4 {width: 20% !important;}
	.piece {width: 100% !important;}
	.piece img{width: 100% !important; height: auto;}
	.empty {width:100% !important;}
	
	
}


#warning-message { 
	display: none; 
	background-color: #0766bf;
	width: 100%;
	height: 100%;
	min-height: 100vh;
	min-width: 100vw;
	position: absolute;
	top: 0;
	left: 0;
	
}

 @media only screen and (max-width: 480px){
        #wrapper { display:none !important; }
    #warning-message { display:block; }
	 
	 #warning-message img{
		  position:relative;
		  width: 80%;
		  height: auto;
		  top:50%;
		  left:50%;
		  transform:translate(-50%, -50%);
	 } 
  }
 @media only screen and (orientation:landscape){
        #warning-message { display:none; }
  }