* {
  margin: 0;
  padding: 0;
  outline: 0; }

body {
  font: 13px/1.5 "HelveticaNeue", "Helvetica Neue", "HelveticaNeueRoman", "HelveticaNeue-Roman", "Helvetica Neue Roman", "Helvetica", "Tahoma", "Geneva", "Arial", sans-serif;
  color: #535353;
  background-color: #e9e9e9;
  line-height: 1.5em; }

.page-bg {
  position: absolute;
  min-height: 985px;
  width: 100%; }

a {
  color: #313131;
  text-decoration: none;
  cursor: pointer;
  text-decoration: none;
  border-bottom: 1px solid #cccccc; }
  a:hover {
    border: none;
    text-decoration: none; }
  a img {
    border: 0; }

label {
  font-size: 14px;
  font-weight: bold; }

input, textarea, select {
  font-family: Georgia, sans-serif;
  font-size: 12px; }

.tfield {
  border: 1px solid #d2d2d2;
  background: #fafafa;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  padding: 5px; }

textarea {
  border: 1px solid #d2d2d2;
  background: #fafafa;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  padding: 5px;
  overflow: hidden; }

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  border: none; }

h1 {
  font-size: 36px; }

h2 a {
  color: #202023; }

h2 {
  font-size: 34px; }

h3 {
  font-size: 20px; }

h4 {
  font-size: 18px; }

ol {
  margin: 10px 0 10px 20px; }

.nocufon {
  letter-spacing: 0 !important; }

.cl {
  display: block;
  height: 0;
  font-size: 0;
  line-height: 0;
  text-indent: -4000px;
  clear: both; }

.notext {
  font-size: 0;
  line-height: 0;
  text-indent: -4000px; }

.left {
  float: left;
  display: inline; }

.right {
  float: right;
  display: inline; }

.shell {
  width: 900px;
  margin: 0 auto;
  position: relative; }

#header {
  position: relative;
  margin-bottom: 0; }
  #header .shell {
    padding-bottom: 0;
    margin-top: 0;
    border-bottom: 5px solid #cccccc; }

h1#logo {
  float: left;
  display: inline;
  padding: 0;
  margin: 0;
  position: absolute;
  top: 10px;
  background: url(/images/logo.png) no-repeat 0 0;
  width: 182px;
  height: 60px; }
  h1#logo a {
    float: left;
    line-height: 1;
    font-size: 25px;
    color: black;
    text-decoration: none; }

#header-links {
  font-size: 13px;
  float: right;
  padding: 3px 2px 0 0; }
  #header-links a {
    color: #333744;
    margin-left: 10px; }

.ico-rss {
  padding: 5px 0 5px 20px;
  background: url(/images/ico-rss.gif) no-repeat 0 center; }

#navigation {
  float: right;
  padding-top: 0px;
  overflow: hidden;
  margin-top: 25px; }
  #navigation ul {
    list-style: none;
    padding: 5px 0 15px 0;
    float: right; }
  #navigation li {
    float: left;
    display: inline;
    margin-left: 5px;
    margin-top: -4px; }
    #navigation li.divider {
      margin: 0 12px 5px 12px; }
  #navigation a {
    position: relative;
    color: black;
    display: block;
    font-size: 14pt;
    text-align: left;
    border: none;
    float: left; }
    #navigation a:hover {
      color: #999999; }

body.about #navigation li.about-link a {
  color: #999999; }

body.work #navigation li.work-link a {
  color: #999999; }

body.work #navigation li.work-link a {
  color: #999999; }

body.articles #navigation li.articles-link a {
  color: #999999; }

body.index #navigation li.home-link a {
  color: #999999; }

#main {
  padding: 5px 0 0 0;
  height: 100%;
  position: relative; }

/* Top Section */
.top-section {
  width: 100%;
  margin-top: 0px;
  margin-bottom: 10px;
  float: left; }
  .top-section center h1 {
    margin: 10px 0 5px 0; }

.about-me {
  width: 670px;
  padding: 10px 15px 10px 15px;
  height: 100%;
  position: relative;
  background-color: white; }
  .about-me .me {
    width: 200px;
    height: 200px;
    float: left;
    margin-top: 3px;
    margin-right: 10px; }
  .about-me h3 {
    padding: 10px 0; }
  .about-me p.first {
    padding: 0; }
  .about-me p {
    padding: 5px 0 5px 0; }

