:root {
  --zk-bg: #fbf8f2;
  --zk-surface: #ffffff;
  --zk-surface-2: #f2f0e8;
  --zk-text: #1f2b26;
  --zk-muted: #657069;
  --zk-line: rgba(31, 43, 38, .12);
  --zk-border: var(--zk-line);
  --zk-primary: #28473a;
  --zk-primary-2: #426653;
  --zk-gold: #c9a76b;
  --zk-clay: #b9785b;
  --zk-blue: #6f8fa7;
  --zk-violet: #8c7d9f;
  --zk-radius: 24px;
  --zk-radius-lg: 34px;
  --zk-shadow: 0 24px 70px rgba(33, 45, 39, .10);
  --zk-container: 1180px;
  --zk-serif: Georgia, 'Times New Roman', serif;
  --zk-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--zk-bg); color: var(--zk-text); font-family: var(--zk-sans); line-height: 1.65; -webkit-font-smoothing: antialiased; }
img { max-width: 100%; height: auto; }
a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .2em; }
button, input, textarea, select { font: inherit; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.zk-container { width: min(calc(100% - 40px), var(--zk-container)); margin-inline: auto; }
.zk-skip-link { position: fixed; top: 12px; left: 12px; z-index: 9999; transform: translateY(-200%); background: #fff; padding: 10px 14px; border-radius: 10px; }
.zk-skip-link:focus { transform: translateY(0); }

.zk-site-header { position: sticky; top: 0; z-index: 100; border-bottom: 1px solid transparent; background: rgba(251, 248, 242, .88); backdrop-filter: blur(18px); transition: .2s ease; }
.zk-site-header.is-scrolled { border-bottom-color: var(--zk-line); box-shadow: 0 6px 28px rgba(31,43,38,.06); }
.zk-header-inner { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 30px; }
.zk-brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; }
.zk-brand__mark { width: 44px; aspect-ratio: 1; border-radius: 15px 15px 15px 5px; display: grid; place-items: center; background: var(--zk-primary); color: #fff; font-family: var(--zk-serif); font-size: 18px; box-shadow: inset 0 0 0 1px rgba(255,255,255,.12); }
.zk-brand__text { display: grid; line-height: 1.15; }
.zk-brand__text strong { font-family: var(--zk-serif); font-size: 21px; letter-spacing: -.02em; }
.zk-brand__text small { margin-top: 4px; color: var(--zk-muted); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; }
.zk-brand__logo img { max-height: 52px; width: auto; }
.zk-nav-list { display: flex; align-items: center; gap: 6px; list-style: none; padding: 0; margin: 0; }
.zk-nav-list a { display: block; padding: 10px 12px; border-radius: 12px; color: #314239; text-decoration: none; font-size: 14px; font-weight: 650; }
.zk-nav-list a:hover, .zk-nav-list .current-menu-item > a { background: rgba(40,71,58,.08); color: var(--zk-primary); }
.zk-nav-toggle { display: none; width: 44px; height: 44px; border: 0; border-radius: 12px; background: rgba(40,71,58,.08); cursor: pointer; }
.zk-nav-toggle span:not(.sr-only) { width: 20px; height: 2px; background: var(--zk-primary); display: block; margin: 4px auto; border-radius: 2px; }

.zk-hero { position: relative; overflow: hidden; padding: 78px 0 62px; }
.zk-hero::before { content: ''; position: absolute; width: 480px; height: 480px; border-radius: 50%; background: rgba(201,167,107,.12); filter: blur(30px); right: -170px; top: -180px; }
.zk-hero-grid { display: grid; grid-template-columns: 1.02fr .98fr; align-items: center; gap: 70px; }
.zk-eyebrow { margin: 0 0 14px; color: var(--zk-primary-2); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .14em; }
.zk-hero h1, .zk-hub-hero h1, .zk-article-hero h1, .zk-archive-hero h1, .zk-page-default h1, .zk-error-card h1 { margin: 0; font-family: var(--zk-serif); font-weight: 500; letter-spacing: -.045em; line-height: 1.03; }
.zk-hero h1 { max-width: 760px; font-size: clamp(48px, 6vw, 78px); }
.zk-hero-lead { max-width: 720px; margin: 24px 0 0; color: #536159; font-size: clamp(17px, 2vw, 20px); line-height: 1.75; }
.zk-button-row { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 30px; }
.zk-button { min-height: 48px; display: inline-flex; align-items: center; justify-content: center; padding: 12px 19px; border: 1px solid transparent; border-radius: 14px; font-weight: 750; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease, background .2s ease; }
.zk-button:hover { transform: translateY(-2px); }
.zk-button--primary { color: #fff; background: var(--zk-primary); box-shadow: 0 12px 28px rgba(40,71,58,.18); }
.zk-button--ghost { color: var(--zk-primary); background: rgba(255,255,255,.54); border-color: var(--zk-line); }
.zk-button--light { background: #fdfaf4; color: var(--zk-primary); }
.zk-button--outline-light { color: #fff; border-color: rgba(255,255,255,.3); }
.zk-trust-row { display: flex; gap: 22px; flex-wrap: wrap; margin-top: 30px; color: #68746e; font-size: 13px; }
.zk-trust-row span::before { content: '✓'; margin-right: 7px; color: var(--zk-primary-2); font-weight: 900; }
.zk-hero-art { position: relative; min-height: 500px; }
.zk-hero-art svg { position: relative; z-index: 2; width: 100%; filter: drop-shadow(0 26px 50px rgba(42,57,49,.14)); }
.zk-art-orb { position: absolute; border-radius: 50%; filter: blur(3px); opacity: .55; }
.zk-art-orb--one { width: 190px; height: 190px; background: #f4d9a7; top: 0; right: 0; }
.zk-art-orb--two { width: 160px; height: 160px; background: #b9cab9; left: -20px; bottom: 20px; }

.zk-section { padding: 88px 0; }
.zk-section--tight { padding-top: 48px; }
.zk-section--soft { background: #f0eee6; }
.zk-section--dark { color: #fff; background: #21362d; }
.zk-section--dark .zk-eyebrow { color: #d5bc8c; }
.zk-section-heading { max-width: 720px; margin-bottom: 34px; }
.zk-section-heading--center { margin-inline: auto; text-align: center; }
.zk-section-heading--split { max-width: none; display: flex; align-items: end; justify-content: space-between; gap: 24px; }
.zk-section-heading h2, .zk-callout-grid h2 { margin: 0; font-family: var(--zk-serif); font-size: clamp(34px, 4vw, 52px); font-weight: 500; letter-spacing: -.035em; line-height: 1.08; }
.zk-section-heading p:not(.zk-eyebrow) { color: var(--zk-muted); }
.zk-card-grid { display: grid; gap: 18px; }
.zk-card-grid--3 { grid-template-columns: repeat(3, minmax(0,1fr)); }
.zk-card-grid--2 { grid-template-columns: repeat(2, minmax(0,1fr)); }
.zk-feature-card, .zk-topic-card { position: relative; min-height: 230px; padding: 28px; border: 1px solid var(--zk-line); border-radius: var(--zk-radius); background: rgba(255,255,255,.78); text-decoration: none; box-shadow: 0 10px 30px rgba(31,43,38,.03); transition: .2s ease; }
.zk-feature-card:hover, .zk-topic-card:hover { transform: translateY(-5px); border-color: rgba(40,71,58,.25); box-shadow: var(--zk-shadow); }
.zk-feature-card__icon { width: 46px; height: 46px; display: grid; place-items: center; border-radius: 14px; background: rgba(40,71,58,.08); color: var(--zk-primary); font-size: 23px; }
.zk-feature-card h3, .zk-topic-card h3, .zk-post-card h2, .zk-post-card h3, .zk-hub-card h2 { margin: 20px 0 10px; font-family: var(--zk-serif); font-size: 27px; font-weight: 500; letter-spacing: -.025em; line-height: 1.16; }
.zk-feature-card p, .zk-topic-card p, .zk-hub-card p { margin: 0; color: var(--zk-muted); }
.zk-text-link { display: inline-flex; gap: 8px; align-items: center; margin-top: 24px; color: var(--zk-primary); font-weight: 750; text-decoration: none; }
.zk-topic-card__arrow { position: absolute; right: 24px; top: 22px; }

.zk-situation-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 80px; align-items: start; }
.zk-situation-list { overflow: hidden; border-top: 1px solid var(--zk-line); }
.zk-situation-list a { display: flex; justify-content: space-between; gap: 24px; padding: 20px 4px; border-bottom: 1px solid var(--zk-line); text-decoration: none; font-size: 18px; font-weight: 650; }
.zk-situation-list a:hover { color: var(--zk-primary-2); padding-left: 8px; }

.zk-post-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 20px; }
.zk-post-card { overflow: hidden; border: 1px solid var(--zk-line); border-radius: var(--zk-radius); background: #fff; }
.zk-post-card__media { aspect-ratio: 16/10; display: block; overflow: hidden; background: #dce4dc; }
.zk-post-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.zk-post-card:hover .zk-post-card__media img { transform: scale(1.035); }
.zk-post-card__placeholder { display: block; width: 100%; height: 100%; background: radial-gradient(circle at 75% 25%, #eed3a4 0 12%, transparent 13%), linear-gradient(145deg, #e8eee8, #c6d5c8); }
.zk-post-card__body { padding: 24px; }
.zk-post-card__body h2, .zk-post-card__body h3 { margin-top: 8px; }
.zk-post-card__body h2 a, .zk-post-card__body h3 a { text-decoration: none; }
.zk-post-card__body p { color: var(--zk-muted); }
.zk-post-card--compact { min-height: 100%; }
.zk-kicker { color: var(--zk-primary-2); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .12em; text-decoration: none; }
.zk-post-meta { display: flex; gap: 8px; margin-top: 18px; color: #5f6c65; font-size: 12px; }
.zk-empty-state { grid-column: 1 / -1; padding: 48px; border: 1px dashed rgba(40,71,58,.25); border-radius: var(--zk-radius); text-align: center; }
.zk-callout-grid { display: grid; grid-template-columns: 1fr auto; gap: 70px; align-items: center; }
.zk-callout-grid p:not(.zk-eyebrow) { max-width: 670px; color: rgba(255,255,255,.74); }
.zk-callout-actions { display: flex; gap: 12px; flex-wrap: wrap; }

.zk-hub-hero { padding: 84px 0 54px; }
.zk-hub-hero__grid { display: grid; grid-template-columns: 1fr 340px; gap: 60px; align-items: center; }
.zk-hub-hero h1 { font-size: clamp(52px, 7vw, 86px); }
.zk-hub-symbol { position: relative; height: 260px; border-radius: var(--zk-radius-lg); background: #e5ece4; overflow: hidden; }
.zk-hub-symbol span { position: absolute; border-radius: 50%; }
.zk-hub-symbol span:nth-child(1) { width: 170px; height: 170px; background: rgba(255,255,255,.7); left: 26px; top: 30px; }
.zk-hub-symbol span:nth-child(2) { width: 130px; height: 130px; background: rgba(40,71,58,.16); right: 28px; bottom: 28px; }
.zk-hub-symbol span:nth-child(3) { width: 90px; height: 90px; background: rgba(201,167,107,.72); right: 62px; top: 36px; }
.zk-hub-page--clay .zk-hub-symbol { background: #f0ded6; }
.zk-hub-page--gold .zk-hub-symbol { background: #f2e7cf; }
.zk-hub-page--blue .zk-hub-symbol { background: #dde7ed; }
.zk-hub-page--violet .zk-hub-symbol { background: #e7e1eb; }
.zk-hub-card { padding: 34px; border: 1px solid var(--zk-line); border-radius: var(--zk-radius-lg); background: #fff; }
.zk-hub-card__number { display: block; color: #91a098; font-family: var(--zk-serif); font-size: 14px; }
.zk-chip-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 24px; }
.zk-chip-row span { padding: 7px 10px; border: 1px solid var(--zk-line); border-radius: 999px; color: #5a6760; background: #fbfbf8; font-size: 12px; }

.zk-page-default { padding: 70px 0 100px; }
.zk-prose { max-width: 820px; font-size: 18px; line-height: 1.85; }
.zk-prose--page { margin-inline: auto; }
.zk-prose h2, .zk-prose h3 { font-family: var(--zk-serif); font-weight: 500; letter-spacing: -.025em; line-height: 1.2; }
.zk-prose h2 { margin-top: 2.2em; font-size: 38px; }
.zk-prose h3 { margin-top: 1.8em; font-size: 28px; }
.zk-prose blockquote { margin: 2em 0; padding: 22px 26px; border-left: 4px solid var(--zk-gold); background: #f2eee4; border-radius: 0 18px 18px 0; }
.zk-prose a { color: var(--zk-primary-2); }

.zk-article-hero { padding: 72px 0 42px; text-align: center; }
.zk-article-header-inner { max-width: 920px; }
.zk-article-hero h1 { margin-top: 12px; font-size: clamp(44px, 6vw, 72px); }
.zk-article-hero .zk-hero-lead { margin-inline: auto; }
.zk-article-hero .zk-post-meta { justify-content: center; }
.zk-article-cover { overflow: hidden; border-radius: var(--zk-radius-lg); max-height: 650px; }
.zk-article-cover img { width: 100%; max-height: 650px; object-fit: cover; }
.zk-article-layout { display: grid; grid-template-columns: minmax(0,780px) 260px; justify-content: center; gap: 70px; padding-top: 62px; padding-bottom: 100px; }
.zk-article-aside { position: relative; }
.zk-aside-card { position: sticky; top: 110px; padding: 22px; border: 1px solid var(--zk-line); border-radius: 20px; background: #f2efe6; font-size: 14px; }
.zk-aside-card p { color: var(--zk-muted); }

.zk-archive-hero { padding: 64px 0 24px; }
.zk-archive-hero h1 { font-size: clamp(46px, 6vw, 74px); }
.zk-pagination { margin-top: 42px; }
.zk-pagination .nav-links { display: flex; gap: 8px; flex-wrap: wrap; }
.zk-pagination .page-numbers { min-width: 42px; height: 42px; display: inline-grid; place-items: center; border: 1px solid var(--zk-line); border-radius: 12px; text-decoration: none; }
.zk-pagination .current { background: var(--zk-primary); color: #fff; }
.zk-error-page { padding: 100px 0; }
.zk-error-card { max-width: 760px; margin: auto; padding: 54px; border: 1px solid var(--zk-line); border-radius: var(--zk-radius-lg); background: #fff; }

.zk-site-footer { padding: 62px 0 26px; border-top: 1px solid var(--zk-line); background: #f2efe7; }
.zk-footer-grid { display: grid; grid-template-columns: 1.2fr .8fr; gap: 80px; }
.zk-brand--footer { margin-bottom: 22px; }
.zk-footer-note { max-width: 680px; color: var(--zk-muted); font-size: 13px; }
.zk-footer-title { margin: 0 0 16px; font-family: var(--zk-serif); font-size: 22px; }
.zk-footer-menu { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px 18px; }
.zk-footer-menu a { text-decoration: none; color: #4c5a52; }
.zk-footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 44px; padding-top: 20px; border-top: 1px solid var(--zk-line); color: #78817c; font-size: 12px; }

@media (max-width: 980px) {
  .zk-nav-toggle { display: block; }
  .zk-primary-nav { position: fixed; inset: 78px 16px auto; display: none; max-height: calc(100vh - 100px); overflow: auto; padding: 14px; border: 1px solid var(--zk-line); border-radius: 18px; background: #fff; box-shadow: var(--zk-shadow); }
  .zk-primary-nav.is-open { display: block; }
  .zk-nav-list { display: grid; }
  .zk-nav-list a { padding: 14px; }
  .zk-nav-open { overflow: hidden; }
  .zk-hero-grid, .zk-situation-grid, .zk-hub-hero__grid, .zk-callout-grid, .zk-footer-grid, .zk-article-layout { grid-template-columns: 1fr; }
  .zk-hero-art { min-height: auto; max-width: 650px; margin-inline: auto; }
  .zk-card-grid--3, .zk-post-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .zk-hub-hero__grid { gap: 30px; }
  .zk-hub-symbol { max-width: 520px; width: 100%; }
}

@media (max-width: 680px) {
  .zk-container { width: min(calc(100% - 28px), var(--zk-container)); }
  .zk-header-inner { min-height: 68px; }
  .zk-primary-nav { top: 68px; }
  .zk-brand__text small { display: none; }
  .zk-brand__text strong { font-size: 18px; }
  .zk-brand__mark { width: 40px; border-radius: 13px 13px 13px 5px; }
  .zk-hero { padding-top: 48px; }
  .zk-hero h1 { font-size: clamp(42px, 13vw, 62px); }
  .zk-hero-grid { gap: 36px; }
  .zk-trust-row { gap: 10px 18px; }
  .zk-section { padding: 64px 0; }
  .zk-section--tight { padding-top: 32px; }
  .zk-card-grid--3, .zk-card-grid--2, .zk-post-grid { grid-template-columns: 1fr; }
  .zk-section-heading--split { align-items: start; flex-direction: column; }
  .zk-feature-card, .zk-hub-card { padding: 24px; }
  .zk-callout-actions { align-items: stretch; }
  .zk-callout-actions .zk-button { width: 100%; }
  .zk-hub-hero { padding-top: 52px; }
  .zk-hub-hero h1 { font-size: clamp(48px, 15vw, 70px); }
  .zk-hub-symbol { height: 220px; }
  .zk-article-hero { padding-top: 48px; }
  .zk-article-hero h1 { font-size: clamp(40px, 11vw, 58px); }
  .zk-article-layout { padding-top: 38px; }
  .zk-prose { font-size: 17px; }
  .zk-prose h2 { font-size: 32px; }
  .zk-footer-bottom { flex-direction: column; }
  .zk-error-card { padding: 32px 24px; }
}


/* Editorial transparency: author and real review status. */
.zk-transparency {
  margin: 54px 0 18px;
  padding: 28px;
  border: 1px solid var(--zk-line);
  border-radius: 22px;
  background: rgba(255,255,255,.74);
}
.zk-transparency > div:first-child { margin-bottom: 18px; }
.zk-transparency h2 { margin: 4px 0 0; font-family: var(--zk-serif); font-size: clamp(28px,4vw,36px); font-weight: 500; }
.zk-transparency__items { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 14px; }
.zk-transparency__item { padding: 18px; border: 1px solid var(--zk-line); border-radius: 16px; background: #fff; }
.zk-transparency__item > span { display: block; margin-bottom: 6px; color: #66716a; font-size: 12px; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; }
.zk-transparency__item strong { display: block; color: var(--zk-ink); }
.zk-transparency__item p { margin: 7px 0 0; color: var(--zk-muted); font-size: 14px; line-height: 1.6; }
.zk-transparency__item small { display: block; margin-top: 8px; color: #66716a; }
@media (max-width: 980px) { .zk-transparency__items { grid-template-columns: 1fr; } }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* v0.2 — editorial system refinements */
:root {
  --zk-ink: #17231e;
  --zk-warm-white: #fffdfa;
  --zk-focus: #9b6d23;
}

:where(a, button, summary, input, textarea, select):focus-visible {
  outline: 3px solid rgba(155,109,35,.42);
  outline-offset: 3px;
}

.zk-hero-copy { position: relative; z-index: 3; }
.zk-hero-art { isolation: isolate; }
.zk-art-card { position: absolute; z-index: 4; max-width: 230px; padding: 16px 18px; border: 1px solid rgba(31,43,38,.10); border-radius: 18px; background: rgba(255,253,250,.90); box-shadow: 0 18px 44px rgba(35,48,41,.10); backdrop-filter: blur(10px); }
.zk-art-card span, .zk-art-card strong { display: block; font-family: var(--zk-serif); font-size: 18px; font-weight: 500; line-height: 1.2; }
.zk-art-card small { display: block; margin-top: 5px; color: var(--zk-muted); line-height: 1.35; }
.zk-art-card--quote { left: -26px; top: 96px; }
.zk-art-card--topic { right: -16px; bottom: 72px; }
.zk-art-card--topic small { margin: 0 0 6px; color: var(--zk-primary-2); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }

.zk-feature-card { overflow: hidden; min-height: 260px; }
.zk-feature-card::after { content: ''; position: absolute; width: 140px; height: 140px; right: -54px; top: -54px; border-radius: 50%; background: var(--zk-card-tint, rgba(40,71,58,.08)); transition: transform .25s ease; }
.zk-feature-card:hover::after { transform: scale(1.12); }
.zk-feature-card__num { position: relative; z-index: 1; display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 32px; padding: 0 10px; border: 1px solid var(--zk-line); border-radius: 999px; color: var(--zk-primary); background: rgba(255,255,255,.54); font-family: var(--zk-serif); font-size: 13px; }
.zk-feature-card--sage { --zk-card-tint: rgba(96,130,105,.16); }
.zk-feature-card--clay { --zk-card-tint: rgba(185,120,91,.16); }
.zk-feature-card--gold { --zk-card-tint: rgba(201,167,107,.20); }
.zk-feature-card--blue { --zk-card-tint: rgba(111,143,167,.18); }
.zk-feature-card--violet { --zk-card-tint: rgba(140,125,159,.16); }
.zk-feature-card--ink { --zk-card-tint: rgba(31,43,38,.12); }

.zk-section-sidecopy { max-width: 390px; margin: 0 0 4px auto; color: var(--zk-muted); font-size: 14px; }
.zk-sticky-heading { position: sticky; top: 118px; }
.zk-situation-list a > span:first-child { display: grid; gap: 3px; }
.zk-situation-list a small { color: #829087; font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }

.zk-manifesto { background: var(--zk-warm-white); }
.zk-manifesto-grid { display: grid; grid-template-columns: .9fr 1.1fr; gap: 88px; align-items: start; }
.zk-manifesto-quote { position: sticky; top: 118px; }
.zk-manifesto-quote > span { display: block; height: 60px; color: var(--zk-gold); font-family: var(--zk-serif); font-size: 90px; line-height: 1; opacity: .72; }
.zk-manifesto-quote blockquote { margin: 6px 0 0; max-width: 520px; font-family: var(--zk-serif); font-size: clamp(30px, 4vw, 48px); font-weight: 500; letter-spacing: -.035em; line-height: 1.12; }
.zk-principles { border-top: 1px solid var(--zk-line); }
.zk-principles article { display: grid; grid-template-columns: 54px 1fr; gap: 24px; padding: 28px 0; border-bottom: 1px solid var(--zk-line); }
.zk-principles article > strong { color: #93a097; font-family: var(--zk-serif); font-weight: 500; }
.zk-principles h3 { margin: 0 0 8px; font-family: var(--zk-serif); font-size: 26px; font-weight: 500; letter-spacing: -.025em; }
.zk-principles p { margin: 0; color: var(--zk-muted); }

.zk-hub-hero { position: relative; overflow: hidden; }
.zk-hub-hero::after { content: ''; position: absolute; width: 460px; height: 460px; right: -150px; top: -180px; border-radius: 50%; background: rgba(201,167,107,.08); filter: blur(10px); pointer-events: none; }
.zk-hub-hero__copy { position: relative; z-index: 2; }
.zk-hub-jump { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 28px; }
.zk-hub-jump a { padding: 8px 12px; border: 1px solid var(--zk-line); border-radius: 999px; background: rgba(255,255,255,.50); color: var(--zk-primary); font-size: 12px; font-weight: 750; text-decoration: none; }
.zk-hub-jump a:hover { border-color: rgba(40,71,58,.28); background: #fff; }

.zk-hub-illustration { position: relative; min-height: 310px; overflow: hidden; border: 1px solid rgba(31,43,38,.08); border-radius: 42px; background: linear-gradient(145deg, #f4f0e6, #dfe8df); box-shadow: 0 26px 70px rgba(31,43,38,.09); }
.zk-hub-glow { position: absolute; width: 154px; height: 154px; right: 42px; top: 42px; border-radius: 50%; background: rgba(247,211,147,.88); box-shadow: 0 0 0 38px rgba(247,211,147,.14); }
.zk-hub-land { position: absolute; left: -10%; width: 120%; height: 58%; bottom: -18%; border-radius: 50% 50% 0 0; transform: rotate(-5deg); }
.zk-hub-land--back { background: rgba(139,165,143,.56); bottom: 0; }
.zk-hub-land--front { background: rgba(80,117,92,.52); bottom: -20%; transform: rotate(5deg); }
.zk-hub-path { position: absolute; width: 86px; height: 250px; left: 47%; bottom: -72px; border-radius: 50%; background: linear-gradient(#fffef8, #d3b781); transform: rotate(16deg); }
.zk-hub-sun { position: absolute; width: 12px; height: 12px; left: 48%; top: 56%; border-radius: 50%; background: var(--zk-ink); box-shadow: 0 13px 0 -3px var(--zk-ink); }
.zk-hub-page--clay .zk-hub-illustration { background: linear-gradient(145deg, #f8ebe4, #e9d5cd); }
.zk-hub-page--gold .zk-hub-illustration { background: linear-gradient(145deg, #fbf0d9, #ead9b8); }
.zk-hub-page--blue .zk-hub-illustration { background: linear-gradient(145deg, #edf3f6, #d5e2e9); }
.zk-hub-page--violet .zk-hub-illustration { background: linear-gradient(145deg, #f0ebf3, #ded5e4); }

.zk-safety-note { display: grid; grid-template-columns: auto 1fr; gap: 10px 14px; margin: 6px 0 0; padding: 16px 18px; border: 1px solid rgba(155,109,35,.22); border-radius: 16px; background: #fff7e8; color: #67522f; font-size: 13px; line-height: 1.55; }
.zk-safety-note strong { color: #6a4b1b; }
.zk-hub-card__top { display: flex; align-items: center; gap: 12px; }
.zk-hub-card__line { width: 50px; height: 1px; background: var(--zk-line); }
.zk-chip-row a { padding: 7px 10px; border: 1px solid var(--zk-line); border-radius: 999px; color: #5a6760; background: #fbfbf8; font-size: 12px; text-decoration: none; }
.zk-chip-row a:hover { border-color: rgba(40,71,58,.28); color: var(--zk-primary); background: #fff; }

.zk-section--ink { color: #f9f7f1; background: var(--zk-ink); }
.zk-section--ink .zk-eyebrow { color: #d8bd87; }
.zk-guide-layout { display: grid; grid-template-columns: .82fr 1.18fr; gap: 86px; align-items: start; }
.zk-guide-intro { position: sticky; top: 118px; }
.zk-guide-intro h2 { margin: 0; font-family: var(--zk-serif); font-size: clamp(36px, 4.5vw, 58px); font-weight: 500; letter-spacing: -.04em; line-height: 1.07; }
.zk-guide-intro > p:not(.zk-eyebrow) { color: rgba(255,255,255,.66); }
.zk-guide-list { border-top: 1px solid rgba(255,255,255,.14); }
.zk-guide-item { display: grid; grid-template-columns: 42px 1fr; gap: 22px; padding: 26px 0; border-bottom: 1px solid rgba(255,255,255,.14); }
.zk-guide-item > span { color: #d4bc8e; font-family: var(--zk-serif); }
.zk-guide-item h3 { margin: 0 0 8px; font-family: var(--zk-serif); font-size: 25px; font-weight: 500; }
.zk-guide-item p { margin: 0; color: rgba(255,255,255,.67); }

.zk-faq-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; align-items: start; }
.zk-faq-list { border-top: 1px solid var(--zk-line); }
.zk-faq { border-bottom: 1px solid var(--zk-line); }
.zk-faq summary { list-style: none; display: flex; justify-content: space-between; gap: 22px; padding: 22px 2px; cursor: pointer; font-family: var(--zk-serif); font-size: 22px; font-weight: 500; }
.zk-faq summary::-webkit-details-marker { display: none; }
.zk-faq summary span { color: var(--zk-primary); font-family: var(--zk-sans); transition: transform .2s ease; }
.zk-faq[open] summary span { transform: rotate(45deg); }
.zk-faq > div { padding: 0 40px 22px 2px; color: var(--zk-muted); }
.zk-faq p { margin: 0; }

.zk-pagination ul.page-numbers { display: flex; gap: 8px; padding: 0; list-style: none; }
.zk-pagination ul.page-numbers li { margin: 0; }

@media (max-width: 980px) {
  .zk-art-card--quote { left: 4px; top: 72px; }
  .zk-art-card--topic { right: 4px; bottom: 54px; }
  .zk-manifesto-grid, .zk-guide-layout, .zk-faq-layout { grid-template-columns: 1fr; gap: 44px; }
  .zk-sticky-heading, .zk-manifesto-quote, .zk-guide-intro { position: static; }
  .zk-hub-illustration { max-width: 560px; width: 100%; }
}

@media (max-width: 680px) {
  .zk-art-card { display: none; }
  .zk-hero-art svg { filter: drop-shadow(0 16px 32px rgba(42,57,49,.10)); }
  .zk-section-sidecopy { max-width: none; margin-left: 0; }
  .zk-manifesto-grid { gap: 36px; }
  .zk-principles article { grid-template-columns: 38px 1fr; gap: 16px; }
  .zk-manifesto-quote blockquote { font-size: 34px; }
  .zk-hub-illustration { min-height: 235px; border-radius: 28px; }
  .zk-hub-glow { width: 110px; height: 110px; right: 30px; top: 30px; }
  .zk-guide-item { grid-template-columns: 32px 1fr; gap: 14px; }
  .zk-safety-note { grid-template-columns: 1fr; }
  .zk-faq summary { font-size: 20px; }
}

/* v0.3 — long-form evidence-aware guide system */
.zk-breadcrumbs { display:flex; flex-wrap:wrap; gap:8px; align-items:center; padding-top:28px; color:#5f6c65; font-size:13px; }
.zk-breadcrumbs a { color:var(--zk-primary); text-decoration:none; }
.zk-breadcrumbs a:hover { text-decoration:underline; }
.zk-guide-hero { padding:52px 0 38px; }
.zk-guide-hero__grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); gap:56px; align-items:start; }
.zk-guide-hero h1 { margin:0; max-width:900px; font-family:var(--zk-serif); font-size:clamp(44px,6vw,72px); font-weight:500; line-height:1.035; letter-spacing:-.045em; }
.zk-guide-lead { max-width:850px; margin:24px 0 0; color:#526159; font-size:clamp(17px,1.8vw,20px); line-height:1.82; }
.zk-guide-meta { display:flex; flex-wrap:wrap; gap:8px; margin-top:22px; color:#5f6c65; font-size:12px; }
.zk-guide-firststeps { padding:26px; border:1px solid var(--zk-line); border-radius:26px; background:rgba(255,255,255,.78); box-shadow:0 18px 50px rgba(31,43,38,.06); }
.zk-guide-firststeps ol { margin:16px 0 0; padding-left:22px; }
.zk-guide-firststeps li { padding:8px 0 8px 4px; color:#46554d; }
.zk-critical-note { display:grid; grid-template-columns:160px 1fr; gap:22px; margin-top:10px; padding:24px 28px; border:1px solid rgba(156,74,49,.22); border-left:5px solid #9b5a45; border-radius:18px; background:#fff7f2; }
.zk-critical-note strong { color:#7b3e2e; font-family:var(--zk-serif); font-size:21px; font-weight:600; }
.zk-critical-note p { margin:0; color:#644e46; }
.zk-section--guide { padding-top:56px; }
.zk-guide-shell { display:grid; grid-template-columns:260px minmax(0,780px); gap:72px; justify-content:center; align-items:start; }
.zk-guide-toc__inner { position:sticky; top:112px; padding:20px 0; }
.zk-guide-toc ol { margin:14px 0 0; padding:0; list-style:none; border-top:1px solid var(--zk-line); }
.zk-guide-toc li { border-bottom:1px solid var(--zk-line); }
.zk-guide-toc a { display:block; padding:12px 2px; color:#5f6c65; font-size:13px; line-height:1.35; text-decoration:none; }
.zk-guide-toc a:hover { color:var(--zk-primary); padding-left:5px; }
.zk-guide-content { min-width:0; }
.zk-guide-section { scroll-margin-top:110px; padding:0 0 56px; }
.zk-guide-section + .zk-guide-section { padding-top:8px; border-top:1px solid var(--zk-line); }
.zk-guide-section h2, .zk-faith-panel h2, .zk-guide-next h2 { margin:0 0 20px; font-family:var(--zk-serif); font-size:clamp(31px,4vw,43px); font-weight:500; line-height:1.12; letter-spacing:-.032em; }
.zk-guide-section p { margin:0 0 20px; color:#35453d; font-size:18px; line-height:1.9; }
.zk-faith-panel { display:grid; grid-template-columns:52px 1fr; gap:22px; margin:8px 0 64px; padding:30px; border-radius:28px; background:#22382e; color:#fff; }
.zk-faith-panel__mark { display:grid; place-items:center; width:48px; height:48px; border:1px solid rgba(255,255,255,.18); border-radius:50%; color:#e5c78f; font-size:20px; }
.zk-faith-panel .zk-kicker { color:#e5c78f; }
.zk-faith-panel h2 { color:#fff; font-size:34px; }
.zk-faith-panel p:last-child { margin:0; color:rgba(255,255,255,.76); line-height:1.75; }
.zk-guide-section--faq { padding-top:56px !important; }
.zk-source-intro { color:var(--zk-muted) !important; font-size:15px !important; }
.zk-source-list { display:grid; gap:10px; margin-top:24px; }
.zk-source-card { display:flex; justify-content:space-between; gap:24px; align-items:center; padding:18px 20px; border:1px solid var(--zk-line); border-radius:16px; background:#fff; text-decoration:none; }
.zk-source-card:hover { border-color:rgba(40,71,58,.3); box-shadow:0 10px 30px rgba(31,43,38,.05); }
.zk-source-card span:first-child { display:grid; gap:3px; }
.zk-source-card strong { font-size:14px; }
.zk-source-card small { color:#5f6c65; font-size:12px; line-height:1.5; }
.zk-guide-next { display:grid; grid-template-columns:1fr auto; gap:28px; align-items:center; margin-top:28px; padding:30px; border-radius:28px; background:#efece3; }
.zk-guide-next h2 { margin-bottom:8px; font-size:32px; }
.zk-guide-next p:not(.zk-kicker) { margin:0; color:var(--zk-muted); }
.zk-guide-page--clay .zk-eyebrow, .zk-guide-page--clay .zk-kicker { color:#9b6249; }
.zk-guide-page--blue .zk-eyebrow, .zk-guide-page--blue .zk-kicker { color:#4f6d82; }
.zk-guide-page--gold .zk-eyebrow, .zk-guide-page--gold .zk-kicker { color:#765c2e; }
.zk-guide-page--violet .zk-eyebrow, .zk-guide-page--violet .zk-kicker { color:#766587; }

@media (max-width: 980px) {
  .zk-guide-hero__grid { grid-template-columns:1fr; gap:28px; }
  .zk-guide-firststeps { max-width:720px; }
  .zk-guide-shell { grid-template-columns:1fr; gap:16px; }
  .zk-guide-toc__inner { position:static; padding:0 0 20px; }
  .zk-guide-toc ol { display:flex; gap:8px; flex-wrap:wrap; border:0; }
  .zk-guide-toc li { border:0; }
  .zk-guide-toc a { padding:8px 11px; border:1px solid var(--zk-line); border-radius:999px; background:#fff; }
}

@media (max-width: 680px) {
  .zk-breadcrumbs { padding-top:18px; }
  .zk-guide-hero { padding-top:38px; }
  .zk-guide-hero h1 { font-size:clamp(40px,12vw,56px); }
  .zk-guide-lead { font-size:17px; }
  .zk-guide-firststeps { padding:22px; border-radius:20px; }
  .zk-critical-note { grid-template-columns:1fr; gap:8px; padding:20px; }
  .zk-guide-section p { font-size:17px; line-height:1.82; }
  .zk-faith-panel { grid-template-columns:1fr; padding:24px; border-radius:22px; }
  .zk-faith-panel h2 { font-size:29px; }
  .zk-guide-next { grid-template-columns:1fr; padding:24px; }
  .zk-guide-next .zk-button { width:100%; }
}

.zk-section--resource-strip { padding:34px 0 10px; }
.zk-resource-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.zk-resource-card { display:flex; flex-direction:column; min-height:240px; padding:24px; border:1px solid var(--zk-line); border-radius:22px; background:#fff; text-decoration:none; transition:.2s ease; }
.zk-resource-card:hover { transform:translateY(-3px); border-color:rgba(40,71,58,.28); box-shadow:0 18px 45px rgba(31,43,38,.07); }
.zk-resource-card strong { margin-top:7px; font-family:var(--zk-serif); font-size:25px; font-weight:500; line-height:1.2; }
.zk-resource-card p { margin:12px 0 0; color:var(--zk-muted); font-size:14px; line-height:1.65; }
.zk-resource-card .zk-text-link { margin-top:auto; padding-top:20px; font-size:13px; }
@media (max-width:980px){ .zk-resource-grid{grid-template-columns:1fr;} .zk-resource-card{min-height:0;} }


/* v0.6.0 — nested Bible profile directories inside long-form guides */
.zk-child-directory{margin:clamp(2.5rem,6vw,5rem) 0;padding-top:clamp(2rem,4vw,3.5rem);border-top:1px solid var(--zk-border,#dde3df)}
.zk-child-directory .zk-section-heading{margin-bottom:1.5rem}
.zk-child-directory .zk-topic-card{min-height:100%;background:var(--wp--preset--color--surface,#fff)}
@media (max-width:760px){.zk-child-directory .zk-card-grid--2{grid-template-columns:1fr}}

/* v0.7 prayer library */
.zk-prayer-library{scroll-margin-top:110px}.zk-prayer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.5rem}.zk-prayer-card{position:relative;padding:clamp(1.35rem,2.2vw,2rem);border:1px solid rgba(91,68,125,.16);border-radius:24px;background:linear-gradient(145deg,rgba(250,247,253,.98),rgba(255,255,255,.98));box-shadow:0 18px 48px rgba(34,26,47,.07)}.zk-prayer-card__top{display:flex;align-items:center;gap:.55rem;color:#6f538f;margin-bottom:.75rem}.zk-prayer-card__top p{margin:0;font-size:.78rem;font-weight:750;letter-spacing:.06em;text-transform:uppercase}.zk-prayer-card h3{margin:.1rem 0 1rem;font-size:clamp(1.25rem,2vw,1.6rem)}.zk-prayer-card__text p{font-family:Georgia,'Times New Roman',serif;font-size:1.08rem;line-height:1.82;color:var(--zk-ink,#22302b);margin:.65rem 0}.zk-prayer-card__note{margin:1.15rem 0 0;padding-top:1rem;border-top:1px solid rgba(91,68,125,.12);font-size:.9rem;color:var(--zk-muted,#66736d)}@media(max-width:760px){.zk-prayer-grid{grid-template-columns:1fr}.zk-prayer-card{border-radius:20px}}

/* v0.10 — discovery, search and internal-linking system */
.zk-search-toggle { flex: 0 0 auto; width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid var(--zk-line); border-radius: 14px; background: rgba(255,255,255,.72); color: var(--zk-primary); cursor: pointer; font-size: 23px; line-height: 1; }
.zk-search-toggle:hover { background: #fff; border-color: rgba(40,71,58,.22); }
.zk-search-panel { border-top: 1px solid var(--zk-line); background: rgba(255,253,250,.98); box-shadow: 0 20px 46px rgba(25,39,32,.08); }
.zk-search-panel[hidden] { display: none; }
.zk-search-panel__inner { display: grid; grid-template-columns: .85fr 1.15fr; gap: 54px; align-items: center; padding-top: 26px; padding-bottom: 28px; }
.zk-search-panel__inner p { margin: 4px 0 0; color: var(--zk-muted); }
.zk-search-form { display: flex; align-items: center; gap: 10px; width: 100%; }
.zk-search-field { min-width: 0; width: 100%; height: 52px; padding: 0 17px; border: 1px solid var(--zk-line); border-radius: 15px; background: #fff; color: var(--zk-ink); font: inherit; }
.zk-search-field::placeholder { color: #8a948e; }
.zk-search-submit { height: 52px; padding: 0 22px; border: 0; border-radius: 15px; background: var(--zk-primary); color: #fff; font: inherit; font-weight: 700; cursor: pointer; }
.zk-search-submit:hover { background: var(--zk-primary-2); }
.zk-hero-search { max-width: 650px; margin-top: 26px; padding: 18px; border: 1px solid var(--zk-line); border-radius: 20px; background: rgba(255,255,255,.62); }
.zk-hero-search .zk-kicker { margin: 0 0 10px; }
.zk-hero-search small { display: block; margin-top: 9px; color: var(--zk-muted); font-size: 12px; line-height: 1.45; }

.zk-home-about { background: #fffdfa; }
.zk-home-about__grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 86px; align-items: start; }
.zk-home-about h2 { margin: 0; font-family: var(--zk-serif); font-size: clamp(38px,4.8vw,62px); font-weight: 500; line-height: 1.08; letter-spacing: -.04em; }
.zk-home-about__copy { max-width: 760px; font-size: 18px; line-height: 1.8; color: #4d5b54; }
.zk-home-about__copy p:first-child { margin-top: 0; }
.zk-editorial-system .zk-section-heading p { color: rgba(255,255,255,.68); }
.zk-method-card { padding: 30px; border: 1px solid rgba(255,255,255,.14); border-radius: var(--zk-radius-lg); background: rgba(255,255,255,.05); }
.zk-method-card > span { display: inline-block; margin-bottom: 42px; color: #d8bd87; font-family: var(--zk-serif); }
.zk-method-card h3 { margin: 0 0 12px; color: #fff; font-family: var(--zk-serif); font-size: 28px; font-weight: 500; }
.zk-method-card p { margin: 0; color: rgba(255,255,255,.68); }

.zk-topic-preview__grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); border-top: 1px solid var(--zk-line); border-left: 1px solid var(--zk-line); }
.zk-topic-preview__group { padding: 28px; border-right: 1px solid var(--zk-line); border-bottom: 1px solid var(--zk-line); background: #fff; }
.zk-topic-preview__group h3 { margin: 0 0 18px; font-family: var(--zk-serif); font-size: 25px; font-weight: 500; }
.zk-topic-preview__group a { display: flex; justify-content: space-between; gap: 15px; padding: 10px 0; border-top: 1px solid rgba(31,43,38,.08); color: #526058; text-decoration: none; font-size: 14px; }
.zk-topic-preview__group a:hover { color: var(--zk-primary); }

.zk-topic-map-hero { padding: 82px 0 48px; }
.zk-topic-map-hero__grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 78px; align-items: end; }
.zk-topic-map-hero h1 { margin: 8px 0 20px; font-size: clamp(54px,7vw,88px); }
.zk-topic-map-search { padding: 28px; border: 1px solid var(--zk-line); border-radius: var(--zk-radius-lg); background: #f4f1e8; }
.zk-topic-map-search h2 { margin: 5px 0 8px; font-family: var(--zk-serif); font-size: 30px; font-weight: 500; }
.zk-topic-map-search p:not(.zk-kicker) { color: var(--zk-muted); }
.zk-map-nav { display: flex; gap: 8px; flex-wrap: wrap; padding: 18px; border: 1px solid var(--zk-line); border-radius: 18px; background: #fff; }
.zk-map-nav a { padding: 9px 13px; border-radius: 999px; background: #f4f4ef; color: var(--zk-primary); text-decoration: none; font-size: 13px; font-weight: 700; }
.zk-map-group { scroll-margin-top: 100px; }
.zk-map-group--sage { background: #f5f7f2; }
.zk-map-group--clay { background: #fbf5f1; }
.zk-map-group--gold { background: #fcf8ed; }
.zk-map-group--blue { background: #f3f7f9; }
.zk-map-group--violet { background: #f8f5fa; }
.zk-map-group__header { display: grid; grid-template-columns: .72fr 1.28fr; gap: 70px; align-items: end; margin-bottom: 34px; }
.zk-map-group__header h2 { margin: 5px 0 0; font-family: var(--zk-serif); font-size: clamp(40px,5vw,58px); font-weight: 500; }
.zk-map-group__header h2 a { color: inherit; text-decoration: none; }
.zk-map-group__header > p { max-width: 760px; margin: 0; color: var(--zk-muted); font-size: 16px; line-height: 1.7; }
.zk-map-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
.zk-map-item { display: flex; justify-content: space-between; gap: 22px; padding: 19px 20px; border: 1px solid var(--zk-line); border-radius: 16px; background: rgba(255,255,255,.82); color: inherit; text-decoration: none; }
.zk-map-item:hover { border-color: rgba(40,71,58,.24); background: #fff; transform: translateY(-1px); }
.zk-map-item strong,.zk-map-item small { display: block; }
.zk-map-item strong { margin-bottom: 5px; font-family: var(--zk-serif); font-size: 20px; font-weight: 500; }
.zk-map-item small { color: var(--zk-muted); line-height: 1.45; }
.zk-map-item__meta { flex: 0 0 auto; display: flex; align-items: center; gap: 8px; color: #5f6c65; font-size: 11px; text-transform: uppercase; letter-spacing: .08em; }
.zk-map-item__meta b { color: var(--zk-primary); font-size: 18px; }

.zk-related-guides { margin-top: 70px; padding-top: 42px; border-top: 1px solid var(--zk-line); }
.zk-related-guides .zk-section-heading { margin-bottom: 24px; }
.zk-article-breadcrumbs { padding-top: 28px; }
.zk-aside-card--hub { margin-bottom: 16px; background: #edf2eb; }
.zk-aside-card--hub h2 { margin: 7px 0 10px; font-family: var(--zk-serif); font-size: 28px; font-weight: 500; }
.zk-article-related { margin-top: 62px; padding-top: 46px; border-top: 1px solid var(--zk-line); }
.zk-article-related .zk-section-heading { margin-bottom: 24px; }

.zk-search-results__hero { display: grid; grid-template-columns: 1.1fr .9fr; gap: 60px; align-items: end; }
.zk-search-results__hero .zk-search-form { margin-bottom: 12px; }
.zk-search-list { display: grid; gap: 12px; max-width: 900px; margin-inline: auto; }
.zk-search-result { padding: 28px; border: 1px solid var(--zk-line); border-radius: 20px; background: #fff; }
.zk-search-result h2 { margin: 7px 0 10px; font-family: var(--zk-serif); font-size: 31px; font-weight: 500; }
.zk-search-result h2 a { color: inherit; text-decoration: none; }
.zk-search-result p { color: var(--zk-muted); }
.zk-empty-state--search { max-width: 760px; margin-inline: auto; padding: 50px; text-align: center; }
.zk-empty-state--search .zk-button-row { justify-content: center; }

@media (max-width: 1100px) {
  .zk-topic-preview__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 980px) {
  .zk-search-toggle { margin-left: auto; }
  .zk-search-panel__inner,.zk-home-about__grid,.zk-topic-map-hero__grid,.zk-map-group__header,.zk-search-results__hero { grid-template-columns: 1fr; gap: 28px; }
  .zk-map-list { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
  .zk-search-toggle { width: 40px; height: 40px; }
  .zk-search-panel__inner { padding-top: 20px; padding-bottom: 20px; }
  .zk-search-form { align-items: stretch; flex-direction: column; }
  .zk-search-field,.zk-search-submit { width: 100%; }
  .zk-hero-search { padding: 14px; }
  .zk-home-about__copy { font-size: 17px; }
  .zk-topic-preview__grid { grid-template-columns: 1fr; }
  .zk-topic-map-hero { padding-top: 48px; }
  .zk-map-item { align-items: flex-start; flex-direction: column; }
  .zk-map-item__meta { width: 100%; justify-content: space-between; }
  .zk-empty-state--search { padding: 34px 22px; }
}


/* v0.12 — category landing pages, policy, hardening */
.zk-category-hero { padding: clamp(54px, 8vw, 104px) 0 54px; background: linear-gradient(150deg, var(--zk-warm-white), rgba(201,167,107,.10)); border-bottom: 1px solid var(--zk-line); }
.zk-category-hero__grid { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(220px,.75fr); gap: clamp(36px,7vw,92px); align-items: center; }
.zk-category-hero h1 { max-width: 820px; margin: 10px 0 18px; font-family: var(--zk-serif); font-size: clamp(44px,7vw,82px); line-height: .98; letter-spacing: -.045em; }
.zk-category-facts { display:flex; flex-wrap:wrap; gap:12px 24px; margin:26px 0 0; color:var(--zk-muted); font-size:14px; }
.zk-category-facts strong { color:var(--zk-ink); }
.zk-category-symbol { position:relative; min-height:320px; border-radius:36px; overflow:hidden; background:radial-gradient(circle at 58% 34%, rgba(201,167,107,.42), transparent 0 20%, transparent 21%), linear-gradient(145deg, #dfe9df, #f4ead9); box-shadow:var(--zk-shadow); }
.zk-category-symbol span { position:absolute; left:14%; right:14%; height:34%; border:1px solid rgba(40,71,58,.18); border-radius:50%; transform:rotate(-12deg); }
.zk-category-symbol span:nth-child(1){bottom:7%;background:rgba(40,71,58,.16)} .zk-category-symbol span:nth-child(2){bottom:26%;left:24%;right:4%;background:rgba(255,255,255,.36)} .zk-category-symbol span:nth-child(3){bottom:48%;left:43%;right:17%;background:rgba(201,167,107,.18)}
.zk-search-panel__inner { position:relative; padding-right:56px; }
.zk-search-close { position:absolute; right:0; top:26px; display:grid; place-items:center; width:42px; height:42px; border:1px solid var(--zk-line); border-radius:999px; background:var(--zk-surface); color:var(--zk-ink); font-size:25px; cursor:pointer; }
.zk-search-close:hover { border-color:var(--zk-primary); }
.zk-policy-hero { padding:clamp(58px,8vw,104px) 0 48px; background:var(--zk-warm-white); border-bottom:1px solid var(--zk-line); }
.zk-policy-hero__inner { max-width:980px; }
.zk-policy-hero h1 { margin:14px 0 22px; max-width:900px; font-family:var(--zk-serif); font-size:clamp(42px,6vw,72px); line-height:1.02; letter-spacing:-.04em; }
.zk-policy-updated { margin-top:26px; color:var(--zk-muted); font-size:13px; }
.zk-policy-layout { display:grid; grid-template-columns:260px minmax(0,780px); justify-content:center; gap:clamp(42px,7vw,90px); align-items:start; }
.zk-policy-nav { position:sticky; top:116px; display:grid; gap:7px; padding:22px; border:1px solid var(--zk-line); border-radius:22px; background:var(--zk-surface); }
.zk-policy-nav strong { margin-bottom:6px; }
.zk-policy-nav a { padding:8px 10px; border-radius:10px; color:var(--zk-muted); text-decoration:none; font-size:14px; }
.zk-policy-nav a:hover, .zk-policy-nav a:focus-visible { background:var(--zk-surface-2); color:var(--zk-primary); }
.zk-policy-content > section { scroll-margin-top:120px; padding-bottom:34px; border-bottom:1px solid var(--zk-line); margin-bottom:38px; }
.zk-error-search { max-width:720px; margin:28px auto 0; }
.zk-error-links { margin-top:36px; text-align:left; }
.zk-error-help { max-width:760px; margin:32px auto 0; color:var(--zk-muted); font-size:14px; }
@media (max-width: 900px) { .zk-category-hero__grid { grid-template-columns:1fr; } .zk-category-symbol { min-height:220px; } .zk-policy-layout { grid-template-columns:1fr; } .zk-policy-nav { position:static; } }
@media (max-width: 640px) { .zk-category-hero { padding-top:40px; } .zk-category-symbol { min-height:180px; border-radius:24px; } .zk-search-close { width:38px; height:38px; } }

/* v0.15 — final navigation/footer and pre-launch support */
.zk-footer-grid--wide { grid-template-columns: minmax(260px,1.35fr) repeat(3,minmax(150px,.75fr)); gap: clamp(34px,5vw,72px); align-items:start; }
.zk-footer-about { max-width:460px; }
.zk-footer-grid--wide .zk-footer-menu { display:grid; gap:10px; }
.zk-footer-grid--wide .zk-footer-menu li { margin:0; }
.zk-footer-grid--wide .zk-footer-menu a { display:inline-flex; padding:2px 0; }
.zk-footer-grid--wide .zk-footer-menu a:hover { color:var(--zk-primary); }
@media (max-width: 1050px) { .zk-footer-grid--wide { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 640px) { .zk-footer-grid--wide { grid-template-columns:1fr; gap:30px; } }

/* v0.16 — visual polish, reading comfort and accessibility */
:root {
  --zk-focus-dark: #6f4b12;
  --zk-focus-light: #ffffff;
  --zk-content-measure: 72ch;
  --zk-tap: 44px;
}

html {
  scroll-padding-top: 108px;
  text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

::selection { background: rgba(201,167,107,.38); color: var(--zk-ink); }

/* Two-colour ring stays visible on both light and dark surfaces. */
:where(a, button, summary, input, textarea, select):focus-visible {
  outline: 3px solid var(--zk-focus-light);
  outline-offset: 2px;
  box-shadow: 0 0 0 6px var(--zk-focus-dark);
}

:where(h1,h2,h3,h4,h5,h6,[id]) { scroll-margin-top: 112px; }

.zk-icon {
  width: 22px;
  height: 22px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.zk-button,
.zk-search-toggle,
.zk-nav-toggle,
.zk-search-close,
.zk-search-submit,
.zk-nav-list a,
.zk-hub-jump a,
.zk-policy-nav a,
.zk-map-nav a {
  min-height: var(--zk-tap);
}

.zk-button:active,
.zk-feature-card:active,
.zk-topic-card:active,
.zk-post-card:active { transform: translateY(0); }

.zk-feature-card:focus-visible,
.zk-topic-card:focus-visible,
.zk-post-card:focus-within,
.zk-map-item:focus-within,
.zk-source-card:focus-visible {
  border-color: rgba(40,71,58,.34);
  box-shadow: 0 14px 42px rgba(31,43,38,.10);
}

/* Desktop submenu support without a JS dependency. */
.zk-nav-list .menu-item-has-children { position: relative; }
.zk-nav-list .sub-menu {
  position: absolute;
  left: 0;
  top: calc(100% + 8px);
  z-index: 20;
  display: grid;
  min-width: 240px;
  margin: 0;
  padding: 8px;
  list-style: none;
  border: 1px solid var(--zk-line);
  border-radius: 16px;
  background: var(--zk-surface);
  box-shadow: var(--zk-shadow);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-5px);
  transition: opacity .18s ease, transform .18s ease, visibility .18s ease;
}
.zk-nav-list .menu-item-has-children:hover > .sub-menu,
.zk-nav-list .menu-item-has-children:focus-within > .sub-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.zk-nav-list .sub-menu a { width: 100%; }

/* Long-form reading system. */
.zk-prose,
.zk-guide-content {
  text-wrap: pretty;
}
.zk-prose { max-width: var(--zk-content-measure); }
.zk-prose > p,
.zk-guide-section > p,
.zk-policy-content > section > p { max-width: 70ch; }
.zk-prose p,
.zk-guide-content p { hanging-punctuation: first last; }
.zk-prose h2,
.zk-prose h3,
.zk-guide-section h2,
.zk-guide-section h3 { text-wrap: balance; }
.zk-prose :where(ul,ol),
.zk-guide-content :where(ul,ol) { padding-left: 1.35em; }
.zk-prose li + li,
.zk-guide-content li + li { margin-top: .42em; }
.zk-prose a:not(.zk-button),
.zk-guide-content p a,
.zk-policy-content p a {
  text-decoration-thickness: .09em;
  text-underline-offset: .18em;
  text-decoration-color: rgba(66,102,83,.45);
}
.zk-prose a:not(.zk-button):hover,
.zk-guide-content p a:hover,
.zk-policy-content p a:hover { text-decoration-color: currentColor; }

.zk-prose :where(pre,code,kbd,samp) { font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.zk-prose pre {
  overflow-x: auto;
  padding: 20px;
  border: 1px solid var(--zk-line);
  border-radius: 16px;
  background: #17231e;
  color: #f8f5ef;
  font-size: .88em;
  line-height: 1.6;
  -webkit-overflow-scrolling: touch;
}
.zk-prose :not(pre) > code {
  padding: .14em .38em;
  border-radius: 6px;
  background: rgba(40,71,58,.08);
  font-size: .9em;
}
.zk-prose hr { margin: 3em 0; border: 0; border-top: 1px solid var(--zk-line); }
.zk-prose figure { margin: 2.2em 0; }
.zk-prose figcaption,
.wp-block-image figcaption { margin-top: 9px; color: var(--zk-muted); font-size: 13px; text-align: center; }
.zk-prose img { border-radius: 18px; }
.zk-prose .wp-block-table { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.zk-prose table { width: 100%; border-collapse: collapse; font-size: .94em; }
.zk-prose th,
.zk-prose td { padding: 12px 14px; border: 1px solid var(--zk-line); text-align: left; vertical-align: top; }
.zk-prose th { background: var(--zk-surface-2); }
.zk-prose .wp-block-button__link { border-radius: 14px; background: var(--zk-primary); color: #fff; font-weight: 750; text-decoration: none; }

/* Article helpers remain visible on tablet/mobile instead of disappearing. */
.zk-article-aside { display: grid; align-content: start; gap: 16px; }
.zk-aside-card { border: 1px solid var(--zk-line); border-radius: 20px; background: rgba(255,255,255,.78); }

/* Reading progress: injected only on posts and evergreen guides. */
.zk-reading-progress {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1000;
  height: 3px;
  pointer-events: none;
  background: transparent;
}
.zk-reading-progress__bar {
  width: 100%;
  height: 100%;
  transform: scaleX(0);
  transform-origin: left center;
  background: linear-gradient(90deg, var(--zk-gold), var(--zk-primary-2));
  will-change: transform;
}

/* Search / controls polish. */
.zk-search-field,
.zk-prose :where(input:not([type="checkbox"]):not([type="radio"]),textarea,select) {
  min-height: 48px;
  border: 1px solid rgba(31,43,38,.20);
  background: #fff;
  color: var(--zk-ink);
}
.zk-search-field:hover,
.zk-prose :where(input,textarea,select):hover { border-color: rgba(40,71,58,.36); }
.zk-search-field:focus-visible,
.zk-prose :where(input,textarea,select):focus-visible { border-color: var(--zk-primary); }
textarea { min-height: 140px; resize: vertical; }

/* Improve muted micro-copy contrast on light surfaces. */
.zk-post-meta,
.zk-situation-list a small,
.zk-principles article > strong { color: #66716a; }

/* Keep content visible when browser zoom / long words are used. */
.zk-prose,
.zk-guide-content,
.zk-post-card__body,
.zk-feature-card,
.zk-topic-card { overflow-wrap: anywhere; }

@media (max-width: 980px) {
  html { scroll-padding-top: 92px; }
  :where(h1,h2,h3,h4,h5,h6,[id]) { scroll-margin-top: 96px; }

  .zk-primary-nav {
    inset: 78px 12px 12px;
    max-height: calc(100dvh - 94px);
    overscroll-behavior: contain;
  }
  .zk-nav-list .sub-menu {
    position: static;
    min-width: 0;
    margin: 2px 0 5px 14px;
    padding: 2px 0 2px 10px;
    border: 0;
    border-left: 1px solid var(--zk-line);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    transform: none;
  }
  .zk-nav-list .sub-menu a { padding-block: 11px; font-size: 13px; }

  .zk-article-aside {
    display: grid;
    grid-template-columns: repeat(2,minmax(0,1fr));
    margin-top: 10px;
  }
}

@media (max-width: 680px) {
  html { scroll-padding-top: 82px; }
  :where(h1,h2,h3,h4,h5,h6,[id]) { scroll-margin-top: 86px; }

  .zk-primary-nav { inset: 68px 8px 8px; max-height: calc(100dvh - 80px); border-radius: 16px; }
  .zk-nav-list a { min-height: 48px; display: flex; align-items: center; }
  .zk-search-field { font-size: 16px; } /* avoids unintended iOS form zoom */

  .zk-hero h1,
  .zk-hub-hero h1,
  .zk-article-hero h1,
  .zk-category-hero h1 { overflow-wrap: normal; hyphens: auto; }
  .zk-hero-lead { line-height: 1.65; }
  .zk-prose { font-size: 17px; line-height: 1.78; }
  .zk-prose h2 { font-size: clamp(29px,9vw,34px); }
  .zk-prose h3 { font-size: clamp(23px,7vw,28px); }
  .zk-prose blockquote { padding: 18px 18px; }

  .zk-article-aside { grid-template-columns: 1fr; }
  .zk-article-cover { border-radius: 20px; }
  .zk-guide-meta { gap: 6px 10px; }
  .zk-guide-meta span[aria-hidden="true"] { display: none; }

  .zk-button-row > .zk-button { flex: 1 1 100%; }
  .zk-footer-bottom { gap: 8px; }
}

@media (prefers-contrast: more) {
  :root { --zk-line: rgba(23,35,30,.34); }
  .zk-feature-card,.zk-topic-card,.zk-post-card,.zk-aside-card,.zk-source-card { border-width: 2px; }
}

@media (forced-colors: active) {
  :where(a, button, summary, input, textarea, select):focus-visible {
    outline: 3px solid Highlight;
    box-shadow: none;
  }
  .zk-reading-progress__bar { background: Highlight; }
  .zk-button { border: 1px solid ButtonText; }
}

@media (prefers-reduced-motion: reduce) {
  .zk-reading-progress__bar { will-change: auto; }
  .zk-button:hover,.zk-feature-card:hover,.zk-topic-card:hover { transform: none; }
}

@media print {
  .zk-site-header,
  .zk-site-footer,
  .zk-reading-progress,
  .zk-guide-toc,
  .zk-article-aside,
  .zk-button-row,
  .zk-guide-next,
  .zk-article-related { display: none !important; }
  body { background: #fff !important; color: #000 !important; font-size: 11pt; line-height: 1.55; }
  .zk-container,.zk-article-layout,.zk-guide-shell,.zk-prose,.zk-guide-content { width: 100% !important; max-width: none !important; display: block !important; padding: 0 !important; margin: 0 !important; }
  .zk-article-hero,.zk-guide-hero,.zk-section--guide { padding: 0 !important; }
  a { color: #000 !important; text-decoration: underline; }
  .zk-prose a[href^="http"]::after,.zk-guide-content a[href^="http"]::after { content: " (" attr(href) ")"; font-size: 8pt; word-break: break-all; }
  h1,h2,h3 { break-after: avoid; }
  p,li,blockquote { orphans: 3; widows: 3; }
}


/* v0.43.0 accessibility: keep small helper text above WCAG AA contrast on light surfaces. */
.zk-breadcrumbs,
.zk-guide-meta,
.zk-source-card small,
.zk-map-item__meta,
.zk-post-meta { color:#5f6c65; }
.zk-guide-page--blue .zk-eyebrow,
.zk-guide-page--blue .zk-kicker { color:#4f6d82; }
.zk-guide-page--gold .zk-eyebrow,
.zk-guide-page--gold .zk-kicker { color:#765c2e; }


/* v0.44.0 — robust mobile navigation sheet + unobtrusive contextual latest articles. */
@media (max-width: 980px) {
  body:not(.zk-nav-open) .zk-primary-nav {
    display: none !important;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
  }
  /* The header uses backdrop-filter, which creates a containing block for fixed descendants in WebKit/Chromium.
     Keep the mobile sheet absolute to the sticky header instead of fixed, otherwise iOS can collapse it to the header height. */
  .zk-primary-nav,
  .zk-primary-nav.is-open {
    position: absolute !important;
    left: 0 !important;
    right: 0 !important;
    top: 100% !important;
    bottom: auto !important;
    width: 100% !important;
    max-width: none !important;
    max-height: calc(100dvh - 78px) !important;
    margin: 0 !important;
    padding: 18px 16px calc(24px + env(safe-area-inset-bottom)) !important;
    border: 0 !important;
    border-top: 1px solid var(--zk-line) !important;
    border-radius: 0 !important;
    background: #fbf8f2 !important;
    box-shadow: 0 22px 42px rgba(31,43,38,.14) !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    z-index: 9998 !important;
  }
  .zk-primary-nav.is-open {
    display: block !important;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
  }
  .admin-bar .zk-primary-nav,
  .admin-bar .zk-primary-nav.is-open { max-height: calc(100dvh - 78px - 32px) !important; }
  .zk-nav-list {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: min(100%, 680px) !important;
    margin: 0 auto !important;
  }
  .zk-nav-list > li { width: 100%; }
  .zk-nav-list > li > a {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    min-height: 54px;
    width: 100%;
    padding: 13px 16px !important;
    border: 1px solid rgba(40,71,58,.12);
    border-radius: 16px;
    background: #fff;
    color: var(--zk-ink);
    font-size: 16px;
    font-weight: 720;
  }
  .zk-nav-list > li > a::after { content: '→'; color: #66716a; font-weight: 600; }
  .zk-nav-list .current-menu-item > a {
    border-color: rgba(40,71,58,.28);
    background: rgba(40,71,58,.08);
    color: var(--zk-primary);
  }
  .zk-nav-toggle[aria-expanded="true"] span:not(.sr-only):nth-of-type(2) { transform: translateY(6px) rotate(45deg); }
  .zk-nav-toggle[aria-expanded="true"] span:not(.sr-only):nth-of-type(3) { opacity: 0; }
  .zk-nav-toggle[aria-expanded="true"] span:not(.sr-only):nth-of-type(4) { transform: translateY(-6px) rotate(-45deg); }
  .zk-nav-toggle span:not(.sr-only) { transform-origin: center; transition: transform .18s ease, opacity .18s ease; }
}
@media (max-width: 782px) {
  .admin-bar .zk-primary-nav,
  .admin-bar .zk-primary-nav.is-open { max-height: calc(100dvh - 78px - 46px) !important; }
}
@media (max-width: 680px) {
  .zk-primary-nav,
  .zk-primary-nav.is-open { max-height: calc(100dvh - 68px) !important; padding-inline: 12px !important; }
  .admin-bar .zk-primary-nav,
  .admin-bar .zk-primary-nav.is-open { max-height: calc(100dvh - 68px - 46px) !important; }
}

.zk-latest-drawer-section {
  padding: 18px 0 22px;
  border-top: 1px solid var(--zk-line);
  background: #f6f3ec;
}
.zk-latest-drawer {
  overflow: clip;
  border: 1px solid rgba(40,71,58,.14);
  border-radius: 18px;
  background: rgba(255,255,255,.76);
  box-shadow: 0 8px 26px rgba(31,43,38,.045);
}
.zk-latest-drawer__summary {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto 20px;
  align-items: center;
  gap: 14px;
  min-height: 74px;
  padding: 13px 16px;
  cursor: pointer;
  list-style: none;
  user-select: none;
}
.zk-latest-drawer__summary::-webkit-details-marker { display: none; }
.zk-latest-drawer__summary::marker { content: ''; }
.zk-latest-drawer__summary:hover { background: rgba(40,71,58,.035); }
.zk-latest-drawer__summary:focus-visible { outline: 3px solid rgba(40,71,58,.28); outline-offset: -3px; }
.zk-latest-drawer__title-wrap { min-width: 0; }
.zk-latest-drawer__title-wrap .zk-eyebrow { display:block; margin:0 0 2px; font-size:10px; }
.zk-latest-drawer__title-wrap strong {
  display: block;
  color: var(--zk-ink);
  font-family: var(--zk-serif);
  font-size: clamp(20px,2.5vw,26px);
  font-weight: 550;
  line-height: 1.15;
}
.zk-latest-drawer__meta {
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(40,71,58,.075);
  color: #4f5f57;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
}
.zk-latest-drawer__chevron {
  width: 10px;
  height: 10px;
  border-right: 2px solid var(--zk-primary);
  border-bottom: 2px solid var(--zk-primary);
  transform: rotate(45deg) translate(-2px,-2px);
  transition: transform .18s ease;
}
.zk-latest-drawer[open] .zk-latest-drawer__chevron { transform: rotate(225deg) translate(-1px,-1px); }
.zk-latest-drawer__content { padding: 0 14px 14px; }
.zk-latest-drawer__grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 10px;
  padding-top: 12px;
  border-top: 1px solid rgba(40,71,58,.10);
}
.zk-latest-mini {
  display: grid;
  grid-template-columns: 74px minmax(0,1fr);
  align-items: center;
  gap: 11px;
  min-width: 0;
  padding: 8px;
  border: 1px solid rgba(40,71,58,.11);
  border-radius: 14px;
  background: #fff;
}
.zk-latest-mini__media { display:block; width:74px; aspect-ratio:1.08; overflow:hidden; border-radius:10px; background:#dce4dc; }
.zk-latest-mini__media img,.zk-latest-mini__media .zk-post-card__placeholder { display:block; width:100%; height:100%; object-fit:cover; }
.zk-latest-mini__body { min-width:0; }
.zk-latest-mini h3 { margin:0; font-family:var(--zk-serif); font-size:15px; font-weight:600; line-height:1.25; }
.zk-latest-mini h3 a { display:-webkit-box; overflow:hidden; color:var(--zk-ink); text-decoration:none; -webkit-box-orient:vertical; -webkit-line-clamp:3; }
.zk-latest-mini h3 a:hover { color:var(--zk-primary); }
.zk-latest-mini time { display:block; margin-top:5px; color:#5f6c65; font-size:11px; }
.zk-latest-drawer__footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:12px 3px 0;
  color:#5f6c65;
  font-size:12px;
}
@media (max-width: 980px) { .zk-latest-drawer__grid { grid-template-columns:1fr; } }
@media (max-width: 680px) {
  .zk-latest-drawer-section { padding:12px 0 16px; }
  .zk-latest-drawer { border-radius:16px; }
  .zk-latest-drawer__summary { grid-template-columns:minmax(0,1fr) auto 18px; min-height:66px; gap:9px; padding:11px 12px; }
  .zk-latest-drawer__meta { padding:4px 7px; font-size:11px; }
  .zk-latest-drawer__content { padding:0 9px 10px; }
  .zk-latest-drawer__grid { gap:7px; padding-top:9px; }
  .zk-latest-mini { grid-template-columns:66px minmax(0,1fr); gap:9px; padding:7px; }
  .zk-latest-mini__media { width:66px; border-radius:9px; }
  .zk-latest-mini h3 { font-size:14px; }
  .zk-latest-drawer__footer { align-items:flex-start; flex-direction:column; gap:5px; padding-top:9px; }
}
@media (prefers-reduced-motion: reduce) { .zk-latest-drawer__chevron { transition:none; } }

/* v0.45.0 — remaining AA contrast fixes for small helper text. */
.zk-hub-card__number,
.zk-footer-bottom { color:#5f6c65; }
.zk-search-field::placeholder { color:#5f6c65; opacity:1; }

/* v0.47 – Biblijos skaityklės CTA */
.zk-bible-reader-promo{padding:12px 0 8px}.zk-bible-reader-promo__card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:clamp(22px,4vw,38px);border:1px solid #cfdce4;border-radius:24px;background:linear-gradient(135deg,#eef5f8 0%,#fbf8f2 62%,#f0e7d7 100%);box-shadow:0 16px 42px rgba(31,43,38,.08)}.zk-bible-reader-promo__card h2{margin:.15em 0 .45em;font-size:clamp(1.6rem,3.5vw,2.45rem)}.zk-bible-reader-promo__card p{max-width:760px;margin:.35em 0}.zk-bible-reader-promo__license{font-size:.86rem;color:#4d6257}.zk-bible-reader-promo .zk-button{white-space:nowrap}@media(max-width:720px){.zk-bible-reader-promo__card{grid-template-columns:1fr}.zk-bible-reader-promo .zk-button{width:100%;justify-content:center;text-align:center}}
