:root{
  --ink:#2b2118; --ink-soft:#5a4a3a; --paper:#faf6ef; --card:#fffdf8;
  --rust:#b5502a; --rust-dark:#8f3d1f; --sand:#e8dcc8; --sage:#6b7256;
  --line:#ddd0ba; --max:1060px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);
  font-family:"Iowan Old Style",Palatino,Georgia,"Times New Roman",serif;
  font-size:18px;line-height:1.65}
a{color:var(--rust);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}
.wrap{max-width:var(--max);margin:0 auto;padding:0 22px}

/* header */
.site-header{background:#241a12;color:#f3e9d8}
.site-header .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:16px;padding-bottom:16px}
.brand{font-size:27px;letter-spacing:.5px;color:#f7efe0;font-weight:bold}
.brand span{color:#e0a458}
nav.main a{color:#e9dcc4;margin-left:26px;font-size:16px;font-family:Helvetica,Arial,sans-serif;letter-spacing:.4px}
nav.main a:hover{color:#fff;text-decoration:none;border-bottom:2px solid var(--rust)}

/* hero */
.hero{position:relative;color:#fff}
.hero img{width:100%;height:52vh;min-height:340px;object-fit:cover}
.hero .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,12,6,.15),rgba(20,12,6,.62))}
.hero .hero-text{position:absolute;left:0;right:0;bottom:34px}
.hero h1{font-size:44px;line-height:1.15;margin:0 0 8px;text-shadow:0 2px 14px rgba(0,0,0,.45)}
.hero p{font-size:20px;margin:0;color:#f5ead6;text-shadow:0 1px 8px rgba(0,0,0,.5)}

/* home intro + cards */
.intro{padding:38px 0 6px;font-size:19px;color:var(--ink-soft)}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding:26px 0 14px}
@media(max-width:720px){.cards{grid-template-columns:1fr}.hero h1{font-size:32px}}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;overflow:hidden;
  box-shadow:0 2px 10px rgba(80,55,25,.07)}
.card img{height:230px;width:100%;object-fit:cover}
.card .pad{padding:18px 20px 20px}
.card h2{margin:2px 0 8px;font-size:24px;line-height:1.25}
.card h2 a{color:var(--ink)}
.card h2 a:hover{color:var(--rust);text-decoration:none}
.card p{margin:0;color:var(--ink-soft);font-size:16.5px}
.meta{font-family:Helvetica,Arial,sans-serif;font-size:13px;letter-spacing:.8px;
  text-transform:uppercase;color:var(--rust);margin-bottom:6px}
.archive-title{font-size:26px;margin:30px 0 6px;color:var(--rust-dark)}
.archive{list-style:none;margin:0 0 8px;padding:0}
.archive li{display:flex;gap:16px;align-items:baseline;padding:10px 2px;border-bottom:1px solid var(--line);flex-wrap:wrap}
.archive .a-date{font-family:Helvetica,Arial,sans-serif;font-size:14px;color:#8a7760;min-width:96px}
.archive .a-cat{font-family:Helvetica,Arial,sans-serif;font-size:12.5px;letter-spacing:.8px;text-transform:uppercase;color:var(--rust);min-width:64px}
.archive a{font-size:18.5px;color:var(--ink)}
.archive a:hover{color:var(--rust);text-decoration:none}
.note-box{background:#f3ead9;border-left:4px solid var(--rust);padding:6px 22px;margin:34px 0;border-radius:0 8px 8px 0}
.note-box h3{font-size:19px;margin:14px 0 4px}
.note-box p{color:var(--ink-soft)}

/* article */
article.post{padding:36px 0 10px;max-width:760px;margin:0 auto}
article.post h1{font-size:38px;line-height:1.2;margin:6px 0 10px}
article.post .lede{font-size:20.5px;color:var(--ink-soft)}
article.post h2{font-size:26px;margin:34px 0 8px;color:var(--rust-dark)}
article.post figure{margin:26px 0}
article.post figure img{border-radius:8px}
figcaption{font-size:14px;color:#8a7760;margin-top:8px;font-family:Helvetica,Arial,sans-serif}
.post-hero img{width:100%;height:46vh;min-height:300px;object-fit:cover}
.backlink{font-family:Helvetica,Arial,sans-serif;font-size:15px}

/* footer */
footer.site{margin-top:56px;background:#241a12;color:#cdbfa5;padding:30px 0 38px;font-size:15px}
footer.site a{color:#e0c491}
footer.site .cols{display:flex;gap:40px;flex-wrap:wrap;justify-content:space-between}
footer.site h4{color:#f3e9d8;margin:0 0 8px;font-size:16px}
footer.site ul{list-style:none;margin:0;padding:0}
footer.site li{margin:3px 0}
.fineprint{margin-top:22px;border-top:1px solid #453723;padding-top:14px;font-size:13.5px;color:#a08e6f}
