/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 */

/* ==========================================================================
   Base styles: opinionated defaults
   ========================================================================== */

html,
button,
input,
select,
textarea {
    color: #222;
}

body {
    font-size: 1em;
    line-height: 1.4;
}

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection rule sets have to be separate.
 * Customize the background color to match your design.
 */

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

/*
 * A better looking default horizontal rule
 */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0;
}

/*
 * Remove the gap between images and the bottom of their containers: h5bp.com/i/440
 */

img {
    vertical-align: middle;
}

/*
 * Remove default fieldset styles.
 */

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

/*
 * Allow only vertical resizing of textareas.
 */

textarea {
    resize: vertical;
}

/* ==========================================================================
   Chrome Frame prompt
   ========================================================================== */

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

/* ==========================================================================
   Author's custom styles
   ========================================================================== */

@font-face {
  font-family: 'babe_bambooregular';
    src: url('babe_bamboo-webfont.eot');
    src: url('babe_bamboo-webfont.eot?#iefix') format('embedded-opentype'),
        url('babe_bamboo-webfont.woff') format('woff'),
        url('babe_bamboo-webfont.ttf') format('truetype'),
        url('babe_bamboo-webfont.svg#babe_bambooregular') format('svg');
  font-weight: normal;
  font-style: normal;
}

html, body,
#header, #header *,
#mst-footer,
.screen, .screen * {
  display:block;
  position:relative;
}

html {
  width:100%;
  height:100%;
  background:#ffffff;
}
body {
  width:100%;
  height:100%;
  font-family: Helvetica, Arial, sans-serif;
  font-size:17px;
  box-sizing:border-box; -moz-box-sizing:border-box; -webkit-box-sizing:border-box;
  padding: 0 0 45px;
  margin: 0 0 -45px 0;

}

#header {
  position:absolute;
  top:11.75%; left:0;
  width:100%;
  z-index:100;
}
#header h1 {
  left:24.62%;
  width:464px;
  height:75px;
  background:none;
  margin:-25px 0 0 -177px;
  overflow:hidden;
  /*text-indent:-999px;*/
  
	color: #000000;
    font-family: 'babe_bambooregular';
    font-size: 2.8em;
	font-weight:bold;
    padding: 2px;
    text-shadow: 2px 2px 4px #FFFFFF, -1px -1px 4px #FFFFFF, -1px 2px 4px #FFFFFF, 2px -1px 4px #FFFFFF;
	filter:progid:DXImageTransform.Microsoft.Chroma(color='white') progid:DXImageTransform.Microsoft.Alpha(opacity=100) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=2,offY=2) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=-1,offY=2) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=2,offY=-1) progid:DXImageTransform.Microsoft.dropshadow(color=#ffffff,offX=-1,offY=-1);
}

#mst-footer {
	width: 99%;
  max-width:100%;
  min-width:99%;
  margin-left: 0.5em;
  top:6%;
}


.screen {
  display:none;
  width:94%; min-height:94%; height:auto;
  top:3%; left:3%;
  background: #b99768 url('cork-board.gif') repeat 0 0;
  -webkit-box-shadow: inset 10px 10px 10px 0px #755e3f; box-shadow: inset 10px 10px 10px 0px #755e3f;
  -webkit-border-radius: 3em; -moz-border-radius: 3em; border-radius: 3em;
  box-sizing:border-box; -moz-box-sizing:border-box; -webkit-box-sizing:border-box;
  /*border:4px solid #ffffff;*/
  overflow:hidden;
  behavior: url(PIE.htc);
  z-index:1;
}

.lt-ie9 .screen {
	border-color:#755e3f;
	border-style:solid;
	border-width:3px 1px 1px 3px;
}

.lt-ie8 .screen {
  behavior: none;
}

