body {
  font-family: "Lucida Grande", Helvetica, Arial, sans-serif;
  font-size: 62.5%;
  background: #F3F6F4;
  margin: 0;
  padding: 0;
  text-align: center; }

.inner {
  width: 900px;
  margin: 0 auto;
  text-align: left; }

a {
  color: #0099cc; }

.legals ul {
  margin-left: 2em;
  list-style: circle;
  margin-bottom: 2em; }
  .legals ul li {
    font-size: 1.2em;
    margin-bottom: 1em;
    color: #333; }

#header {
  background: #333 url(/images/web/background_header.jpg) repeat-x bottom;
  border-bottom: 1px solid #8FBB33; }
  #header:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  * html #header {
    height: 1px;
    overflow: visible; }
  *+html #header {
    min-height: 1px; }
  #header #logo {
    float: left; }
  #header #navigation {
    float: right; }
    #header #navigation ul {
      margin-top: 20px;
      margin-bottom: 20px; }
      #header #navigation ul li {
        float: left;
        font-size: 1.4em;
        line-height: 20px;
        color: white;
        margin-left: 0px;
        padding: 0 15px; }
        #header #navigation ul li a {
          color: white;
          text-decoration: none; }
        #header #navigation ul li.on {
          background-color: #ad3916;
          background-image: url(/images/web/button_on_left.gif);
          background-repeat: no-repeat;
          background-position: left;
          padding-right: 0px; }
          #header #navigation ul li.on div {
            background: url(/images/web/button_on_right.gif) no-repeat right;
            padding-right: 15px; }

#banner {
  background: #73AA00 url(/images/web/background_banner.jpg) no-repeat top center; }
  #banner:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  * html #banner {
    height: 1px;
    overflow: visible; }
  *+html #banner {
    min-height: 1px; }
  #banner h1 {
    font-size: 2.4em;
    color: white;
    padding: 30px 0;
    text-align: center; }
  #banner .left_box {
    float: left;
    margin-top: 30px;
    width: 300px; }
    #banner .left_box .strapline {
      margin-top: 30px;
      margin-bottom: 20px;
      font-size: 2.6em;
      line-height: 1.2em;
      color: white; }
    #banner .left_box .signup {
      margin-top: 20px; }
    #banner .left_box h1 {
      font-size: 1.8em;
      color: #F1F7E6;
      line-height: 1.5em;
      padding: 0px;
      text-align: left; }
  #banner .screenshot {
    margin-top: 30px;
    float: right;
    width: 558px; }

#middle_bar {
  background: #333;
  padding: 5px 0 5px 0; }
  #middle_bar p {
    text-align: center;
    font-size: 1.6em;
    color: #ccc; }
    #middle_bar p img {
      vertical-align: -5px;
      margin-right: 5px; }
    #middle_bar p a {
      color: #ccc;
      text-decoration: none; }
    #middle_bar p strong {
      color: #fff; }
      #middle_bar p strong a {
        color: #fff; }

#page {
  background: url(/images/web/background_page.jpg) repeat-x top;
  padding: 40px 0px; }
  #page:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  * html #page {
    height: 1px;
    overflow: visible; }
  *+html #page {
    min-height: 1px; }
  #page h2 {
    font-size: 2.4em;
    color: #666;
    line-height: 1.5em;
    margin-bottom: 10px; }
  #page h3 {
    color: #ad3916;
    font-size: 1.8em;
    font-weight: normal;
    line-height: 1.5em;
    margin-bottom: 10px; }
  #page p {
    font-size: 1.3em;
    color: #333;
    margin-bottom: 1em;
    line-height: 1.5em; }

#benefits:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }
* html #benefits {
  height: 1px;
  overflow: visible; }
*+html #benefits {
  min-height: 1px; }
#benefits .row:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }
* html #benefits .row {
  height: 1px;
  overflow: visible; }
*+html #benefits .row {
  min-height: 1px; }
#benefits .left {
  float: left;
  width: 420px;
  clear: left;
  margin-bottom: 15px; }
#benefits .right {
  float: right;
  width: 420px;
  clear: right;
  margin-bottom: 15px; }
