/* ==========================================================================
   Table of Contents
   ========================================================================== */

/*

  1.  Icons
  2.  Fonts
  3.  General
  4.  Utilities
  5.  General
  6.  Single Post
  7.  Tag Archive
  8.  Third Party Elements
  9.  Pagination
  10.  Footer
  11.  Media Queries (Tablet)
  12. Media Queries (Mobile)

 */


/* ==========================================================================
   2. Fonts - Custom fonts for the theme
   ========================================================================== */

@font-face {
  font-family: 'ostrichbold';
  src:url('../fonts/ostrichbold.eot');
  src:url('../fonts/ostrichbold.eot?') format('embedded-opentype'),
    url('../fonts/ostrichbold.woff') format('woff'),
    url('../fonts/ostrichbold.ttf') format('truetype'),
    url('../fonts/ostrichbold.svg') format('svg');
  font-weight: normal;
  font-style: normal;
}

@font-face {
  font-family: 'ralewayregular';
  src:url('../fonts/ralewayregular.eot');
  src:url('../fonts/ralewayregular.eot?') format('embedded-opentype'),
    url('../fonts/ralewayregular.woff') format('woff'),
    url('../fonts/ralewayregular.ttf') format('truetype'),
    url('../fonts/ralewayregular.svg') format('svg');
  font-weight: normal;
  font-style: normal;
}


/* ==========================================================================
   3. General - Setting up some base styles
   ========================================================================== */

html {
  height: 100%;
  max-height: 100%;
  font-size: 62.5%;
}

body {
  height: 100%;
  max-height: 100%;
  font-family: 'ralewayregular', 'Raleway Regular', Raleway, sans-serif;
  font-size: 2.0rem;
  line-height: 1.6em;
  color: #3A4145;
}

::-moz-selection {
  color: #222;
  background: #D6EDFF;
  text-shadow: none;
}

::selection {
  color: #222;
  background: #D6EDFF;
  text-shadow: none;
}

h1, h2, h3,
h4, h5, h6 {
  text-rendering: optimizeLegibility;
  line-height: 1;
  margin-top: 0;
  font-family: 'ralewayregular', 'Raleway Regular', Raleway, sans-serif;
  font-weight: normal;
}

h1 {
  font-size: 5rem;
  line-height: 1.2em;
  letter-spacing: -2px;
  text-indent: -3px;
}

h2 {
  font-size: 4rem;
  line-height: 1.2em;
  letter-spacing: -1px;
  text-indent: -2px;
}

h3 {
  font-size: 3.5rem;
}

h4 {
  font-size: 3rem;
}

h5 {
  font-size: 2.5rem;
}

h6 {
  font-size: 2rem;
}

a {
  color: #FF5555;
  transition: color ease 0.3s;
}

a:hover {
  color: #FF5555;
}

h1 a, h2 a, h3 a,
h4 a, h5 a, h6 a {
  color: #50585D;
}


p, ul, ol, dl {
  margin: 1.6em 0;
}

ol ol, ul ul,
ul ol, ol ul {
  margin: 0.4em 0;
}

dl dt {
  float: left;
  width: 180px;
  overflow: hidden;
  clear: left;
  text-align: right;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: bold;
  margin-bottom: 1em
}

dl dd {
  margin-left: 200px;
  margin-bottom: 1em
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #efefef;
  margin: 3.2em 0;
  padding: 0;
}

blockquote {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 1.6em 0;
  font-size: 2.5rem;
  padding: 0 0 0 1.6em;
  border-left: #4a4a4a 0.4em solid;
}

blockquote p {
  margin: 0.8em 0;
  font-style: italic;
}

blockquote small {
  display: inline-block;
  margin: 0.8em 0 0.8em 1.5em;
  font-size:0.9em;
  color: #ccc;
}

blockquote small:before { content: '\2014 \00A0'; }

blockquote cite {
  font-weight:bold;
}

blockquote cite a { font-weight: normal; }

mark {
  background-color: #ffc336;
}

code, tt {
  padding: 1px 3px;
  font-family: Inconsolata, monospace, sans-serif;
  font-size: 0.85em;
  white-space: pre-wrap;
  border: 1px solid #E3EDF3;
  background: #F7FAFB;
  border-radius: 2px;
}

pre {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 1.6em 0;
  border: 1px solid #E3EDF3;
  width: 100%;
  padding: 10px;
  font-family: Inconsolata, monospace, sans-serif;
  font-size: 0.9em;
  white-space: pre;
  overflow: auto;
  background: #F7FAFB;
  border-radius: 3px;
}

pre code, tt {
  font-size: inherit;
  white-space: -moz-pre-wrap;
  white-space: pre-wrap;
  background: transparent;
  border: none;
  padding: 0;
}