.feature {
  left:23%;
  width:38%;
  margin:10% -38% 4% 0;
  float:left;
}
.speech {
  width:100%;
  left:-50%;
  border:4px solid #ffffff;
  -webkit-border-radius: 2em; -moz-border-radius: 2em; border-radius: 2em;
  padding:1.0em 0;
  margin-bottom:1em;
  background: #ffffff;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSI3NSUiIHN0b3AtY29sb3I9IiNmZmZmZmYiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZWRlZGVkIiBzdG9wLW9wYWNpdHk9IjEiLz4KICA8L2xpbmVhckdyYWRpZW50PgogIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIGZpbGw9InVybCgjZ3JhZC11Y2dnLWdlbmVyYXRlZCkiIC8+Cjwvc3ZnPg==);
  background: -moz-linear-gradient(top,  #ffffff 75%, #ededed 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(75%,#ffffff), color-stop(100%,#ededed));
  background: -webkit-linear-gradient(top,  #ffffff 75%,#ededed 100%);
  background: -o-linear-gradient(top,  #ffffff 75%,#ededed 100%);
  background: -ms-linear-gradient(top,  #ffffff 75%,#ededed 100%);
  background: linear-gradient(to bottom,  #ffffff 75%,#ededed 100%);
  /*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#ededed',GradientType=0 );*/
  -pie-background: linear-gradient(#ffffff 75%,#ededed 100%);

  -webkit-box-shadow: 10px 10px 10px 0px #755e3f;
  box-shadow: 10px 10px 10px 0px #755e3f;

  font-size:17px;
  line-height:25px;

  z-index:100;
  behavior: url(PIE.htc);
}

.lt-ie8 .speech {
  background: #ffffff;
  behavior: none;
}

.speech p {
  padding:0 2em;
}
.speech .tick {
  width:33px;
  height:18px;
  background:transparent url(icons.png) 0 -376px no-repeat;
  left:50%;
  top:-1em;
  margin:-18px 0 0 -16px;
}
.feedback {
  border:4px solid #ffffff;
  box-sizing:border-box; -moz-box-sizing:border-box; -webkit-box-sizing:border-box;
  -webkit-border-radius: 1em; -moz-border-radius: 1em; border-radius: 1em;
  padding:1.5em 2em;
  background: #efefef;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSI3OCUiIHN0b3AtY29sb3I9IiNlZmVmZWYiIHN0b3Atb3BhY2l0eT0iMSIvPgogICAgPHN0b3Agb2Zmc2V0PSIxMDAlIiBzdG9wLWNvbG9yPSIjZmZmZmZmIiBzdG9wLW9wYWNpdHk9IjEiLz4KICA8L2xpbmVhckdyYWRpZW50PgogIDxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxIiBoZWlnaHQ9IjEiIGZpbGw9InVybCgjZ3JhZC11Y2dnLWdlbmVyYXRlZCkiIC8+Cjwvc3ZnPg==);
  background: -moz-linear-gradient(top,  #efefef 78%, #ffffff 100%);
  background: -webkit-gradient(linear, left top, left bottom, color-stop(78%,#efefef), color-stop(100%,#ffffff));
  background: -webkit-linear-gradient(top,  #efefef 78%,#ffffff 100%);
  background: -o-linear-gradient(top,  #efefef 78%,#ffffff 100%);
  background: -ms-linear-gradient(top,  #efefef 78%,#ffffff 100%);
  background: linear-gradient(to bottom,  #efefef 78%,#ffffff 100%);
  /*filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#efefef', endColorstr='#ffffff',GradientType=0 );*/
  -pie-background: linear-gradient(#efefef 78%,#ffffff 100%);

  -webkit-box-shadow: inset 3px 3px 3px 0px #b9baba, 10px 10px 10px 0px #755e3f;
  box-shadow: inset 3px 3px 3px 0px #b9baba, 10px 10px 10px 0px #755e3f;

  font-size:15px;
  line-height:24px;

  behavior: url(PIE.htc);
}

.lt-ie8 .feedback {
  background: #efefef;
  behavior: none;
}

.me-plugin object {
	position:absolute;
}

/* make sure the meJS controls that we don't want are hidden */
.mejs-time, .mejs-time-rail, .mejs-duration-container, .mejs-mute {
	display:none;
}

/* now using <img> for audio button rather than 'background-image' so it shows at high contrast */
.mejs-playpause-button .audio-on, .mejs-playpause-button .audio-off, .mejs-playpause-button .audio-on-over, .mejs-playpause-button .audio-off-over {
    margin: 4px -3px;
    width: 120%;
}
.mejs-playpause-button .audio-on-over, .mejs-playpause-button .audio-off-over {
	display:none;
}
.mejs-play .audio-off, .mejs-play .audio-off-over {
    display: none;
}
.mejs-pause .audio-on, .mejs-pause .audio-on-over {
    display: none;
}
.no-touch .mejs-controls .mejs-play.ui-state-hover .audio-on,.no-touch .mejs-controls .mejs-play button:focus .audio-on {
	display:none;
}
.no-touch .mejs-controls .mejs-play.ui-state-hover .audio-on-over, .no-touch .mejs-controls .mejs-play button:focus .audio-on-over {
	display:block;
}
.no-touch .mejs-controls .mejs-pause.ui-state-hover .audio-off, .no-touch .mejs-controls .mejs-pause button:focus .audio-off {
	display:none;
}
.no-touch .mejs-controls .mejs-pause.ui-state-hover .audio-off-over, .no-touch .mejs-controls .mejs-pause button:focus .audio-off-over {
	display:block;
}

.mejs-playpause-button {
    width: 53px;
	height:53px;
}
.mejs-playpause-button button {
  width:100%;
  height:100%;
  background:none; /*transparent url(play-pause.png) -5px -5px no-repeat;*/
  margin:0;
  border:none;
}
.mejs-controls .mejs-playpause-button button {
	background-position: -5px -5px;
}
.no-touch .mejs-controls .mejs-playpause-button.ui-state-hover button {
	background-position: -75px -5px;
}
.mejs-controls .mejs-playpause-button.mejs-pause button {
	background-position: -5px -75px;
}
.no-touch .mejs-controls .mejs-playpause-button.mejs-pause.ui-state-hover button {
	background-position: -75px -75px;
}

.feedback .mejs-audio {
  float:right;
  margin:0 -1em 0 1em;
  z-index:2;
}

.lt-ie8 .feedback .mejs-audio {
  margin: 0;
  padding: 0 0.5em 1em 0.5em;
}

.speech .mejs-audio {
  float: left;
  margin: -0.3em 0.5em 0.5em 0.7em;
  z-index:2;
}

.lt-ie8 .speech .mejs-audio {
  padding: 0 1em 1em 0;
}

.feedback p,
.speech p {
  margin:0.5em 0;
}
.feedback h2 {
  font-family: 'babe_bambooregular';
}

.frame {
  width:50%;
  margin-top:10%;
  margin-bottom:4%;
  left:46%;
}

.lt-ie9 .frame, .lt-ie9 .feature {
  margin-bottom: 3em;
}

.frame ul {
  margin:0;
  padding:0;
}
.frame li {
  margin:1em 0 0 0;
  padding:0;
  list-style:none;
}
.frame li.last {
	padding-bottom: 2em;
}

.frame a {
  padding:1.5em;
  background:#282828 url(button.gif) repeat-x;
  border:4px solid #ffffff;
  -webkit-border-radius: 1em; -moz-border-radius: 1em; border-radius: 1em;
  color:#ffffff;
  text-decoration:none;
  font-size:15px;
  font-weight:bold;

  -webkit-box-shadow: inset 3px 3px 3px 0px #191919, 10px 10px 10px 0px #755e3f;
  box-shadow: inset 3px 3px 3px 0px #191919, 10px 10px 10px 0px #755e3f;

  text-shadow: 0px 2px 1px #000000;
  /*filter: dropshadow(color=#000000, offx=0, offy=2);*/

  behavior: url(PIE.htc);
}

.lt-ie8 .frame a, .lt-ie8 a.next_btn {
   background:#282828 url(button.gif) repeat-x;
   border-top:6px solid #ffffff;
   behavior: none;
}

.layout01 .simple_button {
    border: 3px solid #FFFFFF;
    border-radius: 30px 30px 30px 30px;
    cursor: pointer;
    display: inline-block;
    margin-bottom: 0px;
    padding: 2px 10px;
    box-shadow:none;
    color: #FFFFFF;
    background: url("button.gif") repeat-x scroll 0 0 #282828;
}

.lt-ie8 .layout01 .simple_button {
  border-top: 3px solid #ffffff;
}

.feedback .updater .icon, .feedback .reveal-button .icon {
    display: none;
}

.feedback .updater, .feedback .reveal-button {
    background: url("button.gif") repeat-x scroll 0 0 #282828;
    font-size: 1em;
}

.updater.ui-state-hover, .reveal-button.ui-state-hover {
  background: url("button-over.gif") repeat-x scroll 0 0 #282828;
}

.feedback .reveal-button.clicked {
  background: none repeat scroll 0 0 #888888;
  color: #FFFFFF;
  cursor: default;
}

.feedback .reveal-button.clicked:hover,
.feedback .reveal-button.clicked:focus {
  background: none repeat scroll 0 0 #888888;
}

.updater.selected .tick {
  display: block;
    position: absolute;
    right: -8px;
    top: -10px;
  width:auto;
  margin-right: 0;
}

.frame ul.buttons {
  width: 50%;
  float: left;
  margin: 1em 0;
}

.no-touch .frame a:hover, .no-touch .frame a:focus {
	background:#282828 url(button-over.gif) repeat-x;
}

.frame a .icon {
  float:left;
  width:50px;
  height:31px;
  background:transparent url(icons.png) no-repeat;
  margin:-3px 1em 0 0em;
      -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF)"; /* IE8 */
          filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);   /* IE6 & 7 */
              zoom: 1;
}

/*Icons*/
.decision .frame li + li .icon {
  background-position: 0 -91px;
}
.decision .frame li + li + li .icon {
  background-position: 0 -182px;
}
.decision .frame li a[href="#back"] .icon, .plot .frame li a[href="index.htm"] .icon, .frame li a[href="index.htm"] .icon {
  background-position: 0 -136px;
}
.decision .frame li a.visited .icon {
  background-position: -50px 0px;
}
.decision .frame li + li a.visited .icon {
  background-position: -50px -91px;
}
.decision .frame li + li + li a.visited .icon {
  background-position: -50px -182px;
}
.plot .frame li a .icon, .frame li a[target="_blank"] .icon, a.next_btn .icon, .decision .frame li a.next_btn.visited .icon {
  background-position: 0 -48px;
}
#screen-6-1 .frame li a[href="#screen-7-0"] .icon, #screen-5-5 .frame li a[href="#screen-7-0"] .icon {
  background-position: 0 -226px;
}

.frame a.visited, .frame a.visited:hover {
  /*color:#6e6e6e;*/
  /*background:#282828 url(button.gif) repeat-x;*/
  /*cursor:default;*/
}


/* Custom layouts */
.plot img {
  margin-left:-40%;
  height:auto;
  width:90%;
  max-width:497px;
  max-height:432px;
}
.decision .frame {
  margin-top:17%;
}
.decision .frame .feedback {
  margin-top:-5%;
}
.decision img {
  margin-left:-132px;
}

/* progress indicators */
.progress {
    bottom: 0;
    display: block;
    padding: 0;
    position: absolute;
    text-align: center;
    margin-left: 15%;
    width: 70%;
}

/*
.progress > li.checked {
    background-position: 0 -40px;
}*/
.progress > li {
    /*background: url("milestone.png") repeat scroll 0 0 transparent;*/
    display: inline-block;
    height: 35px;
    margin: 0 3% -1em;
    width: 35px;
    *display: inline; /* IE7 fix for inline-block*/
    zoom: 1; /* IE7 fix for inline-block*/
}
.progress img {
    margin-left: 0;
}

/* ==========================================================================
   Helper classes
   ========================================================================== */

/*
 * Image replacement
 */

.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden;
    /* IE 6/7 fallback */
    *text-indent: -9999px;
}

.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%;
}

/*
 * Hide from both screenreaders and browsers: h5bp.com/u
 */

.hidden {
    display: none !important;
    visibility: hidden;
}

/*
 * Hide only visually, but have it available for screenreaders: h5bp.com/v
 */

.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

/*
 * Extends the .visuallyhidden class to allow the element to be focusable
 * when navigated to via the keyboard: h5bp.com/p
 */

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
}

/*
 * Hide visually and from screenreaders, but maintain layout
 */

.invisible {
    visibility: hidden;
}

/*
 * Clearfix: contain floats
 *
 * For modern browsers
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of elements
 *    that receive the `clearfix` class.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */

.clearfix:before,
.clearfix:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.clearfix:after {
    clear: both;
}

/*
 * For IE 6/7 only
 * Include this rule to trigger hasLayout and contain floats.
 */

.clearfix {
    *zoom: 1;
}

.clear {
  clear:both;
}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */

@media only screen and (max-width:900px) {
    /* Style adjustments for viewports that meet the condition */

#header {
  overflow:hidden;
  top:3%;
}
#header h1 {
  left:50%;
  top:40px;
  padding-bottom:40px;
  margin: -25px 0 0 -220px;
}

.screen .frame {
  width:92%;
  margin-top:20px;
  left:4%;
}

.screen .feature {
  display:block;
  position:relative;
  left:50%;
  margin-top:100px;
  width:100%;
  float:none;
}

.plot img {
  margin-left:-20%;
  height:auto;
  width:45%;
  max-width:394px;
  max-height:589px;
}
.decision .feature {
  left:0;
  overflow:hidden;
}
.decision img {
  margin-left:5%;
  height:auto;
  width:30%;
  max-width:286px;
  max-height:274px;
  float:left;
  z-index:20;
  margin-right:1em;
}

.decision .speech {
  width:80%;
  max-width:80%;
  margin:0 0 20px 10%;
  z-index:10;
  top:0;
  left:0;
}

.progress {
    bottom: -0.3em;
}

}


@media only screen and (max-width:640px) {


.screen {
  width:100%; min-height:100%;
  top:0%; left:0%;
  -webkit-border-radius: 0em; -moz-border-radius: 0em; border-radius: 0em;
}

#mst-footer {
  top:0;
}
#mst-footer .mst-left,
#mst-footer .mst-right {
  display:block;
  float:none;
  text-align:center;
}

.progress {
    bottom: -0.4em;
}

}

@media print,
       (-o-min-device-pixel-ratio: 5/4),
       (-webkit-min-device-pixel-ratio: 1.25),
       (min-resolution: 120dpi) {
    /* Style adjustments for high resolution devices */
}

/* ==========================================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important; /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    /*
     * Don't show links for images, or javascript/internal links
     */

    .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; /* h5bp.com/t */
    }

    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;
    }
}