#benefits img {
  float: left;
  margin-right: 10px;
  width: 72px; }
#benefits strong {
  font-weight: bold; }
#benefits blockquote {
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  padding: 10px 20px;
  margin-bottom: 2em;
  background-image: url(/images/web/quote_left.jpg);
  background-position: 0 10px;
  background-repeat: no-repeat; }
  #benefits blockquote .quote_inner {
    background-image: url(/images/web/quote_right.jpg);
    background-position: 100% 0px;
    background-repeat: no-repeat;
    padding: 10px 45px 0 50px; }
    #benefits blockquote .quote_inner p {
      color: #333;
      font-size: 1.8em;
      font-style: normal;
      text-align: center;
      color: #ad3916; }
    #benefits blockquote .quote_inner p.cite {
      font-size: 1em;
      font-style: normal;
      color: #666; }
  #benefits blockquote p.button {
    padding: 0 45px 0 50px;
    font-size: 1.2em; }
#benefits .detail {
  float: left;
  width: 300px; }
  #benefits .detail h3 {
    font-size: 2em;
    color: #333;
    line-height: 1.5em;
    margin: 0; }
    #benefits .detail h3 a {
      color: #333;
      text-decoration: none; }
  #benefits .detail p {
    font-size: 1.2em;
    color: #666;
    line-height: 1.5em; }
    #benefits .detail p img {
      width: auto;
      float: none;
      margin: 0 0 0 0; }
  #benefits .detail ul {
    border-top: 1px dotted #ccc;
    margin-bottom: 10px; }
    #benefits .detail ul li {
      border-bottom: 1px dotted #ccc;
      padding: 5px;
      font-size: 1.2em;
      color: #333; }

#plans {
  margin: 20px 0;
  padding: 10px 20px;
  background: #E4EDD7; }
  #plans:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  * html #plans {
    height: 1px;
    overflow: visible; }
  *+html #plans {
    min-height: 1px; }
  #plans .for_teachers {
    float: left;
    width: 200px; }
  #plans .for_schools {
    float: right;
    width: 600px;
    padding-left: 25px;
    border-left: 1px solid #A9CB61; }
  #plans .for_teachers h2, #plans .for_schools h2 {
    font-size: 2em; }
  #plans .for_teachers p.intro, #plans .for_schools p.intro {
    text-align: left; }
  #plans .plan {
    float: left;
    width: 190px;
    background: url(/images/web/background_box.jpg) top left;
    min-height: 190px;
    height: auto;
    margin: 15px; }
    * html #plans .plan {
      height: 190px; }
  #plans .teacher {
    background: url(/images/web/background_box.jpg) top left; }
  #plans .plan_inner {
    padding: 15px 10px 10px 10px; }
  #plans h3 {
    font-size: 2em;
    text-align: center;
    margin-bottom: 5px; }
    #plans h3 a {
      color: #ad3916;
      text-decoration: none; }
  #plans p {
    font-size: 1.2em;
    color: #666;
    text-align: center;
    margin: 0; }
    #plans p strong {
      display: block;
      text-align: center;
      font-weight: bold;
      font-size: 1.2em;
      color: black;
      margin: 5px 0; }
      #plans p strong span {
        font-weight: normal;
        font-size: 0.9em; }
  #plans p.price {
    font-size: 1.3em;
    margin-bottom: 10px; }
  #plans p.trial {
    font-size: 1.3em;
    color: #0099cc; }

strong.highlight {
  background: #ffc;
  color: #000;
  font-weight: bold; }

#signup_form p strong {
  background: #ffc;
  color: #000;
  font-weight: bold; }