kbd {
  display: inline-block;
  margin-bottom: 0.4em;
  padding: 1px 8px;
  border: #ccc 1px solid;
  color: #666;
  text-shadow: #fff 0 1px 0;
  font-size: 0.9em;
  font-weight: bold;
  background: #f4f4f4;
  border-radius: 4px;
  box-shadow:
    0 1px 0 rgba(0, 0, 0, 0.2),
    0 1px 0 0 #fff inset;
}

table {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  margin: 1.6em 0;
  width:100%;
  max-width: 100%;
  background-color: transparent;
}

table th,
table td {
  padding: 8px;
  line-height: 20px;
  text-align: left;
  vertical-align: top;
  border-top: 1px solid #efefef;
}

table th { color: #000; }

table caption + thead tr:first-child th,
table caption + thead tr:first-child td,
table colgroup + thead tr:first-child th,
table colgroup + thead tr:first-child td,
table thead:first-child tr:first-child th,
table thead:first-child tr:first-child td {
  border-top: 0;
}

table tbody + tbody { border-top: 2px solid #efefef; }

table table table { background-color: #fff; }

table tbody > tr:nth-child(odd) > td,
table tbody > tr:nth-child(odd) > th {
  background-color: #f6f6f6;
}

table.plain tbody > tr:nth-child(odd) > td,
table.plain tbody > tr:nth-child(odd) > th {
   background: transparent;
}

iframe, .fluid-width-video-wrapper {
  display: block;
  margin: 1.6em 0;
}

/* When a video is inside the fitvids wrapper, drop the
margin on the iframe, cause it breaks stuff. */
.fluid-width-video-wrapper iframe {
  margin: 0;
}


/* ==========================================================================
   4. Utilities - These things get used a lot
   ========================================================================== */

/* Clears shit */
.clearfix:before,
.clearfix:after {
  content: " ";
  display: table;
}
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }

/* Hides shit */
.hidden {
  text-indent: -9999px;
  visibility: hidden;
  display: none;
}

/* Creates a responsive wrapper that makes our content scale nicely */
.inner {
  position: relative;
  width: 80%;
  max-width: 700px;
  margin: 0 auto;
}

/* Centres vertically yo. (IE8+) */
.vertical {
  display: table-cell;
  vertical-align: middle;
}


/* ==========================================================================
   5. General - The main styles for the the theme
   ========================================================================== */

/* Big cover image on the home page */
.site-head {
  width: 100%;
  height: 6em;
  padding-top: 1.2em;
  margin-bottom: 5rem;
  text-align: center;
  background: #020202 no-repeat center center;
}

.site-head:hover .site-logo path { fill: #020202; }

.site-head:hover .site-title { color: #FF5555; }

.site-logo {
  text-decoration: none;
}
.site-logo svg { width: 100%; }
.site-logo:hover { text-decoration: none; }
.site-logo path {
  stroke-width: 1px;
  stroke: #666666;
  fill: #666666;
  transition: fill 0.2s ease-in-out;
}

/* The details of your blog. Defined in ghost/settings/ */
.site-title {
  text-decoration: none;
  color: #ffffff;
  transition: color 0.3s ease-in-out;
  text-align: left;
}
.site-title:hover { text-decoration: none; }

.site-title h1 {
  margin: 10px 0 10px 0;
  font-size: 5rem;
  letter-spacing: 3px;
  font-family: 'ostrichbold', 'Ostrich Sans Bold', 'Ostrich Sans', sans-serif;
}

.header-social-links { padding-top: 1em; }

.header-social-links a {
  color: #ffffff;
  font-size: 0.85em;
  text-align: right;
}

.header-social-links a:hover {
  text-decoration: none;
  color: #FF5555;
}

.header-social-links a:hover .fa { color: #FF5555; }

.header-social-links .fa {
  color: #b2b2b2;
  padding-right: 0.5em;
  transition: color 0.3s;
}

.blog-description {
  margin: 0;
  font-size: 1.8rem;
  line-height: 1.5em;
  font-weight: 300;
  letter-spacing: 0;
  text-shadow: 0 1px 3px rgba(0,0,0,0.15);
}

/* Every post, on every page, gets this style on its <article> tag */
.post {
  position: relative;
  margin: 4rem auto;
  padding-bottom: 4rem;
  word-break: break-word;
  hyphens: auto;
}

/* Add a little circle in the middle of the border-bottom on our .post
   just for the lolz and stylepoints. */
.post-excerpt:after {
  display: block;
  content: "";
  padding-top: 2em;
  background: #fff;
  clear: both;
}

.post-wrapper:after {
  border-bottom: #e0e0e0 1px solid;
  content: '';
  display: block;
}

.post-title {
  margin:0;
  color: #222;
}

.post-title a {
  text-decoration: none;
  color: #222;
}

.post-title a:hover {
  color: #FF5555;
}

.post-excerpt p {
  margin: 1.6rem 0 0 0;
  font-size: 0.9em;
  line-height: 1.6em;
}

.read-more {
  text-decoration: none;
}

.post-meta {
  display: inline-block;
  margin: 0 0 5px 0;
  font-size: 1.5rem;
  color: #9EABB3;
}

.post-meta.post-date {
  text-align: right;
  width: 100%;
}

.post-date time {
  color: #666666;
  border-bottom: 3px solid #ff5555;
  padding-bottom: 0.4em;
}

.single-post .post-date { margin-top: 0.85em; }

.post-meta a {
  color: #9EABB3;
  text-decoration: none;
}

.post-meta a:hover {
  text-decoration: underline;
}

.post .share {
  text-align: right;
  color: #FF5555;
  margin: 0 0 2em;
}

.post.share:after {
  display: table-cell;
  clear: both;
}

.post .share h4 {
  display: inline-block;
  font-size: 1.4rem;
  font-weight: bold;
  text-transform: uppercase;
}

.post .share a {
  color: #FFFFFF;
  padding: 0.42em;
  border-radius: 50%;
  background: #FF5555;
  display: inline-block;
  width: 34px;
  height: 34px;
}

.post .share .fa.fa-facebook:before {
  position: relative;
  left: -5px;
}

.post .share:hover {
  color: #ee4444;
}

.post .share:hover a {
  text-decoration: none;
}

.user-meta {
  position: relative;
  padding: 0.3rem 40px 0 100px;
  min-height: 77px;
}

.user-image {
  position: absolute;
  top: 0;
  left: 0;
}

.user-name {
  display: block;
  font-weight: bold;
}

.user-bio {
  display: block;
  max-width: 440px;
  font-size: 1.4rem;
  line-height: 1.5em;
}

.publish-meta {
  position: absolute;
  top: 0;
  right: 0;
  padding: 4.3rem 0 4rem 0;
  text-align: right;
}

.publish-heading {
  display: block;
  font-weight: bold;
}

.publish-date {
  display: block;
  font-size: 1.4rem;
  line-height: 1.5em;
}

/* ==========================================================================
   6. Single Post - When you click on an individual post
   ========================================================================== */

/* Stop .full-img from creating horizontal scroll - slight hack due to
   imperfections with browser width % calculations and rounding */
.post-template .content {
  overflow: hidden;
}

/* Tweak the .post wrapper style */
.post-template .post {
  margin-top: 0;
  border-bottom: none;
  padding-bottom: 0;
}

/* Kill that stylish little circle that was on the border, too */
.post-template .post:after {
  display: none;
}

/* Insert some mad padding up in the header for better spacing */
.post-template .post-header {
  padding: 60px 0;
  text-align: center;
}

.post-template .blog-title {
  display: inline-block;
  padding: 2.5rem 0;
}

/* Keep images centred and within the bounds of the post-width */
.post-content img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  padding: 0.6em 0;
}

/* Break out larger images to be wider than the main text column
   the class is applied with jQuery */
.post-content .full-img {
  max-width: 100%;
}

/* The author credit area after the post */
.post-footer {
  position: relative;
  margin: 4rem 0 0 0;
  padding: 4rem 0 0 0;
  border-top: #EBF2F6 1px solid;
}

.post-footer h4 {
  font-size: 1.8rem;
  margin: 0;
}

.post-footer p {
  margin: 1rem 0;
  font-size: 1.4rem;
  line-height: 1.6em;
}

/* list of author links - location / url */
.author-meta {
  padding: 0;
  margin: 0;
  list-style: none;
  font-size: 1.4rem;
  line-height: 1;
  font-style: italic;
  color: #9EABB3;
}

.author-meta li {
  float: left;
  margin-left: 10px; /* space to the left of the bullet */
}

/* bullet divider */
.author-meta li:before {
  content: "•";
  display: inline-block;
  margin-right: 10px; /* space to the right of the bullet */
  color: #BBC7CC;
}

/* disable the bullet divider for the first item in the list */
.author-meta li:first-child { margin-left: 0; }
.author-meta li:first-child:before { display: none; }

.author-meta a {
  color: #9EABB3;
}
.author-meta a:hover {
  color: #57A3E8;
}

/* Create some space to the right for the share links */
.post-footer .author {
  margin-right: 180px;
}


/* ==========================================================================
   7. Tag archive
   ========================================================================== */

.tag-archive-header {
  position: relative;
  max-width: 700px;
  margin: 4rem auto;
  border-bottom: 1px solid #EBF2F6;
  padding: 20px 0;
  text-align: center;
  color: #222;
}

.tag-archive-header:after {
  display: block;
  content: "";
  width: 7px;
  height: 7px;
  border: #E7EEF2 1px solid;
  position: absolute;
  bottom: -5px;
  left: 50%;
  margin-left: -5px;
  background: #fff;
  -webkit-border-radius: 100%;
  -moz-border-radius: 100%;
  border-radius: 100%;
  box-shadow: #fff 0 0 0 5px;
}


/* ==========================================================================
   8. Third Party Elements - Embeds from other services
   ========================================================================== */

/* Github */

.gist table {
  margin: 0;
  font-size: 1.4rem;
}

.gist .line-number {
  min-width: 25px;
  font-size: 1.1rem;
}


/* ==========================================================================
   9. Pagination - Tools to let you flick between pages
   ========================================================================== */

/* The main wrapper for our pagination links */
.pagination {
  width: 100%;
  margin: 4rem auto;
  font-size: 1.3rem;
  color: #9EABB3;
  text-align: center;
}

.pagination a {
  color: #9EABB3;
}

/* Push the previous/next links out to the left/right */
.older-posts,
.newer-posts {
  display: inline-block;
  padding: 0 1em;
  margin: 0 1em;
  border: #EBF2F6 2px solid;
  text-decoration: none;
  border-radius: 30px;
  transition: border ease 0.3s;
}

.older-posts {
  right: 0;
}

.page-number {
  display: inline-block;
  padding: 2px 0;
}

.newer-posts {
  left: 0;
}

.older-posts:hover,
.newer-posts:hover {
  border-color: #9EABB3;
}


/* ==========================================================================
   10. Footer - The bottom of every page
   ========================================================================== */

.site-footer {
  position: relative;
  margin: 8rem 0 0 0;
  padding: 0;
  border-top: #FF5555 0.5em solid;
  font-size: 1.3rem;
  line-height: 1.7em;
  color: #666666;
  background: #e0e0e0;
}

.footer-logo {
  fill: #666666;
  height: 5.5em;
}

.footer-logo svg {
  height: 100%;
  width: auto;
}

.site-footer a {
  color: #BBC7CC;
  text-decoration: underline;
}

.site-footer a:hover {
  color: #50585D;
}

.copyright {
  padding-top: 1em;
}

/* The subscribe icon on the footer */
.subscribe {
  width: 28px;
  height: 28px;
  position: absolute;
  top: -14px;
  left: 50%;
  margin-left: -15px;
  border: #EBF2F6 1px solid;
  text-align: center;
  line-height: 2.4rem;
  border-radius: 50px;
  background: #fff;
  transition: box-shadow 0.5s;
}

/* The RSS icon, inserted via icon font */
.subscribe:before {
  color: #D2DEE3;
  font-size: 10px;
  position: absolute;
  top: 9px;
  left: 9px;
  font-weight: bold;
  transition: color 0.5s ease;
}

/* Add a box shadow to on hover */
.subscribe:hover {
  box-shadow: rgba(0,0,0,0.05) 0 0 0 3px;
  transition: box-shadow 0.25s;
}

.subscribe:hover:before {
  color: #50585D;
}

/* CSS tooltip saying "Subscribe!" - initially hidden */
.tooltip {
  opacity:0;
  display: inline-block;
  padding: 4px 8px 5px 8px;
  position:absolute;
  top: -23px;
  left: -21px;
  color: rgba(255,255,255,0.9);
  font-size: 1.1rem;
  line-height: 1em;
  text-align: center;
  background: #50585D;
  border-radius:20px;
  box-shadow: 0 1px 4px rgba(0,0,0,0.1);
  transition: opacity 0.3s ease, top 0.3s ease;
}

/* The little chiclet arrow under the tooltip, pointing down */
.tooltip:after {
  content:"";
  border-width:5px 5px 0 5px;
  border-style:solid;
  border-color: #50585D transparent;
  display:block;
  position:absolute;
  bottom:-4px;
  left:50%;
  margin-left:-5px;
  z-index: 220;
  width:0;
}

/* On hover, show the tooltip! */
.subscribe:hover .tooltip {
  opacity: 1;
  top: -33px;
}


/* ==========================================================================
   11. Media Queries
   ========================================================================== */

@media only screen and (max-width: 768px) {
  .site-title h1 {
    font-size: 4rem;
    margin-top: 16px;
  }

  .header-social-links {
    padding-top: 4px;
  }

  .header-social-links a {
    float: right;
  }
}

@media only screen and (max-width: 400px) {
  .site-title h1 {
    font-size: 3rem;
    margin-top: 20px;
  }
}
