/* This stylesheet started out as the GitHub Pages
   Architect theme by @jasonlong"

   http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* LAYOUT STYLES */
body {
  font-size: 17px;
  line-height: 1.5;
  background: #FAFAFA url(../images/body-bg.jpg) 0 0 repeat;
  font-family: 'Source Serif Pro', serif;
  font-weight: 400;
  color: #343434;
  margin-bottom: 40px;
}

body > div, footer {
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
}

@media (min-width: 1170px) {
  body {
    font-size: 22px;
  }
}

#main-content h1, #main-content h2, h3, h4, h5, h6, #sidebar {
  font-family: 'Source Sans Pro', sans-serif;
  font-weight: 700;
}
#sidebar {
  font-weight: 400;
}

a, #main-content a h3 {
  color: #2879d0;
}
a:hover, #main-content a:hover h3 {
  color: #2268b2;
}

header {
  padding-top: 40px;
  padding-bottom: 40px;
  font-family: 'Julius Sans One', 'Helvetica Neue', Helvetica, Arial, serif;
  background: #2e7bcf url(../images/header-bg.jpg) 0 0 repeat-x;
  border-bottom: solid 1px #275da1;
  font-size: 26px;
}

header h1 {
  letter-spacing: -1px;
  font-size: 72px;
  color: #fff;
  line-height: 1.1;
  margin-bottom: 0.1em;
  margin-top: 0.63em; 
  width: 540px;
}

header h1 a {
  color: #fff;
}

header h1 a:hover {
  color: #9ddcff;
}

header h2 {
  font-size: 26px;
  color: #9ddcff;
  font-weight: normal;
  line-height: 1.3;
  width: 540px;
  letter-spacing: 0;
  text-transform: capitalize;
}

.inner {
  position: relative;
  width: 940px;
  margin: 1.55em auto;
}

@media (min-width: 1170px) {
  .inner {
    width: 1100px;
  }
}

#content-wrapper {
  border-top: solid 1px #fff;
  padding-top: 30px;
}

#main-content {
  width: 690px;
  float: left;
}
@media (min-width: 1170px) {
  #main-content {
    width: 850px;
  }
}

#main-content img {
  max-width: 100%;
}

nav#post-nav {
  width: 100%;
  margin-top: 5em;
}

nav#post-nav a {
  display: block;
  width: 45%;
  float: left;
}
nav#post-nav a h3 {
  margin: 0;
}
nav#post-nav a h3:before {
  content: "";
  padding-right: 0;
  margin: 0;
}
@media (max-width: 767px) {
  nav#post-nav a {
    width: 73%;
    margin: 0 auto;
    float: none;
    text-align: center;
    padding: 15px;
    background: #2e78cd;
  }
  nav#post-nav h3 {
    margin: 0;
    color: #fff;
  }
  nav#post-nav a:hover h3, nav#post-nav span {
    color: #fff;
  }
}

nav#post-nav span {
  display: block;
  margin-bottom: .5em;
}

nav#post-nav span:last-child {
  margin-bottom: 0;
}

nav#post-nav .prev {
  margin-right: 10%;
}
@media (max-width: 767px) {
  nav#post-nav .prev {
    margin-right: auto;
    margin-bottom: 1em;
  }
}

nav#post-nav .next {
  margin-left: 55%;
  text-align: right;
}
@media (max-width: 767px) {
  nav#post-nav .next {
    margin-left: auto;
    text-align: center;
  }
}

nav#post-nav .prev + .next {
  margin-left: 0;
}
@media (max-width: 767px) {
  nav#post-nav .prev + .next {
    margin-left: auto;
  }
}

aside#sidebar {
  width: 200px;
  padding-left: 20px;
  min-height: 504px;
  float: right;
  background: transparent url(../images/sidebar-bg.jpg) 0 0 no-repeat;
  font-size: .62em;
  line-height: 1.3;
  font-weight: 400;
}

aside#sidebar p.repo-owner,
aside#sidebar p.repo-owner a {
  font-weight: 700;
}

#downloads {
  margin-bottom: 40px;
}

a.button {
  width: 134px;
  height: 58px;
  line-height: 1.2;
  font-size: 23px;
  color: #fff;
  padding-left: 68px;
  padding-top: 22px;
  font-family: 'Julius Sans One', 'Helvetica Neue', Helvetica, Arial, serif;
}
a.button small {
  display: block;
  font-size: 11px;
}
header a.button {
  position: absolute;
  right: 0;
  top: -5px;
  background: transparent url(../images/github-button.png) 0 0 no-repeat;
}
aside a.button {
  width: 138px;
  padding-left: 64px;
  display: block;
  background: transparent url(../images/download-button.png) 0 0 no-repeat;
  margin-bottom: 20px;
  font-size: 21px;
}