.work {
  width: 670px;
  padding: 10px 15px 10px 15px;
  height: 100%;
  position: relative;
  background-color: white; }
  .work h3 {
    padding: 10px 0; }
  .work p.first {
    padding: 0; }
  .work p {
    padding: 5px 0 5px 0; }

.intro {
  float: right;
  display: inline;
  width: 350px;
  line-height: 1.2;
  padding-top: 5px; }
  .intro p {
    padding: 10px 0;
    font-size: 17px;
    text-shadow: #f8f9fa 1px 0px 0px;
    line-height: 22px; }
  .intro strong {
    font-size: 24px; }

.more-about-me {
  font-size: 15px;
  line-height: 1.2;
  padding: 10px 0 10px 90px;
  background: url(/images/more-about-me.gif) no-repeat 0 center; }

.border-line {
  height: 4px;
  background: url(/images/border-line.gif) repeat-x 0 0;
  font-size: 0;
  line-height: 0;
  text-indent: -4000px; }

.bottom-section {
  clear: both; }
  .bottom-section h3, .bottom-section h4 {
    text-shadow: white 1px 1px 0px; }
  .bottom-section #hello {
    font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Verdana, Tahoma, sans-serif;
    float: left;
    display: inline;
    width: 540px;
    position: relative;
    margin-top: 5px;
    margin-left: 5px; }

.box {
  background-color: white;
  padding: 15px 15px 10px 15px;
  height: 100%;
  position: relative;
  color: #444444; }

.box-foot {
  height: 13px;
  background: transparent url("/images/box-bottom.png") 0 -4px no-repeat; }

.amp {
  font-family: Baskerville, Palatino, "Hoefler Text", serif;
  font-style: italic; }

.me {
  width: 70px;
  height: 70px;
  float: left;
  margin: 3px 5px 0 0; }

#splash {
  width: 340px;
  margin-top: 10px;
  display: block;
  height: 340px;
  float: right;
  background: transparent url("/images/splash.png") 0 0 no-repeat; }

#recent-articles {
  float: left;
  display: inline;
  width: 540px;
  font-size: 13px;
  position: relative; }
  #recent-articles p {
    font-weight: normal; }
  #recent-articles .box {
    min-height: 315px;
    padding-bottom: 2px;
    margin-top: 10px; }
  #recent-articles .entry {
    padding: 5px 0;
    height: 100%; }
    #recent-articles .entry p {
      color: #848484;
      padding-left: 1px;
      line-height: 20px; }
  #recent-articles .first-entry {
    padding-top: 10px; }
  #recent-articles h2 {
    font-size: 16px; }
    #recent-articles h2 a {
      font-size: 14px;
      color: #333333; }

#find-elsewhere {
  float: right;
  display: inline;
  width: 335px;
  position: relative;
  margin-left: 5px;
  padding-left: 5px; }
  #find-elsewhere ul {
    list-style: none;
    margin-left: 0;
    padding: 0; }
    #find-elsewhere ul li {
      float: left;
      height: 50px;
      margin: 15px 11px 0 0; }
      #find-elsewhere ul li.last {
        margin-right: 0; }
      #find-elsewhere ul li a {
        border: none; }
        #find-elsewhere ul li a span {
          padding: 0 23px 29px 23px;
          background-image: url("/images/icons-social.png");
          background-repeat: none; }
          #find-elsewhere ul li a span.github {
            background-position: -315px 0; }
            #find-elsewhere ul li a span.github:hover {
              background-position: -315px -45px; }
          #find-elsewhere ul li a span.twitter {
            background-position: -586px 0; }
            #find-elsewhere ul li a span.twitter:hover {
              background-position: -586px -45px; }
          #find-elsewhere ul li a span.linkedin {
            background-position: -450px 0; }
            #find-elsewhere ul li a span.linkedin:hover {
              background-position: -450px -45px; }
          #find-elsewhere ul li a span.facebook {
            background-position: -135px 0; }
            #find-elsewhere ul li a span.facebook:hover {
              background-position: -135px -45px; }
          #find-elsewhere ul li a span.forrst {
            background-position: -270px 0; }
            #find-elsewhere ul li a span.forrst:hover {
              background-position: -270px -45px; }
          #find-elsewhere ul li a span.google {
            background-position: -360px 0; }
            #find-elsewhere ul li a span.google:hover {
              background-position: -360px -45px; }

