:root{--ink:#1f1a16;--ink-soft:#504035;--paper:#fff7ed;--paper-strong:#f2e4d4;--line:#d6c3af;--accent:#c2522e;--accent-deep:#8d331a;--accent-cool:#2c6f69;--shadow:0 18px 46px rgba(26, 19, 14, 0.14);--shadow-soft:0 10px 28px rgba(26, 19, 14, 0.1);--max-width:1020px;--radius:16px}*{box-sizing:border-box}body{margin:0;min-height:100vh;color:var(--ink);font-family:iowan old style,palatino linotype,book antiqua,Palatino,times new roman,serif;line-height:1.7;background:radial-gradient(circle at 10% 8%,#fff7ef 0%,#f6e6d5 42%,#efe0cf 100%)}.page{min-height:100vh;display:flex;flex-direction:column;position:relative;z-index:0}.page::before{content:"";position:fixed;inset:0;background-image:radial-gradient(circle at 80% 18%,rgba(194,82,46,.16),transparent 55%),radial-gradient(circle at 12% 85%,rgba(44,111,105,.14),transparent 60%),linear-gradient(120deg,rgba(255,255,255,.45),rgba(255,255,255,0));pointer-events:none;z-index:-1}.site-header{border-bottom:1px solid var(--line);background:linear-gradient(120deg,rgba(255,255,255,.7),rgba(247,231,217,.92));padding:2rem 1.5rem 1.25rem}.brand{max-width:var(--max-width);margin:0 auto}.site-title{font-size:clamp(1.8rem,3vw,2.6rem);letter-spacing:.02em;margin:0}.site-title a{color:var(--ink);text-decoration:none}.site-title a:hover{color:var(--accent)}.site-tagline{color:var(--ink-soft);margin:.4rem 0 0;font-size:1.05rem}nav{max-width:var(--max-width);margin:1rem auto 0}nav ul{list-style:none;padding:0;margin:0;display:flex;gap:1rem;flex-wrap:wrap}nav a{color:var(--ink-soft);font-size:.95rem;text-decoration:none;padding-bottom:.1rem;border-bottom:1px solid transparent}nav a:hover,nav a.active{color:var(--accent);border-bottom-color:var(--accent)}.site-main{flex:1;margin:2.5rem auto 3.5rem;max-width:var(--max-width);padding:0 1.5rem;animation:fadeIn 520ms ease-out}.hero{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-soft);padding:1.8rem 2rem;margin-bottom:2rem}.hero-compact{padding:1.4rem 1.6rem}.hero-eyebrow{color:var(--accent-cool);font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;margin:0;font-weight:700}.hero-title{font-size:clamp(1.9rem,3.4vw,2.8rem);margin:.4rem 0 .6rem}.hero-subtitle{color:var(--ink-soft);max-width:62ch;margin:0;font-size:1.05rem}.post-grid{display:grid;gap:1.6rem;grid-template-columns:1fr}.post-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem 1.6rem 1.6rem;box-shadow:var(--shadow-soft);display:flex;flex-direction:column;gap:.85rem;transition:transform 180ms ease,box-shadow 180ms ease,border-color 180ms ease}.post-card:hover{transform:translateY(-4px);box-shadow:var(--shadow);border-color:rgba(194,82,46,.35)}.post-meta{display:flex;align-items:center;gap:.5rem;color:var(--ink-soft);font-size:.9rem}.post-title{margin:0;font-size:1.25rem;line-height:1.3}.post-title a{color:var(--ink);text-decoration:none}.post-title a:hover{color:var(--accent)}.post-summary{color:var(--ink-soft);font-size:1rem}.post-summary p{margin:0 0 .75rem}.post-summary p:last-child{margin-bottom:0}.post-link{align-self:flex-start;color:var(--accent);font-weight:600;text-decoration:none}.post-link:hover{color:var(--accent-deep);text-decoration:underline;text-underline-offset:4px}.post{background:var(--paper);border:1px solid var(--line);border-radius:calc(var(--radius) + 4px);box-shadow:var(--shadow-soft);padding:2rem 2.4rem}.post-header{border-bottom:1px solid var(--line);padding-bottom:1.4rem;margin-bottom:1.6rem}.post-header .post-title{font-size:clamp(2rem,3.2vw,2.8rem)}.post-body{color:var(--ink);font-size:1.05rem}.post-body h2,.post-body h3,.post-body h4{margin-top:2rem}.post-body a{color:var(--accent)}.post-taxonomy{margin-top:2rem;padding-top:1rem;border-top:1px solid var(--line)}.site-footer{border-top:1px solid var(--line);color:var(--ink-soft);padding:1.5rem;text-align:center;font-size:.95rem}a{color:var(--accent)}img{max-width:100%;border-radius:12px;box-shadow:var(--shadow-soft)}@media(max-width:640px){.site-header{padding:1.6rem 1.2rem 1rem}.site-main{margin-top:2rem}.hero{padding:1.4rem 1.5rem}.post{padding:1.6rem 1.5rem}}@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}