code, pre {
  font-family: 'Source Code Pro', monospace;
  background-color: #e6edf0;
  overflow: auto;
  text-shadow: none;
  padding: 5px;
  border-radius: 5px;
  font-size: 0.75em;
  white-space: pre;
  max-width: 100%;
}

pre {
  display: inline-block;
  margin-bottom: 20px;
}


pre code {
  padding: 0;
  font-size: 1em;
  margin-bottom: 0;
}

ul, ol, dl {
  margin-bottom: 1em;
}


/* COMMON STYLES */

hr {
  height: 1px;
  line-height: 1px;
  margin-top: 1em;
  padding-bottom: 1em;
  border: none;
  /*background: transparent url('../images/hr.png') 0 0 no-repeat;*/
}

table {
  width: 100%;
  border: 1px solid #ebebeb;
}

th {
  font-weight: 700;
}

td {
  border: 1px solid #ebebeb;
  text-align: center;
  font-weight: 400;
}

form {
  background: #f2f2f2;
  padding: 20px;

}

em, i {
  font-style: italic;
  font-size-adjust: 0.47;
}

b, strong {
  font-weight: bold;
}
.underline {
  text-decoration: underline;
}

/* GENERAL ELEMENT TYPE STYLES */

#main-content h1 {
  font-size: 2.6em;
  letter-spacing: -2px;
  margin-bottom: .375em;
  margin-top: 1em;
  color: #272727;
}

#main-content h1:before {
  content: "»";
  color: #9ddcff;
  padding-right: 0.3em;
  margin-left: -.8em;
}

#main-content h2 {
  font-size: 1.6em;
  margin-bottom: .6em;
  margin-top: 1.9em;
  color: #272727;
}
#main-content h2:before {
  content: "»";
  color: #9ddcff;
  padding-right: 0.3em;
  margin-left: -.8em;
}

#main-content h3 {
  font-size: 1.2em;
  margin-top: 2.3em;
  margin-bottom: .6em;
  color: #272727;
}

/*
#main-content h3:before {
  content: "»";
  color: #30B5FF;
  padding-right: 0.3em;
  margin-left: -1.25em;
}
*/

#main-content h4 {
  font-size: 1em;
  margin-bottom: .4em;
  color: #272727;
  margin-top: 2.5em;
}

/*
h4:not(.quiet):before {
  content: "////";
  color: #9ddcff;
  padding-right: 0.3em;
  margin-left: -2em;
}
*/

#main-content h5 {
  font-size: 14px;
  color: #272727;
}
/*
h5:before {
  content: "/////";
  color: #9ddcff;
  padding-right: 0.3em;
  margin-left: -3.2em;
}
*/

#main-content h6 {
  font-size: .8em;
  color: #272727;
}
/*
h6:before {
  content: "//////";
  color: #9ddcff;
  padding-right: 0.3em;
  margin-left: -3.7em;
}
*/

.note {
  background-color: #F2F7F9;
  border-top: .1em solid #E5EEF2;
  border-bottom: .1em solid #E5EEF2;
  padding: 1em .6em;
}
.warn {
  background-color: #F9F9EE;
  border-top: .1em solid #DDC;
  border-bottom: .1em solid #DDC;
  padding: 1em .6em;
}
div.note, div.warn {
  margin-bottom: 1em;
}
div.note ul, div.note p:last-child, div.warn ul, div.warn p:last-child {
  margin-bottom: 0;
}

.imagebox {
  background-color:#fff;
  padding:5px;
  border:solid 1px #ddd;
}

p {
  margin-bottom: 1em;
}

a {
  text-decoration: none;
}

p a {
  font-weight: 400;
}

.navi {
  background-color: #ccc;
  color: white;
}

blockquote {
  font-size: 1.6em;
  border-left: 10px solid #e9e9e9;
  margin-bottom: 20px;
  padding: 0 0 0 30px;
}

img {
  margin: .5em 0;
}

ul {
  padding-left: 20px;
}

ul li {
  list-style: disc inside;
}

ol li {
  list-style: decimal inside;
  padding-left: 3px;
}

dl dd {
  font-style: italic;
  font-weight: 100;
  font-size-adjust: 0.47;
}

footer {
  /*background: transparent url('../images/hr.png') 0 0 no-repeat;*/
  margin-top: 40px;
  padding-top: 20px;
  padding-bottom: 30px;
  font-size: .62em;
  color: #aaa;
  font-weight: 400;
}