a.more img, a.more-black img {
  float: none !important;
  margin: 0 0 0 5px !important; }
a.more {
  color: #7d0202 !important; }
a.more-black {
  color: black !important; }

#content {
  width: 700px;
  float: left;
  display: inline;
  position: relative;
  margin-top: 10px; }

#content-btm {
  height: 10px;
  font-size: 0;
  line-height: 0; }

#content-bg {
  padding: 15px 25px 15px 30px;
  height: 100%; }

.with-border {
  border-bottom: 1px solid #cccccc;
  margin-bottom: 10px;
  padding: 3px 0 5px 0 !important; }

.full-length {
  width: 870px !important; }

.first-post {
  padding-top: 0; }

.rounded-top {
  -webkit-border-top-left-radius: 5px;
  -webkit-border-top-right-radius: 5px;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-topright: 5px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px; }

#dsq-global-toolbar, .dsq-options {
  display: none !important; }

#dsq-new-post {
  margin-bottom: 20px !important; }
  #dsq-new-post h3 {
    display: none !important; }

#dsq-comments-title h3 {
  display: none !important; }

.post {
  height: 100%;
  background: white;
  padding: 15px 15px 0 15px;
  margin-bottom: 0; }
  .post .head a.active {
    text-decoration: none;
    color: #7d0202; }
  .post .head span {
    float: right;
    margin-top: 10px;
    font-size: 12px; }
    .post .head span a {
      color: #999999;
      padding-left: 15px;
      background: url(/images/ico-comment.png) 0 3px no-repeat; }
    .post .head span a.active {
      color: #333333;
      background: url(/images/ico-comment.png) 0 -12px no-repeat; }
  .post .head h2 {
    font-size: 24px;
    margin-left: -5px; }
  .post .author {
    color: #333333; }
  .post .body p {
    padding-bottom: 10px; }
  .post h2 {
    font-size: 20px;
    margin-bottom: 5px; }
  .post h3 {
    margin-bottom: 5px;
    font-size: 18px; }
  .post .subtitle {
    font-size: 17px;
    line-height: 29px;
    padding: 0; }
  .post p {
    padding: 0 0 10px 0; }
    .post p code {
      color: #444444 !important;
      border: 1px solid #dedede !important;
      padding: 0 0.3em;
      background-color: ghostWhite !important; }
  .post ul {
    padding: 10px 0 20px 20px; }
  .post li p {
    padding-bottom: 10px !important; }
  .post pre {
    background-color: ghostWhite !important;
    border: 1px solid #dedede !important;
    color: #444444 !important;
    font-size: 90% !important;
    line-height: 1.5em !important;
    margin: 1em 0px !important;
    overflow: auto !important;
    padding: 0.5em !important; }
  .post code {
    font: normal normal normal 12px/normal Monaco, "Courier New", "DejaVu Sans Mono", "Bitstream Vera Sans Mono", monospace; }

.post-bottom {
  height: 30px;
  width: 700px;
  background: url(/images/bg-post-bottom.png) 0 -4px no-repeat; }

.post-comments {
  margin-top: -20px; }

.full-length-bottom {
  height: 30px;
  width: 900px;
  background: url(/images/bg-full-bottom.png) 0 -4px no-repeat; }

.comments {
  height: 32px;
  display: inline-block;
  margin-top: 5px;
  text-align: center;
  color: black;
  font-size: 12px;
  line-height: 30px; }

.post-image {
  width: 719px;
  height: 349px;
  background: url(/images/image-frame.jpg);
  padding: 5px 6px 7px 7px;
  position: relative;
  margin: 0 -1px 0 -2px;
  font-size: 0;
  line-height: 0; }
  .post-image img {
    border: 1px solid white; }

.older-posts {
  font-size: 17px;
  margin-top: 10px; }

#sidebar {
  width: 180px;
  float: right;
  display: inline;
  padding-top: 1px; }
  #sidebar a {
    color: #15161b;
    border: none; }
    #sidebar a:hover {
      color: #999999; }
  #sidebar h4 {
    font-size: 20px; }
  #sidebar .contact {
    padding: 10px 0;
    line-height: 1.4;
    margin-bottom: 8px; }
    #sidebar .contact ul {
      margin-left: 5px;
      list-style: none outside;
      padding-top: 5px; }
    #sidebar .contact li {
      padding: 0 0 5px 0; }
    #sidebar .contact a {
      font-weight: bold; }
    #sidebar .contact p {
      margin-bottom: 10px; }
  #sidebar .get-in-touch {
    padding: 10px 0 0 0;
    line-height: 1.4; }
    #sidebar .get-in-touch a {
      font-weight: bold; }
    #sidebar .get-in-touch p {
      margin-bottom: 10px; }
  #sidebar .img-matt {
    float: left;
    margin: 0 10px 0 0; }
  #sidebar .btn-subscribe {
    padding: 25px 0 25px 40px;
    background: url(/images/btn-subscribe.gif) no-repeat 0 center;
    color: #15161b;
    display: inline-block;
    font-size: 18px; }
  #sidebar .elsewhere {
    padding-bottom: 15px; }
    #sidebar .elsewhere ul {
      margin-left: 5px;
      list-style: none outside;
      padding-top: 5px; }
    #sidebar .elsewhere li {
      padding: 5px 0; }
  #sidebar .rubyrags {
    padding: 5px;
    background-color: ghostWhite;
    border: 1px solid #dedede;
    margin: 0 0 10px 0;
    width: 170px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    text-align: center; }
    #sidebar .rubyrags a:hover {
      text-decoration: underline; }
    #sidebar .rubyrags h2 {
      font-size: 14px;
      margin-bottom: 2px; }
    #sidebar .rubyrags p {
      line-height: 15px; }
  #sidebar li.last {
    padding-bottom: 0 !important; }
  #sidebar .elsewhere a {
    padding: 0 0 0 21px;
    background-repeat: no-repeat;
    background-position: 0 center; }
  #sidebar .recent-posts, #sidebar .categories, #sidebar .archives {
    padding-bottom: 15px; }
    #sidebar .recent-posts ul, #sidebar .categories ul, #sidebar .archives ul {
      padding-top: 5px;
      list-style: none; }
      #sidebar .recent-posts ul li, #sidebar .categories ul li, #sidebar .archives ul li {
        padding: 4px 0 5px 5px; }