#signup_form form {
  margin-top: 20px; }
  #signup_form form .row:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  * html #signup_form form .row {
    height: 1px;
    overflow: visible; }
  *+html #signup_form form .row {
    min-height: 1px; }
  #signup_form form .left {
    float: left;
    width: 420px; }
  #signup_form form .right {
    float: right;
    width: 420px; }
  #signup_form form .tip {
    display: block;
    clear: both;
    font-size: 0.9em;
    color: #666; }
  #signup_form form legend {
    font-size: 1.8em;
    color: #ad3916;
    padding-bottom: 10px; }
  #signup_form form p {
    padding: 5px 10px;
    margin-bottom: 5px; }
    #signup_form form p:after {
      content: ".";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    * html #signup_form form p {
      height: 1px;
      overflow: visible; }
    *+html #signup_form form p {
      min-height: 1px; }
    #signup_form form p label {
      float: left;
      width: 150px;
      display: block; }
    #signup_form form p span.field {
      display: block;
      float: left;
      width: 250px; }
    #signup_form form p span.errors {
      color: #c00;
      font-size: 0.8em; }
    #signup_form form p.error {
      border-top: 1px solid #c00;
      background: url(/images/background_red_fade.jpg) top repeat-x;
      border-bottom: 1px solid #c99; }
    #signup_form form p .tip {
      font-size: 0.8em; }
    #signup_form form p.required span.required {
      color: #c00;
      margin-left: 5px; }
    #signup_form form p.text_field input, #signup_form form p.password_field input {
      border: 1px solid #ccc; }
    #signup_form form p.domain_field label {
      float: none;
      display: block;
      width: auto; }
    #signup_form form p.no_label_check_box span.errors {
      display: block; }
  #signup_form form p.submit {
    border-top: 1px solid #999;
    padding-top: 10px;
    margin-top: 5px;
    text-align: center; }

#footer p {
  font-size: 1.1em;
  color: #666;
  line-height: 1.5em;
  margin: 10px; }
  #footer p a {
    color: #333; }

#about:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }
* html #about {
  height: 1px;
  overflow: visible; }
*+html #about {
  min-height: 1px; }
#about .left {
  float: left;
  width: 400px; }
#about .right {
  float: right;
  width: 450px; }
#about .team {
  background: #E4EDD7;
  margin-bottom: 10px; }
  #about .team:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  * html #about .team {
    height: 1px;
    overflow: visible; }
  *+html #about .team {
    min-height: 1px; }
  #about .team img {
    float: right;
    margin-left: 10px; }
  #about .team h4 {
    font-size: 1.4em;
    padding: 10px 15px; }
  #about .team p {
    color: #666;
    padding: 0 15px;
    font-size: 1.1em; }

#left_right_boxes .row:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }
* html #left_right_boxes .row {
  height: 1px;
  overflow: visible; }
*+html #left_right_boxes .row {
  min-height: 1px; }
#left_right_boxes .left {
  float: left;
  width: 420px; }
#left_right_boxes .right {
  float: right;
  width: 420px; }

.new_detail {
  border: 1px solid #ccc; }
  .new_detail strong {
    font-weight: bold; }

#tour:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }
* html #tour {
  height: 1px;
  overflow: visible; }
*+html #tour {
  min-height: 1px; }
#tour h4 {
  font-size: 1.4em;
  padding: 10px 15px; }
#tour .sidebar {
  float: left;
  width: 200px;
  margin-right: 30px; }
  #tour .sidebar ul {
    border-top: 1px solid #ccc; }
    #tour .sidebar ul li {
      border-bottom: 1px solid #ccc;
      padding: 5px;
      font-size: 1.2em;
      line-height: 1.5em;
      color: #333; }
      #tour .sidebar ul li a {
        text-decoration: none; }
      #tour .sidebar ul li.on {
        background-color: #0099cc;
        background-repeat: no-repeat;
        background-position: right; }
        #tour .sidebar ul li.on a {
          color: white; }
#tour .content {
  float: left;
  width: 650px; }
  #tour .content h2 {
    color: #999999; }
  #tour .content img {
    border: 1px solid #ccc; }
  #tour .content p span.code {
    font-family: Courier; }
#tour .row:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }
* html #tour .row {
  height: 1px;
  overflow: visible; }
*+html #tour .row {
  min-height: 1px; }
#tour .row .left {
  width: 300px;
  float: left; }
#tour .row .right {
  width: 300px;
  float: right; }

#blog:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }
* html #blog {
  height: 1px;
  overflow: visible; }
