*{box-sizing:border-box;margin:0;padding:0}body{font-family:"PT Serif",serif;color:#1a1a1a;background:#faf9f6;line-height:1.8;-webkit-font-smoothing:antialiased}header{border-bottom:4px double #2a2a2a;padding:1.5rem 1rem 1rem;text-align:center}header nav{max-width:40rem;margin:0 auto}header .site-title{font-family:"Baskervville","Georgia","Times New Roman","Times",serif;font-size:2rem;font-weight:700;color:#1a1a1a;text-decoration:none;letter-spacing:.08em;text-transform:uppercase;display:block}header .site-title:hover{color:darkred}main{max-width:40rem;margin:0 auto;padding:0 1rem}footer{max-width:40rem;margin:4rem auto 0;border-top:2px solid #2a2a2a;padding:1.5rem 1rem;text-align:center;color:#6b6b6b;font-family:"Helvetica Neue","Arial",sans-serif;font-size:.75rem;letter-spacing:.05em;text-transform:uppercase}@media(min-width: 1280px){main{max-width:calc(40rem + 16rem)}}@media(max-width: 480px){header .site-title{font-size:1.4rem;letter-spacing:.04em}}.post-nav-desktop{display:none}@media(min-width: 1280px){.post-nav-desktop{display:block;flex-shrink:0;width:14rem;position:sticky;top:1.5rem;align-self:flex-start;padding:1rem;background:#faf9f6}.post-nav-desktop h3{font-family:"Baskervville","Georgia","Times New Roman","Times",serif;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#6b6b6b;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #d4d4d4}.post-nav-desktop ol{list-style:none;margin:0;padding:0}.post-nav-desktop li{margin-bottom:.15rem}.post-nav-desktop li a{display:block;padding:.3rem .4rem;font-family:"Baskervville","Georgia","Times New Roman","Times",serif;font-size:.85rem;line-height:1.35;color:#6b6b6b;text-decoration:none;border-radius:2px;transition:color .15s,background .15s}.post-nav-desktop li a:hover{color:#1a1a1a;background:#f5f0e8}.post-nav-desktop li a.active{color:#1a1a1a;font-weight:700;background:#f5f0e8}}.index-layout{display:block}@media(min-width: 1280px){.index-layout{display:flex;gap:2rem;align-items:flex-start}.index-layout .post-list{flex:1;min-width:0}}.post-nav-toggle{display:block;position:fixed;top:.75rem;right:.75rem;z-index:501;background:#faf9f6;border:1px solid #d4d4d4;border-radius:2px;padding:.4rem .6rem;font-size:1.2rem;cursor:pointer;color:#1a1a1a;line-height:1}.post-nav-toggle:hover{border-color:#2a2a2a}@media(min-width: 1280px){.post-nav-toggle{display:none}}.post-nav-mobile{display:none;position:fixed;top:0;right:0;z-index:500;width:14rem;height:100vh;overflow-y:auto;padding:3rem 1rem 1rem;background:#faf9f6;border-left:1px solid #d4d4d4;box-shadow:-2px 0 12px rgba(0,0,0,.15)}.post-nav-mobile h3{font-family:"Baskervville","Georgia","Times New Roman","Times",serif;font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#6b6b6b;margin-bottom:.75rem;padding-bottom:.5rem;border-bottom:1px solid #d4d4d4}.post-nav-mobile ol{list-style:none;margin:0;padding:0}.post-nav-mobile li{margin-bottom:.15rem}.post-nav-mobile li a{display:block;padding:.3rem .4rem;font-family:"Baskervville","Georgia","Times New Roman","Times",serif;font-size:.85rem;line-height:1.35;color:#6b6b6b;text-decoration:none;border-radius:2px;transition:color .15s,background .15s}.post-nav-mobile li a:hover{color:#1a1a1a;background:#f5f0e8}.post-nav-mobile li a.active{color:#1a1a1a;font-weight:700;background:#f5f0e8}.post-nav-mobile.open{display:block}@media(min-width: 1280px){.post-nav-mobile{display:none !important}}.post-list{margin:1.5rem 0}.post-entry{padding:2rem 0;border-bottom:1px solid #d4d4d4}.post-entry:first-child{padding-top:1rem}.post-entry:last-child{border-bottom:none}.post-entry h2{font-family:"Baskervville","Georgia","Times New Roman","Times",serif;font-size:2.75rem;font-weight:700;line-height:1.15;margin-bottom:.5rem;letter-spacing:-0.02em}.post-entry h2 a{color:#1a1a1a;text-decoration:none}.post-entry h2 a:hover{color:darkred}.post-entry>time{font-family:"Helvetica Neue","Arial",sans-serif;font-size:.7rem;color:#6b6b6b;text-transform:uppercase;letter-spacing:.08em;display:block;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #d4d4d4}.post-entry-content{font-size:1.05rem;line-height:1.8}.post-entry-content p{margin-bottom:1.25rem}.post-entry-content img{width:100%;height:auto;border-radius:2px;margin:1.5rem 0;display:block}.post-entry-content a{color:darkred;text-decoration:underline;text-underline-offset:2px}.post-entry-content a:hover{text-decoration-thickness:2px}.post-entry-content blockquote{border-left:3px solid #2a2a2a;padding:.5rem 0 .5rem 1.25rem;margin:1.5rem 0;font-style:italic;color:#6b6b6b}.post-entry-content blockquote p{margin-bottom:.5rem}.post-entry-content pre{background:#f5f0e8;padding:1rem;border:1px solid #d4d4d4;border-radius:2px;overflow-x:auto;margin:1.5rem 0;font-family:"Menlo","Consolas",monospace;font-size:.82rem;line-height:1.6}.post-entry-content code{font-family:"Menlo","Consolas",monospace;font-size:.85em;background:#f5f0e8;padding:.15em .35em;border-radius:2px}.post-entry-content pre code{background:none;padding:0}.post-entry-content ul,.post-entry-content ol{margin:1rem 0 1.25rem 1.5rem}.post-entry-content ul li,.post-entry-content ol li{margin-bottom:.4rem}.post-entry-content figure{margin:1.5rem 0}.post-entry-content figure img{width:100%}.post-entry-content figure figcaption{font-family:"Helvetica Neue","Arial",sans-serif;font-size:.8rem;color:#6b6b6b;text-align:center;margin-top:.5rem;font-style:italic}.post{margin:2rem 0}.post h1{font-family:"Baskervville","Georgia","Times New Roman","Times",serif;font-size:2.75rem;font-weight:700;line-height:1.15;margin-bottom:.5rem;letter-spacing:-0.02em}.post>time{font-family:"Helvetica Neue","Arial",sans-serif;font-size:.7rem;color:#6b6b6b;text-transform:uppercase;letter-spacing:.08em;display:block;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid #d4d4d4}.post .feature-image{width:100%;height:auto;border-radius:2px;margin-bottom:2rem}.post-content{font-size:1.05rem;line-height:1.8}.post-content p{margin-bottom:1.25rem}.post-content h2{font-size:1.3rem;font-weight:700;margin:2.5rem 0 .75rem;padding-bottom:.3rem;border-bottom:1px solid #d4d4d4}.post-content h3{font-size:1.1rem;font-weight:700;margin:2rem 0 .5rem;font-style:italic}.post-content img{width:100%;height:auto;border-radius:2px;margin:1.5rem 0;display:block}.post-content a{color:darkred;text-decoration:underline;text-underline-offset:2px}.post-content a:hover{text-decoration-thickness:2px}.post-content blockquote{border-left:3px solid #2a2a2a;padding:.5rem 0 .5rem 1.25rem;margin:1.5rem 0;font-style:italic;color:#6b6b6b}.post-content blockquote p{margin-bottom:.5rem}.post-content pre{background:#f5f0e8;padding:1rem;border:1px solid #d4d4d4;border-radius:2px;overflow-x:auto;margin:1.5rem 0;font-family:"Menlo","Consolas",monospace;font-size:.82rem;line-height:1.6}.post-content code{font-family:"Menlo","Consolas",monospace;font-size:.85em;background:#f5f0e8;padding:.15em .35em;border-radius:2px}.post-content pre code{background:none;padding:0}.post-content ul,.post-content ol{margin:1rem 0 1.25rem 1.5rem}.post-content ul li,.post-content ol li{margin-bottom:.4rem}.post-content hr{border:none;border-top:1px solid #d4d4d4;margin:2.5rem auto;width:40%}.post-content figure{margin:1.5rem 0}.post-content figure img{width:100%}.post-content figure figcaption{font-family:"Helvetica Neue","Arial",sans-serif;font-size:.8rem;color:#6b6b6b;text-align:center;margin-top:.5rem;font-style:italic}@media(max-width: 480px){.post h1{font-size:1.4rem}.post-content{font-size:1rem}}.post-tags{margin-top:2.5rem;padding-top:1rem;border-top:1px solid #d4d4d4;display:flex;gap:.5rem;flex-wrap:wrap}.tag{font-family:"Helvetica Neue","Arial",sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:#6b6b6b;border:1px solid #d4d4d4;padding:.2rem .6rem;border-radius:2px}.tag:hover{border-color:#2a2a2a;color:#1a1a1a}.lightbox-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.85);z-index:1000;cursor:zoom-out;align-items:center;justify-content:center}.lightbox-overlay.active{display:flex}.lightbox-overlay img{max-width:92vw;max-height:92vh;object-fit:contain;border-radius:2px;box-shadow:0 4px 40px rgba(0,0,0,.5)}.post-content img,.post-entry-content img{cursor:zoom-in}