/* HTML5 ✰ Boilerplate
 * ==|== normalize ==========================================================
 */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

html { font-size: 100%; overflow-y: scroll; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { margin: 0; font-size: 13px; line-height: 1.231; }
body, button, input, select, textarea { font-family: sans-serif; color: #222; }

::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }
::selection { background: #fe57a1; color: #fff; text-shadow: none; }

a { color: #00e; }
a:visited { color: #551a8b; }
a:hover { color: #06e; }
a:focus { outline: thin dotted; }
a:hover, a:active { outline: 0; }

abbr[title] { border-bottom: 1px dotted; }
b, strong { font-weight: bold; }
blockquote { margin: 1em 40px; }
dfn { font-style: italic; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }
ins { background: #ff9; color: #000; text-decoration: none; }
mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }
pre, code, kbd, samp { font-family: monospace, monospace; _font-family: 'courier new', monospace; font-size: 1em; }
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }
q { quotes: none; }
q:before, q:after { content: ""; content: none; }
small { font-size: 85%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }
ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }
img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }
svg:not(:root) { overflow: hidden; }
figure { margin: 0; }

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }
label { cursor: pointer; }
legend { border: 0; *margin-left: -7px; padding: 0; }
button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }
button, input { line-height: normal; *overflow: visible; }
table button, table input { *overflow: auto; }
button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"], input[type="radio"] { box-sizing: border-box; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }
button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top; resize: vertical; }
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }


/* ==|== primary styles =====================================================
   Author: 
   ========================================================================== */

	body {
			background-color:#f3f2dc;
			background-image:url('../img/bg.jpg');
			background-repeat:no-repeat;
			background-position:top center;
			font-family: 'Questrial', sans-serif;
			color: #f3f2dc;
	}

	header {
	}


#container {

}

