@import"https://fonts.googleapis.com/css2?family=Fira+Mono&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@200;400;700&display=swap";@import"https://fonts.googleapis.com/css2?family=Prata&display=swap";main.blogPost>div{max-width:800px;margin:auto}main.blogPost>div header h1{font-size:4rem;overflow-wrap:break-word}main.blogPost>div header{margin-bottom:64px}main.blogPost>div div.post{font-size:20px;line-height:26px}main.blogPost>div div.post p{margin:1.3em 0}main.blogPost>div div.post code{font-family:"Fira Mono"}main.blogPost>div div.post pre code.hljs{display:block;max-width:800px;font-size:1rem;background-color:#fff;box-shadow:0 0 16px rgba(0,0,0,.08);padding:16px;border-radius:4px;overflow:auto}main.blogPost>div div.post pre code.hljs div.container{border-radius:4px}main.blogPost>div div.post pre code.hljs{color:#383a42}main.blogPost>div div.post pre code.hljs .hljs-comment,main.blogPost>div div.post pre code.hljs .hljs-quote{color:#a0a1a7;font-style:italic}main.blogPost>div div.post pre code.hljs .hljs-doctag,main.blogPost>div div.post pre code.hljs .hljs-formula,main.blogPost>div div.post pre code.hljs .hljs-keyword{color:#a626a4}main.blogPost>div div.post pre code.hljs .hljs-deletion,main.blogPost>div div.post pre code.hljs .hljs-name,main.blogPost>div div.post pre code.hljs .hljs-section,main.blogPost>div div.post pre code.hljs .hljs-selector-tag,main.blogPost>div div.post pre code.hljs .hljs-subst{color:#e45649}main.blogPost>div div.post pre code.hljs .hljs-literal{color:#0184bb}main.blogPost>div div.post pre code.hljs .hljs-addition,main.blogPost>div div.post pre code.hljs .hljs-attribute,main.blogPost>div div.post pre code.hljs .hljs-meta .hljs-string,main.blogPost>div div.post pre code.hljs .hljs-regexp,main.blogPost>div div.post pre code.hljs .hljs-string{color:#50a14f}main.blogPost>div div.post pre code.hljs .hljs-attr,main.blogPost>div div.post pre code.hljs .hljs-number,main.blogPost>div div.post pre code.hljs .hljs-selector-attr,main.blogPost>div div.post pre code.hljs .hljs-selector-class,main.blogPost>div div.post pre code.hljs .hljs-selector-pseudo,main.blogPost>div div.post pre code.hljs .hljs-template-variable,main.blogPost>div div.post pre code.hljs .hljs-type,main.blogPost>div div.post pre code.hljs .hljs-variable{color:#986801}main.blogPost>div div.post pre code.hljs .hljs-bullet,main.blogPost>div div.post pre code.hljs .hljs-link,main.blogPost>div div.post pre code.hljs .hljs-meta,main.blogPost>div div.post pre code.hljs .hljs-selector-id,main.blogPost>div div.post pre code.hljs .hljs-symbol,main.blogPost>div div.post pre code.hljs .hljs-title{color:#4078f2}main.blogPost>div div.post pre code.hljs .hljs-built_in,main.blogPost>div div.post pre code.hljs .hljs-class .hljs-title,main.blogPost>div div.post pre code.hljs .hljs-title.class_{color:#c18401}main.blogPost>div div.post pre code.hljs .hljs-emphasis{font-style:italic}main.blogPost>div div.post pre code.hljs .hljs-strong{font-weight:700}main.blogPost>div div.post pre code.hljs .hljs-link{text-decoration:underline}main.blogPost>div div.post blockquote{border-left:8px solid rgba(118,185,0,.5);margin:0;padding-left:32px;font-family:"Prata"}main.blogPost>div div.post a{text-decoration:underline;color:#76b900}main.blogPost>div div.post h1,main.blogPost>div div.post h2,main.blogPost>div div.post h3,main.blogPost>div div.post h4,main.blogPost>div div.post h5,main.blogPost>div div.post h6{font-family:"Prata";margin:2em 0 20px 0;line-height:1.2em;overflow-wrap:break-word}main.blogPost>div div.post hr{margin:3em 0;border:1px solid #222;border-radius:1px;width:200px;place-self:center}main.blogPost>div div.post img,main.blogPost>div div.post video{display:block;max-width:100%;box-shadow:0 0 32px rgba(0,0,0,.1);border-radius:8px;margin:1.5em auto}main.blogPost>div div.post svg{max-width:100%;height:unset}main.blogPost>div div.post small{opacity:.8}main.blogPost>div div.post span[data-tooltip]{position:relative;border-bottom:2px dotted #222;cursor:help}main.blogPost>div div.post span[data-tooltip]:hover::after{display:block;position:absolute;font-style:normal;top:-40px;left:50%;transform:translateX(-50%);width:max-content;content:attr(data-tooltip);background:#fff;box-shadow:0 0 16px rgba(0,0,0,.1);border-radius:12px;padding:.25em}main.blogPost>div footer{text-align:center;margin:64px 0;opacity:.8}main.blogPost>div footer p a{text-decoration:underline}main.blogPost>div footer p:first-child{font-size:1.2em}main.blogPost>div footer p:last-child{font-size:.9em}@media only screen and (max-width: 600px){main.blogPost>div header h1{font-size:3rem}main.blogPost>div div.post{font-size:18px;line-height:24px}}div.contact{display:flex;flex:1 1 auto;background-color:#fff;box-shadow:0 0 32px rgba(0,0,0,.05);border-radius:4px}div.contact div{display:inline-block}div.contact div.icon{display:flex;place-items:center;place-content:center;width:68px;border-right:1px solid #ddd;color:#76b900}div.contact div.icon svg{fill:#76b900;width:2em;height:2em}div.contact div.icon span{font-size:2em}div.contact div.text{flex:1;padding:24px;font-size:1.2em}div.contact div.text a{text-decoration:none;color:#222;font-family:"Fira Mono";white-space:nowrap;transition:color 100ms}div.contact div.text a:hover{color:#76b900}@media only screen and (max-width: 600px){div.contact div.text a{white-space:normal;word-break:break-word}}div.PostCards{display:flex;flex-wrap:wrap;gap:32px;width:100%;margin-bottom:128px}div.PostCards a{min-width:min(300px,100%);flex:1}div.PostCards div.postcard{background-color:#fff;border-radius:8px;box-shadow:0 0 48px rgba(0,0,0,.05);padding:32px;height:100%}div.PostCards div.postcard div h3{font-size:1.5em;margin:0 0 16px 0;font-family:"Prata";color:#76b900}div.PostCards div.postcard div span{font-family:"Fira Mono"}div.PostCards div.postcard div span:last-child{float:right}div.PostCards div.postcard p{margin-bottom:0}div.PostCards div.postcard{transition:200ms transform,200ms box-shadow;cursor:pointer}div.PostCards div.postcard:hover{transform:translateY(-6px) scale(1.01);box-shadow:0 0 32px rgba(0,0,0,.04)}div.Posts{width:100%;margin-bottom:96px}div.Posts div.postcard{background-color:#fff;border-radius:8px;box-shadow:0 0 48px rgba(0,0,0,.05);padding:32px;width:100%;margin-bottom:32px}div.Posts div.postcard div{margin-bottom:16px}div.Posts div.postcard div h3{font-size:1.5em;margin:0 0 16px 0;font-family:"Prata";color:#76b900}div.Posts div.postcard div span:not(.bull){font-family:"Fira Mono"}div.Posts div.postcard div span:not(.bull):not(:first-of-type){margin-left:16px}div.Posts div.postcard div span:not(.bull):not(:last-of-type){margin-right:16px}div.Posts div.postcard p{margin:0}div.Posts div.postcard{transition:200ms transform,200ms box-shadow;cursor:pointer}div.Posts div.postcard:hover{transform:translateY(-6px) scale(1.01);box-shadow:0 0 32px rgba(0,0,0,.04)}div.Posts div.end{text-align:center;font-size:1.2em;margin-top:48px}@media only screen and (max-width: 600px){div.Posts div.postcard div span{display:block;margin-left:0 !important;margin-right:0 !important}div.Posts div.postcard div span.bull{display:none}div.Posts div.postcard div span:last-of-type{margin-top:4px}}.post figure{margin:1.8em 0}.post .chartbox{background:#f6faef;border:1px solid #e3eed0;border-left:4px solid #76b900;border-radius:4px;padding:14px 10px}.post .chart{width:100%;height:auto}.post .chart .grid{stroke:#dfe9cf;stroke-width:1}.post .chart .tick,.post .chart .axlab{fill:#6b7280;font-size:12px;font-family:"Fira Mono"}.post .chart .pt{font-size:12px;font-weight:700}.post .chart .leg{fill:#222;font-size:13px}.post figcaption,.post .cap{font-size:.78em;color:#6b7280;text-align:center;font-style:italic;margin-top:10px;line-height:1.5}.post table{width:100%;border-collapse:collapse;font-size:.8em;line-height:1.45;margin:1.4em 0 .3em 0;border-top:2px solid #76b900;border-bottom:2px solid #76b900}.post th{background:#eef6e0;text-align:right;padding:7px 10px;font-weight:700;border-bottom:1px solid #76b900;font-family:"Inter"}.post th:first-child{text-align:left}.post td{padding:6px 10px;text-align:right;border-top:1px solid #ececec;font-family:"Fira Mono"}.post td:first-child{text-align:left;font-family:"Inter"}.post tr:nth-child(even) td{background:#fafdf5}.post .table-caption{font-size:.78em;color:#6b7280;text-align:center;font-style:italic;margin-bottom:6px}.post .gal{display:grid;grid-template-columns:repeat(4, 1fr);gap:8px;margin:0}.post .gal img{width:100%;margin:0;border-radius:4px;box-shadow:none;border:1px solid #e3e3e3}.post .gal .c{text-align:center;font-size:.68em;color:#6b7280;margin-top:4px}.post .callout{background:#f6faef;border-left:4px solid #76b900;padding:10px 16px;border-radius:0 4px 4px 0;margin:1.4em 0;font-size:.95em}.post ok-pos,.post .pos{color:#4d7a00}@media only screen and (max-width: 600px){.post .gal{grid-template-columns:repeat(2, 1fr)}}body{color:#222;background-color:#fff;font-size:16px;margin:32px}*{box-sizing:border-box}*::selection{background-color:#76b900;color:#fff}a{color:inherit;text-decoration:none}a.accent{color:#76b900}pre{font-family:"Fira Mono"}main{font-family:Inter;max-width:1000px;margin:auto}main nav{position:relative;width:100%;padding:16px 32px;text-align:right;font-size:1.2rem}main nav span{float:left;font-family:"Prata";color:#76b900;font-size:1.5em;cursor:default}main nav>a{margin-left:64px;transition:color 100ms}main nav>a:hover{color:#76b900}main nav>a:first-of-type{margin-left:0}main header{margin-top:96px;margin-bottom:96px}main header div:first-of-type{display:block;width:100%;text-align:center;font-size:2rem;font-family:"Fira Mono"}main header h1{width:100%;font-size:6rem;font-family:Prata;text-align:center;margin:2.5rem 0;line-height:1em}main header h1 span{display:block}main header h1 span:first-child{color:#76b900}main header div:last-of-type{margin:0 auto;max-width:600px;text-align:center;font-family:"Fira Mono";font-size:1.2em}main section h2{position:relative;min-width:100%;margin:0 auto 32px auto;font-size:4rem;font-family:Prata;text-align:center;color:#76b900}main section h2.darker{color:#4d7a00}main section>div:first-of-type:not(.PostCards):not(.Posts):not(a){max-width:750px;text-align:center;font-family:"Fira Mono";font-size:1.2em}main section.projects{display:flex;flex-direction:column;gap:64px}main section.projects>div:first-of-type{margin:-64px auto 0 auto}main section.blogPosts{margin:96px 0 0 0}main section.blogPosts>div:first-of-type{margin:0 auto 64px auto}main section.blogPosts>div:first-of-type a{text-decoration:underline;color:#76b900}main section.contact{margin:128px 0 148px 0}main section.contact>div{display:flex;flex-wrap:wrap;gap:32px}main section.contact>div:first-of-type{display:block;text-align:center;margin:0 auto 64px auto}@media only screen and (max-width: 600px){main nav{padding:8px}main nav>a{margin-left:32px}main nav>a:not(.blogLink){display:none}main header h1:not(.veryBig){font-size:15vw}main section h2{font-size:12vw}}
