body {
   margin: 0;
   padding: 0;

   font: normal 14px/22px Palatino,Palatino Linotype,serif;
   
   color: #444;
   background-color: #fff;
}



form  { margin: 0; }
p     { margin: 1em 0; }
td    { vertical-align: top; }
a img { border: 0; }
a:focus { outline-style: none; }

input, textarea {
   padding: 2px 0.5em;

   color: #444;
   background-color: #fff;
   border: 1px solid #555;
}

input:focus, textarea:focus {
   background-color: #f1faff;
}

input[type=button], input[type=submit] {
   color: #fff;
   background-color: #0095d3;
}


/***************************************
 * Elements
 */

a {
   color: #0095d3;
   
   text-decoration: underline;
}

a:hover, a.on {
   color: #f79b27;
}


h1 {
   margin: 1em 0;

   font: bold 24px/20px Verdana,sans-serif;

   color: #f79b27;
}

h2, h3 {
   margin: 1em 0;

   font: bold 14px/20px Verdana,sans-serif;
}

h4 {
   margin: 1em 0;

   font: bold 13px/15px Verdana,sans-serif;
}




/***************************************
 * Structural
 */

#b_anchor {
   width: 908px;
   margin: 0 auto;
   padding: 15px 42px;

   background: url('img/a_bg.jpg') no-repeat;
}

#b_head {
   position: relative;
   height: 131px;

   font: normal 12px/8px Verdana,sans-serif;
   text-align:right;

   color: #005478;

   z-index: 1000;
}

#b_head .logo {
   position: absolute;

   left: 0;
   top: 10px;
}

#b_head a {
   color: inherit;
}

#b_head a:hover, #b_head a.on {
   color: #f79b27;
}

#b_head ul.nav {
   float: right;

   margin: 4.5em 0 0 0;
   padding: 0;

   font: normal 14px/8px Verdana,sans-serif;

   list-style: none;
}

#b_head ul.nav li {
   position: relative;
   float: left;

   text-align: left;

   z-index: 1000;
}

#b_head ul.nav a {
   padding: 0 11px;
   text-decoration: none;
}


#b_head div.subnav {
   position: relative;
   margin: 1px 1px 0 1px;
   padding: 10px 0;

   border: 0;

   z-index: 1000;
}

#b_head div.subnav.on {
   margin: 0;

   background-color: #fff;
   border: 1px solid #005478;
   border-bottom: 0;
}

#b_head div.subnav.on > a {
   color: #f79b27;
}

#b_head ul.subnav {
   display: none;
   position: absolute;
   left: 0;
   top: 18px;

   margin: 10px -1px 0 -1px;
   padding: 1em 0;

   font: normal 10.5px/12px Verdana,sans-serif;

   background-color: #fff;
   border: 1px solid #005478;
   border-top: 0;

   z-index: 1000;
}

#b_head ul.subnav li {
   float: none;
   display: block;

   margin: 3px 0;
}

#b_head ul.subnav a {
   display: block;

   padding: 3px 14px 5px 14px;
}

#b_head ul.subnav a:hover {
   color: inherit;
   background-color: #e7f7ff;
}





#b_ctr {
   clear: both;
   margin-top: 55px;
}

#b_feature {
   float: right;

   width: 297px;
   margin-top: 1em;
   margin-left: 9px;
}

#b_content {
   float: left;
   width: 908px;
}

#b_content.cells {
   width: 586px;
}

#b_foot {
   clear: both;

   margin-top: 1.5em;
   padding-bottom: 4em;

   border-top: 1px solid #005478;
}

#b_foot ul.nav {
   float: left;
   margin: 1em 0;
   padding: 0;

   font: bold 12px/14px Palatino,Palatino Linotype,serif;
   color :#4c4c4c;

   list-style: none;
}

#b_foot ul.nav li {
   display: inline;
   padding: 0 0.5em;

   border-left: 1px solid #4c4c4c;
}

#b_foot ul.nav li.first-of-type {
   padding-left: 0;
   border-left: 0;
}

#b_foot ul.nav a {
   text-decoration: none;

   color: #4c4c4c;
}




/**************************************
 * Feature Elements
 */

.f_col_ctr {
   clear: both;
}

.f_col_ctr .featurette {
   float: left;
}

.three_col .featurette {
   margin-left: 8px;
}

.two_col .featurette {
   width: 49.5%;
   margin-left: 1%;
}

.f_col_ctr .first-of-type {
   margin-left: 0;
}

.featurette {
   position: relative;
   margin-bottom: 1em;
}

.f_pad {
   padding: 0.5em 1.2em;
}

.feature {
   color: #4c4c4c;
   background-color: #ebebeb;
}

ul.feature_list {
   margin: 0;
   padding: 0.8em 1.4em;

   list-style: none;

   color: #4c4c4c;
   border: 1px solid #005478;
}

ul.feature_list li {
   display: block;
   margin: 1em 0;
}

ul.feature_list h3 {
   display: inline;

   margin: 0;

   color: inherit;
}


.teaser {
   border: 1px solid #005478;
}

.teaser img {
   border-bottom: 1px solid #005478;
}

.teaser h3 {
   margin: 0.4em 0.5em 0.6em 0.5em;

   font: bold 24px/20px Verdana,sans-serif;
   text-transform: uppercase;

   color: #0095d3;
}

.teaser h3 span.small {
   display: block;

   font-size: 12px;
   line-height: 16px;
}