#inner {
	min-width:880px;
	margin-left: auto;
	margin-right: auto;
}


	#top-social {
		padding: 10px 10px 0 10px;
	}

	#navigation {
		background: url(../img/dark.png);
		width: 100%;
		height: 60px;
	}

	#logo {
		margin-top:6px;
		margin-left: 40px;
	}

	#nav {
		float: right;
		margin: 0 180px 0 0;
	}

	#nav>li {
		float: left;
		margin: 15px 8px;
		padding: 0;
		list-style: none;
		text-align: center;
	}

	#nav>li:last-child {
		margin-right: 0;
	}

	#nav>li a {
		display: block;
		padding: 6px 5px 5px 5px;
		font-family: 'Questrial', sans-serif;
		font-size: 16px;
		text-transform: uppercase;
		text-decoration: none;
		color: #f3f2dc !important;
	}

	#nav>li a:hover {
		color: #d95225 !important;
		cursor: pointer;
	}


	.dropdown ul {
		display: none;
		position: absolute;
		margin: 0;
		padding: 15px 0 10px;	
	}


	.dropdown li {
		text-align: left;
		list-style: none;
		background: url(../img/dark.png);		
	}

	.dropdown li {
		
	}

	#nav-languages ul {
		right: 560px;	
		width: 190px;
	}

	#nav-lessons ul {
		right: 395px;	
		width: 250px;
	}

	.logged-in #nav-languages ul {
		right: 435px;
	}

	.logged-in #nav-lessons ul {
		right: 435px;
	}

	#nav-languages li a, #nav-lessons li a {
		padding: 15px 10px 12px 45px;
		color: #f3f2dc;
	}

	#nav-languages:hover ul, #nav-lessons:hover ul {
		display: block;
	}

	#nav-account ul {
		right: 110px;
		width: 220px;
	}

	#nav-account li a {
		padding: 15px 10px 15px 45px;
		color: #f3f2dc;
	}

	#nav-account:hover ul {
		display: block;
	}

	#nav-languages .german a, #nav-lessons .german a {
		background: url(../img/icon-lesson.png) 15px 50% no-repeat;
	}

	#nav-languages .french a, #nav-lessons .french a {
		background: url(../img/icon-lesson.png) 15px 50% no-repeat;
	}

	#nav-languages .italian a, #nav-lessons .italian a {
		background: url(../img/icon-lesson.png) 15px 50% no-repeat;
	}

	#nav-languages .spanish a, #nav-lessons .spanish a {
		background: url(../img/icon-lesson.png) 15px 50% no-repeat;
	}

	#nav-account .log-out a {
		background: url(../img/icon-exit.png) 13px 50% no-repeat;
	}

	#nav-account .change-password a {
		background: url(../img/icon-settings.png) 13px 50% no-repeat;
	}
	.sign-up a{
	  background: #50829e;
	  -moz-border-radius: 4px;
	  -webkit-border-radius: 4px;
	  border-radius: 3px;
	  text-shadow: rgba(0, 0, 0, 0.3) 0px -1px 0px;
	}

	.sign-up a:hover {
	  background: #f3f2dc;
	  text-shadow: rgba(255, 255, 255, 0.9) 0px 1px 0px; 
	}

	#lesson-pane {
		background-image:url('../img/language-board.png');
		background-repeat:no-repeat;
		background-position:top center;

	}
	
	#board {
		position: relative;
		margin-left: 100px;
		margin-right: 200px;
		width: 400px;
	}

	.grid_left { 
		width:20px; 
	}
	.grid_right { 
		width:190px; 
	}
	
	.grid_entry, .grid_board {
		width:640px; 
		
	}
	
	.grid_board {

	}

	.grid_nav { 
		width:880px; 
	}

	.grid_board h1 {
		font-size:28px;
		color: #f3f2dc;
		text-align: center;
		padding-top: 30px;
	}

	.grid_board p {
			text-align: center;
			color: #f3f2dc;
	}
	
	.center {
		text-align: center;
	}
	
	.grid_board .subhead {
		font-size:18px;
		color: #f3f2dc;
	}
	
	.grid_board .cta {
		padding-left:5px;
		font-size:18px;
		color: #f3f2dc;
	}
	
	.grid_entry {
		text-align:center;
	}
	
	.column {
		margin: 0 5px;
		overflow: hidden;
		float: left;
		display: inline;
	}
	.row {
		width: 880px;
		margin: 0 auto;
		overflow: hidden;
	}
	.row .row {
		margin: 0 -10px;
		width: auto;
		display: inline-block;
	}
	
	.chalkboard {
			margin-top: 15px;
			padding-top: 15px;
			background-image:url('../img/language-board.png');
			background-repeat:no-repeat;
			background-position:top center;
			height: 600px;
	}
	
	#chalkboard-row {
		height:400px;
	}

	.points {
		margin-left: 25px;
		position:relative;
		width:100%;
		overflow:hidden;
		margin-bottom:15px;
		line-height: 34px;
		font-size: 18px;
	}

	.points ul, .points ul li {
		position:relative;
		margin:0;
		padding:0;
		list-style:none;
	}

	.black-check ul li {
		color: #f3f2dc;
		padding-left:40px;
		background:url('../img/check.png') 3px 0px no-repeat;
	}

	.arrow ul li {
		color: #333333;
		padding-left:40px;
	}

	.white-check ul li {
		color: #333333;
		padding-left:40px;
		background:url('../img/check-white.png') 3px 0px no-repeat;
	}

	.green-arrow {
		background:url('../img/arrow.png') 3px 0px no-repeat;
	}
	
	.blue-arrow {
		background:url('../img/arrow-blue.png') 3px 0px no-repeat;
	}

	#footer {
		color:#333333;
		padding: 10px 10px 10px 10px;
		font-size: 12px;
		margin: 0 auto 24px auto;
		border-top: #ccc solid 1px;
		}

	#footer p {
		margin: 0;
		}

	a.twitter {
		background: url(../img/twitter_icon.png) left no-repeat;
		padding: 6px 0 6px 28px;
		margin: 0 0 12px 0;
		line-height: 30px;
		}
	a.facebook {
		background: url(../img/facebook_icon.png) left no-repeat;
		padding: 6px 0 6px 28px;
		margin: 0 0 12px 0;
		line-height: 30px;
		}
	a.stumble {
		background: url(../img/stumble_icon.png) left no-repeat;
		padding: 6px 0 6px 28px;
		margin: 0 0 12px 0;
		line-height: 30px;
		}
	a.link {
		background: url(../img/link_icon.png) left no-repeat;
		padding: 6px 0 6px 28px;
		margin: 0 0 12px 0;
		line-height: 30px;
		}
	
	/* REQUIRED BUTTON STYLES: */		
	button { 
		position: relative;
		border: 0; 
		padding: 0;
		cursor: pointer;
		overflow: visible; /* removes extra side padding in IE */
	}

	button::-moz-focus-inner {
		border: none;  /* overrides extra padding in Firefox */
	}

	button span { 
		position: relative;
		display: block; 
		white-space: nowrap;	
	}
	
	.alert {
		background: #fff6bf url('../img/exclamation.png') center no-repeat;
		background-position: 15px 50%; 
		text-align: left;
		padding: 5px 20px 5px 45px;
		border-top: 2px solid #ffd324;
		border-bottom: 2px solid #ffd324;
		}

	.alert a {
		color: #ffd324;
		}

	.info {
		background: #F8FAFC url('../img/information.png') center no-repeat;
		background-position: 15px 50%;
		text-align: left;
		padding: 5px 20px 5px 45px;
		border-top: 2px solid #B5D4FE;
		border-bottom: 2px solid #B5D4FE;
		}

	.info a {
		color: #B5D4FE;
		}

	.error {
		margin-top:10px;
		background: #FFBFBF url('../img/error.png') center no-repeat;
		background-position: 15px 50%;
		text-align: left;
		padding: 5px 20px 5px 45px;
		color: #FF2424 !important;
		border-top: 2px solid #FF2424;
		border-bottom: 2px solid #FF2424;
		}
	
	.error a {
		color: #FF2424;
		}
		
	.oops {
		color: #FF2424 !important;
		}

	.red, .red a {
			text-decoration: underline;
		}


