html {
  min-height: 100%;
}

body {
  min-height: 100%;
  background-color:#2b335b;
  background-image: -webkit-gradient(
      linear, 0% 0%, 0% 66%,
      from(#616B9A),
      to(transparent));
  background-image: url(/img/page-bg-grad.png);
  background-repeat: repeat-x;
  font-size: 14px;
  font-family: Lucida Sans Unicode, Lucida Grande, arial;
  color:#333333;
}

h1, h2, h3, h4, h5 {
  font-family: Verdana;
  margin: 0;
  padding: 0;
}

h1 { font-size: 24px; }

#page {
  margin:0 auto;
  width: 792px;
  background: white;
  border-right:solid 4px #E5E5E5;
  border-left:solid 4px #E5E5E5;
  position: relative;
  padding-bottom: 10px;
}

html.nojs .reqjs { display: none; }
html.js .nojs { display: none; }

body.wide #page { width: 980px; }

img { border:0; }

body.copy #page img {
  max-width: 90%;
  margin: 10px 0px;
}

#global_nav {
  color: rgb(153, 153, 153);
  font-size: 11px;
  float:right;
  padding-right:1em;
  padding-top:5px;
}

.m_item {
  padding: 1px 4px;
  border-right: dotted 1px rgba(242,242,242,.1);
  padding-top: 0px;
  text-decoration: none;
  font-size: 11px;
  color: #aaa;
}

a.m_item:hover {
  text-decoration: underline;
  color: #eee;
  background:transparent;
}
#logo {
    margin: 8px 0 0 13px;
    padding: 0px 5px;
    padding-bottom: 4px;
/*    background: -webkit-gradient(linear, 0% 50%, 0% 95%,
      from(rgba(0, 0, 0, 0.0)),
      to(rgba(205, 105, 255, 0.2)));
*/}
#logo a:hover {
  background:transparent;
}

#header {
  height: 59px;
  background: -webkit-gradient(linear, 0% 0%, 0% 40%, from(rgba(242, 242, 242, 0.0976562)), to(rgba(12, 12, 12, 0.0976562))) rgb(27, 34, 77);

  background-image: url(/img/header-bg-grad.png);
  background-repeat: repeat-x;

  margin: 2em auto 0px auto;
  width: 792px;
  border-right:solid 4px rgb(27, 34, 77);
  border-left:solid 4px rgb(27, 34, 77);
  border-top:solid 4px inherit;
  padding:0;
  -webkit-border-top-right-radius:10px;
  -webkit-border-top-left-radius:10px;
  -moz-border-radius-topright:10px;
  -moz-border-radius-topleft:10px;
}

body.wide #header { width: 980px; }

#footer {
    margin: 0 auto 1em auto;
    width: 800px;
    background: #E5E5E5;
    -webkit-border-bottom-right-radius:10px;
    -webkit-border-bottom-left-radius:10px;
    -moz-border-radius-bottomright:10px;
    -moz-border-radius-bottomleft:10px;
    min-height:10px;
}

body.wide #footer { width: 988px; }


body.copy p, body.copy ul, body.copy form {
  padding:0;
  margin-top:.5em;
    text-align:left;
    margin-top:1.3846em;
    margin-top:1em;
    line-height: 1.3846em;  /* 18 / 13 */
    font-size: 13px;
    max-width: 600px;
    margin: 10px auto;
}

body.copy h1, body.copy h2, body.copy h3, body.copy h4 { margin: 0px 100px; }
body.copy h1 { margin-top:1.4em; }
body.copy h2 { margin-top:1.5em; }
body.copy h3 { margin-top:2em; margin-bottom:.5em; }