.small-ico-external {
  background-image: url(/images/ico-external.png); }

.small-ico-twitter {
  background-image: url(/images/ico-twitter.png); }

#footer {
  height: 110px;
  font-size: 12px;
  font-weight: bold;
  position: relative;
  margin-top: 20px;
  color: #bbbbbb;
  clear: both; }
  #footer .shell {
    height: 95px;
    padding-top: 10px;
    border-top: 1px solid #cccccc; }
  #footer a {
    color: #202023; }

.footer-navigation {
  float: right;
  display: inline; }

/* Tooltips */
.tipsy {
  padding: 5px;
  font-size: 10px;
  opacity: 0.6;
  filter: alpha(opacity=60);
  background-repeat: no-repeat;
  background-image: url(/images/tipsy.gif);
  margin-top: 33px; }

.tipsy-inner {
  padding: 3px 8px 2px 8px;
  background-color: black;
  color: white;
  max-width: 200px;
  text-align: center;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px; }

.tipsy-north {
  background-position: top center; }

.tipsy-south {
  background-position: bottom center; }

.tipsy-east {
  background-position: right center; }

.tipsy-west {
  background-position: left center; }

table {
  margin: 10px 0 20px 0; }
  table td {
    border-bottom: 1px solid #dddddd !important;
    padding: 0.2em 1em !important; }
  table code {
    background-color: ghostWhite !important;
    border: 1px solid #dedede !important;
    color: #444444 !important;
    font-size: 90% !important;
    line-height: 1.5em !important;
    margin: 1em 0px !important;
    overflow: auto !important;
    padding: 0 !important; }

/* Syntax Highlighting */
.highlight {
  background: white; }

.highlight .c {
  color: #999988;
  font-style: italic; }