#fb {
	padding-left:25px;
	height: 240px;
	width: 450px;
	margin: auto;
}

.score-red {
	color:#FF0000!important;
}

.score-green {
	color:#4CC417!important;
}

#welcome-row h1, #welcome-row h2, #content-row h1 {
	color: #333333;
	text-align: center;
}

#welcome-row {
	margin-bottom: 20px;
}

	/* ----------- My Form ----------- */
	.myform{
	margin:0 auto;
	width:400px;
	padding:14px;
	}

	/* ----------- stylized ----------- */

	#stylized label{
	display:block;
	font-weight:bold;
	text-align:right;
	width:140px;
	float:left;
	color: #f3f2dc;
	}
	#stylized .small{
	display:block;
	font-size:11px;
	font-weight:normal;
	text-align:right;
	width:140px;
	}
	#stylized input{
	float:left;
	font-size:12px;
	padding:4px 2px;
	border:solid 1px #50829e;
	width:200px;
	margin:2px 0 20px 10px;
	}

	@media screen and (-webkit-min-device-pixel-ratio:0) {
		/* Safari and Google Chrome only - fix margins */
		button span {
			margin-top: -1px;
		}
	}


	/* OPTIONAL BUTTON STYLES for applying custom look and feel: */		
	button.submitBtn { 
		padding: 0 15px 0 0; 
		margin-right:5px; 
		font-size:22px; 
		text-align: center; 
		background: transparent url(../img/button-image.gif) no-repeat right -140px; 
	}

	button.submitBtn span {
		padding: 12px 0 3px 15px; 
		height:35px; 
		background: transparent url(../img/button-image.gif) no-repeat left top; 
		color:#1d1d1b; 
	}

	button.submitBtn:hover, button.submitBtnHover { /* the redundant class is used to apply the hover state with a script */
		background-position: right -210px; 
	}

	button.submitBtn:hover span, button.submitBtnHover span {
		background-position: 0 -70px;
	}
	
	#board-image {
		margin-top:10px;
		background-image:url('/img/lesson-images/hello.gif');
		min-height: 300px;
	}
	#lesson-text {
		font-size: 18px;
	}
	.yellow {
		color: #FDFA16;
	}
	.pink, .pink a {
		color: #FF0066;
	}	
	
	.pink a {
		text-decoration: none;
	}
	
	.blue {
		color: #baddf6;
	}
	
	.dark-blue {
		color: #89b3d4;
	}
	
	.mainentry {
	background-color:#ffffff;
	border:2px solid #333333;
	margin: 40px 5px 5px 5px;
	width:450px;
	padding:5px;
	font-size:1.5em;
	}

	input.mainentry:focus, {
	border-color:#666;
	}
	
	#special-instructions {
		float:right;
		padding-right: 90px;
		color:#333333;
	}
	
	#character-code {
		padding-right: 15px;
	}
	
	.text-entry {
		min-height: 110px;
	}
	