.settings_nav {
  text-align:center;
  margin-top:5em;
  margin-bottom:1em;
}
#sched {
  text-align:left;
}
#sched {
  -webkit-box-shadow:1px 1px 3px #A5A5A5, -1px -1px 3px #A5A5A5;
  -moz-border-radius: 10px; -webkit-border-radius: 10px;
}
#sched tbody {
  background:#F2F2F2;
}
#sched th {
  padding-left:10px;
  padding-right:10px;
  padding-top:5px;
  color:#000;
}
#sched td {
  white-space:nowrap;
  padding:3px 10px;
  color:#000;
  width:50%;
}
#sched td.checkall {
  color:#3F3F3F;
  font-size:12px;
}
#sched td.last {
  border-right:none;
}
#sched td.morning {
  background:rgba(255,198,76,.55);
}
#sched td.afternoon {
  background:rgba(255,130,20,.55);
}
#sched td.evening {
  background:rgba(167,68,54,.55);
}

#sched i {
  color:#3F3F3F;
  font-size:9px;
}


div#extra_info {
  color: #666;
  font-size:12px;
  margin-top:4em;
}

form.rform {
  background:#F2F2F2;
  -webkit-border-radius:10px;
  -webkit-box-shadow:1px 1px 3px #A5A5A5;
  -moz-border-radius:10px;
  -moz-box-shadow:1px 1px 3px #A5A5A5;
  margin:2em auto 2em auto;
  width: 500px;
  padding: 20px;
  /*background: #ddd;*/
  margin-left: auto;
  margin-right: auto;
  position: relative;
  left: 100px;
  margin-top: 55px;
  margin-bottom: 70px;
  text-align: right;
}
.rform h2 {
  margin-top:.5em;
}

.rform .content {
  text-align: right;
}
.rform .head {
  font-size: 17px;
}







/* graybox */


#GB_overlay {
  background-image: url(overlay.png);
  position: absolute;
  margin: auto;
  top: 0;
  left: 0;
  z-index: 100;
  width:  100%;
  height: 100%;
}

* html #GB_overlay {
  background-color: #000;
  background-color: transparent;
  background-image: url(blank.gif);
  filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src="overlay.png", sizingMethod="scale");
}

#GB_window {
  top: 50px;
  left: 0px;
  position: absolute;
  background: #000;
  border: 1px solid #aaa;
  overflow: auto;
  width: 400px;
  height: 400px;
  z-index: 150;
  text-align: center;
}

#GB_frame {
  border: 0;
  overflow: auto;
  width: 100%;
  height: 378px;
  text-align: center;
}

#GB_caption {
  font: 12px bold helvetica, verdana, sans-serif;
  color: #fff;
  background: #000;
  padding: 2px 0 2px 5px;
  margin: 0;
  text-align: left;
}

#GB_window img {
  position: absolute;
  bottom: 2px;
  right: 5px;
  cursor: pointer;
  cursor: hand;
}


/* some hacks ported from viewer */

.hidden, .lio {
  display: none;
}

body.logged_in .m_item.lio {
  display: inline;
}

body.logged_in .lio {
  display: block;
}

.loo {
  display: none;
}

body.logged_out .loo {
  display: block;
}

#flash, .flash {
  margin: 5px auto;
  padding: 15px;
  background: #fcc;
  color: #d00;
  text-align: center;
  display: none;
}

body.logged_out .m_item.loo {
  display: inline;
}

.simple_form > label, .simple_form > div > label, .simple_form > div > div > label, .simple_form > div > div > div > label {
  display: block;
  font-style: italic;
  color:#555;
}

.simple_form input[type=text] {
  margin-bottom: 30px;
}

.simple_form input.flush_with_next {
  margin-bottom: 0px;
  padding-bottom: 0px;
}

/* for live pages */

table.envelope td { vertical-align: top;}

table.envelope tr.top td.title {
  -moz-border-radius-topleft: 10px;
  -webkit-border-top-left-radius: 10px;
  border-top-left-radius: 10px;
  -moz-border-radius-topright: 10px;
  -webkit-border-top-right-radius: 10px;
  border-top-right-radius: 10px;
  text-align: left;
}

table.envelope td.title {
  padding-top: 10px;
  padding-bottom: 6px;
  color: #777;
  background-color: rgba(90, 90, 255, 0.1);
  border: solid 1px #ccc;
  -webkit-box-shadow: 0px 2px 2px #999;
}

