/* JBrains Stylesheet v1 (c)2010 Pepsmedia Ltd. */
/* Global reset */
/* Based upon 'reset.css' in the Yahoo! User Interface Library: http://developer.yahoo.com/yui */
/* JBrains Stylesheet v1 (c)2010 Pepsmedia Ltd. */
/* Colours */
/* Typography Styles */
/* Load of @font-face families */
@import url(http://fonts.googleapis.com/css?family=Droid+Serif:regular,italic,bold|Droid+Sans:regular,bold|Homenaje:400);
/* Base typography styling */
/* Core Layout styles */
/*html      { height:101%; /* Fool the browser into thinking there is always a scroll bar }*/
/* Styles for wherever we need a list of articles: category, archives, ... */
/*
 * SMELL Relative links to images that start with ../images
 */
/* Footer styling ============================================================================================================ */
/* Home Page ================================================================================================================= */
/* SMELL Lots of knowledge of the layout of 620px + 20px + 300px here. */
/* General Page styling ====================================================================================================== */
/* Sidebar Styling =========================================================================================================== */
/* Comment Styling =========================================================================================================== */
/* 404 Page ================================================================================================================== */
/* REFACTOR Move page ID rules into one place. */
/* Navigation */
/* Junk drawer. Cohesion problems! */
/*
 * Overall styling for a single blog posting.
 * Don't depend on the world, if you can avoid it.
 * Designed to be included by the importing SCSS inside
 * the appropriate CSS class container for an article.
 */
/* The article masthead */
/* Merge these into a kind of "page" style, but with a better name
 * than "page style". */
*, html, body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, label, fieldset, input, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
fieldset, img {
  border: 0;
}
address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}
ol, ul, li {
  list-style: none;
}
caption, th {
  text-align: left;
}
h1, h2, h3, h4, h5, h6 {
  font-size: medium;
  font-weight: normal;
}
q:before, q:after {
  content: '';
  /* Global reset-RESET */
  /* The below restores some sensible defaults */
}
strong {
  font-weight: bold;
}
em {
  font-style: italic;
}
a img {
  /* Gets rid of IE's blue borders */
  border: none;
}
html {
  font-size: medium;
}
body, td, th, textarea, input {
  color: #545454;
  font-family: 'Droid Sans', Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: medium;
  line-height: 1.5;
}
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
}
h1, h2, h3, h4 {
  color: #2e2929;
  font-family: 'Droid Serif', Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif;
}
h1 {
  line-height: 1.5;
  margin-bottom: 1.5em;
}
h2 {
  line-height: 1.5;
  margin-bottom: 0.75em;
}
h3 {
  line-height: 1.5;
  margin-bottom: 0.5em;
}
h4 {
  line-height: 1.25;
  margin-bottom: 0.5em;
}
h5 {
  font-weight: bold;
  margin-bottom: 1em;
}
h6 {
  font-weight: bold;
  margin-bottom: 1em;
}
h1 img, h2 img, h3 img, h4 img, h5 img, h6 img {
  margin: 0;
}
p {
  margin: 0 0 1.5em;
}
p.meta {
  margin: 0 0 0.5em 0;
}
strong {
  font-weight: bold;
}
em, dfn {
  font-style: italic;
  font-family: 'Droid Serif', Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif;
}
blockquote {
  font-style: italic;
  font-family: 'Droid Serif', Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif;
}
blockquote p:last-child {
  margin-bottom: 0;
}
blockquote cite {
  font-family: 'Droid Sans', Arial, "Helvetica Neue", Helvetica, sans-serif;
  text-transform: uppercase;
}
ul, ol {
  margin-left: 16px;
}
ul li {
  list-style-type: disc;
  margin-bottom: 9px;
}
ol li {
  list-style-type: decimal;
  margin-bottom: 9px;
  /* Section titles */
}
h4.title {
  border-bottom: 2px solid #e36877;
  color: #787878;
  font-family: 'Droid Sans', Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: bold;
  line-height: 1;
  letter-spacing: 1px;
  text-transform: uppercase;
}
h4.title strong {
  color: #2e2929;
  /* Links */
}
a, a:visited {
  color: #e36877;
  text-decoration: none;
}
a:hover {
  color: #a94a56;
  text-decoration: underline;
  -webkit-transition: all 0.2s linear;
  /* block pink links */
}
.block-link {
  background: #e36877;
  clear: both;
  color: #fff;
  display: block;
  font-family: 'Droid Sans', Arial, "Helvetica Neue", Helvetica, sans-serif;
  line-height: 18px;
  letter-spacing: 1px;
  margin: 9px 0 18px 0;
  overflow: hidden;
  padding: 6px 0 6px 0;
  text-transform: uppercase;
  width: 100%;
}
.block-link:hover {
  background: #a94a56;
  -webkit-transition: all 0.2s linear;
}
.block-link a {
  color: #fff;
}
.block-link a:hover {
  color: #fff;
  text-decoration: none;
}
.block-link a.right {
  float: right;
  display: inline-block;
  margin-right: 10px;
}
.block-link a.left {
  background: url(../images/arrow-up.png) no-repeat 0 45%;
  color: #fff;
  float: left;
  display: inline-block;
  margin-left: 10px;
  padding-left: 15px;
}
.block-link.single {
  margin-bottom: 18px;
  /* Buttons */
}
a.button {
  background: #e36877;
  color: #fff !important;
  display: inline-block;
  padding: 5px 10px 5px 10px;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
}
a.button:hover {
  background: #a94a56;
  text-decoration: none;
  -webkit-transition: all 0.2s linear;
  /* Form items */
}
label {
  vertical-align: middle;
}
input[type="text"] {
  vertical-align: middle;
}
.rounded-button {
  background: #e36877 !important;
  border: 0;
  color: white !important;
  cursor: pointer;
  padding: 5px 17.5px;
  vertical-align: middle;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
.rounded-button:hover {
  background: #a94a56 !important;
  color: white !important;
  -webkit-transition: all 0.2s linear;
}
body {
  background: #fff;
  text-align: center;
  width: 100%;
}
.content, #main-content {
  margin: 0 auto;
  position: relative;
  text-align: left;
  width: 940px;
}
#main-content {
  margin-bottom: 0;
  overflow: hidden;
}
#main-content .column {
  float: left;
  position: relative;
  margin-top: 2ex;
}
#main-content .column.w620 {
  float: left;
  padding: 0;
  width: 620px;
}
#main-content .column.w300 {
  float: left;
  padding: 0;
  width: 300px;
  margin-left: 20px;
}
#main-content .column.first {
  margin-left: 0;
}
p#top {
  height: 1px;
  float: left;
  margin: -1px 0 0 0;
  width: 100;
  /* Use this br class to clear your floated columns */
}
span.clear {
  clear: both;
  display: block;
  height: 1px;
  line-height: 0;
  margin: -1px 0 0 0;
  width: 1px;
}
ul.post-list {
  margin: 0;
  padding: 0;
}
ul.post-list li {
  list-style: none;
}
ul.post-list li:nth-of-type(1) {
  margin-top: 0;
}
ul.post-list h3.post-title {
  margin: 0;
  padding: 0;
}
ul.post-list li {
  border-bottom: 1px solid ;
  padding: 1ex 0 1ex 0;
  margin-left: 0;
}
.content #announcements {
  position: absolute;
  top: 0;
  left: 0;
  /* The edge of the adjoining text; how to calculate it? */
  width: 540px;
  /* Same as .lead-in */
  margin-top: 20px;
  /* Spacer */
  margin-right: 20px;
  /* Header styles - homepage has a 'tall' header - rest of site a 'short' header ================================================== */
}
.content #announcements .conference-speaking-badge {
  float: right;
}
.speaking_header .content #announcements .conference-speaking-badge {
  /* The image on this page is on the right, facing left. */
  float: left;
  /* Sneak under the search bar. */
  margin-top: 40px;
}
.content #announcements .conference-speaking-badge img {
  width: 200px;
}
#header {
  background-color: #2e2929;
  color: #fff;
  overflow: hidden;
  position: relative;
}
.tall_header {
  background-image: url(../images/header-home.jpg);
  background-repeat: no-repeat;
  background-position: 5% 0;
  height: 521px;
}
.short_header {
  background-image: url(../images/header-page.jpg);
  background-repeat: no-repeat;
  background-position: 5% 0;
  height: 360px;
}
.speaking_header {
  background-image: url(../images/header-speaking.jpg);
  background-repeat: no-repeat;
  background-position: 5% 0;
  height: 360px;
}
#header #searchform {
  left: 0;
  position: absolute;
  top: 18px;
  width: 300px;
}
#header #searchform input#s {
  background: none;
  border: 0;
  border-bottom: 1px solid #e36877;
  color: #fff;
  float: left;
  outline: 0;
  width: 200px;
}
#header #searchform label {
  background: url(../images/icons/icon-search.png) no-repeat top left;
  float: left;
  margin: 6px 10px 0 0;
  text-indent: -9999px;
  height: 16px;
  width: 19px;
}
#header #searchform input#searchsubmit {
  display: none;
  /* The heading "jbrains.ca" */
}
#header h1 {
  font-family: 'Homenaje', 'Arial Narrow', sans-serif;
  font-size: 500%;
  line-height: 1.1;
  margin: 0 0 0px 560px;
  text-transform: uppercase;
}
#header h1 a:hover {
  color: #fff;
  text-decoration: none;
}
#header h1 a span {
  color: #fff;
}
#header h1 a:hover span {
  color: #e36877;
}
#header p.note {
  font-size: 95%;
  clear: both;
  margin-bottom: 2ex;
  margin-left: 560px;
}
#header p.tel {
  background: #e36877 url(../images/icons/icon-phone.png) 5px 50% no-repeat;
  font-weight: bold;
  padding: 5px 10px 5px 25px;
  position: absolute;
  right: 0;
  text-transform: uppercase;
  top: 0;
}
#header p.tel a {
  color: #fff;
}
#header em {
  display: inline-block;
  line-height: 19px;
  margin: 24px 0 9px 560px;
}
.short_header em {
  margin-top: 16px !important;
}
#header strong {
  color: #e36877;
}
#header #main-menu {
  margin: 0 auto;
  overflow: hidden;
  width: 940px;
}
#header #main-menu li {
  display: inline;
  float: left;
  margin-left: 20px;
  width: 220px;
}
#header #main-menu li:first-child {
  margin-left: 0;
}
#header #main-menu li a {
  line-height: 1;
  background: #e36877;
  color: #fff;
  display: block;
  padding: 2ex;
  /* The explanatory text */
}
#header #main-menu li a p.menu-item-description {
  min-height: 4ex;
  font-size: 75%;
  margin: 0;
  padding: 0;
}
#header #main-menu li a p.menu-item-title {
  font-size: 230%;
  display: block;
  font-family: 'Homenaje', 'Arial Narrow', sans-serif;
  line-height: 1;
  margin-bottom: 3px;
  text-transform: uppercase;
  /* .page_item is the currently-selected page */
}
#header #main-menu li a:hover, #header #main-menu li.page_item a {
  background: #fff;
  color: #e36877;
  text-decoration: none;
}
#header #sub-menu {
  font-size: 95%;
  line-height: 1.5;
  clear: both;
  font-weight: bold;
  margin: 0 0 2ex 560px;
}
#header #sub-menu li {
  list-style: none;
  margin: 0;
}
#header #sub-menu li a:hover {
  color: #fff;
}
#footer {
  background: #2e2929;
  color: #e36877;
  margin: 0 auto;
  overflow: hidden;
  padding: 10px;
  text-align: left;
  /* SMELL Duplicates the 600 + 20 + 320 layout of the main content area */
  width: 920px;
}
#footer .column {
  float: left;
  margin-left: 20px;
  padding: 8px;
  width: 277.33333px;
}
#footer .column:nth-of-type(1) {
  margin-left: 0px;
}
#footer h4 {
  border-top: none;
  border-bottom: 1px solid #645c5c;
  color: #645c5c;
}
#copyright {
  background: #101010;
  color: #fff;
  margin: 0 auto 2ex auto;
  padding: 10px;
  text-align: left;
  /* Matches 600 + 320 in the main content area */
  width: 920px;
}
#home-page-latest-posts {
  float: left;
  width: 300px;
  /* SMELL Hack. */
  padding-left: 20px;
}
#featured-posts {
  border-top: 1px solid #d9d9d9;
  border-bottom: 2px solid #e36877;
  margin: 0;
  padding: 1ex 0 1ex 0;
  /* For the back to the link */
  float: left;
  margin-bottom: 2ex;
  width: 620px;
  /* Intro */
}
#featured-posts ul {
  margin: 0;
  padding: 0;
}
#featured-posts ul li {
  border-bottom: 1px solid #d9d9d9;
  list-style: none;
  margin: 0;
  padding: 0;
}
#featured-posts h3.post-title {
  font-size: 150%;
}
#featured-posts h4.title {
  padding: 1ex 0 1ex 0;
}
.home #intro {
  font-size: medium;
  margin: 3ex 0 2ex 0;
  overflow: hidden;
}
.home #intro .home-intro-left {
  float: left;
  font-family: 'Homenaje', 'Arial Narrow', sans-serif;
  font-size: 300%;
  line-height: 1.2;
  margin-right: 20px;
  width: 300px;
}
.home #intro .home-intro-center {
  margin-bottom: 0;
  float: left;
  width: 300px;
}
.home #intro .home-intro-center .lead {
  margin-bottom: 1ex;
  font-size: 100%;
  float: left;
  width: 300px;
}
.home #intro .home-intro-center .cta {
  font-size: 150%;
  line-height: 1.2;
  font-weight: bold;
}
.home #intro blockquote {
  background: #2e2929 url(../images/quote.gif) no-repeat 10px 10px;
  color: #fff;
  float: right;
  padding: 20px 20px 10px 20px;
  width: 260px;
}
.home #intro blockquote p {
  margin: 0px !important;
  padding: 0px !important;
  /* Services list */
}
#services {
  /* Lower 3 columns */
}
#services .service-caption {
  float: left;
  width: 320px;
}
#services .service-title {
  margin: 0;
  padding-bottom: 0.5ex;
  /* 7px is approximately 1em */
  font-size: 428.57143%;
  line-height: 1;
  font-family: 'Homenaje', 'Arial Narrow', sans-serif;
  text-transform: uppercase;
  width: 300px;
  overflow: visible;
}
#services .service-teaser {
  font-style: italic;
  font-family: 'Droid Serif', Georgia, Palatino, Palatino Linotype, Times, Times New Roman, serif;
  margin: 0;
  padding: 0;
  font-size: 150%;
  width: 90%;
}
#services .service-content {
  width: 620px;
  moz-column-count: 2;
  -moz-column-gap: 20px;
  -moz-column-rule: none;
  -webkit-column-count: 2;
  -webkit-column-gap: 20px;
  -webkit-column-rule: none;
  column-count: 2;
  column-gap: 20px;
  column-rule: none;
}
#services ul {
  margin: 0;
}
#services li {
  border-top: 1px solid #d9d9d9;
  padding-top: 2ex;
  list-style: none;
}
#services .block-link {
  width: 100%;
}
#sub-footer {
  clear: both;
  overflow: hidden;
}
#conferences ul {
  margin: 0;
}
#conferences li {
  list-style: none;
  margin-bottom: 9px;
}
#conferences img {
  height: 75px;
}
#sessions ul {
  margin: -18px 0 0 0;
}
#sessions li {
  border-top: 1px solid #d9d9d9;
  list-style: none;
  padding: 18px 100px 9px 0;
  position: relative;
  width: 200px;
}
#sessions li:first-child {
  border-top: none;
}
#sessions li a.button {
  margin-top: -10px;
  position: absolute;
  right: 0;
  top: 50%;
}
#appearing ul {
  margin: -10px 0 0 0;
}
#appearing li {
  border-top: 1px solid #d9d9d9;
  list-style: none;
  padding: 3px 100px 0px 0;
  position: relative;
  width: 200px;
}
#appearing li:first-child {
  border-top: none;
  /* Stick the block link to the bottom of the column */
}
#sub-footer .block-link {
  clear: none;
  float: left;
  margin-left: 20px;
  width: 300px;
}
#sub-footer .block-link.first {
  margin-left: 0;
  /* For the tripit widget */
}
#tripit-badge-inner-div {
  margin: -6px 0 18px -6px;
  position: relative;
  width: 300px !important;
}
#tripit-badge-inner-div > div {
  border: none !important;
  font-family: 'Droid Sans', Arial, "Helvetica Neue", Helvetica, sans-serif !important;
  line-height: 1.5 !important;
  max-width: 298px !important;
  width: 298px !important;
}
#tripit-badge-inner-div a {
  color: #e36877 !important;
}
#tripit-badge-inner-div hr {
  border: none !important;
  color: #d9d9d9 !important;
  height: 1px !important;
  margin: 0.5em 0 !important;
  width: 100% !important;
  /* Pagination */
}
.pagination {
  background: #f2f2f2;
  margin-bottom: 18px;
  overflow: hidden;
  padding: 5px 3px;
  width: 614px;
}
.pagination ol {
  margin: 0;
  overflow: hidden;
}
.pagination ol li {
  display: inline;
  float: left;
  margin: 0 3px 0;
  list-style: none;
}
.pagination ol li .title {
  display: none;
}
.pagination ol li span {
  display: inline-block;
  padding: 3px 10px;
}
.pagination ol li .current {
  border: 1px solid #e36877;
  background: #e36877;
  color: #fff;
  display: inline-block;
  padding: 3px 10px;
}
.pagination ol li a {
  background: #fff;
  border: 1px solid #e36877;
  display: block;
  padding: 3px 10px;
}
.pagination ol li a:hover {
  background: #e36877;
  color: #fff;
  text-decoration: none;
  -webkit-transition: all 0.2s linear;
}
.page-title {
  border-bottom: 2px solid #e36877;
  padding-bottom: 0.5ex;
}
#sidebar {
  float: left;
  margin: 0 0 0 20px;
  padding: 0;
  width: 300px;
}
#sidebar ul, #sidebar ol {
  margin-left: 0;
}
#sidebar li {
  list-style: none;
}
#comments {
  overflow: hidden;
  width: 620px;
}
#comments ol {
  margin: 0;
}
#comments ol li {
  border-top: 1px solid #d9d9d9;
  list-style: none;
  margin: 0 0 18px 0;
  padding-top: 19px;
}
#comments ol li li {
  border-top: 0;
}
#comments .comment-author {
  background: #f2f2f2;
  margin-bottom: 18px;
  overflow: hidden;
  text-transform: uppercase;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  padding: 5px;
}
#comments .comment-author img {
  border: 3px solid #fff;
  float: left;
  margin-right: 10px;
}
#comments .comment-author:hover img {
  border: 3px solid #e36877;
}
#respond {
  border-top: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
  margin: 18px 0 18px 0;
  padding: 18px 0 18px 0;
}
#respond label {
  display: block;
  font-weight: bold;
}
h3#comments-title, h3#reply-title {
  font-family: 'Homenaje', 'Arial Narrow', sans-serif;
  line-height: 42px;
  text-transform: uppercase;
}
h3#comments-title strong, h3#reply-title strong {
  color: #e36877;
}
.error404 h2 {
  font-family: 'Homenaje', 'Arial Narrow', sans-serif;
  font-size: 600%;
  line-height: 1;
  margin-bottom: 0;
  text-transform: uppercase;
}
.error404 form {
  margin-bottom: 18px;
}
.error404 form label {
  font-weight: bold;
}
#main-blog-posts-list {
  border-top: 1px solid #d9d9d9;
  border-bottom: 2px solid #e36877;
  margin: 0;
  padding: 1ex 0 1ex 0;
  /* For the back to the link */
}
#main-blog-posts-list li {
  list-style: none;
}
#main-blog-posts-list li:nth-of-type(1) {
  margin-top: 0;
}
#main-blog-posts-list h3.post-title {
  margin: 0;
  padding: 0;
}
#main-blog-posts-list h3.post-title {
  font-size: 150%;
  /* SMELL Duplicates #latest-posts h4.title */
}
#main-blog-posts-list h4.title {
  margin: 0;
  padding: 1ex 0 1ex 0;
}
#latest-posts {
  border-top: 1px solid #d9d9d9;
  border-bottom: 2px solid #e36877;
  margin: 0;
  padding: 1ex 0 1ex 0;
  /* For the back to the link */
}
#latest-posts li {
  list-style: none;
}
#latest-posts li:nth-of-type(1) {
  margin-top: 0;
}
#latest-posts h3.post-title {
  margin: 0;
  padding: 0;
}
#latest-posts h3.post-title {
  font-size: 120%;
}
#latest-posts h4.title {
  margin: 0;
  padding: 1ex 0 1ex 0;
}
#latest-posts ul {
  /* SMELL Knows that generic <ul> has a left margin. */
  margin-top: 2ex;
  margin-left: 0;
}
#latest-posts li {
  margin-top: 2ex;
}
#latest-posts li:nth-of-type(1) {
  margin-top: 0;
}
ul.navigation {
  border-top: 1px solid #d9d9d9;
  border-bottom: 2px solid #e36877;
  margin: 0;
  padding: 1ex 0 1ex 0;
  /* For the back to the link */
  color: #636363;
  /* Acts like clear: both */
  /* fonts */
  overflow: hidden;
  font-family: 'Droid Sans', Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
ul.navigation li {
  list-style: none;
  margin: 0;
}
ul.navigation li.previous {
  float: left;
  padding-right: 2ex;
}
ul.navigation li.next {
  float: right;
  padding-left: 2ex;
}
.hentry {
  /* The article body */
}
.hentry #article-masthead {
  min-height: 60px;
  margin-bottom: 3ex;
}
.hentry #article-masthead h2.post-title {
  margin: 0;
  padding: 1ex 0 1ex 0;
}
.hentry #article-masthead a.comment-link {
  float: right;
  /* Layout the bubble as a square with content aligned center-both */
  margin: 0 0 0 2em;
  height: 60px;
  width: 60px;
  line-height: 60px;
  text-align: center;
}
.hentry #article-masthead a.comment-link {
  /* Must match the size of the graphic */
  /* Must match the size of the graphic */
  background: #e36877 url(../images/comment.gif) no-repeat 10px 10px;
  color: #e36877;
  /* Superimposed image */
  /* Typography */
}
.hentry #article-masthead a.comment-link:hover {
  /* Must match the size of the graphic */
  /* Must match the size of the graphic */
  background: #a94a56 url(../images/comment.gif) no-repeat 10px 10px;
  color: #a94a56;
  /* Superimposed image */
  text-decoration: none;
}
.hentry #article-masthead h2.post-title {
  font-size: 180%;
  line-height: 1.3;
}
.hentry #article-masthead a.comment-link {
  font-family: 'Homenaje', 'Arial Narrow', sans-serif;
  font-size: 200%;
}
.hentry .article-body {
  font-size: medium !important;
  /* Other, article-related rules */
}
.hentry .article-body p, .hentry .article-body h1, .hentry .article-body h2, .hentry .article-body h3, .hentry .article-body blockquote, .hentry .article-body ul, .hentry .article-body ol, .hentry .article-body li {
  margin: 0;
  padding: 0;
}
.hentry .article-body p {
  line-height: 1.8;
}
.hentry .article-body h1 {
  font-size: 180%;
}
.hentry .article-body h2 {
  font-size: 150%;
}
.hentry .article-body h3 {
  font-size: 120%;
}
.hentry .article-body pre, .hentry .article-body code {
  font-family: "Droid Sans Mono", monospace;
  background-color: #f2f2f2;
}
.hentry .article-body pre {
  overflow: scroll;
  padding: 2ex;
}
.hentry .article-body p, .hentry .article-body blockquote, .hentry .article-body ul, .hentry .article-body ol, .hentry .article-body li, .hentry .article-body .footnotes, .hentry .article-body .meta {
  margin-top: 1ex;
  /* We want first-child, just in case the first block of the article
   * is not a <p> tag. */
}
.hentry .article-body :first-child {
  margin-top: 0;
}
.hentry .article-body h1, .hentry .article-body h2, .hentry .article-body h3 {
  margin-top: 3ex;
}
.hentry .article-body sub, .hentry .article-body sup {
  line-height: 0;
}
.hentry .article-body li {
  list-style-position: outside;
  /* Need extra padding because of "outside" position. */
  margin-left: 3em;
}
.hentry .article-body ul li {
  list-style-type: disc;
}
.hentry .article-body ol li {
  list-style-type: decimal;
}
.hentry .article-body .introductory-note {
  font-style: italic;
  margin-left: 10%;
  margin-right: 10%;
}
.hentry .article-body blockquote {
  display: block;
  color: #2e2929;
  margin-left: 3em;
  border-left: 2px solid #e36877;
  /* Make room for the border */
  padding-left: 1em;
}
.hentry .article-body .wp-smiley {
  display: inline;
  margin: 0px;
}
.date {
  font-family: 'Droid Sans', sans-serif;
  letter-spacing: 2px;
  /* Clock icon to the left of the text. */
  text-transform: uppercase;
  /* Must match the width of the image file. */
  background: url(../images/icons/icon-clock.png) no-repeat 0 48%;
  color: #2e2929;
  padding: 0 0 0 1.10417em;
}
.hentry img {
  display: block;
  margin: 18px auto;
}
.hentry img.alignright {
  float: right;
  margin: 0 0 10px 20px;
}
.hentry img.alignleft {
  float: left;
  margin: 0 20px 10px 0;
}
.hentry .meta {
  margin: 1ex 0 1ex 0;
  text-transform: uppercase;
}
.aside {
  font-style: italic;
  border: 1px solid;
  margin: 10px;
  padding: 5px;
  text-align: center;
}
.editor-note {
  font-weight: bold;
  border: 2px dotted;
}
.diagram {
  padding: 5px;
}
.float-right {
  float: right;
  margin-left: 10px;
  margin-bottom: 10px;
}
.page-content h1 {
  font-weight: bold;
  margin-top: 0;
}
.page-content h1.page-title {
  margin-bottom: 1ex;
  padding-bottom: 0ex;
  font-size: 200%;
  font-weight: normal;
}
.page-content h1.page-title + * {
  margin-top: 0;
}
.page-content h2 {
  font-size: 150%;
  font-weight: bold;
  margin-top: 2ex;
}
.page-content p {
  margin-top: 0.5ex;
}
.page-content li {
  margin-left: 1em;
}
.page-content li:last-child {
  margin-bottom: 1.5em;
}
.page-content pre {
  margin-bottom: 1.5em;
  margin-left: 10%;
  margin-right: 10%;
}
.training-course-description h1 {
  font-weight: bold;
  margin-bottom: 0.5em;
}
.training-course-description li:last-child {
  margin-bottom: 1.5em;
}
.training-course-description pre {
  margin-bottom: 1.5em;
  margin-left: 10%;
  margin-right: 10%;
}
.talk-summaries li {
  list-style-type: none;
}
.talk-summaries ul {
  margin-left: 0px;
  margin-right: 0px;
  /* Styles for the course feedback page */
}
.course .note {
  font-style: italic;
}
.course .name {
  padding: 5px;
  margin: 0px;
  background-color: #e36877;
  color: white;
}
.course .rest {
  padding: 5px;
}
a.form-style-button {
  background: #e36877;
  border: 0;
  color: #fff;
  cursor: pointer;
  padding: 5px 10px;
  vertical-align: middle;
  border-radius: 3px;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  text-decoration: none;
  font-family: 'Droid Sans', Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 100%;
  line-height: 1.5;
}
