:root{
  --brass:#B08D57; --brass-bright:#C9A86A; --ink:#1A1A1A; --ink-soft:#2a2722;
  --cream:#F4ECD8; --cream-deep:#EBE0C6; --emerald:#0F5132; --muted:#6a5f4f;
}
*{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;}
body{
  background:var(--cream); color:var(--ink);
  font-family:'Spectral',Georgia,serif; font-weight:300; line-height:1.7;
  -webkit-font-smoothing:antialiased;
  background-image:
    radial-gradient(circle at 15% 6%, rgba(176,141,87,.08), transparent 45%),
    radial-gradient(circle at 85% 14%, rgba(15,81,50,.04), transparent 40%);
}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px;}
a{color:inherit;text-decoration:none;}
h1,h2,h3{font-family:'Playfair Display';font-weight:900;letter-spacing:.01em;line-height:1.12;}
.serif-it{font-family:'Cormorant Garamond';font-style:italic;}
.kicker{font-family:'Spectral';font-weight:500;letter-spacing:.4em;text-transform:uppercase;font-size:11px;color:var(--brass);}

/* nav */
nav{position:sticky;top:0;z-index:50;background:rgba(244,236,216,.86);backdrop-filter:blur(8px);border-bottom:1px solid rgba(26,26,26,.14);}
.nav-in{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;max-width:1120px;margin:0 auto;}
.brand{display:flex;align-items:center;gap:11px;}
.brand .wm{font-family:'Playfair Display';font-weight:700;font-size:22px;}
.brand .wm .dot{color:var(--brass);}
.nav-links{display:flex;gap:26px;align-items:center;}
.nav-links a{font-size:14px;color:var(--ink-soft);transition:color .2s;}
.nav-links a:hover{color:var(--brass);}
.btn{font-family:'Spectral';font-weight:500;font-size:14px;letter-spacing:.04em;padding:10px 20px;border:1.5px solid var(--ink);background:var(--ink);color:var(--cream);cursor:pointer;transition:all .25s;display:inline-block;}
.btn:hover{background:transparent;color:var(--ink);}
.btn.brass{background:var(--brass);border-color:var(--brass);color:var(--ink);}
.btn.brass:hover{background:transparent;}
@media(max-width:760px){.nav-links a:not(.btn){display:none;}}

/* breadcrumb */
.crumb{font-size:13px;color:var(--muted);padding:22px 0 0;}
.crumb a:hover{color:var(--brass);}
.crumb span{color:var(--brass);}

/* blog hub */
.hub-head{padding:48px 0 18px;max-width:42em;}
.hub-head h1{font-size:46px;margin:14px 0 14px;}
@media(max-width:760px){.hub-head h1{font-size:34px;}}
.hub-head p{font-size:19px;color:var(--muted);}
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;padding:24px 0 70px;}
@media(max-width:880px){.posts{grid-template-columns:1fr;}}
.post-card{border:1px solid rgba(26,26,26,.40);background:var(--cream);padding:28px 26px;transition:all .3s;display:flex;flex-direction:column;}
.post-card:hover{border-color:var(--brass);background:#fbf6e9;transform:translateY(-3px);}
.post-card .tag{font-family:'Spectral';font-weight:500;letter-spacing:.2em;text-transform:uppercase;font-size:10.5px;color:var(--brass);}
.post-card h2{font-size:23px;margin:10px 0 10px;}
.post-card p{color:var(--muted);font-size:15px;flex:1;}
.post-card .more{margin-top:16px;font-family:'Cormorant Garamond';font-style:italic;font-size:16px;color:var(--ink);}
.post-card:hover .more{color:var(--brass);}

/* article */
article{max-width:720px;margin:0 auto;padding:8px 0 40px;}
.art-head{padding:18px 0 8px;}
.art-head h1{font-size:42px;margin:14px 0 16px;}
@media(max-width:760px){.art-head h1{font-size:30px;}}
.meta{font-size:13.5px;color:var(--muted);letter-spacing:.02em;}
.tldr{background:var(--cream-deep);border-left:3px solid var(--brass);padding:20px 24px;margin:28px 0;font-size:17px;}
.tldr strong{font-family:'Spectral';font-weight:600;letter-spacing:.16em;text-transform:uppercase;font-size:11px;color:var(--brass);display:block;margin-bottom:8px;}
article h2{font-size:28px;margin:40px 0 14px;}
article h3{font-size:21px;margin:28px 0 10px;}
article p{font-size:17px;color:var(--ink-soft);margin:14px 0;}
article ul,article ol{margin:14px 0 14px 24px;}
article li{font-size:17px;color:var(--ink-soft);margin:8px 0;}
article a{color:var(--emerald);text-decoration:underline;text-underline-offset:3px;}
article a:hover{color:var(--brass);}
.tbl{width:100%;border-collapse:collapse;margin:22px 0;font-size:15.5px;}
.tbl th,.tbl td{border:1px solid rgba(26,26,26,.30);padding:12px 14px;text-align:left;vertical-align:top;}
.tbl th{background:var(--cream-deep);font-family:'Spectral';font-weight:600;}
.faq-q{font-family:'Playfair Display';font-weight:700;font-size:20px;margin:26px 0 6px;}
.cta-box{background:var(--ink);color:var(--cream);padding:34px 30px;margin:44px 0 10px;text-align:center;}
.cta-box p{color:var(--brass-bright);font-family:'Cormorant Garamond';font-style:italic;font-size:19px;margin-bottom:18px;}
.related{border-top:1px solid rgba(26,26,26,.20);margin-top:40px;padding-top:24px;}
.related h3{font-size:18px;margin-bottom:10px;}
.related a{display:block;color:var(--emerald);text-decoration:none;padding:6px 0;font-size:16px;}
.related a:hover{color:var(--brass);}

/* footer */
footer{background:var(--ink);color:#b7ae9c;padding:38px 0;border-top:1px solid rgba(244,236,216,.12);margin-top:30px;}
.foot-in{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
.foot-in .wm{font-family:'Playfair Display';font-weight:700;color:var(--cream);font-size:20px;}
.foot-links{display:flex;gap:22px;font-size:13px;flex-wrap:wrap;}
.foot-links a:hover{color:var(--brass-bright);}
.tiny{font-size:12px;}
