:root{
  --canvas:#EDE4D3; --canvas-dark:#DED2B9; --ink:#241812; --cedar:#3A281C;
  --ember:#A8481F; --ember-light:#C9663A; --frost:#7FA9A6; --frost-light:#DCEAE8;
  --frost-deep:#4E7C79; --paper:#FAF6ED;
}
*{box-sizing:border-box; margin:0; padding:0;}
body{font-family:'Work Sans',sans-serif; color:var(--ink); background:var(--paper); line-height:1.65;}
h1,h2,h3{font-family:'Fraunces',serif; font-weight:600; line-height:1.15;}
a{color:var(--ember);}
.nav{display:flex; justify-content:space-between; align-items:center; padding:1.4rem 1.5rem; background:var(--cedar);}
.nav .brand{font-family:'Space Mono',monospace; font-size:.85rem; letter-spacing:.18em; text-transform:uppercase; color:var(--paper); text-decoration:none;}
.nav a.back{font-family:'Space Mono',monospace; font-size:.72rem; letter-spacing:.06em; color:var(--paper); text-decoration:none; border:1px solid rgba(250,246,237,.5); padding:.5em 1em; border-radius:999px;}
.wrap{max-width:720px; margin:0 auto; padding:3.5rem 1.5rem 5rem;}

/* Blog index */
.blog-hero{padding:2.5rem 0 1rem;}
.blog-hero .tag{
  display:inline-flex; font-family:'Space Mono',monospace; font-size:.7rem; letter-spacing:.14em;
  text-transform:uppercase; padding:.5em 1em; background:var(--paper); border:1px solid var(--ink); margin-bottom:1.2rem;
}
.blog-hero h1{font-size:clamp(2rem,6vw,2.8rem); margin-bottom:.8rem;}
.blog-hero p{color:rgba(36,24,18,.7); font-size:1.05rem; max-width:50ch;}
.post-list{margin-top:2.5rem; display:flex; flex-direction:column; gap:1.5rem;}
.post-card{
  display:block; background:var(--canvas); border:1px solid var(--canvas-dark);
  padding:1.8rem; text-decoration:none; color:var(--ink); transition:transform .15s ease;
}
.post-card:hover{transform:translateY(-2px);}
.post-card .post-date{font-family:'Space Mono',monospace; font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; color:var(--ember); margin-bottom:.6rem; display:block;}
.post-card h2{font-size:1.35rem; margin-bottom:.6rem;}
.post-card p{color:rgba(36,24,18,.7); font-size:.95rem;}
.post-card .read-more{display:inline-block; margin-top:.9rem; font-family:'Space Mono',monospace; font-size:.75rem; letter-spacing:.06em; text-transform:uppercase; color:var(--ember);}

/* Blog article */
.post-meta{font-family:'Space Mono',monospace; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; color:rgba(36,24,18,.5); margin-bottom:1rem;}
.wrap h1.post-title{font-size:clamp(2rem,6vw,2.7rem); margin-bottom:1.6rem;}
.wrap .post-body p{font-size:1.02rem; color:rgba(36,24,18,.82); margin-bottom:1.2rem;}
.wrap .post-body h2{font-size:1.4rem; margin:2rem 0 .9rem; color:var(--ember);}
.wrap .post-body ul{padding-left:1.3rem; margin-bottom:1.2rem;}
.wrap .post-body li{font-size:1.02rem; color:rgba(36,24,18,.82); margin-bottom:.5rem;}
.post-disclaimer{
  margin-top:2.5rem; padding-top:1.4rem; border-top:1px solid rgba(36,24,18,.15);
  font-size:.85rem; color:rgba(36,24,18,.55); line-height:1.6; font-style:italic;
}
.post-cta{
  margin-top:2.5rem; padding:1.6rem; background:var(--frost-light); border:1px solid var(--frost);
  text-align:center;
}
.post-cta a{display:inline-block; margin-top:.8rem; background:var(--ink); color:var(--paper); padding:.8em 1.8em; border-radius:999px; text-decoration:none; font-weight:600; font-size:.9rem;}

footer{background:var(--ink); color:rgba(250,246,237,.5); text-align:center; padding:2rem; font-family:'Space Mono',monospace; font-size:.72rem;}
footer a{color:rgba(250,246,237,.7);}