*+html #blog {
  min-height: 1px; }
#blog .sidebar {
  float: left;
  width: 200px;
  margin-left: 30px; }
  #blog .sidebar h4 {
    font-size: 1.4em;
    padding: 20px 0px 5px 0;
    color: #666; }
    #blog .sidebar h4.first {
      padding-top: 0px; }
  #blog .sidebar .plain h4 {
    border-bottom: 1px solid #ccc;
    margin-bottom: 5px; }
  #blog .sidebar .plain p.center {
    text-align: center; }
  #blog .sidebar .twitter {
    margin-top: 10px; }
    #blog .sidebar .twitter p.twitter-message {
      font-size: 1.1em;
      border-bottom: 1px solid #ccc;
      padding: 0px 5px 1em 5px; }
      #blog .sidebar .twitter p.twitter-message span.twitter-timestamp {
        color: #999;
        font-size: 0.9em; }
  #blog .sidebar ul {
    border-top: 1px solid #ccc; }
    #blog .sidebar ul li {
      border-bottom: 1px solid #ccc;
      padding: 5px;
      font-size: 1.2em;
      line-height: 1.5em;
      color: #333; }
      #blog .sidebar ul li a {
        text-decoration: none; }
      #blog .sidebar ul li.on {
        background-color: #0099cc;
        background-repeat: no-repeat;
        background-position: right; }
        #blog .sidebar ul li.on a {
          color: white; }
#blog .content {
  float: left;
  width: 650px; }
  #blog .content h3 {
    color: #ad3916;
    line-height: 1.5em;
    padding: 0;
    margin: 0; }
    #blog .content h3 a {
      color: #ad3916;
      text-decoration: none; }
  #blog .content blockquote {
    margin: 10px 30px;
    font-size: 1.1em;
    background: #fefefe;
    padding: 1em 10px 0.5em 10px;
    border: 1px solid #eee; }
    #blog .content blockquote p {
      color: #666; }
  #blog .content p strong {
    font-weight: bold; }
  #blog .content img {
    border: 1px solid #ccc; }
  #blog .content .post {
    border-bottom: 1px solid #ccc;
    padding: 5px 0 5px 0;
    margin-bottom: 20px; }
  #blog .content p span.code {
    font-family: Courier; }
  #blog .content p.date {
    font-size: 1em;
    color: #999; }
    #blog .content p.date a {
      color: #666; }
  #blog .content #comments {
    padding-top: 10px; }
  #blog .content #respond {
    margin-top: 10px; }
  #blog .content #commentform {
    margin-top: 10px; }
    #blog .content #commentform input.text {
      border: 1px solid #ccc;
      padding: 5px;
      width: 200px;
      margin-right: 10px; }
    #blog .content #commentform textarea {
      border: 1px solid #ccc;
      padding: 5px;
      width: 600px; }
    #blog .content #commentform label em {
      font-size: 0.8em;
      color: #c00; }
  #blog .content .commentlist li {
    background: #eee;
    padding: 10px;
    margin: 5px 0; }
    #blog .content .commentlist li:after {
      content: ".";
      display: block;
      height: 0;
      clear: both;
      visibility: hidden; }
    * html #blog .content .commentlist li {
      height: 1px;
      overflow: visible; }
    *+html #blog .content .commentlist li {
      min-height: 1px; }
    #blog .content .commentlist li .comment-author {
      font-size: 1.2em;
      color: #666;
      margin-bottom: 5px; }
      #blog .content .commentlist li .comment-author .fn {
        font-weight: bold;
        color: #333; }
    #blog .content .commentlist li .comment-meta {
      color: #666;
      margin-bottom: 10px; }
      #blog .content .commentlist li .comment-meta a {
        color: #666;
        text-decoration: none; }
    #blog .content .commentlist li .avatar {
      float: right;
      border: 1px solid #ccc;
      padding: 2px;
      background: #fff; }

p.moneyback {
  float: right; }

.guarantee {
  color: #240;
  text-align: center;
  font-size: 1.2em;
  line-height: 1.3em; }

#left_right_boxes.faq h3 {
  font-size: 1.6em;
  margin-bottom: 0px; }