#content-row {
	
}

#welcome-row {
	
}

#welcome-row img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
	
#top-arrows {
	height:8px;
	background:url(../img/arrow_up.png) top left repeat-x;
	margin: 0;
	padding: 0;
}

#bottom-arrows {
	height:8px;
	background:url(../img/arrow_down.png) top left repeat-x;
	margin: 0 0 25px 0;
	padding: 0;
}

#page-content {
	color:#222222;
	background:#FFFFFF;
	padding: 5px 15px 5px 15px;
	font-size: 16px;
}

#page-content h1 {
	text-align: center;
}

#page-content h2 {
	padding-top: 20px;
	text-align: center;
}

.breadcrumb{
font: bold;
color: #333333;
margin: 4px 0 0 0;
}

.breadcrumb a{
background: transparent url(../img/breadcrumb.png) no-repeat center right;
text-decoration: none;
padding-right: 18px; /*adjust bullet image padding*/
color: #990099;
}

.breadcrumb a:visited, .breadcrumb a:active{
color: #990099;
}

.breadcrumb a:hover{
text-decoration: underline;
}

.terms {
	padding-right: 25px;
}

.terms li {
	margin-left: 45px;
}

.terms-intro {
	padding: 0 40px 0 40px;
}

.lesson-list {
	border: 1px solid #5887a7;
	background-color: #baddf6;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 3px;
	color: #222222;
}
.lesson-list td, .lesson-list th {
	border-top-color: white;
	border-bottom: 1px solid #5887a7;
	color: #222222;
}
.lesson-list th {
	padding: 7px 7px 8px;
	text-align: left;
	line-height: 1.3em;
	font-size: 16px;
}
.lesson-list td {
	font-size: 14px;
	padding: 4px 7px 2px;
	vertical-align: top;
}
.lesson-list tr:hover {
background: #89b3d4;
}

#keyboard {
display:none;
margin-left: 125px;
}

/* ==|== non-semantic helper classes ======================================== */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; }
.ir br { display: none; }
.hidden { display: none Fimportant; visibility: hidden; }
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }
.invisible { visibility: hidden; }
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { zoom: 1; }


/* ==|== media queries ====================================================== */

@media only screen and (min-width: 480px) {


}

@media only screen and (max-width: 1100px) {
	
	#nav {
		margin: 0 40px 0 0;
	}

	#nav-languages ul {
		right: 425px;
	}
	
	#nav-lessons ul {
		right: 270px;
	}

	#nav-account ul {
		right: 10px;
	}

	.logged-in #nav-languages ul {
		right: 295px;
	}
	
	.logged-in #nav-lessons ul {
		right: 295px;
	}

}



/* ==|== print styles ======================================================= */
 
@media print {
  * { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } 
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; } 
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}