table.envelope td.title.title2 {
  text-align: center;
  color: black;
  font-size: 14px;
  text-shadow: 0px -1px 1px #fff;
  padding: 15px;
}

table.envelope td.first.title { padding-left: 25px; }
table.envelope h2 { margin: 0; padding:0; text-align: left; margin: 0px; text-shadow: 1px 1px 3px #999;}
table.envelope h3 { margin: 0; padding:0; text-align: left; margin: 0px; color: #E18A57;}

.superwide {
  margin: 0px -25px;
}

table.envelope {
  width: 100%;
  background:#F2F2F2;
  -webkit-border-radius:10px;
  -moz-border-radius:10px;
  -webkit-box-shadow: 0px 2px 2px #999;
  -moz-box-shadow:1px 1px 3px #D8D8D8;
  margin: 1.5em 0px;
}

table.envelope td.first { padding-left: 20px; }

/* categories */
table#categories td label.category {
  position: relative; display: block; font-weight: bold; font-size: 13px; text-align: center; padding-bottom: 10px;
  padding-top: 18px;
  font-family: Verdana;
}

table#categories td label.category input[type=checkbox] {
  position: absolute; left: 114px; top: 104px;
  opacity: 0.5;
  -moz-opacity: 0.5;
  filter:alpha(opacity=50);
}

table#categories td { border-right:dotted 1px #D8D8D8; width: 20%;}

table#categories td img { display: block; margin: 0px auto; margin-bottom: 10px;}
table#categories td.selected { background-color: rgba(90, 90, 255, 0.3); }

table#categories td.selected img { outline: solid 2px black; }
table.envelope td.first { padding-left: 20px; }
table#categories td.last { padding-right: 20px; border-right:none; }

/* lists */

ul.links {
  list-style: none;
  margin: 0;
  padding-left: 2em;
}

table#categories ul.selected { background-color: rgba(90, 90, 255, 0.3); }
/*table#categories tbody.selected td { background-color: rgba(90, 90, 255, 0.3); }*/

table#categories ul {
  list-style: none;
  text-align: left;
  font-size: 12px;
  margin:0;
  padding:0;
  /*border-top: solid 1px #bbb;*/
  border-bottom: solid 1px #fdd;
  display: none;
}

table#categories td.selected ul { display: block;}

table#categories .title p {
  font-size: 12px;
}

table#categories ul li {
  display: block;
  position: relative;
  border-top: solid 1px #fdd;
  border-bottom: solid 1px #bbb;
  border-collapse:collapse;
  padding: 4px 2px;
  padding-left: 25px;
}

table#categories ul input {
  position: absolute;
  left: 0px;
  display: block;
}

table#categories #p1next {
  margin-left: 80px;
}

#page {
  overflow: hidden;
}

/*#page1 { float: left; position: relative; }*/
/*#page2 { float: left; position: relative; left: 1400px; }*/
/* other */

#page_info {
  position: absolute;
  right: 30px;
  top: 0px;
  padding:3px 20px;
  -webkit-border-bottom-right-radius:5px;
  -webkit-border-bottom-left-radius:5px;
  -webkit-box-shadow: 0px 2px 2px #ccc;
  -moz-border-radius-bottomright:5px;
  -moz-border-radius-bottomleft:5px;
  -moz-box-shadow: 0px -1px 1px #E5E5E5;

}

#stripe {
  margin: 0px 60px;
  padding-top: 20px;
  padding-bottom: 10px;
}

#custom_logo {
  display: block;
  left: 13px;
  bottom: 4px;
  position: absolute;
}

#header {
  position: relative;
}

h4#subhead {
  color: gray;
  position: absolute;
  bottom: 2px;
  left: 22px;
  margin:0; padding:0;
  font-size: 12px;
}


#bigq {
  text-align: center;
  background: #edc; width: 600px;
  -webkit-box-shadow:1px 1px 3px #A5A5A5;
  -moz-border-radius: 20px; -webkit-border-radius: 20px;
  padding: 8px 10px; margin 0px auto; margin: 20px auto;
}
#bigq button {
  margin: 30px;
}