/* Comment */
.highlight .err {
  color: #a61717;
  background-color: #e3d2d2; }

/* Error */
.highlight .k {
  font-weight: bold; }

/* Keyword */
.highlight .o {
  font-weight: bold; }

/* Operator */
.highlight .cm {
  color: #999988;
  font-style: italic; }

/* Comment.Multiline */
.highlight .cp {
  color: #999999;
  font-weight: bold; }

/* Comment.Preproc */
.highlight .c1 {
  color: #999988;
  font-style: italic; }

/* Comment.Single */
.highlight .cs {
  color: #999999;
  font-weight: bold;
  font-style: italic; }

/* Comment.Special */
.highlight .gd {
  color: black;
  background-color: #ffdddd; }

/* Generic.Deleted */
.highlight .gd .x {
  color: black;
  background-color: #ffaaaa; }

/* Generic.Deleted.Specific */
.highlight .ge {
  font-style: italic; }

/* Generic.Emph */
.highlight .gr {
  color: #aa0000; }

/* Generic.Error */
.highlight .gh {
  color: #999999; }

/* Generic.Heading */
.highlight .gi {
  color: black;
  background-color: #ddffdd; }

/* Generic.Inserted */
.highlight .gi .x {
  color: black;
  background-color: #aaffaa; }

/* Generic.Inserted.Specific */
.highlight .go {
  color: #888888; }

/* Generic.Output */
.highlight .gp {
  color: #555555; }

/* Generic.Prompt */
.highlight .gs {
  font-weight: bold; }

/* Generic.Strong */
.highlight .gu {
  color: #aaaaaa; }

/* Generic.Subheading */
.highlight .gt {
  color: #aa0000; }

/* Generic.Traceback */
.highlight .kc {
  font-weight: bold; }

/* Keyword.Constant */
.highlight .kd {
  font-weight: bold; }

/* Keyword.Declaration */
.highlight .kp {
  font-weight: bold; }

/* Keyword.Pseudo */
.highlight .kr {
  font-weight: bold; }

/* Keyword.Reserved */
.highlight .kt {
  color: #445588;
  font-weight: bold; }

/* Keyword.Type */
.highlight .m {
  color: #009999; }

/* Literal.Number */
.highlight .s {
  color: #dd1144; }

/* Literal.String */
.highlight .na {
  color: teal; }

/* Name.Attribute */
.highlight .nb {
  color: #0086b3; }

/* Name.Builtin */
.highlight .nc {
  color: #445588;
  font-weight: bold; }

/* Name.Class */
.highlight .no {
  color: teal; }

/* Name.Constant */
.highlight .ni {
  color: purple; }

/* Name.Entity */
.highlight .ne {
  color: #990000;
  font-weight: bold; }

/* Name.Exception */
.highlight .nf {
  color: #990000;
  font-weight: bold; }

/* Name.Function */
.highlight .nn {
  color: #555555; }

/* Name.Namespace */
.highlight .nt {
  color: navy; }

/* Name.Tag */
.highlight .nv {
  color: teal; }

/* Name.Variable */
.highlight .ow {
  font-weight: bold; }

/* Operator.Word */
.highlight .w {
  color: #bbbbbb; }

/* Text.Whitespace */
.highlight .mf {
  color: #009999; }

/* Literal.Number.Float */
.highlight .mh {
  color: #009999; }

/* Literal.Number.Hex */
.highlight .mi {
  color: #009999; }

/* Literal.Number.Integer */
.highlight .mo {
  color: #009999; }

/* Literal.Number.Oct */
.highlight .sb {
  color: #dd1144; }

/* Literal.String.Backtick */
.highlight .sc {
  color: #dd1144; }

/* Literal.String.Char */
.highlight .sd {
  color: #dd1144; }

/* Literal.String.Doc */
.highlight .s2 {
  color: #dd1144; }

/* Literal.String.Double */
.highlight .se {
  color: #dd1144; }

/* Literal.String.Escape */
.highlight .sh {
  color: #dd1144; }

/* Literal.String.Heredoc */
.highlight .si {
  color: #dd1144; }

/* Literal.String.Interpol */
.highlight .sx {
  color: #dd1144; }

/* Literal.String.Other */
.highlight .sr {
  color: #009926; }

/* Literal.String.Regex */
.highlight .s1 {
  color: #dd1144; }

/* Literal.String.Single */
.highlight .ss {
  color: #990073; }

/* Literal.String.Symbol */
.highlight .bp {
  color: #999999; }

/* Name.Builtin.Pseudo */
.highlight .vc {
  color: teal; }

/* Name.Variable.Class */
.highlight .vg {
  color: teal; }

/* Name.Variable.Global */
.highlight .vi {
  color: teal; }

/* Name.Variable.Instance */
.highlight .il {
  color: #009999; }

/* Literal.Number.Integer.Long */

