:root{--base03:#002b36;--base02:#073642;--base01:#586e75;--base00:#657b83;--base0:#839496;--base1:#93a1a1;--base2:#eee8d5;--base3:#fdf6e3;--yellow:#b58900;--orange:#cb4b16;--red:#dc322f;--magenta:#d33682;--violet:#6c71c4;--blue:#268bd2;--cyan:#2aa198;--green:#859900}@charset "UTF-8";@import url('//fonts.googleapis.com/css?family=Molengo');@font-face{font-family:"et-book";src:url("../fonts/et-book-roman-line-figures/et-book-roman-line-figures.eot");src:url("../fonts/et-book-roman-line-figures/et-book-roman-line-figures.eot?#iefix") format("embedded-opentype"),url("../fonts/et-book-roman-line-figures/et-book-roman-line-figures.woff") format("woff"),url("../fonts/et-book-roman-line-figures/et-book-roman-line-figures.ttf") format("truetype"),url("../fonts/et-book-roman-line-figures/et-book-roman-line-figures.svg#etbookromanosf") format("svg");font-weight:normal;font-style:normal}@font-face{font-family:"et-book";src:url("../fonts/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.eot");src:url("../fonts/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.eot?#iefix") format("embedded-opentype"),url("../fonts/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.woff") format("woff"),url("../fonts/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.ttf") format("truetype"),url("../fonts/et-book-display-italic-old-style-figures/et-book-display-italic-old-style-figures.svg#etbookromanosf") format("svg");font-weight:normal;font-style:italic}@font-face{font-family:"et-book";src:url("../fonts/et-book-bold-line-figures/et-book-bold-line-figures.eot");src:url("../fonts/et-book-bold-line-figures/et-book-bold-line-figures.eot?#iefix") format("embedded-opentype"),url("../fonts/et-book-bold-line-figures/et-book-bold-line-figures.woff") format("woff"),url("../fonts/et-book-bold-line-figures/et-book-bold-line-figures.ttf") format("truetype"),url("../fonts/et-book-bold-line-figures/et-book-bold-line-figures.svg#etbookromanosf") format("svg");font-weight:bold;font-style:normal}@font-face{font-family:"et-book-roman-old-style";src:url("../fonts/et-book-roman-old-style-figures/et-book-roman-old-style-figures.eot");src:url("../fonts/et-book-roman-old-style-figures/et-book-roman-old-style-figures.eot?#iefix") format("embedded-opentype"),url("../fonts/et-book-roman-old-style-figures/et-book-roman-old-style-figures.woff") format("woff"),url("../fonts/et-book-roman-old-style-figures/et-book-roman-old-style-figures.ttf") format("truetype"),url("../fonts/et-book-roman-old-style-figures/et-book-roman-old-style-figures.svg#etbookromanosf") format("svg");font-weight:normal;font-style:normal}html,body{margin:0;padding:0;background-color:var(--base3);font-size:15px;color:var(--base00)}::selection{background-color:var(--base2)}::-moz-selection{background-color:var(--base2)}body{border-top:2px solid var(--violet)}.wrapper{width:87.5%;padding-left:12.5%;max-width:1400px;margin-right:auto;margin-left:auto}.sans-serif{font-family:'Molengo',sans-serif}header nav{font-family:'Molengo',sans-serif;font-size:1.1rem;letter-spacing:0;font-weight:400;font-style:normal;text-transform:lowercase;margin:0;padding:0;line-height:2rem}.scroll{white-space:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;-ms-overflow-style:-ms-autohiding-scrollbar}header nav a:link{display:inline-block;padding-right:2rem;text-align:center;background:none;color:var(--green);border:none;text-shadow:none}header nav a:hover{color:var(--cyan)}#content{color:var(--base00)}#content,h1,h2,h3,h4,h5,h6{font-family:et-book,Palatino,"Palatino Linotype","Palatino LT STD","Book Antiqua",Georgia,serif;background-color:transparent;counter-reset:sidenote-counter}h1,h2,h3,h4,h5,h6{color:var(--base01)}h1{font-weight:400;margin-top:4rem;margin-bottom:1.5rem;font-size:3.2rem;line-height:1}h2{font-weight:400;margin-top:2.1rem;margin-bottom:0;font-size:2.2rem;line-height:1}h3{font-weight:400;font-size:1.7rem;margin-top:2rem;margin-bottom:0;line-height:1}hr{display:block;height:1px;width:55%;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}#toc ul{width:87.5%}img.badge{width:initial}#projects h3,#clog-index h3{margin-bottom:1rem}#projects ul{list-style:none;width:75%}ul.project-submenu{list-style:none;display:flex;flex-wrap:wrap;justify-content:flex-start;margin:0;padding:0;font-size:1rem;text-transform:lowercase}ul.project-submenu li{margin-right:15px}.clog>#toc ul li::after{content:" \2014"}.clog>#toc ul li:last-child::after{content:""}.clog>#toc ul li{display:inline;font-style:italic}.clog>#toc ul{list-style:none;padding:0;width:100%;max-width:900px;line-height:2rem}.clog>article#content{font-family:"Gill Sans","Gill Sans MT",Molengo,Calibri,sans-serif}#clog-index h3{font-style:normal}#clog-index p.tldr{margin-top:0}p.tldr,span.tldr{width:100%;font-style:italic}p.subtitle{font-style:italic;margin-top:1rem;margin-bottom:1rem;font-size:1.8rem;display:block;line-height:1}.numeral{font-family:et-book-roman-old-style}article{position:relative;padding:5rem 0rem}section{padding-top:1rem;padding-bottom:1rem}p,ol,ul,dt,dd{font-size:1.4rem}dt{margin-top:1em}p{line-height:2rem;margin-top:1.4rem;margin-bottom:1.4rem;padding-right:0;vertical-align:baseline}div.epigraph{margin:5em 0}div.epigraph>blockquote{margin-top:3em;margin-bottom:3em}div.epigraph>blockquote,div.epigraph>blockquote>p{font-style:italic}div.epigraph>blockquote>footer{font-style:normal}div.epigraph>blockquote>footer>cite{font-style:italic}blockquote{font-size:1.4rem}blockquote p{width:55%;margin-right:40px}blockquote footer{width:55%;font-size:1.1rem;text-align:right}section>ol,section>ul{width:45%;-webkit-padding-start:5%;-webkit-padding-end:5%}li{padding:0.5rem 0}figure{padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline;max-width:55%;-webkit-margin-start:0;-webkit-margin-end:0;margin:0 0 3em 0}figcaption{float:right;clear:right;margin-top:0;margin-bottom:0;font-size:1.1rem;line-height:1.6;vertical-align:baseline;position:relative;max-width:40%}figure.fullwidth figcaption{margin-right:24%}a:link,a:visited{color:inherit}a:hover{color:var(--violet)}a.naked{background:none!important;text-shadow:none}a:link{text-decoration:none;background:-webkit-linear-gradient(var(--base3),var(--base3)),-webkit-linear-gradient(var(--base3),var(--base3)),-webkit-linear-gradient(var(--base00),var(--base00));background:linear-gradient(var(--base3),var(--base3)),linear-gradient(var(--base3),var(--base3)),linear-gradient(var(--base00),var(--base00));-webkit-background-size:0.05em 1px,0.05em 1px,1px 1px;-moz-background-size:0.05em 1px,0.05em 1px,1px 1px;background-size:0.05em 1px,0.05em 1px,1px 1px;background-repeat:no-repeat,no-repeat,repeat-x;text-shadow:0.03em 0 var(--base3),-0.03em 0 var(--base3),0 0.03em var(--base3),0 -0.03em var(--base3),0.06em 0 var(--base3),-0.06em 0 var(--base3),0.09em 0 var(--base3),-0.09em 0 var(--base3),0.12em 0 var(--base3),-0.12em 0 var(--base3),0.15em 0 var(--base3),-0.15em 0 var(--base3);background-position:0% 93%,100% 93%,0% 93%}a:link::selection{text-shadow:0.03em 0 var(--base2),-0.03em 0 var(--base2),0 0.03em var(--base2),0 -0.03em var(--base2),0.06em 0 var(--base2),-0.06em 0 var(--base2),0.09em 0 var(--base2),-0.09em 0 var(--base2),0.12em 0 var(--base2),-0.12em 0 var(--base2),0.15em 0 var(--base2),-0.15em 0 var(--base2);background:var(--base2)}a:link::-moz-selection{text-shadow:0.03em 0 var(--base2),-0.03em 0 var(--base2),0 0.03em var(--base2),0 -0.03em var(--base2),0.06em 0 var(--base2),-0.06em 0 var(--base2),0.09em 0 var(--base2),-0.09em 0 var(--base2),0.12em 0 var(--base2),-0.12em 0 var(--base2),0.15em 0 var(--base2),-0.15em 0 var(--base2);background:var(--base2)}img{max-width:100%}.sidenote,.marginnote{float:right;clear:right;margin-right:-60%;width:50%;margin-top:0;margin-bottom:0;font-size:1rem;line-height:1.3;vertical-align:baseline;position:relative;color:var(--base1)}.sidenote code,.marginnote code{font-size:1rem;line-height:1.3}.sidenote-number{counter-increment:sidenote-counter}.sidenote-number:after,.sidenote:before{content:counter(sidenote-counter) " ";font-family:et-book-roman-old-style;position:relative;vertical-align:baseline}.sidenote-number:after{content:counter(sidenote-counter);font-size:1rem;top:-0.5rem;left:0.1rem}.sidenote:before{content:counter(sidenote-counter) " ";top:-0.5rem}blockquote .sidenote,blockquote .marginnote{margin-right:-82%;min-width:59%;text-align:left}p,footer,table,ul,ol{width:55%}div.fullwidth,table.fullwidth,div.fullwidth>table{width:100%!important}div.table-wrapper{overflow-x:auto;font-family:"Trebuchet MS","Gill Sans","Gill Sans MT",Molengo,Calibri,sans-serif}table thead,table p,table caption{line-height:2rem;font-size:1.2rem;margin:0;padding:0}tr.odd{background:var(--base2);border-color:var(--base02);border-right:1px solid}tr:hover{color:var(--magenta)}.sans{font-family:"Gill Sans","Gill Sans MT",Molengo,Calibri,sans-serif;letter-spacing:.03em}span.math.display{display:flex;justify-content:center}code{font-family:mononoki,Consolas,"Liberation Mono",Menlo,Courier,monospace;font-size:1.0rem;line-height:1.42}pre.sourceCode{color:#444}span.co{color:#888;font-style:italic}span.bu,span.fu,span.at,span.kw{color:#333;font-weight:bold}.sans>code{font-size:1.2rem}h1>code,h2>code,h3>code{font-size:0.80em}.marginnote>code,.sidenote>code,{font-size:1rem}pre.sourceCode{font-size:0.9rem;width:52.5%;margin-left:2.5%;overflow-x:auto}pre.sourceCode.fullwidth{width:90%}.fullwidth{max-width:90%;clear:both}span.newthought{font-variant:small-caps;font-size:1.2em}input.margin-toggle{display:none}label.sidenote-number{display:inline}label.margin-toggle:not(.sidenote-number){display:none}@media (max-width:760px){.wrapper{width:84%;padding-left:8%;padding-right:8%}p,footer{width:100%}pre.sourceCode{width:97%}ul{width:85%}figure{max-width:90%}figcaption,figure.fullwidth figcaption{margin-right:0%;max-width:none}blockquote{margin-left:1.5em;margin-right:0em}blockquote p,blockquote footer{width:100%}label.margin-toggle:not(.sidenote-number){display:inline}.sidenote,.marginnote{display:none}.margin-toggle:checked+.sidenote,.margin-toggle:checked+.marginnote{display:block;float:left;left:1rem;clear:both;width:95%;margin:1rem 2.5%;vertical-align:baseline;position:relative}label{cursor:pointer}div.table-wrapper,table{width:85%}img{width:100%}}