.tabs {
  font-size: 12px;
  padding: 5px;
  border-bottom: solid thin #bbb;
}

.tabs a {
  /*color: #77f;*/
  text-decoration: underline;
  padding: 4px 10px;
  background: #eee;
  font-weight: bold;
  border: solid thin #bbb;
  border-bottom: none;
}

.tabs a.active {
  background: transparent;
  text-decoration: none;
  color: black;
  border-bottom: solid thin white;
  position: relative;
  top: 1px;
}

.tab_content {
  margin-top: 20px;
/*  border: solid thin #bbb;*/
/*  border-top: none;*/
/*  padding: 20px;*/
}

#login .fields,
#reset_password .fields {
  width: 17em;
}

#login .fields .field input,
#reset_password .fields .field input {
  width: 100%;
}

#login .fields .field,
#reset_password .fields .field {
  margin-bottom: 1em;
}

#login div.field a {
  float: right;
  font-size: 0.8em;
  font-weight: normal;
  margin-right: -3px;
}


body.formy button { display: block; margin-bottom: 20px; margin-top: 10px; }
body.formy form { margin: 20px 0px; padding: 10px; border: solid #ccc 1px; }
body.formy textarea { width: 100%; height: 50px; }
body.formy h3 { color: black; margin: 10px 0px; }
body.formy input[type=text] { width: 100%; margin-bottom: 10px; }
body.formy input[type=file] { margin-bottom: 10px; }

.banner {
  display: block;
}

.banner:hover {
  text-decoration: none;
}

.banner:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.banner h1 {
  text-shadow: 0px -1px 1px #fff, 0px 1px 2px #000;
  font-size:34px;
  margin-bottom: 10px;
  margin-top: 10px;
}

.banner.small h1 {
  font-size:24px;
}
.banner.small img {
  max-height: 70px;
}
.banner img { float: right; max-height: 130px; margin-right: 30px;
  -webkit-box-shadow: 0px 2px 2px #999;
  -moz-box-shadow:1px 1px 3px #D8D8D8;
}

div.plan_container {
  margin: 20px 10px;
  margin: 40px 10px;
  margin-left: 10px;
  margin-bottom: 20px;
  width: 100%;
  height: 320px;
}

div.plan {
  height: 240px;
  width: 19%;
  text-align:center;
  border-right:0 none;
  border:thin solid #999999;
  float:left;
  padding:10px 0 20px 0;
  -moz-background-clip:border;
  -moz-background-inline-policy:continuous;
  -moz-background-origin:padding;
  -moz-border-radius-bottomleft:20px;
  -moz-border-radius-bottomright:20px;
  -moz-border-radius-topleft:20px;
  -moz-border-radius-topright:20px;
  -moz-box-shadow:1px 1px 3px #A5A5A5;
  background:#FBFAF3 none repeat scroll 0 0;
}

div.highlight {
  height:270px;
  margin-top:-19px;
  width: 21%;
  -moz-box-shadow:2px 6px 9px #A5A5A5;
  background:#FDFDFD none repeat scroll 0 0;
}

div.plan h1 a {
  color: #555555;
}

div.highlight h1 a {
  font-size:28px;
}

div.plan h2 {
  font-size:18px;
  font-weight:normal;
  margin:0 0 2px;
  padding:0;
}

div.plan h3 {
  border-bottom:1px solid #CCCCCC;
  color:#7BA65E;
  font-size:12px;
  font-weight:bold;
  margin:0 0 15px;
  padding:0 0 7px;
  text-transform:uppercase;
}

div.plan ul {
  margin-left: 0px;
  padding-left: 0px;
}

div.plan ul li {
  font-family:helvetica,arial,sans-serif;
  font-size:18px;
  text-align:center;
  color:#64503F;
  line-height:1em;
  list-style-image:none;
  list-style-position:outside;
  list-style-type:none;
  margin-bottom:3px;
}

div.plan ul li strong {
  color:#606A96;
}

div.plan .greenbutton {
  background: #508AC6 none repeat scroll 0 0;
}

div.highlight .greenbutton {
  font-size: 20px;
}

div.highlight .underline {
  font-size: 110%;
  border-bottom:1px dotted #888888;
  line-height:1.2em;
}

#signup {
  display: none;
  position: relative;
}

