:root{--black:#292f36;--light-blue:#009ffd;--blue:#4ecdc4;--dark-blue:#30638e;--white:#ccc;--red:#ff6b6b;--orange:#edae49;--yellow:#ffe66d;--purple:#c3adf4;--cream:#f1dac4;--green:#90be6d;--code-black:#373c47;--code-font-color:#b3b9c5;--font-family:system-ui;--md:800px}body{background-color:var(--black);color:var(--white);font-size:1.2rem;line-height:1.8rem;font-family:var(--font-family);margin:0}a{color:var(--blue)}h1,h2,h3,h4{color:var(--yellow);line-height:2.2rem}h3{font-size:1.5rem}footer{padding-top:4rem}.header_divider{margin:0 .5rem}main{max-width:48rem;margin:1rem .5rem;padding:0}.markdown hr{margin:3rem 0}@media (min-width:500px){main{margin:2rem auto;padding:0 2rem}}@media (min-width:800px){main{margin:4rem auto;padding:0 2rem}}.intro{display:flex;gap:1.5rem;flex-direction:column;font-size:1.5rem;line-height:2.3rem;align-items:center}.intro-text{flex:2 1}.headshot{flex:1 1}@media (min-width:800px){.intro{flex-direction:row}}.intro h1{margin:0 0 .75rem}.hero_buttons{margin:0;font-size:1.3rem}.article_preview{display:flex}.article_preview__image_container{flex-basis:3rem}a{text-decoration:none}a:hover{text-decoration:underline}footer{text-align:center}.headshot img{border-radius:300px;-o-object-fit:cover;-o-object-position:0 25%;object-position:0 25%;width:100%;aspect-ratio:1/1;object-fit:cover}.heading_flex{margin-top:2rem}.heading_flex>*{display:inline-block}.heading_flex a h2{margin-left:1rem;font-size:1.5rem;color:var(--blue)}@media (min-width:800px){.heading_flex a h2{margin-left:4rem}}strong{color:var(--red)}.tags{margin:1rem 0;text-transform:capitalize;display:flex;flex-wrap:wrap;justify-content:flex-start}.tags span{color:var(--code-font-color);border:1px solid var(--code-font-color);border-radius:10px;padding:.25rem 1rem;margin:0 1rem 1rem 0;cursor:auto;display:inline-block}.tags span:first-child{margin-left:0}article h1{font-size:2em;line-height:2.5rem}main img{max-width:100%}.markdown h2,.markdown h3{margin-top:4rem}.markdown img{width:100%;margin:0 auto;display:block;max-height:800px;min-height:500px;aspect-ratio:3/2;-o-object-fit:contain;object-fit:contain;background:#232930;padding:8px;box-sizing:border-box}.markdown p{display:block;position:relative}.markdown .twitter-tweet{margin:0 auto}.markdown figure{margin:0}figcaption{color:#b3b9c5;font-style:italic;text-align:right}.markdown .article-book-image{float:left;margin-right:1rem;width:150px}.markdown footer{color:grey;text-align:left}.article-book-section{display:block}.clearfix{color:transparent;margin:1rem 0}.clearfix:after{content:"";clear:both;display:table}.music_display{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:1.5rem}.art_display{width:100%;aspect-ratio:1/1;display:grid;grid-template-columns:repeat(1,1fr);grid-gap:1.5rem;align-items:center;justify-items:stretch}.art_display_article,.artgridimage,.artgridlink{display:block;width:100%;aspect-ratio:1/1}.artgridimage{background:transparent no-repeat 50%;background-size:cover;margin:auto}@media (min-width:800px){.artgridimage{height:234px;width:234px}.art_display,.art_display_article,.artgridlink{aspect-ratio:auto}}.artgridimage,.artgridimage.home{width:100%;aspect-ratio:1/1;background:transparent no-repeat 50%;background-size:cover;margin:auto}.softwareproject_display,.softwareproject_display_card{display:flex;flex-direction:column}.softwareproject_display_card{align-items:center;margin:1rem 0}.softwareproject_display_imagecontainer{flex:1 1 auto;max-width:300px}.softwareproject_display_image{width:100%}.softwareproject_display_title{margin:0 0 .5rem}.softwareproject_display_description{flex:1 1;margin:1rem}.softwareproject_display_stacklist{border:2px dashed var(--blue);padding:1rem}@media (min-width:800px){.softwareproject_display_card{flex-direction:row;align-items:flex-start}}.center{text-align:center}figure.reset{margin-inline:0}.full-width{width:100%;max-width:100%;margin:0;margin-inline:0}.hideonmobile{display:none}@media (min-width:800px){.art_display,.music_display{grid-template-columns:repeat(3,1fr);grid-gap:2rem}.softwareproject_display_description{margin-top:0}.artgridimage{width:202px;height:202px}.hideonmobile{display:block}}.album_linkslist,.bloglist,.bloglist_article_tags,.tagslist{list-style-type:none;margin:0;padding:0}.bloglist_article{margin:1rem 0}.bloglist_article_title{font-size:1.5rem;line-height:2.2rem;font-weight:700;margin-right:.5rem}.bloglist_article_date{font-size:1rem}.bloglist_article_tags{display:inline-block}.bloglist_article_tag,.tagslist_tag{display:inline-block;margin:0 1rem 0 0;padding:.25rem .5rem;text-decoration:underline;-webkit-text-decoration-style:dotted;text-decoration-style:dotted}.tags .tagslist_tag:first-child,.tagslist .tagslist_tag:first-child{margin-left:-.5rem}.bloglist_article_tag:hover,.tagslist_tag:hover{background-color:rgba(0,0,0,.5);border-radius:5px}.bloglist_article_tag[data-tag=Tech] a,.header_tag[data-tag=Tech],.tagslist_tag[data-tag=Tech],.tagslist_tag[data-tag=Tech] a{color:var(--yellow)}.bloglist_article_tag[data-tag=Notes] a,.header_tag[data-tag=Notes],.tagslist_tag[data-tag=Notes],.tagslist_tag[data-tag=Notes] a{color:var(--orange)}.bloglist_article_tag[data-tag=Music] a,.header_tag[data-tag=Music],.tagslist_tag[data-tag=Music],.tagslist_tag[data-tag=Music] a{color:var(--green)}.bloglist_article_tag[data-tag=Art] a,.header_tag[data-tag=Art],.tagslist_tag[data-tag=Art],.tagslist_tag[data-tag=Art] a{color:var(--red)}.bloglist_article_tag[data-tag=Books] a,.header_tag[data-tag=Books],.tagslist_tag[data-tag=Books],.tagslist_tag[data-tag=Books] a{color:var(--purple)}.bloglist_article_tag[data-tag=Clippings] a,.header_tag[data-tag=Clippings],.tagslist_tag[data-tag=Clippings],.tagslist_tag[data-tag=Clippings] a{color:var(--cream)}.article_end{margin-top:4rem}iframe.internet_archive_video,iframe.youtube_video{display:block;margin:0 auto;width:90vw;height:auto}iframe.internet_archive_audio{height:60px}.video,iframe.internet_archive_audio{display:block;margin:0 auto;width:250px}@media (min-width:800px){iframe.internet_archive_video,iframe.youtube_video{width:560px;height:315px}.video,iframe.internet_archive_audio{width:560px}}button{font-size:inherit;font-family:inherit;background-color:transparent;color:var(--yellow);border:1px solid var(--yellow);padding:1rem;transition:background-color .4s ease;font-weight:700}button:hover{background-color:var(--light-blue);cursor:pointer}.album_flex{display:flex;flex-direction:column-reverse}@media (min-width:800px){.album_flex{flex-direction:row}.album_text{padding-right:1rem}.album_image{margin-top:1.5rem}}.album_flex>*{flex:1 1}.album_linkslist>*{font-weight:700;margin:1rem 0}.center{margin:0 auto;max-width:547px}@media (max-width:600px){.center{max-width:100%}}.bookshelf_image{max-width:120px}figure.bookshelf_image_wrapper{margin:0 1.5rem 0 0;float:left}.album-story{display:flex;justify-content:center;align-items:stretch;flex-direction:column;position:relative}.album-story-page{flex-grow:1;flex-basis:100%}.album-story-bg-image,.album-story-play-button-container,.album-story-video{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.album-story-bg-image{z-index:-1;background-size:cover;background-position:50%}.album-story-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);color:#fff;font-size:4rem;border:none}.album-story-play:hover{background-color:transparent;color:#000}.fade-enter{opacity:0}.fade-enter-active{opacity:1;transition:opacity 2s}.fade-exit{opacity:1}.fade-exit-active{opacity:0;transition:opacity 2s}.fade-slow-enter{opacity:0}.fade-slow-enter-active{opacity:1;transition:opacity 4s}.fade-slow-exit{opacity:1}.fade-slow-exit-active{opacity:0;transition:opacity 4s}.tap-essay{position:absolute;width:80vw;width:100%;height:100%;display:flex;align-items:center;justify-content:center;text-align:center;z-index:5;font-family:Charm,serif;font-weight:400;font-style:normal;letter-spacing:.2rem;line-height:1.8rem;transition:background-color 2s linear}.tap-essay p{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:80vw;max-width:600px;font-size:1rem}.tap-essay span{transition:color 2s linear}@media (min-width:800px){.tap-essay{font-size:2rem;font-weight:400;font-style:normal;letter-spacing:.2rem;line-height:3rem}.tap-essay p{white-space:pre-line;font-size:2rem}}.interactive{display:grid;grid-gap:1.5rem;gap:1.5rem}.interactive_container{display:flex;flex-direction:column;align-items:center;width:100%}.interactive_image{border-radius:10%}.interactive_description{flex:1 1;width:100%}@media (min-width:800px){.interactive_container{flex-direction:row}.interactive_description{margin:0 2rem}}code,pre{color:var(--code-font-color);background:none;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:.9rem;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:2;-o-tab-size:2;tab-size:2;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code ::-moz-selection,code::-moz-selection,pre ::-moz-selection,pre::-moz-selection{text-shadow:none;background:#b3d4fc}code ::selection,code::selection,pre ::selection,pre::selection{text-shadow:none;background:#b3d4fc}@media print{code,pre{text-shadow:none}}pre{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code,pre{background:var(--code-black)}:not(pre)>code{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-formula,.hljs-keyword{color:#c678dd}.hljs-deletion,.hljs-name,.hljs-section,.hljs-selector-tag,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string,.hljs-regexp,.hljs-string{color:#98c379}.hljs-attr,.hljs-number,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-pseudo,.hljs-template-variable,.hljs-type,.hljs-variable{color:#d19a66}.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-symbol,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-class .hljs-title,.hljs-title.class_{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}