:root{--body-bg:#f2f2f2;--body-mid:#8a8a8a;--body-fg:#222;--body-link-decoration:#4d6ad8;--body-link-fg:#333e6a;--body-link-highlight:rgba(77,106,216,0.1);--body-link-reverse-fg:#c8d0eb;--body-link-reverse-highlight:rgba(77,106,216,0.15)}@media (prefers-color-scheme:dark){:root{--body-bg:#222;--body-fg:#f2f2f2;--body-link-fg:#c8d0eb;--body-link-highlight:rgba(77,106,216,0.15)}}body{background:var(--body-bg);color:var(--body-fg)}a{color:var(--body-link-fg);text-decoration-color:var(--body-link-decoration)}a:hover{background-color:var(--body-link-highlight);border-radius:2px}@font-face{font-family:'Lora';font-style:normal;src:url("/fonts/lora.woff2") format('woff2-variations')}@font-face{font-family:'Lora';font-style:italic;src:url("/fonts/lora-italic.woff2") format('woff2-variations')}body{font:1.2em Lora,Georgia,serif;line-height:1.5}h1,h2{font-style:italic;font-weight:normal;text-align:center}h1{font-size:2.5em;padding-top:2em;padding-bottom:1em;line-height:120%}h1 .subtitle{border-top:1px solid var(--body-mid);color:var(--body-mid);display:block;font-style:normal;font-size:33%;letter-spacing:.125em;padding-top:.25em;text-transform:uppercase}h2{font-size:1.6em}*{box-sizing:border-box}body{margin-top:0;margin-left:auto;margin-right:auto;max-width:40em}@media screen and (max-width:800px){body{margin:1em}}.full-width{left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;position:relative;width:100vw}.full-width .inner{max-width:40em;margin-left:auto;margin-right:auto}iframe,img{max-width:100%}#intro{background:#000;color:#fff}@media screen and (max-width:800px){#intro{margin-top:-1em}}#intro a{color:var(--body-link-reverse-fg)}#intro a:hover{background-color:var(--body-link-reverse-highlight)}#intro .inner{display:flex;align-items:flex-end}@media screen and (max-width:800px){#intro .inner{display:block;padding:1em}}#intro .portrait{flex-shrink:1}@media screen and (max-width:800px){#intro .portrait{display:none}}#intro .portrait img{width:100%;height:auto}#intro .text{flex-grow:0;flex-shrink:0;width:24em;padding-bottom:2em}@media screen and (max-width:800px){#intro .text{width:auto}}#intro .text h1{margin-top:0;margin-bottom:0;padding-top:1em;text-align:left}#intro .text p{margin-bottom:0}#intro nav ul{display:flex;font-size:120%;list-style-type:none;margin-left:0;padding-left:0;text-align:center}@media screen and (max-width:800px){#intro nav ul{text-align:left}#intro nav ul li:first-child::after{content:' /\00a0'}}#intro nav ul li{display:inline;flex-grow:1}@media screen and (max-width:800px){#intro nav ul li{flex-grow:0}}ul.post-list{list-style-type:none;margin-left:0;padding-left:0}ul.post-list li{align-items:flex-start;display:flex;margin-bottom:1.25em}@media screen and (max-width:800px){ul.post-list li{display:block}}ul.post-list li .date{font-size:75%;flex-shrink:0;flex-grow:0;letter-spacing:.05em;margin-top:.3em;margin-right:2em;text-align:right;text-transform:uppercase;width:5em}@media screen and (max-width:800px){ul.post-list li .date{margin-right:0}ul.post-list li .date::after{content:' / '}}ul.post-list li .excerpt{flex-grow:1}footer{margin-top:3em;border-top:1px solid var(--body-mid)}footer ul{display:flex;justify-content:space-between;list-style-type:none;margin-left:0;padding-left:0}@media screen and (max-width:800px){footer ul{flex-direction:column}}footer ul li{flex-grow:1;min-width:33%}footer ul li.home a{justify-content:center}@media screen and (max-width:800px){footer ul li.home a{justify-content:flex-start}}footer ul li.next-link a{justify-content:flex-end}@media screen and (max-width:800px){footer ul li.next-link a{justify-content:flex-start}}footer ul a{display:flex;align-items:center}footer ul img{margin-right:.33em;opacity:.5}footer ul img.end{margin-left:.33em;margin-right:0}@media (prefers-color-scheme:dark){footer ul img{filter:invert(100%)}}#works{display:grid;grid-template-columns:20em 30em;grid-auto-rows:20em;grid-gap:4em 1em;margin:0 auto;width:52em}@media screen and (max-width:800px){#works{grid-auto-rows:auto;grid-gap:1em;grid-template-columns:1fr;grid-template-rows:auto;padding:1em;width:auto}}#works .collab{font-size:75%;letter-spacing:.05em;text-transform:uppercase}#works .screenshot{border:1px solid var(--body-mid);padding:.5em}#works .screenshot img{height:100%;width:100%}@media screen and (max-width:800px){#works .screenshot img{height:auto}}#works h2{margin-top:0;text-align:left}