/* Contains master styles for main layout, typography and page styles */

/*------------------------------------------------------------------------------------
  @group Global Reset
------------------------------------------------------------------------------------*/
* {
  padding:0;
  margin:0;
}
h1, h2, h3, h4, h5, h6, p, pre, blockquote, label, ul, ol, dl, fieldset, address { margin:1em 0; }
li, dd { margin-left:5%; }
fieldset { padding: .5em; }
select option{ padding:0 5px; }
button{ padding:0.5em;}

.access{ display:none; } /* For accessibility related elements */
.clear{ clear:both; height:0px; font-size:0px; line-height:0px; overflow:hidden; }
a{ outline:none; }
a img{ border:none; }

.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
* html .clearfix {height: 1%;}
.clearfix {display:inline-block;}
.clearfix {display: block;}

/* @end */

/*------------------------------------------------------------------------------------
  @group Main Layout
------------------------------------------------------------------------------------*/

body{
  background-color:#a3dbf5;
}

ul#nav, #content .inner, #footer, #subcontent .inner{
  margin:0 auto;
  padding:0 10px;
  width:940px;
}

.columns:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
* html .columns {height: 1%;}
.columns {display:inline-block;}
.columns {display: block;}

/* @end */

/*------------------------------------------------------------------------------------
  @group Header
------------------------------------------------------------------------------------*/

#header{
  height:140px;
  background:url(../images/header.gif) 50% 45px no-repeat #f2f2f2;
  border-bottom:1px solid #e0e0e0;
}

.navigation{
  height:45px;
  border-bottom:1px solid #e0e0e0;
  background:url(../images/nav_back.gif) 50% 0 no-repeat #fff;
}

ul#nav li{
  list-style-type:none;
  float:left;
  margin:0 0 0 10px;
  padding:6px 0 0 0;
  width:180px;
  line-height:1.2;
  border-top:3px solid #fff;
}
ul#nav li:first-child{ margin-left:0; }
ul#nav li:hover{
  border-top-color:#aaa;
}
ul#nav li.selected{
  border-top-color:#000;
}
ul#nav li h4{
  margin:0;
  font-size:12px;
  text-transform:uppercase;
}
ul#nav li h4 a{
  display:block;
  color:#000;
}
ul#nav li p{
  margin:0;
  font-size:10px;
}
ul#nav li p a{
  display:block;
  color:#999;
  font-weight:normal;
}
ul#nav li:hover p a{ color:#000; }
ul#nav li.selected p a{ color:#999; }

#header h2#logo, #header p.title{ display:none; }

/* @end */

/*------------------------------------------------------------------------------------
  @group Footer
------------------------------------------------------------------------------------*/

#footer{
  padding-top:10px;
  padding-bottom:75px;
  font-size:11px;
  color:#005780;
  line-height:1.2;
}

#footer p.copyright{
  float:left;
}

ul#fnav{
  float:right;
  margin:11px -8px 11px 0;
}
ul#fnav li{
  list-style-type:none;
  float:left;
  margin:0;
  padding:0 8px;
  border-left:1px solid #65b4d9;
}
ul#fnav li:first-child{ border:none; }
ul#fnav li a{
  font-weight:normal;
  color:#0067a1;
}
ul#fnav li a:hover{ color:#000; }

/* @end */

/*------------------------------------------------------------------------------------
  @group Contnet
------------------------------------------------------------------------------------*/

#content, #content_nav{
  overflow:hidden;
  background:#fff;
}
#content_nav{
  border-bottom:1px solid #e0e0e0;
}
#content .inner, #content_nav .inner{
  margin:0 auto;
  width:940px;
}

ul.subnav{
  margin:0;
}
ul.subnav li{
  list-style-type:none;
  margin:0;
  display:inline;
}
ul.subnav li a{
  float:left;
  margin-right:20px;
  padding:10px 0 5px 0;
  font-size:11px;
  font-weight:bold;
  text-transform:uppercase;
  border-bottom:3px solid #fff;
}
ul.subnav li a.selected{
  color:#000;
  border-color:#ccc;
}

