:root{--color-bg: #ece6da;--color-bg-soft: #e4dcc8;--color-text: #4a4030;--color-heading: #7a6a45;--color-muted: #93876d;--color-border: #d9cfba;--color-accent: #6b5a35;--font-body: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;--font-display: Georgia, "Iowan Old Style", "Palatino Linotype", Palatino, serif;--max-width: 1100px;--gutter: clamp(1.25rem, 4vw, 3rem)}@media(prefers-color-scheme:dark){:root{--color-bg: #211d16;--color-bg-soft: #2a2419;--color-text: #e9e2d2;--color-heading: #d9c9a0;--color-muted: #a89b7e;--color-border: #3a3327;--color-accent: #d9c9a0}}*{box-sizing:border-box}html{color-scheme:light dark}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-body);line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration-color:var(--color-border);text-underline-offset:3px}a:hover{text-decoration-color:currentColor}h1,h2,h3,h4{font-family:var(--font-display);font-weight:400;line-height:1.2;color:var(--color-heading);margin:0 0 .6em}.wrap{max-width:var(--max-width);margin:0 auto;padding:0 var(--gutter)}.site-header{padding:2rem 0 1.5rem;border-bottom:1px solid var(--color-border);text-align:center}.site-header .wrap{display:flex;flex-direction:column;align-items:center;gap:.9rem}.site-title{font-family:var(--font-display);font-size:1.6rem;letter-spacing:.03em;color:var(--color-heading);text-decoration:none}.site-nav{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;font-size:.95rem}.site-nav a{text-decoration:none;color:var(--color-muted);padding-bottom:.15rem}.site-nav a:hover{color:var(--color-accent)}.site-nav a[aria-current=page]{color:var(--color-accent);border-bottom:1px solid var(--color-accent)}.site-footer{margin-top:4rem;padding:2rem 0 3rem;border-top:1px solid var(--color-border);color:var(--color-muted);font-size:.9rem;text-align:center}main{padding:3rem 0;min-height:50vh}.masonry{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));align-items:start;gap:var(--gutter)}.masonry>*{margin:0}.card{display:block;text-decoration:none;text-align:center}.card figure{margin:0;background:var(--color-bg-soft)}.card img{width:100%;height:auto;transition:opacity .3s ease}.card:hover img{opacity:.88}.card h3{font-size:1.15rem;margin:.85rem 0 .25rem}.card .meta{color:var(--color-muted);font-size:.85rem}.card .excerpt{color:var(--color-muted);font-size:.9rem;margin:.4rem 0 0}.article-header{margin-bottom:2rem;text-align:center}.article-header h1{font-size:clamp(1.8rem,4vw,2.6rem)}.article-meta{color:var(--color-muted);font-size:.9rem;display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;align-items:center}.tag-list{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;list-style:none;padding:0;margin:.75rem 0 0}.tag{display:inline-block;font-size:.78rem;color:var(--color-muted);border:1px solid var(--color-border);border-radius:999px;padding:.2rem .7rem;text-decoration:none}.tag:hover{color:var(--color-accent);border-color:currentColor}.prose{max-width:720px;margin:0 auto;font-size:1.05rem}.prose p{margin:0 0 1.4em}.prose img{margin:2.2em auto;border-radius:2px}.prose figure{margin:2.2em auto}.prose figcaption{text-align:center;font-size:.85rem;color:var(--color-muted);margin-top:.6em}.prose blockquote{margin:2em 0;padding-left:1.2em;border-left:2px solid var(--color-border);color:var(--color-muted);font-style:italic}.prose h2,.prose h3{margin-top:1.8em}.masonry figcaption{font-size:.85rem;color:var(--color-muted);margin-top:.5em;text-align:center}.page-title{margin-bottom:2.5rem;text-align:center}.empty-state{color:var(--color-muted);text-align:center}.simple-page{max-width:640px;margin:0 auto;text-align:center}.simple-page .mailto{display:inline-block;margin-top:1rem;font-size:1.15rem;color:var(--color-accent);border-bottom:1px solid var(--color-border)}.pill-nav{display:flex;justify-content:center;gap:.5rem;flex-wrap:wrap;margin-bottom:2.5rem}.pagination{display:flex;justify-content:space-between;align-items:center;margin-top:3rem}.pagination a{color:var(--color-accent);text-decoration:none;border-bottom:1px solid var(--color-border)}.pagination a:hover{border-color:currentColor}.pagination-status{color:var(--color-muted);font-size:.85rem}.lightbox-trigger{cursor:zoom-in}.lightbox-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:clamp(1rem,4vw,3rem);background:#14110ceb;cursor:zoom-out}.lightbox-overlay[hidden]{display:none}.lightbox-overlay img{max-width:100%;max-height:100%;width:auto;object-fit:contain;box-shadow:0 1.5rem 4rem #00000080}