footer p {
  margin: 0;
}
footer a {
  opacity: 0.5;
}
/* MISC */
.clearfix:after {
  clear: both;
  content: '.';
  display: block;
  visibility: hidden;
  height: 0;
}

.clearfix {display: inline-block;}
* html .clearfix {height: 1%;}
.clearfix {display: block;}

/* #Media Queries
================================================== */

/* Tablet Portrait size to standard 960 (devices and browsers) */
@media only screen and (min-width: 768px) and (max-width: 959px) {
  .inner {
    width: 740px;
  }
  header h1, header h2 {
    width: 340px;
  }
  header h1 {
    font-size: 60px;
  }
  header h2 {
    font-size: 30px;
  }
  #main-content {
    width: 490px;
  }
  #main-content h1:before,
  #main-content h2:before,
  #main-content h3:before,
  #main-content h4:before,
  #main-content h5:before,
  #main-content h6:before {
    content: none;
    padding-right: 0;
    margin-left: 0;
  }
}

/* All Mobile Sizes (devices and browser) */
@media only screen and (max-width: 767px) {
  .inner {
    width: 93%;
  }
  header {
    padding: 20px 0;
  }
  header .inner {
    position: relative;
  }
  header h1, header h2 {
    width: 100%;
  }
  header h1 {
    font-size: 43.5px;
  }
  header h2 {
    font-size: 24px;
  }
  header a.button {
    background-image: none;
    width: auto;
    height: auto;
    display: inline-block;
    margin-top: 15px;
    padding: 5px 10px;
    position: relative;
    text-align: center;
    font-size: 13px;
    line-height: 1;
    background-color: #9ddcff;
    color: #2879d0;
    border-radius: 5px;
  }
  header a.button small {
    font-size: 13px;
    display: inline;
    margin-right: 5px;
  }
  #main-content,
  aside#sidebar {
    float: none;
    width: 100% ! important;
  }
  aside#sidebar {
    background-image: none;
    margin-top: 20px;
    border-top: solid 1px #ddd;
    padding: 20px 0;
    min-height: 0;
  }
  aside#sidebar a.button {
    display: none;
  }
  #main-content h1:before,
  #main-content h2:before,
  #main-content h3:before,
  #main-content h4:before,
  #main-content h5:before,
  #main-content h6:before {
    content: none;
    padding-right: 0;
    margin-left: 0;
  }
}

@media (min-width: 768px) {
    .navi {
      margin-top: 10px;
    }
}

ul.breadcrumb li {
  display: inline;
  border: 0;
  margin: 0;
  padding: 0;
  text-transform: capitalize;
  font-weight: 400;
}

/* Rectangle List style from
   http://www.red-team-design.com/css3-ordered-list-styles */

ol.rectangle-list li {
  list-style: none;
}

.rectangle-list {
  counter-reset: li;
  list-style: none;
  *list-style: decimal;
  padding: 0;
  margin-bottom: 4em;
}

ol.rectangle-list ol {
  margin: 0 0 0 2em;
}

ol.rectangle-list a {
  position: relative;
  display: block;
  padding: .4em .4em .4em .8em;
  *padding: .4em;
  margin: .5em 0 .5em 2.5em;
  background: #d6dce0;
  color: #222;
  text-decoration: none;
  -webkit-transition: all .3s ease-out;
  transition: all .3s ease-out;
}

ol.rectangle-list a.active, 
ol.rectangle-list a:hover {
  background: #2e78cc;
  color: #fff;
}

ol.rectangle-list a:before{
  content: counter(li);
  counter-increment: li;
  position: absolute;
  left: -2.5em;
  top: 50%;
  margin-top: -1em;
  background: #2e78cd;
  color: #fff;
  height: 2em;
  width: 2em;
  line-height: 2em;
  text-align: center;
}

ol.rectangle-list a:after{
  position: absolute;
  content: '';
  border: .5em solid transparent;
  left: -1em;
  top: 50%;
  margin-top: -.5em;
  -webkit-transition: all .3s ease-out;
  transition: all .3s ease-out;
}

ol.rectangle-list a:hover:after{
  left: -.5em;
  border-left-color: #2e78cd;
}
th, td {
  padding: 0.5em;
}
div.lang{
  margin-top: 10px;
  margin-bottom: -4px;
}
div.ebook {
  margin-bottom: 40px;
}
div.lang, a.lang, div.ebook, a.ebook{
  color: #fff;
}
a.lang:hover, a.ebook:hover{
  color: #9ddcff;
}
