/* Normalize */
@import url(http://necolas.github.io/normalize.css/3.0.1/normalize.css);
/* Google Fonts */
@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,600,700|Roboto:300,400,500,700);
/* Colors */
/* Main, overall site */
html { background-color: #544a4a; height: 100%; }

body { font-family: Roboto, Helvetica, Arial, sans-serif; font-size: 16px; line-height: 1.5; font-weight: 300; max-width: 1000px; margin: 0 auto 0 auto; display: flex; flex-direction: column; min-height: 100%; }

h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: 400; }

a { color: #a75858; text-decoration: none; transition: color 0.6s ease; }
a:hover { color: #ed7d7d; text-decoration: underline; transition: color 0.1s ease; }

ul { list-style-type: square; }

header.page-header, header.fixed-page-header { font-family: 'Roboto', sans-serif; font-weight: 500; padding: 0 50px 5px 0; z-index: 2; }
header.page-header .site-title, header.fixed-page-header .site-title { color: #e4e2e2; display: block; font-size: 24px; padding-top: 20px; text-transform: lowercase; }
header.page-header .site-title:hover, header.fixed-page-header .site-title:hover { text-decoration: none; color: #ed7d7d; }
header.page-header .site-description, header.fixed-page-header .site-description { font-size: 14px; color: #a5a1a1; font-weight: 500; margin-left: 0px; margin-top: -12px; letter-spacing: 0.25px; display: block; text-transform: lowercase; }
header.page-header nav a, header.fixed-page-header nav a { font-size: 12px; transition: color 0.25s; display: inline-block; color: #e4e2e2; font-weight: 400; text-decoration: none; text-transform: lowercase; }
header.page-header nav a:after, header.fixed-page-header nav a:after { content: '\2022'; padding: 0 5px 0 5px; }
header.page-header nav a:last-of-type:after, header.fixed-page-header nav a:last-of-type:after { content: none; }
header.page-header nav a:visited, header.fixed-page-header nav a:visited { /* color: rgba(desaturate($main-color, 20%), 0.65); */ }
header.page-header nav a:hover, header.fixed-page-header nav a:hover { color: #ed7d7d; text-decoration: none; transition: color 0.25s; }
header.page-header nav a:hover:after, header.fixed-page-header nav a:hover:after { color: #e4e2e2; }

footer.page-footer { font-size: 12px; color: rgba(228, 226, 226, 0.95); font-family: 'Open Sans', sans-serif; font-weight: 400; padding: 10px 0 10px 0; text-transform: lowercase; }
footer.page-footer a { color: rgba(228, 226, 226, 0.95); }
footer.page-footer .site-name { display: block; }
footer.page-footer .site-email { display: block; }

main { font-family: 'Open Sans', Helvetica, sans-serif; background-color: #fff5f5; color: #281515; position: relative; letter-spacing: 0.25px; border-top: 5px solid #ed7d7d; }
main .video { width: 900px; height: 500px; }

/* Home styles */
/* ----------------------------------------------------------*/
.posts { list-style-type: none; }

.posts li { margin-bottom: 30px; }

.posts .post-link { font-size: 24px; letter-spacing: -1px; line-height: 1; }

.posts .post-date { display: block; font-size: 15px; color: #818181; }

/* Post styles */
/* ----------------------------------------------------------*/
.post-header h1 { font-family: 'Roboto', sans-serif; font-weight: 500; font-size: 24px; letter-spacing: -0.25px; line-height: 1; background-color: #532d2d; color: #fff5f5; text-transform: lowercase; padding: 0 0 0 20px; }

.post-header .meta { font-size: 15px; color: #818181; margin-top: 5px; }

.post-content { margin: 0 0 30px; }

.post-content > * { margin: 20px 0; }

.post-content h1, .post-content h2, .post-content h3, .post-content h4, .post-content h5, .post-content h6 { line-height: 1; font-weight: 300; margin: 40px 0 20px; }

.post-content h2 { font-size: 32px; letter-spacing: -1.25px; }

.post-content h3 { font-size: 26px; letter-spacing: -1px; }

.post-content h4 { font-size: 20px; letter-spacing: -1px; }

.post-content blockquote { border-left: 4px solid #e8e8e8; padding-left: 20px; font-size: 18px; opacity: .6; letter-spacing: -1px; font-style: italic; margin: 30px 0; }

.post-content ul, .post-content ol { padding-left: 20px; }

.post pre, .post code { border: 1px solid #d5d5e9; background-color: #eef; padding: 8px 12px; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; font-size: 15px; }

.post code { padding: 1px 5px; }

.post ul, .post ol { margin-left: 1.35em; }

.post pre code { border: none; }

/* terminal */
.post pre.terminal { border: 1px solid #000; background-color: #333; color: #FFF; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }

.post pre.terminal code { background-color: #333; }

/* Syntax highlighting styles */
/* ----------------------------------------------------------*/
.highlight { background: #ffffff; }

.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: #000000; background-color: #ffdddd; }

/* Generic.Deleted */
.highlight .gd .x { color: #000000; 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: #000000; background-color: #ddffdd; }

/* Generic.Inserted */
.highlight .gi .x { color: #000000; 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: #d14; }

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

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

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

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

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

/* 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: #000080; }

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

/* 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: #d14; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

/* Literal.Number.Integer.Long */
@media screen and (max-device-width: 640px) { main .video { width: 80%; height: auto; }
  main img { max-width: 100%; }
  header.page-header, header.fixed-page-header { padding: 0 10px 15px 10px; } }
/* Fancy JS stuff */
.switch-css { position: fixed; top: 2px; right: 5px; color: rgba(40, 21, 21, 0.55); transition: color 0.6s ease; z-index: -1; font-size: 12px; cursor: pointer; }
.switch-css:hover { color: #814444; transition: color 0.6s ease; }

header.fixed-page-header { border-top: 5px solid #ed7d7d; position: fixed; left: 0; top: 0; margin: 0; opacity: 0; z-index: -1; background: transparent; padding: 0 5px 0 5px; }
header.fixed-page-header .site-title { padding: 0; font-size: 12px; white-space: nowrap; }
header.fixed-page-header nav a { font-size: 10px; }
header.fixed-page-header nav a:after { content: none; }
header.fixed-page-header .site-description { display: none; }
header.fixed-page-header nav a { display: block; }

@media screen and (max-device-width: 640px) { .switch-css { position: absolute; z-index: 2; } }
/* Posts */
.post article header.post-header { background-color: #532d2d; padding: 5px 10px; font-family: 'Roboto', sans-serif; }
.post article header.post-header h1, .post article header.post-header p { position: relative; z-index: 2; }
.post article header.post-header h1 { font-weight: 500; font-size: 24px; letter-spacing: -0.25px; line-height: 1; color: #fff5f5; text-transform: lowercase; margin: 0; padding: 0; }
.post article header.post-header h2 { font-weight: 200; margin: 0; padding: 0; color: rgba(255, 245, 245, 0.75); font-size: 11px; }
.post article header.post-header h3 { position: absolute; top: 20px; right: 0; color: rgba(255, 245, 245, 0.25); margin: 0 10px; padding: 0; line-height: 1; font-size: 12px; vertical-align: top; font-weight: 200; }
.post article header.post-header .image { width: 100%; height: 100px; right: 0; }
.post article section.post-content { position: relative; z-index: 2; }
.post article section.post-content h1 { font-weight: 500; font-size: 20px; margin: 30px 0 10px 20px; }
.post article section.post-content p { margin: 20px 50px; line-height: 180%; }
.post article section.post-content ul { margin: 20px 50px; }
.post article section.post-content iframe, .post article section.post-content video { display: block; margin: auto; width: 100%; height: 33%; min-height: 500px; background-color: #363030; }

footer.page-footer { position: relative; z-index: 2; }

@media screen and (max-device-width: 640px) { .post article section.post-content iframe, .post article section.post-content video { min-height: 200px; }
  .post article section.post-content p { margin: 25px 5px; } }
/* Page-specific */
.contact { padding: 10px 40px; }
.contact img { float: left; height: 30%; width: 30%; margin: 10px 50px 20px 0; border: 5px solid #ed7d7d; }
.contact h1 { font-size: 32px; font-weight: 300; letter-spacing: -1px; margin: 0; }
.contact h2 { margin: 0; font-size: 20px; font-weight: 300; }
.contact li { list-style: none; }

@media screen and (max-device-width: 640px) { .contact { padding: 0 5px; }
  .contact img { float: right; margin: 0; } }
.home { line-height: 0; }
.home video { background-color: black; }
.home #reeltag { font-family: 'Roboto', sans-serif; font-weight: 700; line-height: 100%; position: absolute; padding: 10px 20px; left: 0; top: 50%; height: 36px; padding-top: -18px; background-color: rgba(40, 21, 21, 0.8); color: #ebdbdb; text-transform: lowercase; border-left: 5px solid #ed7d7d; }
.home #reeltag h1 { font-size: 18px; margin: 0; white-space: nowrap; }
.home #reeltag h2 { font-size: 12px; margin: 0; white-space: nowrap; }
.home .sitereel { width: 100%; margin: 0; }

.post article header.post-header { background-color: #532d2d; padding: 5px 10px; font-family: 'Roboto', sans-serif; }
.post article header.post-header h1, .post article header.post-header p { position: relative; z-index: 2; }
.post article header.post-header h1 { font-weight: 500; font-size: 24px; letter-spacing: -0.25px; line-height: 1; color: #fff5f5; text-transform: lowercase; margin: 0; padding: 0; }
.post article header.post-header h2 { font-weight: 200; margin: 0; padding: 0; color: rgba(255, 245, 245, 0.75); font-size: 11px; }
.post article header.post-header h3 { position: absolute; top: 20px; right: 0; color: rgba(255, 245, 245, 0.25); margin: 0 10px; padding: 0; line-height: 1; font-size: 12px; vertical-align: top; font-weight: 200; }
.post article header.post-header .image { width: 100%; height: 100px; right: 0; }
.post article section.post-content { position: relative; z-index: 2; }
.post article section.post-content h1 { font-weight: 500; font-size: 20px; margin: 30px 0 10px 20px; }
.post article section.post-content p { margin: 20px 50px; line-height: 180%; }
.post article section.post-content ul { margin: 20px 50px; }
.post article section.post-content iframe, .post article section.post-content video { display: block; margin: auto; width: 100%; height: 33%; min-height: 500px; background-color: #363030; }

footer.page-footer { position: relative; z-index: 2; }

@media screen and (max-device-width: 640px) { .post article section.post-content iframe, .post article section.post-content video { min-height: 200px; }
  .post article section.post-content p { margin: 25px 5px; } }
.projects article { position: relative; display: flex; align-items: flex-stretch; min-height: 125px; }
.projects article .info { order: 1; width: 100%; font-weight: 500; }
.projects article .info p { margin: 0px 5px 5px 5px; }
.projects article .info h1 { font-family: 'Roboto', sans-serif; text-transform: lowercase; color: #ebdbdb; background-color: #281515; font-size: 24px; margin: 0; letter-spacing: -0.25px; padding: 2px 0 5px 10px; }
.projects article .info h1 a { color: #ebdbdb; }
.projects article .info h2 { font-family: 'Roboto', sans-serif; text-transform: lowercase; margin: 1px 0 0 0; font-size: 12px; font-weight: 400; letter-spacing: -0.4px; position: absolute; top: 0; right: 0; color: rgba(235, 219, 219, 0.75); }
.projects article .info h3 { display: none; font-family: 'Roboto', sans-serif; margin-top: 0; font-size: 11px; color: #281515; text-transform: lowercase; background-color: #ebdbdb; }
.projects article .info h3 a { color: #b81919; }
.projects article .info h4 { font-family: 'Roboto', sans-serif; text-transform: lowercase; margin: 1px 0 0 0; font-size: 10px; font-weight: 400; letter-spacing: -0.4px; position: absolute; top: 22px; right: 5px; color: rgba(235, 219, 219, 0.75); }
.projects article .flair { order: 0; width: 100%; position: relative; display: flex; flex-direction: column; background-color: #8a7878; }
.projects article .flair .image { flex-grow: 1; position: relative; overflow: hidden; }
.projects article .flair .image img { position: absolute; left: -100%; right: -100%; top: -100%; bottom: -100%; margin: auto; }
.projects article .flair .image-caption { text-align: right; font-size: 12px; position: absolute; z-index: 1; bottom: 0; right: 0; padding: 2px 5px 2px 5px; background: rgba(40, 21, 21, 0.6); color: #ebdbdb; }
.projects article .excerpt { letter-spacing: 0.3px; margin: 10px 20px 0 10px; }
.projects article .excerpt p { font-family: 'Open Sans', sans-serif; font-size: 12px; font-weight: 600; }
.projects article .readmore { margin: 0 0 5px 15px; font-size: 12px; }
.projects article .readmore a { color: #a75858; }

@media screen and (max-device-width: 640px) { main.projects article { flex-direction: column; padding: 0 0 20px 0; border-top: 5px solid #281515; }
  main.projects article .info { order: 1; }
  main.projects article .info h1 { font-size: 30px; }
  main.projects article .info h2 { font-size: 16px; }
  main.projects article .info h3 { font-size: 12px; }
  main.projects article .image { background-color: #281515; }
  main.projects article .flair { order: 0; height: 150px; width: 100%; margin: 0; background-color: #ebdbdb; }
  main.projects article .excerpt, main.projects article .readmore { margin-left: 5px; } }
.resume { font-size: 12px; }
.resume h1 { background-color: #281515; color: #ebdbdb; font-weight: 500; font-size: 24px; margin: 0; font-family: 'Roboto', sans-serif; text-transform: lowercase; padding: 0 10px; }
.resume p { padding: 0 25px; }
.resume ul { margin: 0; padding: 0; }
.resume ul li { list-style-position: inside; list-style: none; position: relative; padding: 0 0 12px 0; }
.resume ul li h2 { font-weight: 500; font-size: 18px; margin: 0; padding: 0 15px; background-color: #ebdbdb; text-transform: lowercase; font-family: 'Roboto', sans-serif; }
.resume ul li h3 { margin: 0; font-size: 12px; font-weight: 700; padding: 0 20px; text-transform: lowercase; font-family: 'Roboto', sans-serif; }
.resume ul li h4 { margin: 0; font-size: 12px; font-weight: 300; position: absolute; top: 0; right: 0; font-family: 'Roboto', sans-serif; padding: 4px 10px; text-transform: lowercase; }
.resume ul li h5 { margin: 0; font-weight: 300; padding: 0 25px; font-size: 12px; }
.resume ul li ul { font-size: 12px; }
.resume ul li ul li { padding: 0 25px; list-style: square; list-style-position: inside; }
.resume ul li ol { padding: 0 25px; -moz-column-count: 4; -moz-column-gap: 20px; -webkit-column-count: 4; -webkit-column-gap: 20px; column-count: 4; column-gap: 20px; }
.resume ul li ol li { list-style: none; margin: 0; padding: 0; }

@media screen and (max-device-width: 640px) { .resume h1 { font-size: 20px; font-weight: bold; /* color: mix($main-color, $body-bg, 40%); */ }
  .resume ul { padding: 0 0 0 10px; }
  .resume ul li h2 { margin: 0; font-size: 14px; font-weight: bold; /* color: $main-color; */ }
  .resume ul li h3 { font-size: 12px; }
  .resume ul li h4 { font-size: 12px; position: static; }
  .resume ul li ol { -moz-column-count: 2; -moz-column-gap: 20px; -webkit-column-count: 2; -webkit-column-gap: 20px; column-count: 2; }
  .resume ul li ul li { list-style: circle; font-size: 14px; } }
@media screen and (max-device-width: 640px) { main.resume { margin: 0; padding: 0; }
  main.resume ul { padding: 0; margin: 0 0 5px 0; }
  main.resume ul li { padding: 0; }
  main.resume ul li h2 { font-size: 12px; padding: 0 5px; }
  main.resume ul li h3 { background-color: #ebdbdb; padding: 0 5px; font-size: 10px; }
  main.resume ul li h4 { background-color: #ebdbdb; font-size: 10px; padding: 0 5px; margin: 0 0 3px 0; }
  main.resume ul li ul li { font-size: 12px; list-style: none; padding: 0 5px; margin: 4px 0; } }
/* Post-specific */
article.class-projects section.post-content h1 { font-size: 32px; color: rgba(40, 21, 21, 0.9); font-weight: bold; margin: 5px 0 0 20px; }
article.class-projects section.post-content h2 { font-size: 16px; letter-spacing: 0.5px; margin: 5px 0 0 30px; color: rgba(40, 21, 21, 0.85); font-weight: 500; }
article.class-projects section.post-content h3 { font-size: 14px; letter-spacing: 0.35px; margin: 5px 0 0 30px; color: rgba(40, 21, 21, 0.75); }
