@font-face{font-family:Fondamento;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/fondamento-latin-400-normal.CAcpMF8n.woff2)format("woff2"),url(/_astro/fondamento-latin-400-normal.CTJrlqPc.woff)format("woff")}@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/pixelify-sans-cyrillic-wght-normal.BfQLqnEI.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/pixelify-sans-latin-ext-wght-normal.CsF3XSp0.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Pixelify Sans Variable;font-style:normal;font-display:swap;font-weight:400 700;src:url(/_astro/pixelify-sans-latin-wght-normal.Cbhn5ptY.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#22201b;--gold:#e2b44c;--gold-hi:#f4d27a;--white:#fbfaf5;--sky:#548ed2;--t-face:#fbfaf5;--t-bevel:#c4ccd8;--t-ink:var(--ink);--script:"Fondamento", "Palatino Linotype", "Book Antiqua", serif;--pixel:"Pixelify Sans Variable", ui-monospace, monospace;--wood:url(/world/day/wood.png);--wood-light:url(/world/day/wood-light.png);--post:url(/world/day/post.png);--chain:url(/world/day/chain.png);--shingle:url(/world/paper/shingle.png);--parch:url(/world/paper/parch.png);--brush:url(/world/paper/brush.png);--inv-t:url(/world/paper/inv-t.png);--inv-b:url(/world/paper/inv-b.png);--inv-l:url(/world/paper/inv-l.png);--inv-r:url(/world/paper/inv-r.png);--rim-t:url(/world/paper/rim-t.png);--rim-b:url(/world/paper/rim-b.png);--rim-l:url(/world/paper/rim-l.png);--rim-r:url(/world/paper/rim-r.png);--light:linear-gradient(#0000 0 0);--star:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 7 7' shape-rendering='crispEdges'%3E%3Cpath fill='%23d9b45a' d='M3 0h1v2h1v1h2v1h-2v1h-1v2h-1v-2h-1v-1h-2v-1h2v-1h1z'/%3E%3C/svg%3E");--edge:2px 0 0 var(--ink), -2px 0 0 var(--ink), 0 2px 0 var(--ink), 0 -2px 0 var(--ink), 2px 2px 0 var(--ink), -2px 2px 0 var(--ink), 2px -2px 0 var(--ink), -2px -2px 0 var(--ink), 0 4px 0 var(--ink);--vh:100vh;--step:1px;--px:max(100vw / 480, var(--vh) / 300);--Ws:calc(480 * var(--px));--Hs:calc(300 * var(--px));--sh:-.5;--lift:0px}@supports (height:100dvh){:root{--vh:100dvh}}@media (resolution>=1.25x){:root{--step:.8px}}@media (resolution>=1.5x){:root{--step:calc(2px / 3)}}@media (resolution>=2x){:root{--step:.5px}}@media (resolution>=3x){:root{--step:calc(1px / 3)}}@supports (width:round(up, 1.3px, 1px)){:root{--px:round(up, max(100vw / 480, var(--vh) / 300), var(--step))}.stage{left:round(nearest, calc(50vw + var(--sh) * var(--Ws)), var(--step))}}@media (aspect-ratio<=1){:root{--sh:-.604}}@media (prefers-color-scheme:dark){:root{--sky:#0a1030;--ink:#0b1030;--t-face:#dfe5f4;--t-bevel:#8796c4;--light:radial-gradient(130% 90% at 80% 0%, #ffba641f, #0c102c57);--wood:url(/world/night/wood.png);--wood-light:url(/world/night/wood-light.png);--post:url(/world/night/post.png);--chain:url(/world/night/chain.png);--carve-lit:#96a6d652;--cap:#17182d;--cap-hi:#22233b;--nail:#42507e;--nail-sh:#1f2644}}:root[data-place=projects]{--lift:max(0px, calc(var(--Hs) - var(--vh) - var(--Ws) / 8))}*{box-sizing:border-box}html,body{height:100%;margin:0;overflow:hidden}body{background:var(--sky);color:var(--white);font:400 18px/1.5 var(--pixel)}.sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:0;position:absolute;overflow:hidden}.gl{visibility:hidden;width:100%;height:100%;display:block;position:fixed;inset:0}:root[data-gl=on] .gl{visibility:visible}.stage{z-index:1;width:var(--Ws);height:var(--Hs);translate:0 var(--lift);bottom:0;left:calc(50vw + var(--sh) * var(--Ws));pointer-events:none;position:fixed;overflow:clip}.still{position:absolute;inset:0}.still picture{display:none}.still img{width:100%;height:100%;image-rendering:pixelated;user-select:none;position:absolute;inset:0}:root:is([data-place=home],[data-place=about],[data-place=play],[data-place=lost]) .still [data-for=home],:root[data-place=projects] .still [data-for=projects],:root[data-place=links] .still [data-for=links],:root:is([data-place=blog],[data-place=leaf]) .still [data-for=blog]{display:block}:root[data-gl=on] .still{display:none}.plane{width:var(--Ws);height:var(--Hs);transform-origin:0 0;visibility:hidden;position:absolute;top:0;left:0}.plane *{pointer-events:auto}:root:not([data-gl=on])[data-place=home] .plane.near,:root:not([data-gl=on])[data-place=projects] .plane.facade,:root:not([data-gl=on])[data-place=links] .plane.village,:root:not([data-gl=on]):is([data-place=blog],[data-place=leaf]) .plane.desk,:root[data-gl=on] .plane{visibility:visible}:root[data-moving] .plane *,.plane[inert] *{pointer-events:none}.hero{left:calc(228 * var(--px));top:calc(247 * var(--px));width:calc(20 * var(--px));height:calc(20 * var(--px));display:block;position:absolute}.hero:after{content:"play?";font:500 15px/1.2 var(--pixel);white-space:nowrap;color:var(--ink);background:var(--white);box-shadow:0 0 0 2px var(--ink);visibility:hidden;padding:2px 8px;position:absolute;bottom:100%;left:50%;translate:-50% -4px}.hero:hover:after,.hero:focus-visible:after{visibility:visible}.hero:focus-visible{outline:2px solid var(--white);outline-offset:2px}.hud{z-index:2;text-align:center;pointer-events:none;place-content:center;justify-items:center;gap:clamp(16px,3.4vh,34px);padding:16px 16px 24vh;display:grid;position:fixed;inset:0}.hud>*{pointer-events:auto}.name{color:var(--white);margin:0;font-weight:400}.name .logo{width:min(84vw,820px,max(600px,42vw));height:auto;display:block;overflow:visible}.menu{justify-items:center;gap:2px;display:grid}.menu a{color:var(--white);font:500 clamp(26px, 2.3vw, 42px)/1.2 var(--pixel);text-shadow:var(--edge);padding:3px 14px;text-decoration:none;position:relative}.menu a:before{content:"";background:var(--star) center / contain no-repeat;width:21px;height:21px;filter:drop-shadow(2px 2px 0 var(--ink));visibility:hidden;position:absolute;top:50%;right:100%;translate:0 -55%}.menu a:hover:before,.menu a:focus-visible:before,.menu:not(:has(a:hover,a:focus-visible)) a:first-child:before{visibility:visible}.menu a:focus-visible{outline:2px solid var(--white);outline-offset:2px}:root:not([data-place=home]) .hud,:root[data-moving] .hud,:root:not([data-place=home]) .menu a:before{visibility:hidden;opacity:0}.place{z-index:5;font:400 14px/1 var(--pixel);color:var(--white);text-shadow:2px 2px 0 var(--ink);opacity:.85;margin:0;position:fixed;bottom:10px;right:16px}.music{z-index:7;width:40px;height:34px;color:var(--white);cursor:pointer;filter:drop-shadow(2px 0 0 var(--ink)) drop-shadow(-2px 0 0 var(--ink)) drop-shadow(0 2px 0 var(--ink)) drop-shadow(0 -2px 0 var(--ink));opacity:.85;background:0 0;border:0;padding:4px 6px;position:fixed;bottom:6px;left:12px}.music svg{width:28px;height:26px;display:block}.music .waves{visibility:hidden}.music[aria-pressed=true] .waves{visibility:visible}.music[aria-pressed=true] .mute{visibility:hidden}.music:hover,.music:focus-visible{opacity:1;color:var(--gold-hi)}.music:focus-visible{outline:2px solid var(--white);outline-offset:2px}:root:is([data-place=about],[data-place=play],[data-place=leaf],[data-place=lost]) .music{visibility:hidden}.window{--u:3px;--o:2px;--dark:#140c06;visibility:hidden;z-index:5;image-rendering:pixelated;background:#120e0a00;flex-direction:column;align-items:center;padding:16px 16px 0;display:flex;position:fixed;inset:0;overflow:auto}:root[data-place=about] .window.about,:root[data-place=lost] .window.lost,:root[data-place=play] .window.play,:root:not([data-js]) .window.play:target{visibility:visible;background:#120e0a80}@media (prefers-color-scheme:dark){:root[data-place=about] .window.about,:root[data-place=lost] .window.lost,:root[data-place=play] .window.play,:root:not([data-js]) .window.play:target{background:#0406128c}}.window>.shut{position:fixed;inset:0}.window>.above{flex:1 0 calc(var(--u) * 14)}.window>.below{pointer-events:none;flex:1 0 24px;align-self:stretch}.window>div{z-index:1;flex:none;position:relative}.window h2{font:700 44px/1.1 var(--pixel);color:var(--gold);margin:0}.window a{color:inherit}.window a:focus-visible{outline:var(--o) solid var(--white);outline-offset:3px}.carve{color:var(--gold);text-shadow:calc(var(--o) * -1) calc(var(--o) * -1) 0 var(--dark), 0 calc(var(--o) * -1) 0 var(--dark), var(--o) var(--o) 0 var(--carve-lit,#c48c5473);font-weight:700}.paint{color:#f2e6c8;text-shadow:0 1px #00000059;-webkit-mask:var(--brush) 0 0 / 48px 48px repeat;mask:var(--brush) 0 0 / 48px 48px repeat;font-weight:500;display:block}.window .board,.window .back,.post li,.post:after{filter:drop-shadow(var(--u) 0 0 var(--dark)) drop-shadow(calc(var(--u) * -1) 0 0 var(--dark)) drop-shadow(0 var(--u) 0 var(--dark)) drop-shadow(0 calc(var(--u) * -1) 0 var(--dark)) drop-shadow(calc(var(--u) * 2) calc(var(--u) * 2) 0 #00000059)}.window .back{z-index:3;top:calc(var(--u) * -4);right:calc(var(--u) * 8);padding:calc(var(--u) * 1.5) calc(var(--u) * 4);background:var(--wood-light) -40px -10px / calc(var(--u) * 128) calc(var(--u) * 24);font-size:17px;line-height:1.2;text-decoration:none;position:absolute}.window .back:hover .carve,.window .back:focus-visible .carve{color:var(--gold-hi)}.board .note{padding:calc(var(--u) * 3) calc(var(--u) * 9) calc(var(--u) * 4);background:var(--wood) 0 0 / calc(var(--u) * 128) calc(var(--u) * 24);box-shadow:inset 0 var(--u) 0 #ffd6a024, inset 0 calc(var(--u) * -1) 0 #00000052;display:block;position:relative}.board .paint{font-size:17px;line-height:1.35}.board .note p{margin:0 0 8px}.board .note p:last-child{margin:0}.board .note a{color:inherit;text-underline-offset:3px}.board{width:min(40rem,100%);padding:calc(var(--u) * 5) calc(var(--u) * 3) calc(var(--u) * 6);background:var(--post) calc(var(--u) * 3) 0 / calc(var(--u) * 6) calc(var(--u) * 36) repeat-y, var(--post) calc(100% - var(--u) * 3) 0 / calc(var(--u) * 6) calc(var(--u) * 36) repeat-y, #1f140c}.board:before{content:"";left:calc(var(--u) * -6);right:calc(var(--u) * -6);height:calc(var(--u) * 12);background:linear-gradient(#2c1b10 0 0) bottom / 100% calc(var(--u) * 2) no-repeat, linear-gradient(#5b3a22 0 0) top / 100% calc(var(--u) * 2) no-repeat, var(--shingle) 0 0 / calc(var(--u) * 16) calc(var(--u) * 9);clip-path:polygon(calc(var(--u) * 4) 0, calc(100% - var(--u) * 4) 0, calc(100% - var(--u) * 4) calc(var(--u) * 3), calc(100% - var(--u) * 2) calc(var(--u) * 3), calc(100% - var(--u) * 2) calc(var(--u) * 6), 100% calc(var(--u) * 6), 100% 100%, 0 100%, 0 calc(var(--u) * 6), calc(var(--u) * 2) calc(var(--u) * 6), calc(var(--u) * 2) calc(var(--u) * 3), calc(var(--u) * 4) calc(var(--u) * 3));position:absolute;bottom:100%}.board h2{margin:0 0 calc(var(--u) * 3);padding:calc(var(--u) * 3) calc(var(--u) * 8) calc(var(--u) * 4);text-align:center;background:var(--wood-light) calc(var(--u) * -30) 0 / calc(var(--u) * 128) calc(var(--u) * 24)}.window:has(>.board)>.below{background:var(--post) calc(var(--u) * 3) 0 / calc(var(--u) * 6) calc(var(--u) * 36) repeat-y, var(--post) calc(100% - var(--u) * 3) 0 / calc(var(--u) * 6) calc(var(--u) * 36) repeat-y;width:min(40rem,100%);filter:drop-shadow(var(--u) 0 0 var(--dark)) drop-shadow(calc(var(--u) * -1) 0 0 var(--dark));align-self:center}.paper{--e:calc(var(--u) * 14);--t:calc(var(--u) * 128);color:#2e1d10;font-family:var(--script);background:var(--light), var(--rim-t) 0 0 / var(--t) var(--e) repeat-x, var(--rim-b) 0 100% / var(--t) var(--e) repeat-x, var(--rim-l) 0 0 / var(--e) var(--t) repeat-y, var(--rim-r) 100% 0 / var(--e) var(--t) repeat-y, var(--parch) 0 0 / calc(var(--u) * 64) calc(var(--u) * 64);-webkit-mask:linear-gradient(#000 0 0), var(--inv-t) 0 0 / var(--t) var(--e) repeat-x, var(--inv-b) 0 100% / var(--t) var(--e) repeat-x, var(--inv-l) 0 0 / var(--e) var(--t) repeat-y, var(--inv-r) 100% 0 / var(--e) var(--t) repeat-y;-webkit-mask-composite:source-out, source-over, source-over, source-over, source-over;mask:linear-gradient(#000 0 0), var(--inv-t) 0 0 / var(--t) var(--e) repeat-x, var(--inv-b) 0 100% / var(--t) var(--e) repeat-x, var(--inv-l) 0 0 / var(--e) var(--t) repeat-y, var(--inv-r) 100% 0 / var(--e) var(--t) repeat-y;image-rendering:pixelated;display:block;position:relative;mask-composite:subtract,add,add,add,add}.ink-back{z-index:1;top:calc(var(--u) * 7);left:calc(var(--u) * 13);font:400 21px/1 var(--script);color:inherit;padding:4px 6px;text-decoration:none;position:absolute}.ink-back:before{content:"";vertical-align:1px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 26 11'%3E%3Cpath d='M25 6.5C18 4 10 8 2 5.6M6.5 1.4 2 5.6l4.8 3.8' fill='none' stroke='%233b2312' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") 50%/contain no-repeat;width:26px;height:11px;margin-right:8px;display:inline-block}.paper .ink-back:hover,.paper .ink-back:focus-visible{color:#7c2410}.paper a:focus-visible{outline-offset:3px;outline:2px solid #2a170a}.paper .script-h{margin:0 0 calc(var(--u) * 6);text-align:center;font:400 60px/1.05 var(--script);color:#2a170a;text-wrap:balance}.paper .script-h:focus{outline:none}.paper .script-h:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 170 16'%3E%3Cpath d='M4 9c22-7 44 5 70 0 6-1 9-5 11-6 2 1 5 5 11 6 26 5 48-7 70 0' fill='none' stroke='%232a170a' stroke-width='1.6' stroke-linecap='round'/%3E%3Ccircle cx='85' cy='11.5' r='1.8' fill='%232a170a'/%3E%3C/svg%3E") 50%/contain no-repeat;width:170px;height:16px;margin:12px auto 0;display:block}.paper p{max-width:56ch;margin:0 auto 16px;font-size:22px;line-height:1.6}.paper p:last-child{margin-bottom:0}.paper p a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}.paper p a:hover{color:#7c2410}.parch{width:min(52rem,100%);filter:drop-shadow(calc(var(--u) * 2) calc(var(--u) * 3) 0 #00000059);position:relative;container-type:inline-size}.parch .paper{padding:calc(var(--u) * 18) calc(var(--u) * 18) calc(var(--u) * 15);clip-path:inset(0 50%)}:root:is([data-place=about],[data-place=lost]) .parch .paper{clip-path:inset(0)}.parch .curl{z-index:2;top:calc(var(--u) * 2);bottom:calc(var(--u) * 2);width:calc(var(--u) * 8);background:linear-gradient(90deg,#7a5a32 0 12.5%,#c29c62 12.5% 25%,#ead3a0 25% 50%,#d5b680 50% 75%,#a07a48 75% 87.5%,#6c4c28 87.5%);position:absolute}.parch .curl.l{translate:calc(50cqw - var(--u) * 4) 0;left:0}.parch .curl.r{translate:calc(-50cqw + var(--u) * 4) 0;right:0}:root:is([data-place=about],[data-place=lost]) .parch .curl{opacity:0;translate:0}@media (width<=640px){.window{--u:2px}.parch .paper{padding-inline:calc(var(--u) * 12)}.paper .script-h{font-size:44px}.paper p{font-size:19px}}.door{left:calc(153 * var(--px));top:calc(96 * var(--px));width:calc(72 * var(--px));height:calc(156 * var(--px));text-decoration:none;position:absolute}.door:hover,.door:focus-visible{background:#ffecc81a}.door:focus-visible{outline:max(2px, calc(var(--px) * .7)) solid var(--white);outline-offset:calc(var(--px) * 2)}.plaque{--o:max(1px, calc(var(--px) * .45));--dark:#140c06;left:50%;top:calc(30 * var(--px));padding:calc(var(--px) * .8) calc(var(--px) * 5) calc(var(--px) * 1.6);font:400 calc(9 * var(--px))/1.1 var(--script);background:var(--wood-light) calc(var(--px) * -20) 0 / calc(var(--px) * 64) calc(var(--px) * 12);image-rendering:pixelated;box-shadow:0 0 0 calc(var(--px) * .6) var(--dark), inset 0 calc(var(--px) * .5) 0 #ffd6a029;position:absolute;translate:-50%}.door .plaque.carve{font-weight:400}.facade.open .plaque{opacity:0}.hang{--u:var(--px);--o:max(1px, calc(var(--px) * .5));--ol:max(1px, calc(var(--px) * .7));--dark:#140c06;--sx:301;left:calc(var(--sx) * var(--px));top:calc(191 * var(--px));image-rendering:pixelated;justify-items:center;display:grid;position:absolute;translate:-50%}.hang li>a{filter:drop-shadow(var(--ol) 0 0 var(--dark)) drop-shadow(calc(var(--ol) * -1) 0 0 var(--dark)) drop-shadow(0 var(--ol) 0 var(--dark)) drop-shadow(0 calc(var(--ol) * -1) 0 var(--dark)) drop-shadow(var(--u) var(--u) 0 #0000004d)}.hang .carve{font-weight:400}.hang ul{transform-origin:50% 0;justify-items:center;margin:0;padding:0;list-style:none;display:grid}.hang li{padding-top:calc(var(--u) * 6.5);justify-items:center;display:grid;position:relative}.hang li:before{content:"";top:calc(var(--u) * -3);height:calc(var(--u) * 10.5);left:calc(50% - var(--u) * 11);width:calc(var(--u) * 22);background:var(--chain) 0 0 / calc(var(--u) * 4.2) calc(var(--u) * 6) repeat-y, var(--chain) 100% 0 / calc(var(--u) * 4.2) calc(var(--u) * 6) repeat-y;position:absolute}.hang li>a{padding:calc(var(--u) * 1.4) calc(var(--u) * 5) calc(var(--u) * 2.2);text-align:center;background:var(--wood-light) 0 0 / calc(var(--u) * 64) calc(var(--u) * 12);transform-origin:50% calc(var(--u) * -5);box-shadow:inset 0 calc(var(--u) * .5) 0 #ffd6a024, inset 0 calc(var(--u) * -.5) 0 #00000052;text-decoration:none;display:block;position:relative}.hang li>a b{font:400 calc(7 * var(--u))/1.15 var(--script);white-space:nowrap;display:block}.hang li>a:hover{rotate:-1.4deg}.hang li>a:hover b,.hang li>a:focus-visible b,.door:hover .plaque,.door:focus-visible .plaque{color:var(--gold-hi)}.hang li>a:focus-visible{outline:max(2px, calc(var(--px) * .7)) solid var(--white);outline-offset:calc(var(--px) * 1.5)}@media (prefers-color-scheme:dark){.post li>a,.hang li>a{background-color:#000}}.tip{z-index:3;width:max-content;max-width:min(calc(var(--px) * 124), 300px);font:400 17px/1.35 var(--pixel);color:#efe6cc;text-align:left;white-space:normal;pointer-events:none;clip-path:polygon(2px -2px,calc(100% - 2px) -2px,calc(100% - 2px) 0,100% 0,100% 2px,calc(100% + 2px) 2px,calc(100% + 2px) calc(100% - 2px),100% calc(100% - 2px),100% 100%,calc(100% - 2px) 100%,calc(100% - 2px) calc(100% + 2px),2px calc(100% + 2px),2px 100%,0 100%,0 calc(100% - 2px),-2px calc(100% - 2px),-2px 2px,0 2px,0 0,2px 0);visibility:hidden;opacity:0;background:#1b2238;border:2px solid #efe6cc;padding:9px 14px 11px;position:absolute;box-shadow:0 0 0 2px #0b0f1c}.tip b{font:400 23px/1.15 var(--script);color:var(--gold);margin-bottom:4px;display:block}:is(a:hover,a:focus-visible)+.tip{visibility:visible;opacity:1}@media (hover:none){.tip{display:none}}.mosaic{margin:0;padding:0;list-style:none}.mosaic li{left:calc(var(--x) * var(--px));top:calc(var(--y) * var(--px));width:calc(var(--s) * var(--px));height:calc(var(--s) * var(--px));position:absolute}.mosaic a{display:block;position:absolute;inset:0}.mosaic .name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.mosaic a:hover{outline:max(1px, calc(var(--px) * .7)) solid var(--gold-hi);outline-offset:calc(var(--px) * .2);background:#ffeec41f}.mosaic a:focus-visible{outline:max(2px, calc(var(--px) * .7)) solid var(--white);outline-offset:calc(var(--px) * .6)}.facade{--stage-l:calc(50vw + var(--sh) * var(--Ws));--vl:calc(-1 * var(--stage-l) + 12px);--vr:calc(100vw - var(--stage-l) - 12px);--vt:calc(max(0px, var(--Hs) - var(--vh) - var(--lift)) + 12px)}.mosaic .tip{--tw:clamp(180px, calc(var(--vr) - (var(--x) + var(--s) + 13) * var(--px)), 300px);max-width:var(--tw);left:clamp(calc(var(--vl) - var(--x) * var(--px)), calc((var(--s) + 13) * var(--px)), calc(var(--vr) - var(--x) * var(--px) - var(--tw)));top:max(calc(var(--s) * var(--px) / 2 - 56px), calc(var(--vt) - var(--y) * var(--px)))}.mosaic .l .tip{--tw:clamp(180px, calc((var(--x) - 13) * var(--px) - var(--vl)), 300px);left:auto;right:clamp(calc((var(--x) + var(--s)) * var(--px) - var(--vr)), calc((var(--s) + 13) * var(--px)), calc((var(--x) + var(--s)) * var(--px) - var(--tw) - var(--vl)))}.door+.tip{--tw:clamp(180px, calc(140 * var(--px) - var(--vl)), 300px);max-width:var(--tw);left:clamp(var(--vl), calc(140 * var(--px) - var(--tw)), calc(var(--vr) - var(--tw)));top:max(calc(150 * var(--px)), var(--vt))}@media (prefers-color-scheme:dark){.mosaic a:before{content:"";background:var(--lit) 0 0 / 100% 100%;image-rendering:pixelated;opacity:0;box-shadow:0 0 0 calc(var(--px) * 1.5) #ffc4704d, 0 0 0 calc(var(--px) * 3) #ffc47029, 0 0 0 calc(var(--px) * 4.5) #ffc47012;position:absolute;inset:0}.mosaic a:hover{background:0 0;outline:none}.mosaic a:is(:hover,:focus-visible):before{opacity:1;filter:brightness(1.06)saturate(1.08)}}@media (hover:none){.mosaic .name{clip-path:none;width:auto;height:auto;left:50%;bottom:calc(var(--px) * -1);padding:0 calc(var(--px) * 2);font:400 calc(var(--px) * 5.2)/1.25 var(--script);color:var(--gold);background:#2a1a0e;overflow:visible;translate:-50%}}.post{--u:3px;--o:2px;--dark:#140c06;left:calc(290 * var(--px));top:calc(54 * var(--px));bottom:calc(13 * var(--px));width:0;image-rendering:pixelated;--tip:polygon(0 0, calc(100% - var(--u) * 6) 0, calc(100% - var(--u) * 6) 17%, calc(100% - var(--u) * 4) 17%, calc(100% - var(--u) * 4) 33%, calc(100% - var(--u) * 2) 33%, calc(100% - var(--u) * 2) 42%, 100% 42%, 100% 58%, calc(100% - var(--u) * 2) 58%, calc(100% - var(--u) * 2) 67%, calc(100% - var(--u) * 4) 67%, calc(100% - var(--u) * 4) 83%, calc(100% - var(--u) * 6) 83%, calc(100% - var(--u) * 6) 100%, 0 100%);--tip-l:polygon(100% 0, calc(var(--u) * 6) 0, calc(var(--u) * 6) 17%, calc(var(--u) * 4) 17%, calc(var(--u) * 4) 33%, calc(var(--u) * 2) 33%, calc(var(--u) * 2) 42%, 0 42%, 0 58%, calc(var(--u) * 2) 58%, calc(var(--u) * 2) 67%, calc(var(--u) * 4) 67%, calc(var(--u) * 4) 83%, calc(var(--u) * 6) 83%, calc(var(--u) * 6) 100%, 100% 100%);position:absolute}.post:before{content:"";left:calc(var(--u) * -4);width:calc(var(--u) * 8);background:var(--post) 0 0 / calc(var(--u) * 8) calc(var(--u) * 48) repeat-y;filter:drop-shadow(var(--u) 0 0 var(--dark)) drop-shadow(calc(var(--u) * -1) 0 0 var(--dark));position:absolute;top:0;bottom:0}.post:after{content:"";left:calc(var(--u) * -6);width:calc(var(--u) * 12);top:calc(var(--u) * -3);height:calc(var(--u) * 4);background:var(--cap,#3a2414);box-shadow:inset 0 var(--u) 0 var(--cap-hi,#5b3a22);position:absolute}.post ul{padding:calc(var(--u) * 7) 0 0;justify-items:start;gap:calc(var(--u) * 3);margin:0;list-style:none;display:grid;position:relative}.post li{width:max-content;position:relative}.post li.r{margin-left:calc(var(--u) * -3)}.post li.l{margin-left:calc(var(--u) * 3);translate:-100%}.post li>a{align-items:center;gap:calc(var(--u) * 3);padding:calc(var(--u) * 2) calc(var(--u) * 11) calc(var(--u) * 2) calc(var(--u) * 8);clip-path:var(--tip);color:var(--gold);background:var(--wood) 0 0 / calc(var(--u) * 128) calc(var(--u) * 24);box-shadow:inset 0 var(--u) 0 #ffd6a024, inset 0 calc(var(--u) * -1) 0 #00000052;text-decoration:none;display:flex}.post li.l>a{clip-path:var(--tip-l);padding:calc(var(--u) * 2) calc(var(--u) * 8) calc(var(--u) * 2) calc(var(--u) * 11)}.post li:nth-child(2)>a{background-position:calc(var(--u) * -50) calc(var(--u) * -9)}.post li:nth-child(3)>a{background-position:calc(var(--u) * -90) calc(var(--u) * -4)}.post li:nth-child(4)>a{background-position:calc(var(--u) * -20) calc(var(--u) * -15)}.post li:nth-child(5)>a{background-position:calc(var(--u) * -70) calc(var(--u) * -12)}.post li:nth-child(6)>a{background-position:calc(var(--u) * -110) calc(var(--u) * -6)}.post li.home>a{background-image:var(--wood-light)}.post li>a:before{content:"";top:calc(50% - var(--u));left:calc(var(--u) * 3);width:calc(var(--u) * 2);height:calc(var(--u) * 2);background:var(--nail,#a39c90);box-shadow:inset calc(var(--u) * -1) calc(var(--u) * -1) 0 var(--nail-sh,#5d564c);position:absolute}.post li.l>a:before{left:auto;right:calc(var(--u) * 3)}.post .carve{font:400 25px/1.05 var(--script);white-space:nowrap}.bit{width:calc(var(--u) * var(--w));height:calc(var(--u) * var(--h));filter:drop-shadow(calc(var(--o) * -1) calc(var(--o) * -1) 0 var(--dark)) drop-shadow(var(--o) var(--o) 0 var(--carve-lit,#c48c5473));flex:none}.post li.r>a:hover{translate:var(--u) 0}.post li.l>a:hover{translate:calc(var(--u) * -1) 0}.post li>a:hover .carve,.post li>a:focus-visible .carve,.post li>a:hover .bit,.post li>a:hover{color:var(--gold-hi)}.post a:focus-visible{outline:var(--o) solid var(--white);outline-offset:3px}@media (width<=640px){.post{--u:2px}.post .carve{font-size:18px}}.desk{--u:3px;--o:2px}.stack{left:calc(290 * var(--px));top:max(calc(30 * var(--px)), calc(var(--Hs) - var(--vh) + 20px));z-index:1;aspect-ratio:210/297;width:min(calc(150 * var(--px)), 92vw, calc((var(--vh) - 60px) * 210 / 297));filter:drop-shadow(var(--u) calc(var(--u) * 2) 0 #0a050280);position:absolute;translate:-50%}.stack .toc{min-height:100%}.stack .pg1,.stack .pg2{filter:brightness(.94);position:absolute;inset:0}.stack .pg1{rotate:-2.6deg;translate:calc(var(--u) * -3) calc(var(--u) * 2)}.stack .pg2{rotate:1.9deg;translate:calc(var(--u) * 3) var(--u)}.toc{padding:calc(var(--u) * 17) calc(var(--u) * 14) calc(var(--u) * 15)}.toc .script-h{font-size:54px}.toc .entries{gap:20px;margin:0;padding:0;list-style:none;display:grid}.toc .entries a{color:inherit;gap:5px;text-decoration:none;display:grid}.toc .entries b{color:#2a170a;font-size:24px;font-weight:400;line-height:1.22}.toc .entries time{color:#7c2410;font-size:16px}.toc .entries a:hover b,.toc .entries a:focus-visible b{color:#7c2410}.leaf{--u:3px;--o:2px;z-index:6;image-rendering:pixelated;padding:clamp(16px,6vh,56px) 16px 56px;display:none;position:fixed;inset:0;overflow:auto}:root[data-place=leaf] .leaf{display:block}.leaf>.shut{position:fixed;inset:0}.leaf .lift{z-index:1;transform-origin:50% 0;width:min(46rem,100%);filter:drop-shadow(calc(var(--u) * 2) calc(var(--u) * 3) 0 #0a050273);margin:0 auto;position:relative}.leaf .paper{min-height:calc(1.41429*min(46rem,100vw - 32px));padding:calc(var(--u) * 25) clamp(22px, 9%, calc(var(--u) * 22)) calc(var(--u) * 19)}.leaf time{text-align:center;color:#7c2410;margin:0 0 10px;font-size:17px;display:block}.leaf .script-h{font-size:50px}.leaf p{font-size:22px;line-height:1.65}.leaf .body :is(h2,h3){max-width:56ch;font:400 30px/1.2 var(--script);color:#2a170a;margin:28px auto 12px}.leaf .body :is(blockquote,ul,ol,pre){max-width:56ch;margin:0 auto 16px;font-size:22px;line-height:1.6}.leaf .body blockquote{border-left:2px solid #2a170a66;padding-left:18px}.leaf .body pre{font:15px/1.5 ui-monospace,monospace;overflow-x:auto}.leaf .body a{color:inherit;text-underline-offset:3px}:root[data-place=leaf] :is(.gl,.still,.plane.desk){filter:blur(5px)brightness(.68)}@media (width<=640px){.desk,.leaf{--u:2px}.leaf{padding-inline:10px}.leaf .script-h{font-size:38px}.leaf p{font-size:19px}.toc{padding-inline:calc(var(--u) * 11)}.toc .script-h{font-size:42px}.toc .entries b{font-size:20px}}@media (prefers-reduced-motion:no-preference){.hud{transition:opacity .3s .2s,visibility;animation:.5s steps(4,end) 1.5s backwards arrive}:root:is([data-from=about],[data-from=lost],[data-from=play]) .hud{transition-delay:.9s,0s}:root:is(:not([data-place=home]),[data-moving]) .hud{transition:opacity .2s,visibility 0s .2s}:root[data-place=projects]:not([data-moving]) .hang ul{animation:2.4s cubic-bezier(.3,0,.3,1) .2s sway}.tip{transition:opacity .15s steps(2,end),visibility 0s .15s}:is(a:hover,a:focus-visible)+.tip{transition:opacity .15s steps(2,end) .1s,visibility 0s .1s}.mosaic a:before{transition:opacity .3s steps(3,end)}.facade .plaque{transition:opacity 0s .1s}.stage{transition:translate 1.5s cubic-bezier(.4,0,.2,1)}:root[data-gl=on] .stage{transition:none}.window{transition:visibility 0s .9s,background-color .3s .6s}:root[data-place=about] .window.about,:root[data-place=lost] .window.lost,:root[data-place=play] .window.play{transition:visibility,background-color .25s}.parch .paper{transition:clip-path .9s steps(12,end)}.parch .curl{transition:translate .9s steps(12,end),opacity}:root:is([data-place=about],[data-place=lost]) .parch .curl{transition:translate .9s steps(12,end),opacity 0s .9s}:root:is([data-place=about],[data-place=lost]) .parch .ink-back{animation:.3s steps(3,end) .9s backwards arrive}.board{opacity:0;transition:translate .32s steps(4,end),opacity .32s steps(4,end);translate:0 24px}:root[data-place=play] .board{opacity:1;translate:0}:root[data-place=leaf] .leaf .lift{animation:.6s cubic-bezier(.2,.7,.2,1) both lift}.gl,.still,.plane.desk{transition:filter .45s}}@keyframes arrive{0%{opacity:0;translate:0 12px}}@keyframes sway{0%{rotate:0deg}18%{rotate:2.2deg}48%{rotate:-1.5deg}74%{rotate:.7deg}to{rotate:0deg}}@keyframes lift{0%{translate:0 max(calc(var(--vh) - var(--Hs) * .9), 20px);rotate:1.5deg;scale:.66}}@media (width<=640px){@keyframes lift{0%{translate:0 40vh;rotate:1.5deg;scale:.95}}}@media (aspect-ratio<=1){.hud{padding-bottom:30vh}}