#content_nav .search{
  float:right;
  margin-top:3px;
  width:172px;
  height:23px;
  padding:2px 4px;
  background:url(../images/search_back.gif) 0 0 no-repeat;
}
#content_nav .search-focused{ background-position:0 -27px; }
#content_nav .search input{
  width:143px;
  padding:3px;
  border:none;
  font-family:"Helvetica Neue", Helvetica, Arial, sans-serif;
}
#content_nav .search input.placeholder{ color:#999; }
#content_nav .search input:focus{ outline:none; }
#content_nav .search button{ display:none; }

.columns .main{
  float:left;
  width:700px;
}
.columns .sidebar{
  float:right;
  width:180px;
}

/* @end */

/*------------------------------------------------------------------------------------
  @group Type
------------------------------------------------------------------------------------*/

body{
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:14px;
  line-height:1.5;
  color:#000;
}

a{
  color:#008ada;
  text-decoration:none;
}
a:hover{ color:#00758e; }

h1{
  margin:0.5em 0;
  font-size:30px;
  color:#ad0000;
}
h1 a{ color:#ad0000; }

h2{
  font-size:20px;
}

/* @end */

/*------------------------------------------------------------------------------------
  @group Blog Item Styles
------------------------------------------------------------------------------------*/

.blog-item{
  position:relative;
  margin:30px 0 40px 65px;
}
.single .blog-item{
  margin:20px 0 0 0;
}

.blog-item h1{
  font-size:24px;
  margin-top:-12px;
  margin-bottom:0;
}
.single .blog-item h1{
  margin-top:0;
  font-size:30px;
}
.blog-item div.meta{
  padding-bottom:5px;
  font-size:12px;
  color:#666;
  border-bottom:1px solid #e0e0e0;
}
.blog-item p.meta{
  margin:-4px 0 0 0;
}
.blog-item .comment-count{
  float:right;
  margin-top:5px;
  font-size:10px;
  text-transform:uppercase;
}

.blog-item .avatar{
  display:block;
  position:absolute;
  top:6px;
  left:-65px;
  padding:2px;
  width:53px;
  height:46px;
  background:url(../images/avatar_back.gif) 0 0 no-repeat;
}
.single .blog-item .avatar{ display:none; }

.blog-item .continue-link{
  font-weight:bold;
}
.blog-item p{
  line-height:1.8;
}

.tumble-item{
  padding-left:0;
  font-size:16px;
  color:#666;
}
.tumble-item div.meta{ border-bottom:1px dotted #ccc; }
.tumble-item p.meta{
  margin:0;
  font-size:11px;
  font-weight:bold;
  color:#ad0000;
}
.tumble-item p.meta a{ color:#ad0000; }

.tumble-item .body{
  padding-left:45px;
  background:url(../images/type_generic.gif) 0 0 no-repeat;
}
.link .body{
  background-image:url(../images/type_link.gif);
}
.quote .body{
  font-size:12px;
  background-image:url(../images/type_quote.gif);
}
.quote .body blockquote{
  font-family: "Palatino", Georgia, Times, serif;
  font-style:italic;
  font-size:18px;
}
.quote .body p{
  line-height:1.4;
}
.image{
  font-size:12px;
}
.image img{
  border:3px solid #ddd;
}

/* @end */

/*------------------------------------------------------------------------------------
  @group Content Styles
------------------------------------------------------------------------------------*/

.single .blog-item .figure{
  border:1px solid #e5e5e5;
  padding:4px;
  background:#f5f5f5;
  line-height:1.0;
  text-align:center;
}
.single .blog-item img{
  max-width:690px;
}

.blog-item h2{
  font-size:20px;
  border-bottom:1px dotted #ccc;
}
.blog-item h3{
  font-size:14px;
  border-bottom:1px dotted #ccc;
}
.blog-item h4{
  margin-bottom:-0.75em;
  font-size:14px;
}

.blog-item pre {
  margin:18px 0;
  background-color: #f1f1f1;
  padding: 3px;
  overflow:auto;
}
.blog-item pre code {
  padding:9px;
  font-size: 12px;
  font-family: monospace;
  display: block;
  background-color:#fcfcfc;
  border: 1px solid #ddd;
}

.single .blog-item blockquote{
  margin:20px 0;
  color:#666;
  font-family: "Palatino", Georgia, Times, serif;
  font-style:italic;
  font-size:18px;
  border:3px solid #eee;
  border-left:none;
  border-right:none;
}

.blog-item ul{
  margin:20px 0;
}
.blog-item ul li{
  list-style-type:none;
  margin-left:15px;
  margin-bottom:10px;
  padding-left:15px;
  background:url(../images/bullet.gif) 0 8px no-repeat;
}

/* @end */

/*------------------------------------------------------------------------------------
  @group Sidebar
------------------------------------------------------------------------------------*/

.sidebar h3{
  font-size:12px;
}

.sidebar ul.itemlist{
  margin-left:0;
  margin-bottom:28px;
  font-size:12px;
  color:#666;
  border-top:1px solid #e5e5e5;
}
.sidebar ul.itemlist li{
  list-style-type:none;
  margin:0;
  padding:5px 0;
  line-height:1.3;
  border-bottom:1px solid #e5e5e5;
}
.sidebar ul.productlist li{
  padding:10px 0 8px;
}
.sidebar ul.itemlist li a{ font-weight:bold; }

ul.global-links{
  margin:28px 0 20px 0;
}
ul.global-links li{
  list-style-type:none;
  margin:10px 0;
  font-size:12px;
  font-weight:bold;
}
ul.global-links li.feed a{
  padding:1px 0 4px 25px;
  background:url(../images/gicon_feed.gif) 0 0 no-repeat;
}
ul.global-links li.archives a{
  padding:1px 0 4px 25px;
  background:url(../images/gicon_archives.gif) 0 0 no-repeat;
}
ul.global-links li.universe a{
  padding:1px 0 4px 25px;
  background:url(../images/gicon_universe.gif) 0 0 no-repeat;
}

div.about{
  margin:28px 0;
  padding:10px;
  font-size:11px;
  font-weight:bold;
  color:#433c00;
  background:url(../images/about_fold.gif) 100% 0 no-repeat #fef4a2;
}

.twitter{
  margin:28px 0;
}
.twitter ul, .twitter ul li{ list-style-type:none; margin:0; }
.twitter p.tweet{
  margin:0;
  padding:10px 10px 23px 10px;
  font-size:11px;
  color:#244b5d;
  background:url(../images/twitter_bubble-arrow.gif) 0 100% no-repeat #e5f0f5;
}
.twitter p.tweet a{ color:#244b5d; }

.twitter p.info{
  margin:5px 0 5px 0;
  font-size:11px;
}
.twitter p.info a.updated{
  display:block;
  color:#666;
}
.twitter p.info a.logo{
  margin:0 0 3px 0;
  display:block;
  width:74px;
  height:19px;
  text-indent:-9999px;
  background:url(../images/twitter_logo.gif) 0 0 no-repeat;
}

/* @end */

/*------------------------------------------------------------------------------------
  @group Comments
------------------------------------------------------------------------------------*/

.comments h2, .comment-form h2{
  margin:30px 0 0 0;
  padding-top:10px;
  padding-left:60px;
  font-size:24px;
  border-top:1px solid #e5e5e5;
}
ol.comments{
  margin:0 0 30px 0;
  overflow:hidden;
  font-size:12px;
  color:#333;
}
ol.comments li{
  list-style-type:none;
  position:relative;
  width:618px;
  margin:15px 0 15px 60px;
  padding: 0 10px 10px;
  border:1px solid #ddd;
  background:#f5f5f5;
}
ol.comments span.gravatar{
  position:absolute;
  top:0;
  left:-60px;
  width:40px;
  height:40px;
  padding:1px;
  border:2px solid #e5e5e5;
}
ol.comments .meta{
  position:relative;
  width:100%;
  margin-left:-10px;
  padding:0 10px;
  color:#666;
  border-bottom:1px solid #eee;
}
ol.comments .meta cite{
  position:relative;
  display:block;
  width:100%;
  margin-left:-10px;
  padding:10px 10px;
  border-bottom:1px solid #ddd;
  background:#fff;
}
ol.comments .meta cite{ font-style:normal; }
ol.comments .meta cite .author{ font-weight:bold; color:#000; }
ol.comments .meta cite .author a{ color:#000; }


.comment-form{
  margin:30px 0;
}
.comment-form h2{
  padding-left:0;
}
.comment-form p.warning{
  margin-top:0;
  padding-bottom:15px;
  font-size:12px;
  color:#666;
  border-bottom:1px dotted #ccc;
}

dl.form{
  margin:15px 0;
}
dl.form dt{
  display:inline;
  margin:0;
  font-size:12px;
  color:#999;
}
dl.form dd{
  margin:0;
}
input.textfield{
  width:270px;
  padding:5px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:16px;
  color:#333;
  border:1px solid #ccc;
  border-right-color:#ddd;
  border-bottom-color:#ddd;
}
.comment-form textarea{
  width:688px;
  height:200px;
  padding:5px;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size:12px;
  color:#333;
  border:1px solid #ccc;
  border-right-color:#ddd;
  border-bottom-color:#ddd;
}

.form-actions{
  padding:5px 0;
  text-align:right;
}
.form-actions button{
  font-size:12px;
}

/* @end */

/*------------------------------------------------------------------------------------
  @group Pagination
------------------------------------------------------------------------------------*/

.pagination{
  margin:30px 0;
  padding:10px 5px;
  height:16px;
  border-top:2px solid #ddd;
  background:#f5f5f5;
}
.pagination a{
  text-transform:uppercase;
  font-size:11px;
}
.pagination .older{
  float:left;
}
.pagination .newer{
  float:right;
}

/* @end */

/*------------------------------------------------------------------------------------
  @group Archives
------------------------------------------------------------------------------------*/

.archives h2{
  margin-bottom:15px;
}

.date-archives h3{
  margin:0;
  font-size:14px;
  color:#666;
}

ul.month-archives{
  margin:0 0 15px 0;
  padding:5px 0;
  height:20px;
  border-top:1px dotted #ccc;
}
ul.month-archives li{
  list-style-type:none;
  margin:0;
  float:left;
  width:8.3%;
  font-size:12px;
}
ul.month-archives li a{
  font-weight:bold;
}
ul.month-archives li em{
  position:relative;
  top:-1px;
  font-style:normal;
  color:#999;
  font-size:11px;
}

ul.posts-list{
  margin:15px 0;
  border-top:1px solid #e5e5e5;
}
ul.posts-list li{
  list-style-type:none;
  margin:0;
  padding:10px 0;
  border-bottom:1px solid #e5e5e5;
  font-size:12px;
}
ul.posts-list h4{
  margin:0;
  font-size:12px;
  display:inline;
}
ul.posts-list p.author{
  display:inline;
  font-weight:bold;
  color:#999;
}
ul.posts-list p.date{
  float:left;
  margin:0;
  color:#666;
  font-size:11px;
}
html>body*#content ul.posts-list p.date{
  float:none;
  display:block;
}
html>body*#content ul.posts-list p.comments{
  margin-top:-16px;
}
ul.posts-list p.comments{
  margin:0;
  text-align:right;
  color:#999;
  font-size:11px;
}

/* @end */

/*------------------------------------------------------------------------------------
  @group Error Page
------------------------------------------------------------------------------------*/

.error{
  text-align:center;
}

/* @end */

/* -----------------------
  @group Code
-------------------------*/
/* @group Code */

code p.line {
  background: #eee;
  display: block;
  padding: 1px 2px;
  margin: 0 0 1px 0;
}

code span.person {
  color: purple;
}

/** RUBY / JAVASCRIPT **/

code span.comment {
  color: #888;
}

code span.global {
  color: #38D;
}

code span.brackets {
  color: #777;
}

code span.string {
  color: blue;
}

code span.symbol, code span.selectors {
  color: #19E;
}

code span.properties {
  color: #b41;
}

code span.keywords {
  color: #4b2;
}

/** HTML **/

code.html span.tag {
  color: #b41;
}

code.html span.attribute {
  color: #4b2;
}

code.html span.string {
  color: #2277BB;
}

code.html span.comment {
  color: #999;
}

code.html span.doctype {
  color: #D7FF80;
}

/*------------------------------------------------------------------------------------
  @group Training Promo
------------------------------------------------------------------------------------*/

#training_promo a{
  display:block;
  padding:0 15px;
  height:38px;
  line-height:38px;
  font-size:12px;
  font-weight:bold;
  color:#000;
  background:url(../images/training_banner.gif) 0 0 no-repeat;
}

/* @end */