:root {
  --primary: #33413F;
  --primary-dark: #222B2A;
  --accent: #B5462F;
  --accent-soft: #F2E5DF;
  --ink: #1C1C1A;
  --muted: #7A766E;
  --surface: #ffffff;
  --background: #F4F1EA;
  --border: #E4DFD4;
}

html { font-size: 17px; }
body {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-size: 17px; line-height: 1.65; color: #1C1C1A;
  background-color: #F4F1EA;
  display: flex; flex-direction: column; min-height: 100vh;
}
main { flex: 1 0 auto; }

h1, h2, h3, h4, h5, h6 { font-family: 'Cormorant Garamond', Georgia, serif; color: #33413F; font-weight: 700; line-height: 1.25; }
h1, .page-title { font-size: 38px; font-weight: 700; margin: .5em 0 .5em; }
h2, .block-heading { font-size: 28px; font-weight: 600; }
h3 { font-size: 21px; font-weight: 600; }

/* ── Navbar ─────────────────────────────────────────── */
nav.site-nav { background-color: #33413F; box-shadow: 0 2px 8px rgba(42,36,48,.12); }
nav.site-nav .brand-logo { font-family: 'Cormorant Garamond', Georgia, serif; font-weight: 700; color: #ffffff; font-size: 1.3rem; }
nav.site-nav ul a { color: #ffffff; font-weight: 500; }
nav.site-nav ul a:hover { background-color: #222B2A; }
.dropdown-content li > a { color: #33413F; }
.dropdown-content li > a:hover { background-color: #F4F1EA; }
.sidenav .sidenav-child { padding-left: 40px; color: #7A766E; }
.sidenav li > a { color: #1C1C1A; }

/* ── Hero ───────────────────────────────────────────── */
.hero { background: linear-gradient(135deg, #33413F 0%, #222B2A 100%); color: #fff; padding: 60px 0 66px; text-align: center; }
.hero-title { color: #fff; font-size: 38px; font-weight: 700; margin-bottom: .3em; }
.hero-lead { color: #e6dbc7; max-width: 760px; margin: 0 auto 1.4em; }
.hero-actions { margin-top: 1.1em; }
.hero-btn-primary { background-color: #B5462F; color: #fff; border-radius: 26px; margin: .4em; font-weight: 600; }
.hero-btn-primary:hover { background-color: #b08838; }
.hero-btn-secondary { background-color: transparent; border: 2px solid #fff; color: #fff; border-radius: 26px; margin: .4em; box-shadow: none; }
.hero-btn-secondary:hover { background-color: rgba(255,255,255,.14); }

/* ── Section cards (homepage) ───────────────────────── */
.section-cards { margin-top: 1rem; }
.section-card { border-radius: 12px; border: 1px solid var(--border); }
.section-card .card-title a { color: #33413F; font-size: 1.05rem; }

/* ── Content ────────────────────────────────────────── */
.site-prose { color: #1C1C1A; }
.site-prose p, .block-paragraph { margin: 0 0 1.1em; }
.block-image { border-radius: 8px; margin: 1.1em 0; max-width: 100%; height: auto; }
.block-quote { border-left: 4px solid #B5462F; padding-left: 1.2em; color: #7A766E; font-style: italic; }
.block-list { margin: 0 0 1.1em 1.2em; } .block-list li { list-style: disc; margin-bottom: .4em; }
.block-table { margin: 1.4em 0; }
.block-table th { background: #efe7da; color: #33413F; }
.divider { background-color: var(--border); }

/* listing feed */
.post-feed .block-list-item { display: flex; gap: 1rem; padding: 1em 0; border-bottom: 1px solid var(--border); }
.list-item-thumb { width: 120px; height: auto; border-radius: 6px; flex: 0 0 auto; }
.list-item-title { font-size: 21px; margin: 0 0 .2em; }
.list-item-title a { color: #33413F; }
.list-item-title a:hover { color: #B5462F; }
.list-item-excerpt { color: #7A766E; }
@media (max-width: 600px) { .post-feed .block-list-item { flex-direction: column; } .list-item-thumb { width: 100%; } }

/* content body links — scoped, visible */
.site-prose a, .block-paragraph a, .block-list a, .list-item-title a {
  color: #33413F; text-decoration: underline; text-decoration-color: rgba(74,44,90,.4);
}
.site-prose a:hover, .block-paragraph a:hover { color: #222B2A; text-decoration-color: #222B2A; }

/* ── Breadcrumbs ────────────────────────────────────── */
.breadcrumb-bar { background-color: #fff; border-bottom: 1px solid var(--border); }
.breadcrumb-bar .breadcrumb { color: #7A766E; }
.breadcrumb-bar .breadcrumb:last-child { color: #1C1C1A; }
.breadcrumb-bar .breadcrumb::before { color: var(--border); }

/* ── Cards / category ───────────────────────────────── */
.card-grid .card, .card-grid .card-minimal { border-radius: 12px; }
.card .card-title a, .card-minimal h5 a { color: #33413F; }
.card-minimal { border-left: 3px solid #B5462F; padding: .9em 1.2em; background: #fff; border-radius: 8px; }
.card-action a { color: #B5462F !important; font-weight: 600; }

/* ── ToC ────────────────────────────────────────────── */
.toc-box { background: #fff; border: 1px solid var(--border); border-radius: 10px; padding: 1em 1.2em; margin-bottom: 1.4em; }
.toc-box h6 { color: #33413F; font-weight: 600; margin-top: 0; }
.toc-box a { color: #1C1C1A; }
.sticky-toc { position: sticky; top: 20px; align-self: flex-start; }
.toc-level-3 { padding-left: 1em; }

/* ── Footer ─────────────────────────────────────────── */
footer.page-footer { background-color: #222B2A; padding-top: 28px; }
footer.page-footer .footer-title { color: #fff; font-size: 18px; }
footer.page-footer a { color: #e6dbc7; }
footer.page-footer a:hover { color: #fff; text-decoration: underline; }
footer.page-footer .footer-copyright { background-color: rgba(0,0,0,.18); color: #e6dbc7; }

/* ── Related links (interlink hub recovery) ─────────── */
.related-links { margin-top: 2rem; padding-top: 1.2rem; border-top: 2px solid var(--border); }
.related-links .block-heading { font-size: 22px; }
.related-list { columns: 2; column-gap: 2rem; list-style: none; margin-left: 0; }
.related-list li { margin-bottom: .5em; break-inside: avoid; }
.related-list a { color: #33413F; text-decoration: underline; text-decoration-color: rgba(74,44,90,.4); }
.related-list a:hover { color: #222B2A; }
@media (max-width: 600px) { .related-list { columns: 1; } }
