/*!
 * Caches To Caches - Gregory Stein
 * Copyright 2016 CachesToCaches.com / Gregory Stein
 * Licensed under MIT
 * 
 * Social Media Icons Designed by Ibrandify - Freepik.com
 */body{color:#333;font-family:freight-sans-pro,Dosis,Helvetica,sans-serif;font-size:18px;line-height:26px;margin:0}div{display:block}a{text-decoration:none;color:#333;border-bottom:1px dotted #722}a:hover{color:#722;border-bottom:1px solid #722}h1,h2,h3,h4,h5,h6{text-transform:uppercase;font-family:'Unica One',sans-serif;line-height:1}h1{font-size:46px}h2{font-size:38px}h3{font-size:31px}h4{font-size:23px}h5{font-size:18px}h6{font-size:16px}@media screen and (max-width:909px){h1{font-size:41px}h2{font-size:34px}h3{font-size:28px}h4{font-size:20px}h5{font-size:16px}h6{font-size:14px}}.dark-background{background:#422;color:#caa}.dark-background a{color:#caa;border:0}.dark-background a:hover{color:#fff}.dark-background .center-dot:before{color:#caa;content:".";padding:0 4px;vertical-align:15%}.dark-background .description,.dark-background li{color:#977;font-size:16px;line-height:17px;margin:0 0 4px -4px;padding:0 4px 0 4px;border-left:1px solid #422}.dark-background .description a,.dark-background li a{color:#977}.dark-background .active{border-color:#977}.center-text{text-align:center}.sidebar{height:100%;position:fixed;padding-top:20px;font-family:freight-sans-condensed-pro,freight-sans-pro,Dosis,Helvetica,sans-serif;font-size:18px;line-height:24px;width:320px;background:#422;color:#caa}.sidebar a{color:#caa;border:0}.sidebar a:hover{color:#fff}.sidebar .center-dot:before{color:#caa;content:".";padding:0 4px;vertical-align:15%}.sidebar .description,.sidebar li{color:#977;font-size:16px;line-height:17px;margin:0 0 4px -4px;padding:0 4px 0 4px;border-left:1px solid #422}.sidebar .description a,.sidebar li a{color:#977}.sidebar .active{border-color:#977}@media screen and (max-width:1229px){.sidebar{display:none}}@media print{.sidebar{display:none}}.sidebar .title{font-family:'Unica One',sans-serif;text-transform:uppercase;line-height:1}.sidebar .content{margin:20px 40px}.sidebar hr{border:0;border-top:1px solid #977;margin:4px 0}.sidebar ul{list-style-type:none;margin:0;padding:0}.sidebar .floating-description{color:#977;font-size:16px;line-height:17px;margin:0 0 4px -4px;padding:0 4px 0 4px;border-left:1px solid #422;width:240px;bottom:2.5em;position:fixed}.sidebar .floating-description a{color:#977}.sidebar .floating-description a:hover{color:#fff}.footer,.header{display:none;background:#422;color:#caa;min-height:40px;padding:0 40px 0 360px;position:relative}@media screen and (max-width:1229px){.footer,.header{display:block}}.footer a,.header a{color:#caa;border:0}.footer a:hover,.header a:hover{color:#fff}.footer .center-dot:before,.header .center-dot:before{color:#caa;content:".";padding:0 4px;vertical-align:15%}.footer .description,.footer li,.header .description,.header li{color:#977;font-size:16px;line-height:17px;margin:0 0 4px -4px;padding:0 4px 0 4px;border-left:1px solid #422}.footer .description a,.footer li a,.header .description a,.header li a{color:#977}.footer .active,.header .active{border-color:#977}@media screen and (max-width:1229px){.footer,.header{padding:0 40px 0 40px}}@media screen and (max-width:909px){.footer,.header{padding:0 20px 0 20px}}.footer .content,.header .content{font-family:freight-sans-condensed-pro,freight-sans-pro,Dosis,Helvetica,sans-serif;max-width:550px;padding-right:280px}@media screen and (max-width:909px){.footer .content,.header .content{padding-right:0}}@media screen and (max-width:1229px){.footer .content,.header .content{margin:auto}}.footer .floating-description,.header .floating-description{color:#977;font-size:16px;line-height:17px;margin:0 0 4px -4px;padding:0 4px 0 4px;border-left:1px solid #422}.footer .floating-description a,.header .floating-description a{color:#977}.footer{padding:20px 0}.page{margin:0 40px 0 360px;padding-top:20px;position:relative}@media screen and (max-width:1229px){.page{margin:0 40px 0 40px}}@media screen and (max-width:909px){.page{margin:0 20px 0 20px}}.page .title a,.page a.title{border:0;border-bottom:0}.page blockquote{font-size:30px;line-height:1.2}.page .content,.page .content-bottom,.page .content-top{max-width:550px;padding-right:280px}.page .content p,.page .content-bottom p,.page .content-top p{text-align:justify}.page .content pre,.page .content-bottom pre,.page .content-top pre{margin:-10px;padding:10px;box-shadow:2px 5px 10px #ccc}.page .content ul,.page .content-bottom ul,.page .content-top ul{padding-left:0}.page .content li,.page .content-bottom li,.page .content-top li{line-height:24px;padding-bottom:4px;padding-top:4px;list-style:none}.page .content li:before,.page .content-bottom li:before,.page .content-top li:before{display:inline-block;color:#722;font-family:'Unica One',sans-serif;content:".";vertical-align:20%;width:10px;margin-left:-10px}@media screen and (max-width:909px){.page .content,.page .content-bottom,.page .content-top{padding-right:0}}@media screen and (max-width:1229px){.page .content,.page .content-bottom,.page .content-top{margin:auto}}.page h1{padding:5px 0;margin:0;line-height:.9}.page h2{margin:36px 0 26px 0}.page h3{margin:30px 0 20px 0}.page .post-list{line-height:1.2}.page .post-list a{display:block}.page .post-list .small-post-list{line-height:1}.page .post-list .center-dot:before{color:#722;content:".";vertical-align:25%}.page .post-list .small-title{font-family:'Unica One',sans-serif;text-transform:uppercase;line-height:1}.page .post-list .small-detail{font-family:freight-sans-condensed-pro,freight-sans-pro,Dosis,Helvetica,sans-serif;font-size:18px;line-height:24px;line-height:1.3}.page .post-list h3{margin:5px 0 10px 0}.page .post-list ul{margin:5px 0}.page .post-list li{padding-top:8px;padding-bottom:8px}.page .post-list li:before{display:none}.page h1.title{font-size:62px;padding:5px 0;margin:0;line-height:.9}@media screen and (max-width:909px){.page h1.title{font-size:41px}}.page h2.title{font-size:51px;padding:5px 0;margin:0;line-height:.9}@media screen and (max-width:909px){.page h2.title{font-size:34px}}.page hr{border:0;border-top:1px solid #977;margin:40px 0}.page img{box-shadow:2px 5px 10px #aac}.page img.cover{box-shadow:none}@media print{.page{margin:0 20px 0 20px;font-size:14px;line-height:17px;font-family:Palatino}}code,pre{font-family:mplus-1m,'Anonymous Pro',monospace;hyphens:none;-ms-word-break:none!important;word-break:normal!important;-webkit-hyphens:none!important;-moz-hyphens:none!important}code{color:#000;font-size:16px;background-color:#fff}code.code-language{font-size:15px}pre,pre code{background:#fff;color:#333;display:block;font-size:15px;line-height:20px;overflow-x:auto;-webkit-text-size-adjust:none}.cv-content{font-size:18px;line-height:24px}.cv-content hr{margin:20px 0 4px 0}.cv-content h3{font-family:freight-sans-condensed-pro,freight-sans-pro,Dosis,Helvetica,sans-serif;text-transform:none;font-weight:400}.cv-content h4{font-weight:400;margin-bottom:0}.cv-content h5{font-family:freight-sans-pro,Dosis,Helvetica,sans-serif;text-transform:none;font-weight:400}.cv-content .sidenote{font-size:18px;border-color:#fff;margin-top:-3px}.cv-content ul{margin-top:00px}.cv-content p{margin:0 0 .8em 0}.normal-font-weight{font-weight:400}.project h4{margin-top:0;margin-bottom:0}.content .pub-content{font-size:18px;line-height:20px}.content .pub-content .project .post-list h4{margin-top:0;margin-bottom:0}.content .pub-content b{font-weight:400;font-style:italic}.content .pub-content p{margin-top:.5em}.content .pub-content ul li::before{width:6px}.content .pub-content .abstract-toggle-checkbox{display:none}.content .pub-content .abstract-toggle-show::after{content:'Show Abstract'}.content .pub-content .abstract-toggle-hide::after{content:''}.content .pub-content .abstract{display:none;color:#333!important}.content .pub-content :checked+.abstract-toggle-show::after{content:'Hide Abstract'}.content .pub-content :checked~.abstract{display:block}.content .pub-content .abstract{margin-left:10px;margin-right:10px}.note{font-family:freight-sans-condensed-pro,freight-sans-pro,Dosis,Helvetica,sans-serif;font-size:18px;line-height:24px;border:0;border-top:1px solid #caa;border-bottom:1px none #fff;padding-top:2px;text-align:left!important}.note.visible-sm{padding:.25em 0 .25em 0;margin:.75em 20px .75em 20px;border-color:#caa;border-bottom-style:solid}.note img{margin-top:8px;margin-bottom:8px}@media print{.note{font-size:13px;line-height:16px;font-family:Palatino}}.marginnote,.sidenote{font-family:freight-sans-condensed-pro,freight-sans-pro,Dosis,Helvetica,sans-serif;font-size:18px;line-height:24px;margin-top:0;margin-bottom:16px;float:right;clear:right;position:relative;vertical-align:baseline;margin-right:-280px;width:240px}@media print{.marginnote,.sidenote{font-size:13px;line-height:16px;font-family:Palatino}}.img-caption{padding-left:40px;margin-left:-40px;margin-top:10px;font-family:freight-sans-condensed-pro,freight-sans-pro,Dosis,Helvetica,sans-serif;font-size:18px;line-height:24px;border:0;border-top:1px solid #caa;border-bottom:1px none #fff;padding-top:2px;text-align:left!important;border-top:1px solid #aac}.img-caption.visible-sm{padding:.25em 0 .25em 0;margin:.75em 20px .75em 20px;border-color:#caa;border-bottom-style:solid}.img-caption img{margin-top:8px;margin-bottom:8px}@media print{.img-caption{font-size:13px;line-height:16px;font-family:Palatino}}.img-caption p{margin-top:0;text-align:left!important;hyphens:none;-ms-word-break:none!important;word-break:normal!important;-webkit-hyphens:none!important;-moz-hyphens:none!important}.img-caption.visible-sm{border-top:0;border-bottom:0;margin:0;padding:4px 20px 0 20px}.listing-caption{font-family:freight-sans-condensed-pro,freight-sans-pro,Dosis,Helvetica,sans-serif;font-size:18px;line-height:24px;border:0;border-top:1px solid #caa;border-bottom:1px none #fff;padding-top:2px;text-align:left!important;padding-left:30px;margin-left:-30px;border-top:1px solid #ccc}.listing-caption.visible-sm{padding:.25em 0 .25em 0;margin:.75em 20px .75em 20px;border-color:#caa;border-bottom-style:solid}.listing-caption img{margin-top:8px;margin-bottom:8px}@media print{.listing-caption{font-size:13px;line-height:16px;font-family:Palatino}}.listing-caption.visible-sm{padding:.25em 10px .25em 10px;margin:.75em -10px .5em -10px;border-color:#ccc;border-bottom:0}.post-detail{border-top:2px solid #722;border-bottom:2px solid #722}.post-detail.visible-sm{border-color:#722}.plain-font{font-family:freight-sans-pro,Dosis,Helvetica,sans-serif;text-transform:none;line-height:26px}.narrow-font{font-family:freight-sans-condensed-pro,freight-sans-pro,Dosis,Helvetica,sans-serif;font-size:18px;line-height:24px}.heading-font{font-family:'Unica One',sans-serif;text-transform:uppercase;line-height:1}.visible-sm{display:none}@media screen and (max-width:909px){.visible-sm{display:block}}.invisible-sm{display:block}@media screen and (max-width:909px){.invisible-sm{display:none}}.visible-md{display:none}@media screen and (max-width:1229px){.visible-md{display:block}}.invisible-md{display:block}@media screen and (max-width:1229px){.invisible-md{display:none}}.unit-line-height{line-height:1}.justify p{text-align:justify}.word-break p{hyphens:auto;word-break:break-word;-webkit-hyphens:auto;-moz-hyphens:auto}.no-word-break{hyphens:none;-ms-word-break:none!important;word-break:normal!important;-webkit-hyphens:none!important;-moz-hyphens:none!important}.img-responsive{display:block;max-width:100%;height:auto;margin:auto}.social-icon-container{padding-left:0;text-align:center}.social-icon{height:32px;width:32px;display:inline-block;margin:2px;margin-right:0;margin-left:0;border:0}.social-icon:hover{border:0}.twitter{background:transparent url(/static/sm_icons/icons.jpg) 0 -32px no-repeat;background-size:256px 96px}.twitter:hover{background:transparent url(/static/sm_icons/icons.jpg) 0 0 no-repeat;background-size:256px 96px}.facebook{background:transparent url(/static/sm_icons/icons.jpg) -32px -32px no-repeat;background-size:256px 96px}.facebook:hover{background:transparent url(/static/sm_icons/icons.jpg) -32px 0 no-repeat;background-size:256px 96px}.googleplus{background:transparent url(/static/sm_icons/icons.jpg) -64px -32px no-repeat;background-size:256px 96px}.googleplus:hover{background:transparent url(/static/sm_icons/icons.jpg) -64px 0 no-repeat;background-size:256px 96px}.linkedin{background:transparent url(/static/sm_icons/icons.jpg) -96px -32px no-repeat;background-size:256px 96px}.linkedin:hover{background:transparent url(/static/sm_icons/icons.jpg) -96px 0 no-repeat;background-size:256px 96px}.github{background:transparent url(/static/sm_icons/icons.jpg) -128px -32px no-repeat;background-size:256px 96px}.github:hover{background:transparent url(/static/sm_icons/icons.jpg) -128px 0 no-repeat;background-size:256px 96px}.hacker-news{background:transparent url(/static/sm_icons/icons.jpg) -160px -32px no-repeat;background-size:256px 96px}.hacker-news:hover{background:transparent url(/static/sm_icons/icons.jpg) -160px 0 no-repeat;background-size:256px 96px}.stack-overflow{background:transparent url(/static/sm_icons/icons.jpg) -192px -32px no-repeat;background-size:256px 96px}.stack-overflow:hover{background:transparent url(/static/sm_icons/icons.jpg) -192px 0 no-repeat;background-size:256px 96px}.rss-feed{background:transparent url(/static/sm_icons/icons.jpg) -224px -32px no-repeat;background-size:256px 96px}.rss-feed:hover{background:transparent url(/static/sm_icons/icons.jpg) -224px 0 no-repeat;background-size:256px 96px}.resume-twitter{background:transparent url(/static/sm_icons/icons.jpg) 0 -64px no-repeat;background-size:256px 96px}.resume-twitter:hover{background:transparent url(/static/sm_icons/icons.jpg) 0 0 no-repeat;background-size:256px 96px}.resume-facebook{background:transparent url(/static/sm_icons/icons.jpg) -32px -64px no-repeat;background-size:256px 96px}.resume-facebook:hover{background:transparent url(/static/sm_icons/icons.jpg) -32px 0 no-repeat;background-size:256px 96px}.resume-googleplus{background:transparent url(/static/sm_icons/icons.jpg) -64px -64px no-repeat;background-size:256px 96px}.resume-googleplus:hover{background:transparent url(/static/sm_icons/icons.jpg) -64px 0 no-repeat;background-size:256px 96px}.resume-linkedin{background:transparent url(/static/sm_icons/icons.jpg) -96px -64px no-repeat;background-size:256px 96px}.resume-linkedin:hover{background:transparent url(/static/sm_icons/icons.jpg) -96px 0 no-repeat;background-size:256px 96px}.resume-github{background:transparent url(/static/sm_icons/icons.jpg) -128px -64px no-repeat;background-size:256px 96px}.resume-github:hover{background:transparent url(/static/sm_icons/icons.jpg) -128px 0 no-repeat;background-size:256px 96px}.resume-hacker-news{background:transparent url(/static/sm_icons/icons.jpg) -160px -64px no-repeat;background-size:256px 96px}.resume-hacker-news:hover{background:transparent url(/static/sm_icons/icons.jpg) -160px 0 no-repeat;background-size:256px 96px}.resume-stack-overflow{background:transparent url(/static/sm_icons/icons.jpg) -192px -64px no-repeat;background-size:256px 96px}.resume-stack-overflow:hover{background:transparent url(/static/sm_icons/icons.jpg) -192px 0 no-repeat;background-size:256px 96px}.resume-rss-feed{background:transparent url(/static/sm_icons/icons.jpg) -224px -64px no-repeat;background-size:256px 96px}.resume-rss-feed:hover{background:transparent url(/static/sm_icons/icons.jpg) -224px 0 no-repeat;background-size:256px 96px}.diff .hljs-header,.hljs-comment{color:#999}.css .rule .hljs-keyword,.hljs-keyword,.hljs-request,.hljs-status,.hljs-subst,.hljs-winutils,.nginx .hljs-title{color:#000}.hljs-hexcolor,.hljs-number,.ruby .hljs-constant{color:#35a}.hljs-doctag,.hljs-string,.hljs-tag .hljs-value,.tex .hljs-formula{color:#37a}.hljs-id,.hljs-title,.scss .hljs-preprocessor{color:#422;font-weight:700}.hljs-list .hljs-keyword,.hljs-subst{font-weight:400}.hljs-class .hljs-title,.hljs-type,.tex .hljs-command,.vhdl .hljs-literal{color:#357;font-weight:700}.django .hljs-tag .hljs-keyword,.hljs-rule .hljs-property,.hljs-tag,.hljs-tag .hljs-title{color:#722;font-weight:400}.hljs-attribute,.hljs-name,.hljs-variable,.lisp .hljs-body{color:#722}.hljs-regexp{color:#373}.clojure .hljs-keyword,.hljs-prompt,.hljs-symbol,.lisp .hljs-keyword,.ruby .hljs-symbol .hljs-string,.scheme .hljs-keyword,.tex .hljs-special{color:#737}.hljs-built_in{color:#a22}.hljs-cdata,.hljs-doctype,.hljs-pi,.hljs-pragma,.hljs-preprocessor,.hljs-shebang{color:#999;font-weight:700}.hljs-deletion{background:#fdd}.hljs-addition{background:#dfd}.diff .hljs-change{background:#0086b3}.hljs-chunk{color:#aaa}