.address em {
  font-style: normal;
  color: #999;
  display: block; }

.sm_signup {
  text-align: center;
  margin-top: 20px; }

#rachel_story strong {
  background: #ffc;
  color: #000;
  font-weight: bold; }
#rachel_story p.image img {
  float: right;
  margin: 20px; }
#rachel_story .row:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }
* html #rachel_story .row {
  height: 1px;
  overflow: visible; }
*+html #rachel_story .row {
  min-height: 1px; }
#rachel_story .row .right {
  width: 300px;
  float: right;
  display: none; }

p.signup_button, #benefits p.signup_button {
  text-align: center;
  margin-bottom: 30px; }
  p.signup_button img, #benefits p.signup_button img {
    width: auto;
    float: none;
    margin: 0; }

#report_preview, #report_movie {
  border: 1px solid #ccc;
  background: #fff;
  padding: 10px; }
  #report_preview h3, #report_movie h3 {
    font-size: 1.4em;
    text-align: center; }
  #report_preview p, #report_movie p {
    font-size: 1.1em;
    text-align: center; }
  #report_preview li, #report_movie li {
    text-align: center; }

#report_movie {
  margin-top: 20px; }

.legals ol {
  list-style: decimal;
  margin: 1em 2em 2em 2em; }
  .legals ol strong {
    font-weight: bold; }
  .legals ol li {
    font-size: 1.6em;
    margin-bottom: 1em;
    color: #ad3916;
    line-height: 1.5em; }
    .legals ol li li {
      font-size: 0.9em;
      color: #333; }

#player {
  margin: auto;
  text-align: center; }

#flash {
  padding: 10px 30px; }

.flash {
  background: no-repeat center;
  background-position: 15px 12px;
  text-align: left;
  padding: 10px 20px 10px 45px;
  border-top-style: solid;
  border-top-width: 2px;
  border-bottom-style: solid;
  border-bottom-width: 2px;
  border-left: none;
  border-right: none;
  font-size: 1.2em;
  line-height: 1.5em;
  margin: 0; }
  .flash strong {
    font-weight: bold; }
  #content .flash h2 {
    font-size: 1.3em; }
  #content .flash form {
    font-size: 0.8em; }
  #content .flash label {
    font-size: 1em;
    font-weight: normal;
    color: #333; }

.subscribe_box {
  background: #FFFFCC;
  border: 2px solid #CC9900;
  padding: 10px;
  font-size: 1.1em;
  line-height: 1.5em;
  margin: 10px; }
  .subscribe_box:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden; }
  * html .subscribe_box {
    height: 1px;
    overflow: visible; }
  *+html .subscribe_box {
    min-height: 1px; }
  .subscribe_box .field input {
    width: 100px; }
  .subscribe_box h2 {
    padding-bottom: 10px; }
  form .subscribe_box label {
    display: inline;
    font-size: 1em;
    margin-right: 5px;
    color: #333;
    font-weight: normal; }
  .subscribe_box .paypal_logo {
    float: right; }
    .subscribe_box .paypal_logo img {
      border: 1px solid #CC9900; }

.flash_error {
  background-image: url(/images/icons/exclamation.png);
  background-color: #ffe8e8;
  border-top-color: #df7d7d;
  border-bottom-color: #df7d7d; }

.flash_warning {
  background-image: url(/images/icons/error.png);
  background-color: #FFFFCC;
  border-top-color: #CC9900;
  border-bottom-color: #CC9900; }

.flash_success {
  background-image: url(/images/icons/accept.png);
  background-color: #CCFFCC;
  border-top-color: #339933;
  border-bottom-color: #339933; }

.flash_notice {
  background-image: url(/images/icons/information.png);
  background-color: #E5F0FE;
  border-top-color: #b5d4fe;
  border-bottom-color: #b5d4fe; }

.flash .flash {
  background: white; }

#login_form {
  border: 2px solid #ccc;
  background: white;
  padding: 10px;
  width: 400px;
  margin: 0 auto; }

.detail .flash {
  margin-bottom: 10px;
  font-size: 1em; }
