:root{--c-text-hsl:265 29% 29%;--c-text:hsl(var(--c-text-hsl));--c-trans-white:rgb(255 255 255 / 0);--c-bg:#f3f2ed;--c-anchor:var(--c-text);--anim-time:0.25s;--font-mono:"Courier New",Courier,monospace;--font-serif:georgia,serif;--font-display:"Playfair Display",serif;--font-size-h1:2.125rem;--font-size-h2:1.5rem;--font-size-h3:1.25rem;--font-size-lede:1.125rem;--font-size-logo:1.125rem;--font-size-nav:0.75rem;--font-size-obnoxious:2rem;--font-size-prose:1rem;--font-size-small:0.75rem;--lh:1.5;--lh-display:1.125;--layout-container-width:64rem;--m-body:0.625rem}html[data-theme=dark]{--c-text:#f6f6f6;--c-text-hsl:0deg 0% 96%;--c-bg:#201a28;--c-anchor:var(--c-text)}@media (hover:hover){html[data-theme=dark] :is(a,.anchor):hover{--c-anchor:#201a28}}@media (min-width:480px){:root{--font-size-lede:0.875rem;--font-size-nav:0.875rem;--font-size-h1:2.5rem;--font-size-h2:1.75rem;--font-size-h3:1.5rem}}@media (min-width:640px){:root{--font-size-lede:1rem;--font-size-obnoxious:3rem;--font-size-prose:1.25rem;--m-body:1rem}}@media (min-width:768px){:root{--font-size-h1:3rem;--font-size-h2:2.25rem;--font-size-h3:2rem;--font-size-lede:1.25rem;--font-size-logo:1.5rem;--font-size-nav:1.125rem;--font-size-obnoxious:4rem;--font-size-small:0.875rem}}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.25;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}@font-face{font-family:"Playfair Display";font-style:normal;font-weight:600;src:local(""),url(/3a979ed445500ead8b2b2e2230d9e12cec30a599/11cde/assets/playfair-display-v25-latin-600.woff2) format("woff2"),url(/e0738be99484700c48b12d4d7efef050067ee6f5/a7265/assets/playfair-display-v25-latin-600.woff) format("woff")}*,::after,::before{box-sizing:inherit}html{font-size:100%;line-height:1.5;-webkit-text-size-adjust:100%;box-sizing:border-box;overflow-y:scroll}body{height:100vh;margin:0 var(--m-body);font-family:var(--font-serif);color:var(--c-text);background:var(--c-bg)}@supports (-webkit-touch-callout:none){body{height:-webkit-fill-available}}.anchor,a{color:var(--c-anchor);background-color:transparent;text-decoration:underline;text-decoration-color:hsla(var(--c-text-hsl) / .66);box-shadow:-2px 0 0 var(--c-trans-white),2px 0 0 var(--c-trans-white);transition:background-color .15s;transition-property:background-color,text-decoration-color,color,box-shadow}@media (hover:hover){:is(a,.anchor):hover{text-decoration-color:var(--c-trans-white);background-color:gold;box-shadow:-2px 0 0 gold,2px 0 0 gold,0 2px 0 orange,4px 2px 0 orange}}ol,p,ul{margin:0 0 1.5em}img{max-width:100%;height:auto}h1,h2,h3,h4{font-family:var(--font-display);line-height:var(--lh-display)}h1{margin:0 0 .5em;font-size:var(--font-size-h1)}h2{font-size:var(--font-size-h2)}h3{font-size:var(--font-size-h3)}hr{box-sizing:content-box;height:0;overflow:visible;border:0;border-top:1px dotted var(--c-text);opacity:.3}.hr-mini{height:.75rem;width:6rem;margin:3rem 0;border:0;background-color:gold;box-shadow:-.25rem .5rem 0 -.25rem orange;opacity:1}figure{margin:4.5rem 0 1.5rem}figure img{mix-blend-mode:multiply;display:block;margin-inline:auto;width:100%;max-width:384px;opacity:.85}[data-theme=dark] figure img{filter:invert(1);mix-blend-mode:lighten}.intro{margin-block:2rem 8rem}.intro h1{margin-bottom:.625em;padding-bottom:.25em;font-size:var(--font-size-obnoxious);line-height:1.125;border-bottom:1rem solid gold;box-shadow:-.125em .25em 0 -.125em orange}.intro p{max-width:44em;font-size:var(--font-size-lede)}.prose{font-size:var(--font-size-prose)}.prose p+ul{margin-top:-1.5rem}.prose :is(code,pre){border:1px solid #99999922;background:#99999922;border-radius:.25rem;padding-inline:.25em}.prose pre{max-height:calc(100vh - 4rem);overflow-y:auto;margin-bottom:1.5em;padding:1.25em;font-size:1rem}.prose h2{position:relative}.prose h2[id] a:before{content:"☞";position:absolute;right:calc(100% + .5rem);opacity:0;margin-top:.2rem;transition:opacity var(--anim-time)}.prose h2 a{text-decoration:none}.prose-minimal{font-size:1rem}@media (hover:hover){.prose h2[id] a:hover{background:0 0;box-shadow:none;color:var(--c-text)}.prose h2[id] a:hover:before,.prose h2[id]:target a:before{opacity:1}}main{display:block;padding-block:3rem 4rem}.contain{max-width:72rem;margin-inline:auto}.contain-minimal{max-width:24rem;padding-block:1rem}.tpl-prose{max-width:48rem}.post-title{margin:0 0 .25em}.post-image{margin-block:2rem;background-image:radial-gradient(gold -185%,transparent 62%)}[data-theme=dark] .post-image{background-image:radial-gradient(black 4%,transparent 60%)}.post-body{margin-top:2rem}.post-body>p:first-of-type:first-letter{float:left;margin:-.125em .125em -.2em -.1em;padding:0;font-family:var(--font-display);font-size:5.2em;line-height:1;text-shadow:1px 1px 0 var(--c-bg),-1px -1px 0 var(--c-bg),2px 3px 0 orange}@supports (-moz-appearance:none){.post-body>p:first-of-type:first-letter{padding-block:.2em .138em}}.page-ftr{position:sticky;top:100vh;display:block;padding-bottom:.5rem;font-family:var(--font-mono);font-size:var(--font-size-small);border-top:1px solid hsla(var(--c-text-hsl) / .15)}.page-ftr p{margin:.5rem 0}.page-ftr>p:first-child{flex:1}.page-ftr a+a{margin-left:.5rem}.ftr-nav a{display:inline-flex;align-items:center;vertical-align:top}.ftr-nav svg{width:var(--font-size-small);height:auto;margin-left:.25em;fill:currentColor;opacity:.75}@media (min-width:640px){.page-ftr{display:flex;align-items:center;justify-content:flex-end}}.page-hdr{display:flex;align-items:center;padding-block:.5rem;border-bottom:1px solid hsla(var(--c-text-hsl) / .15)}.site-nav{width:100%;display:flex;align-items:center;justify-content:space-between}.site-nav a{margin-inline:-.25rem;padding-inline:.25rem}.site-nav>a{display:inline-block;text-decoration:none;font-size:var(--font-size-logo);font-family:var(--font-display);font-weight:400}.site-nav ul{--site-nav-spacing:0.75rem;display:flex;align-items:center;margin:0 var(--site-nav-spacing) 0 0;padding:0;list-style:none;font-size:var(--font-size-nav)}.site-nav li{margin-left:var(--site-nav-spacing)}.site-nav ul a{display:inline-block;padding-block:.5rem;text-decoration:none}@media (min-width:640px){.site-nav ul{--site-nav-spacing:1.75rem}}.btn-theme{display:inline-flex;align-items:center;margin:0 -.5rem;padding:.5rem;border:none;background:0 0;font-size:1em;cursor:pointer}.btn-theme svg{flex-shrink:0;fill:currentColor;width:var(--font-size-nav);height:auto}.btn-theme span{display:none}html[data-theme=dark] .btn-theme-dark,html[data-theme=light] .btn-theme-light{display:none}.post-list{margin:0;padding:0;list-style:none}.post-item{position:relative;display:grid;grid-column-gap:1rem;grid-template-columns:1fr;align-items:center}.post-item+.post-item{margin-top:2rem}.post-item img{width:16rem;display:block}.post-item-title{font-size:var(--font-size-h3);margin:0 0 .25em}.post-item-title a{text-decoration:none}.post-item-title a:before{content:"";position:absolute;top:0;left:0;width:100%;opacity:.2;height:calc((100vw - 20px) * .75)}@media (min-width:276px){.post-item-title a:before{top:0;left:0;bottom:0;width:33.33%;width:16rem;height:12rem}}@media (min-width:480px){.post-item{grid-template-columns:40% 1fr}.post-item img{width:100%}.post-item-title a:before{bottom:0;width:40%;height:auto}}@media (min-width:640px){.post-item{grid-column-gap:2rem}}.post-meta{display:flex;font-family:var(--font-mono);font-size:var(--font-size-small);line-height:1.25}.post-meta-tags{margin-left:.625rem}.post-meta-tags::before{content:"";padding-left:.625rem;border-left:1px solid;opacity:.2}.blend-multiply{mix-blend-mode:multiply}[data-theme=dark] .blend-multiply{mix-blend-mode:difference;filter:invert(1)}