.teaser h3 a {
   text-decoration: none;
}


.testimonial {
   color: #4c4c4c;
   background-color: #ebebeb;
}

.testimonial .from {
   font-weight: bold;

   color: #0095d3;
}


.copyright {
   float: left; 
   margin-left: 1em;

   font: normal 12px/14px Palatino,Palatino Linotype,serif;

   color: #4c4c4c;
}

.copyright a {
   text-decoration: none;

   color: #4c4c4c;
}





/**
 *  
 */

a.btn {
   padding: 4px 0.75em;

   font-family: Verdana,sans-serif;
   text-transform: uppercase;
   text-decoration: none;

   color: #fff;
   background-color: #0095d3;
   border: 1px solid #555;

   cursor: pointer;
}





/** 
 * Games
 */

.game h2 {
   font: normal 34px/42px Verdana,sans-serif;

   color: #0095d3;
}

.game h3 {
   font: bold 20px/30px Verdana,sans-serif;
   text-transform: uppercase;

   color: #0095d3;
}

.game .bordered h3 {
   color: #fff;
}

.game .score .totals {
   font-size: 1.2em;
   font-weight: bold;

   color: #f79b27;
}

.game {
   position: relative;

   width: 582px;
   height: 332px;
   margin: 1em 0;
}

.game .timer {
   position: absolute;

   font: bold 66px Arial,sans-serif;

   top: 40%;
   right: 45px;

   color: #0094d3;

   z-index: 2;
}

.game .area {
   display: none;
   position: relative;

   width: 582px;
   height: 332px;

   background-color: #ebebeb;
   border: 1px solid #005478;
}

.game .introduction {
   display: block;
}

.game .inner {
   width: 375px;
   height: 303px;
   margin: 12px;
}

.game .inner.bordered {
   font: normal 20px/30px Verdana,sans-serif;

   color: #fff;
   background-color: #ababab;
   border: 1px solid #759fb1;
}

.game input.word {
   position: absolute;
   right: 1em;
   bottom: 2em;

   width: 150px;

   font-size: 1.2em;
   
   border: 1px solid #333;
}

.game .begin, .game .ready, .game .next {
   cursor: pointer;
   clear: left;
}

.game .ready {
   position: absolute;

   top: 45%;
   right: 35px;
}

.game .next {
   position: absolute;

   bottom: 1em;
   right: 35px;
}

.picture_game .challenge_area {
   text-align: center;
}

.picture_game ul.answers {
   margin: 0;
   padding: 0;
   list-style: none;
}

.word_game ul.list {
   margin: 0;
   padding: 0;

   font-size: 1.2em;
   
   list-style: none;
}

.word_game ul.list li {
   float: left;
   display: block;
   position: relative;

   padding: 0.5em 1.0em;
}

.word_game ul.list li.incorrect {
   color: #999;
}


table.styled {
   width: 100%;
   
   border: 0;
   background-color: #005478;
}

table.styled th {
   padding: 0.25em 1em;

   font: bold 14px/16px Verdana,sans-serif;
   vertical-align: middle;

   color: #fff;
   background-color: #005478;
}

table.styled td {
   padding: 0.5em 1em;
   background-color: #fff;
}

table.styled td > ul {
   margin: 1em 0;
   padding: 0 0 0 1.5em;
}


/** 
 * Misc
 */
.nobr {
   white-space: nowrap;
}

.huge { font-size: 1.5em; }
.large { font-size: 1.2em; }
.small { font-size: 0.75em; }
.tiny { font-size: 0.5em; }

.left       { float: left; }
.right      { float: right; }
.left_pad   { float: left; margin: 0 1em 1em 0; }
.right_pad  { float: right; margin: 0 0 1em 1em; }
.clear      { clear: both; }

.nm         { margin: 0 !important; }
.ntm        { margin-top: 0 !important; }
.nbm        { margin-bottom: 0 !important; }

img.bordered   { border: 1px solid #fff; }
.upper         { text-transform: uppercase; }
.lower         { text-transform: lowercase; }

.j_centre   { text-align: center; }
.j_right    { text-align: right; }
.j_left     { text-align: left; }

.white      { color: #fff; }
.bold       { font-weight: bold; }
.italic     { font-style: italic; }


.flash_message_info {
   padding: 1em;
   margin: 1em 0;

   text-align: center;

   color: #444;
   background-color: #ffb;
   border: 1px solid #000;
}

.flash_message_error {
   padding: 1em;
   margin: 1em 0;

   text-align: center;

   color: #444;
   background-color: #fbb;
   border: 1px solid #000;
}

.v_msg {
   float: right;
}



#assessment label {
   margin: 0.25em 0;

   font: normal 14px/22px Verdana,sans-serif;

   color: #444;
}

#task_list {
   margin: 0;
   padding: 0;

   list-style: none;
}

#task_list li {
   float: left;
   width: 33%;
}

#star_effort img {
   padding-right: 0.3em;
   cursor: pointer;
}

#star_effort span {
   padding: 0 0.5em;

   font: bold 14px/16px Arial,sans-serif;

   color: #444;

   cursor: pointer;
}

#star_effort span.on {
   color: #f79b27;
}

ul.checklist {
   margin: 0;
   padding: 0 0 0 1em;

   list-style: none;
}

ul.checklist li {
   position: relative;
}

ul.checklist li input {
   position: absolute;
   left: -2em;
}

