@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;0,900;1,400;1,700&family=Source+Serif+4:ital,opsz,wght@0,8..60,400;0,8..60,600;1,8..60,400&family=Source+Sans+3:wght@400;600&display=swap";*,*:before,*:after{box-sizing:border-box}:root{--ink: #1a1a1a;--ink-light: #555;--ink-faint: #888;--paper: #faf9f6;--paper-alt: #f2f0eb;--rule: #d4cfca;--accent: #8b1a1a;--link: #1a3a6b;--link-hover: #8b1a1a;--serif: "Playfair Display", Georgia, serif;--body-serif: "Source Serif 4", Georgia, serif;--sans: "Source Sans 3", system-ui, sans-serif;--max-w: 1100px;--col-gap: 2.5rem}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body-serif);font-size:18px;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:var(--link);text-decoration:none}a:hover{color:var(--link-hover);text-decoration:underline}img{max-width:100%;height:auto;display:block}.site-wrapper{display:flex;flex-direction:column;min-height:100vh}.site-header{background:var(--paper);border-bottom:3px double var(--rule)}.header-inner{max-width:var(--max-w);margin:0 auto;padding:0 1.5rem}.header-top{display:flex;justify-content:flex-end;padding:.5rem 0 .25rem;border-bottom:1px solid var(--rule)}.header-date{font-family:var(--sans);font-size:.75rem;color:var(--ink-faint);margin:0;text-transform:uppercase;letter-spacing:.05em}.header-brand{text-align:center;padding:1.25rem 0 .75rem}.site-title{font-family:var(--serif);font-size:clamp(2.2rem,5vw,3.5rem);font-weight:900;color:var(--ink);letter-spacing:-.02em;text-decoration:none;display:block;line-height:1.1}.site-title:hover{color:var(--accent);text-decoration:none}.site-tagline{font-family:var(--sans);font-size:.85rem;color:var(--ink-faint);margin:.3rem 0 0;font-style:italic}.header-nav{display:flex;justify-content:center;gap:.25rem;padding:.6rem 0;font-family:var(--sans);font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);margin-bottom:0}.header-nav a{color:var(--ink);text-decoration:none;padding:0 .5rem}.header-nav a:hover{color:var(--accent);text-decoration:none}.nav-sep{color:var(--ink-faint)}.header-rule{height:3px;background:var(--ink);margin-top:3px}.site-content{flex:1;max-width:var(--max-w);margin:0 auto;width:100%;padding:2rem 1.5rem}.layout{display:grid;grid-template-columns:1fr 280px;gap:var(--col-gap);align-items:start}@media(max-width:768px){.layout{grid-template-columns:1fr}}.main-content{min-width:0}.post-card{padding-bottom:2rem;margin-bottom:2rem;border-bottom:1px solid var(--rule)}.post-card--featured{padding-bottom:2.5rem;margin-bottom:0}.post-card--featured .post-card-title{font-size:2.2rem;line-height:1.2}.post-card-meta{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}.post-card-date{font-family:var(--sans);font-size:.78rem;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.05em}.post-card-tag{font-family:var(--sans);font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);background:transparent;border:1px solid var(--accent);padding:0 .4rem;border-radius:2px;line-height:1.6}.post-card-title{font-family:var(--serif);font-size:1.6rem;font-weight:700;line-height:1.25;margin:0 0 .6rem;color:var(--ink)}.post-card-title a{color:inherit;text-decoration:none}.post-card-title a:hover{color:var(--accent);text-decoration:none}.post-card-excerpt{color:var(--ink-light);margin:0 0 1rem;font-size:1rem;line-height:1.65}.post-card-footer{display:flex;justify-content:space-between;align-items:center;font-family:var(--sans);font-size:.82rem}.post-card-author{color:var(--ink-faint)}.post-card-readmore{color:var(--link);font-weight:600;text-decoration:none}.post-card-readmore:hover{color:var(--accent);text-decoration:underline}.section-divider{display:flex;align-items:center;gap:1rem;margin:2rem 0 1.5rem}.section-divider:before,.section-divider:after{content:"";flex:1;height:1px;background:var(--rule)}.section-label{font-family:var(--sans);font-size:.72rem;text-transform:uppercase;letter-spacing:.15em;color:var(--ink-faint);white-space:nowrap}.post-grid{display:flex;flex-direction:column}.post-back{display:inline-block;font-family:var(--sans);font-size:.82rem;color:var(--ink-faint);margin-bottom:1.5rem;text-decoration:none;text-transform:uppercase;letter-spacing:.06em}.post-back:hover{color:var(--accent);text-decoration:none}.post-header{margin-bottom:1.5rem}.post-title{font-family:var(--serif);font-size:clamp(1.8rem,4vw,2.8rem);font-weight:900;line-height:1.15;margin:.5rem 0 .75rem;color:var(--ink)}.post-byline{display:flex;flex-wrap:wrap;gap:.25rem;font-family:var(--sans);font-size:.85rem;color:var(--ink-faint);margin-bottom:1rem;align-items:center}.byline-sep{color:var(--rule)}.post-lead{font-size:1.15rem;font-style:italic;color:var(--ink-light);border-left:3px solid var(--accent);padding-left:1rem;margin:1rem 0;line-height:1.6}.post-rule{border:none;border-top:1px solid var(--rule);margin:1.75rem 0}.post-footer{padding-top:.5rem}.post-body{font-family:var(--body-serif);font-size:1.05rem;line-height:1.8;color:var(--ink)}.post-body h1,.post-body h2,.post-body h3,.post-body h4{font-family:var(--serif);color:var(--ink);line-height:1.25;margin:2rem 0 .75rem}.post-body h1{font-size:2rem;font-weight:900;border-bottom:2px solid var(--ink);padding-bottom:.3rem}.post-body h2{font-size:1.5rem;font-weight:700;border-bottom:1px solid var(--rule);padding-bottom:.25rem}.post-body h3{font-size:1.2rem;font-weight:700}.post-body h4{font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.post-body p{margin:0 0 1.3rem}.post-body a{color:var(--link);text-decoration:underline}.post-body a:hover{color:var(--accent)}.post-body blockquote{margin:1.5rem 0;padding:.75rem 1.25rem;border-left:4px solid var(--accent);background:var(--paper-alt);font-style:italic;color:var(--ink-light)}.post-body blockquote p{margin:0}.post-body code{font-family:Fira Code,Consolas,monospace;font-size:.88em;background:var(--paper-alt);padding:.1em .35em;border-radius:3px;border:1px solid var(--rule);color:var(--accent)}.post-body pre{background:#1e1e2e;color:#cdd6f4;border-radius:6px;padding:1.25rem 1.5rem;overflow-x:auto;margin:1.5rem 0;font-size:.88rem;line-height:1.6}.post-body pre code{background:none;border:none;padding:0;color:inherit;font-size:inherit}.post-body ul,.post-body ol{padding-left:1.5rem;margin:0 0 1.3rem}.post-body li{margin-bottom:.35rem}.post-body table{width:100%;border-collapse:collapse;font-family:var(--sans);font-size:.9rem;margin:1.5rem 0}.post-body th{background:var(--ink);color:var(--paper);padding:.5rem .75rem;text-align:left;font-weight:600}.post-body td{padding:.5rem .75rem;border-bottom:1px solid var(--rule)}.post-body tr:nth-child(2n) td{background:var(--paper-alt)}.post-body hr{border:none;border-top:1px solid var(--rule);margin:2rem 0}.post-body strong{font-weight:600;color:var(--ink)}.post-body em{font-style:italic}.sidebar{position:sticky;top:1.5rem;font-family:var(--sans)}.widget{margin-bottom:2rem}.widget-title{font-family:var(--serif);font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--ink);margin:0 0 .4rem}.widget-divider{height:2px;background:linear-gradient(to right,var(--ink) 40%,var(--rule) 100%);margin-bottom:.75rem}.widget-text{font-size:.88rem;color:var(--ink-light);line-height:1.6;margin:0}.recent-list{list-style:none;padding:0;margin:0}.recent-list li{display:flex;flex-direction:column;padding:.5rem 0;border-bottom:1px solid var(--rule);font-size:.88rem}.recent-list li:last-child{border-bottom:none}.recent-link{color:var(--ink);line-height:1.4;margin-bottom:.1rem;font-weight:600}.recent-link:hover{color:var(--accent);text-decoration:none}.recent-date{font-size:.75rem;color:var(--ink-faint)}.tag-cloud{display:flex;flex-wrap:wrap;gap:.4rem}.tag-chip{display:flex;align-items:center;gap:.25rem;font-size:.75rem;background:var(--paper-alt);border:1px solid var(--rule);padding:.2rem .5rem;border-radius:2px;color:var(--ink-light);text-transform:lowercase}.tag-count{background:var(--ink);color:var(--paper);font-size:.65rem;padding:0 .3rem;border-radius:50px;line-height:1.4}.site-footer{background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:.8rem;text-align:center;padding:1.25rem;margin-top:2rem}.footer-inner p{margin:0;opacity:.7}.page-loading,.page-error{font-family:var(--sans);padding:3rem 1rem;text-align:center;color:var(--ink-faint);font-size:1rem}.page-error a{color:var(--link)}
