@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-ext-wght-normal.DHTKMUil.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-wght-normal.B1g8a0vD.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-greek-wght-normal.BpXpdlRW.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-vietnamese-wght-normal.BsaNuasd.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-ext-wght-normal.BVZ5su8S.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-wght-normal.DMe4EKeb.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}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-ext-wght-italic.y6hTrs-Y.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-cyrillic-wght-italic.CRzqOTyj.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-greek-wght-italic.CUp-f2uw.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-vietnamese-wght-italic.D3EGHrWW.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-ext-wght-italic.B_cmBfNX.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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4 Variable";font-style:italic;font-display:swap;font-weight:200 900;src:url(/_astro/source-serif-4-latin-wght-italic.B-rCj6ir.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{--paper:#e4e2d7;--ink:#1a1a1a;--muted:#5a5955;--rule:color-mix(in oklab, var(--ink) 22%, var(--paper));--red:#a8291f;--measure:52rem;--indent:5rem;--gutter:1rem;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;font-family:"Source Serif 4 Variable",Georgia,Times New Roman,serif;font-size:17px;line-height:1.55}@media (width>=700px){:root{--gutter:1.5rem;font-size:18px}}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background-color:var(--paper);background-image:url(/images/paper-grain.png);background-repeat:repeat;min-height:100vh;margin:0}::selection{color:var(--paper);background:var(--ink)}:focus-visible{outline:2px solid var(--red);outline-offset:4px}a{color:var(--red);text-underline-offset:.18em;text-decoration:underline 1px}a:hover{text-decoration-thickness:2px}h1,h2,h3,p,ul,ol,figure{margin:0}h1{letter-spacing:-.01em;text-wrap:balance;font-size:2.4rem;font-weight:600;line-height:1.12}h2{font-size:1.5rem;font-weight:400;line-height:1.2}h3{font-size:1.1rem;font-weight:600;line-height:1.3}.muted{color:var(--muted)}.shell{width:min(var(--measure), 100% - 2 * var(--gutter));margin-inline:auto}.rule{border:0;border-top:1px solid var(--rule);margin:0}.site-header{border-bottom:1px solid var(--rule);justify-content:space-between;align-items:baseline;gap:1rem;padding:1.5rem 0 1rem;display:flex}.brand{color:var(--ink);font-size:1.1rem;font-weight:600;text-decoration:none}.site-header nav{flex-wrap:wrap;gap:1.25rem;display:flex}.site-header nav a{color:var(--ink);text-decoration:none}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--red)}main.shell>section{border-bottom:1px solid var(--rule);padding:2.5rem 0}main.shell>section:last-of-type{border-bottom:0}section>h2{margin-bottom:1.5rem}.rows,.projects,.post-list,.more{margin-left:var(--indent)}.rows{grid-template-columns:11rem 1fr;gap:.85rem 1.5rem;padding:0;list-style:none;display:grid}.post-list{grid-template-columns:8rem 1fr;gap:.85rem 1.25rem;padding:0;list-style:none;display:grid}.post-list time{color:var(--muted);font-variant-numeric:tabular-nums}.post-list a{text-decoration:none}.post-list a:hover{text-decoration:underline}.portrait{object-fit:cover;border-radius:50%;display:block}.site-footer{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;padding:2rem 0 3rem;display:flex}.site-footer h2{font-size:1.1rem;font-weight:600}.site-footer .meta{color:var(--muted);font-size:.9rem}@media (width<=699px){:root{--indent:0}h1{font-size:1.95rem}.site-header{flex-direction:column;align-items:flex-start;gap:.5rem}.rows{grid-template-columns:7rem 1fr;align-items:baseline;column-gap:1rem}.post-list{grid-template-columns:6.5rem 1fr;align-items:baseline;column-gap:1rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