#signup td {
  font-size: 13px;
  font-weight: bold;
  color: #222222;
  padding:0 0 5px 5px;
}

#signup input[type="text"] {
  font-size: 16px;
  font-weight: bold;
  color: #000000;
  width: 300px;
}

#signup img {
  position: absolute;
  right: 0px;
  top: 42px;
}

p.plan_fn {
  position:relative;
  float:left;
  top:-10px;
  width:500px;
  font-size:11px;
  text-align:center;
}


#signin {
    text-align: right;
    font-size: 12px;
    font-style: italic;
}

#pagename {
    font-size: 28px;
    font-weight: bold;
    margin: 20px 0px;
}

#pageinfo {
    font-size: 14px;
    color: #666;
    font-weight: normal;
    margin-left: 2px;
    line-height: 0.5;
}

#jointext {
    margin: 20px 0px 30px 0px;
    font-size: 14px;
    color: #444;
    width: 500px;
}

#formname {
    margin: 0px auto;
    margin-top: 20px;
    margin-bottom:0px;
    padding: 0px;
    font-size: 28px;
    font-weight: bold;
    text-align:center;
}

#joinform {
    width: 500px;


    background:#F2F2F2;
    -webkit-border-radius:10px;
    -webkit-box-shadow:1px 1px 3px #A5A5A5;
    -moz-border-radius:10px;
    -moz-box-shadow:1px 1px 3px #A5A5A5;
    margin: 2em auto 2em auto;
    padding: 20px;
    margin-top: 0px;
}

#joinform label {
    clear:left;
    float:left;
    width:200px;
    text-align:right;
    font-weight: bold;
    margin-right: 10px;
    margin-top: 5px;
}

#joinform input {
    margin-top: 5px;
    width: 200px;
}

#joinform #submit {
    clear: left;
    margin-left: 200px;
    margin-top: 20px;
}

#joinform .questions {
    margin: 20px 0px;
    margin-left: 90px;
}
#joinform .questions input {
    margin-left:120px;
}

#joinform .checkboxen {
    margin: 20px 0px;
    margin-left: 90px;
}
#joinform .checkboxen input {
    width: auto;
    margin-right: 5px;
}

#confirmers {
    margin: 30px 0px;
}

#confirmers .col {
    float:left;
    width: 250px;
    margin: 0px 5px;

    background:#F2F2F2;
    -webkit-border-radius:10px;
    -webkit-box-shadow:1px 1px 3px #A5A5A5;
    -moz-border-radius:10px;
    -moz-box-shadow:1px 1px 3px #A5A5A5;
    padding: 20px;
    height: 200px;
}

#confirmers .colsp {
    float:left;
    width: 50px;
    margin-top: 50px;
    font-style: italic;
    text-align:center;
}

#confirmers .col h3 {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 10px;
}

#confirmers .col .confirmed {
    font-size: 30px;
    text-shadow: 0px -1px 1px #fff;
    color: #666;
    font-weight: bold;
}

#confirmers .col .confirmed .cb {
    color: green;
}

.hsection {
    clear:left;
    border-bottom: 1px solid #999;
}


/*

  980 / 3 = 327 - 40px = 285
  327* 2  = 654 - 40px = 610

*/


.hsection .hs1 {
    width: 285px;
    float: left;
    padding: 20px;
}

.hsection .hs2 {
    width: 610px;
    float:left;
    padding: 20px;
}

.hsection .hs3 {
    padding: 20px;
}

.sticky {
    background: #eee;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    padding: 10px;
    -webkit-box-shadow:1px 1px 3px #A5A5A5;
    -moz-box-shadow:1px 1px 3px #A5A5A5;
    margin-top: 20px;
}
