html{font-family:-apple-system,BlinkMacSystemFont,avenir next,avenir,segoe ui,helvetica neue,helvetica,Ubuntu,roboto,noto,arial,sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}body{margin:0;background:#fff;color:#333;font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}.container{max-width:52em;margin:2em auto 0}main{outline:none}.index-columns{display:flex;flex-wrap:wrap;justify-content:space-between;padding-top:20px}.index-listing{min-width:44%;max-width:44%;flex-grow:1}.index-listing h2{text-transform:uppercase;font-size:.7em;margin-block-start:1em;margin-block-end:0;border-bottom:thin dotted #c3c3c3;color:#695d5d}.index-banner{width:100%;height:300px;object-fit:cover;object-position:0 46%}h1{font-size:1.45em;margin-top:30px}h2{font-size:1.3em;margin-top:50px}h3{font-size:1.15em;margin-top:30px}a{color:#1d60a3;text-decoration:none}a:active,a:hover{outline:0}a:hover,a:focus{color:#1da388;border-bottom:1px solid #007884}a:active{color:#1da388;opacity:.9;border-bottom:1px solid #007884}a.active{color:#1da388}.table-wrapper{overflow-x:auto}table{margin:auto;max-width:100%;border-spacing:0}thead{background:lightgrey}th,td{padding:.5em 1em;border:1px double lightgrey}pre{padding:1em;background-color:#f1f1f1;max-width:100%;overflow:auto}code,pre,kbd{font-family:ui-monospace,Menlo,Monaco,"Cascadia Mono","Roboto Mono","Oxygen Mono","Ubuntu Monospace","Source Code Pro","Fira Mono","Droid Sans Mono","Courier New",monospace;font-size:.93em;line-height:140%}blockquote{border-left:2px solid #ccc;padding:.1em 1em;margin-left:.75em}p{margin-top:.5em;margin-bottom:.5em}hr{height:1px;border:0;border-top:1px solid #ccc}ul ol,ol ol,ul ul{margin:0em 2em}header{display:flex;justify-content:space-between}header h1{font-size:1em;font-weight:normal;display:inline-block}header h2{color:#757575;font-size:.8em;margin:0 0 .8em 0;font-weight:normal}header nav{margin-top:1em;max-width:100%;text-align:right;margin-bottom:1em}header nav ul{list-style-type:none;display:inline-block;float:right}header nav li{padding-left:2em;float:left}header a{color:#333}h1 .zola-anchor,h2 .zola-anchor,h3 .zola-anchor,h4 .zola-anchor,h5 .zola-anchor,h6 .zola-anchor{filter:opacity(0)}h1:hover .zola-anchor,h2:hover .zola-anchor,h3:hover .zola-anchor,h4:hover .zola-anchor,h5:hover .zola-anchor,h6:hover .zola-anchor{filter:opacity(0.2);transition:all .1s linear;border-bottom:none}.site-header{font-size:1.5em;font-weight:bolder;margin-block-start:1em;white-space:nowrap}main h1{margin-top:1em;font-weight:normal;line-height:1.1em;margin-bottom:.5em;font-weight:600}.post-short-list:first-of-type{margin-top:1em}.view-by{font-size:small}article:not(:last-of-type){padding-bottom:.5em}article:first-of-type header h3{margin-block-start:.5em}article header h1{font-size:1.35em;line-height:1.1em;margin-bottom:.5em;font-weight:600}article header h1 a{border:none;text-decoration:none;color:#333}article header h2{font-size:.9em}.article-info{font-size:.75em;color:#757575}.article-info a{color:#757575}.article-info a:hover{color:#1da388}.post-short-list .article-info{margin-top:0;margin-bottom:1.5em}.article-taxonomies{display:inline-block}.article-date{display:inline-block;white-space:nowrap;margin-bottom:24px}.article-categories{display:inline;list-style-type:none;padding:0}.article-categories li{display:inline;margin-right:.2em}.article-categories li:last-of-type{margin-right:0}.article-tags{display:inline;list-style-type:none;padding:0;margin:0}.article-tags li{display:inline;margin-right:.2em}.article-github{display:inline-block}article img{max-width:100%;display:block;height:auto;margin:0 auto .5em}.extended-img{left:50%;margin-left:-50vw;margin-right:-50vw;max-width:100vw;position:relative;right:50%;width:100vw}.extended-figure{position:relative;max-width:100vw;left:50%;margin-left:-50vw;margin-right:-50vw}figcaption{font-size:.75em;color:#757575;text-align:center}.bordered{border:3px solid #fff;box-shadow:0 0 0 3px #fafafa}.read-more{text-transform:uppercase;font-size:.7em}.divider{display:block;height:1px;border:0;border-top:thin solid #f1f1f1;width:25%;margin:1em auto}.post header{display:block}.post .footnote-definition:first-of-type{margin-top:1em;padding-top:1em;border-top:1px dotted #c3c3c3}.post-summary{display:block}.post-summary p{font-size:.8em;display:block;margin-top:0}.project-summary{display:block}.project-summary p{font-size:.8em;display:block;margin-top:0px;margin-left:70px}.project-summary img{display:inline;width:49px;float:left}.post-list a{color:#333;text-decoration:none}.post-list a:active,.post-list a:hover{outline:0}.post-list a:hover,.post-list a:focus{color:#1da388;border-bottom:1px solid #007884}.post-list a:active{color:#1da388;opacity:.9;border-bottom:1px solid #007884}.post-list a.active{color:#1da388}.post-list img{margin:.5em auto 0}.post-list h3{margin-block-start:.25em;margin-block-end:0}.aside{background:#f0f3f0;padding:18px;margin-bottom:20px;margin-top:20px;font-size:14px;border-radius:12px;line-height:1.6em}.footnote-definition{display:flex}.footnote-definition sup{min-width:1em}.terms{list-style-type:none;padding:0;line-height:2em}.pagination{display:flex;justify-content:space-between;margin-top:3em}.pagination{text-align:center}.pagination-item{background:#fafafa;padding:.75em .75em}.disabled{visibility:hidden}.pagination-item a{color:#333}.pagination-item a:hover,.pagination-item a:focus{color:#1da388;border-bottom:0}footer{border-top:thin dotted #c3c3c3;margin-top:2em;font-size:16px;text-align:center}.icon-text a{padding:0 8px 0 8px}.icon-text a,.article-github a{color:#333}.icon-text a:hover,.article-github a:hover{color:#1da388;text-decoration:none;border-bottom:none;transition:all .1s linear}@media (max-width: 840px){.main-wrapper{margin:0;max-width:none;overflow-x:hidden;padding-left:25px;padding-right:25px}.container{max-width:90%;margin:0 auto}.pagination-item{padding:.5em .5em;font-size:14px}header{display:block}.site-header{text-align:center}header nav{margin-top:0em;max-width:100%;text-align:center;background:#fafafa}header nav ul{float:none;padding:0;margin:0}header nav li{padding:.5em 1em}header nav a:first-of-type{margin-left:0}header nav a{margin-left:5%}.index-listing{max-width:none}}