/* =====================================================================
   Keystone Article System — v1.0
   One stylesheet for every blog post. Post content contains NO inline CSS;
   everything is styled from semantic HTML + ks-* component classes.
   Scope: .ks-article (added by the_content filter on single posts).
   ===================================================================== */

:root{
  --ks-navy:#002848; --ks-navy-deep:#081a2b; --ks-accent:#009CD8; --ks-light:#8FD3F4;
  --ks-link:#0079A8; --ks-border:#e7eef4; --ks-tint:#f6f9fc; --ks-text:#2b3745; --ks-muted:#5a6675;
  --ks-disclaimer:#6b7785;
  --ks-font:"Open Sans",sans-serif;
  --ks-body:15.5px;           /* was 17px — Michelle: 1.5 smaller */
  --ks-line:1.75;
  --ks-gap:22px;              /* space between paragraphs */
  --ks-section:48px;          /* space above an H2 (was 96–118px, halved) */
  --ks-block:28px;            /* space around tables, boxes, CTAs */
  --ks-radius:12px;
  --ks-width:880px;           /* article column (was 780px) */
}

/* ---------- Template layout (Elementor single-post template 2869) ---------- */
body.single-post .elementor-element-4a6b06b,
body.single-post .elementor-element-310b4f9{ --content-width:var(--ks-width) !important; }
body.single-post .elementor-element-c410147,
body.single-post .elementor-element-60b8bf2,
body.single-post .elementor-element-b0511cb,
body.single-post .elementor-element-955fd88,
body.single-post .ks-postnav-top{ max-width:var(--ks-width) !important; }
body.single-post .elementor-element-b794603{ --content-width:var(--ks-width) !important; }
/* Centered post title */
body.single-post .elementor-element-6dff2cc .elementor-element-0955ef6,
body.single-post .elementor-element-6dff2cc .elementor-element-0955ef6 .elementor-heading-title{ text-align:center !important; }
/* The article wrapper must be a real box (old template used display:contents on inner divs) */
body.single-post .ks-article{ display:block; }

/* ---------- Base ---------- */
body .ks-article{ font-family:var(--ks-font); font-size:var(--ks-body); line-height:var(--ks-line); color:var(--ks-text); font-weight:400; }
body .ks-article > :first-child{ margin-top:0 !important; }
body .ks-article p{ margin:0 0 var(--ks-gap); font-size:var(--ks-body); line-height:var(--ks-line); }
body .ks-article p:empty{ display:none; }
body .ks-article strong, body .ks-article b{ font-weight:600; color:var(--ks-navy); }
body .ks-article a{ color:var(--ks-link); text-decoration:underline; text-underline-offset:2px; }
body .ks-article p > a:not(.ks-btn), body .ks-article li > a{ margin:0 !important; display:inline !important; width:auto !important; }
body .ks-article a:hover{ color:var(--ks-accent); }
/* Lede: first paragraph is NOT bold */
body .ks-article > p:first-of-type, body .ks-article .ks-lede{ font-weight:400; color:var(--ks-text); font-size:calc(var(--ks-body) + 1.5px); }
body .ks-article > p:first-of-type strong:only-child, body .ks-article .ks-lede strong{ font-weight:400; color:inherit; }

/* ---------- Headings (no divider line, no extra blank line on top) ---------- */
body .ks-article h2, body .ks-article h3, body .ks-article h4{
  font-family:var(--ks-font); color:var(--ks-navy); font-weight:600; border:0 !important; padding:0 !important; scroll-margin-top:120px; }
body .ks-article h2{ font-size:26px; line-height:1.3; margin:var(--ks-section) 0 16px !important; }
body .ks-article h3{ font-size:20px; line-height:1.35; margin:32px 0 12px !important; }
body .ks-article h4{ font-size:17px; line-height:1.4; margin:24px 0 10px !important; }
body .ks-article h2 strong, body .ks-article h3 strong{ font-weight:inherit; color:inherit; }
body .ks-article .ks-sechead{ display:flex; align-items:baseline; gap:14px; margin:var(--ks-section) 0 16px; }
body .ks-article .ks-sechead h2{ margin:0 !important; }
body .ks-article .ks-num{ font-size:26px; line-height:1.3; font-weight:600; color:var(--ks-accent); flex:0 0 auto; }

/* ---------- Lists (light-blue bullets and numbers) ---------- */
body .ks-article ul, body .ks-article ol{ margin:0 0 var(--ks-gap) !important; padding-left:22px; list-style-position:outside !important; }
body .ks-article ul{ list-style-type:disc; }
body .ks-article ol{ list-style-type:decimal; }
body .ks-article li{ margin:0 0 8px !important; padding-left:4px; font-size:var(--ks-body); line-height:1.65; }
body .ks-article li::marker{ color:var(--ks-accent); font-weight:600; }
body .ks-article li > ul, body .ks-article li > ol{ margin:8px 0 0 !important; }

/* ---------- Tables ---------- */
body .ks-article .ks-table{ margin:var(--ks-block) 0 !important; border:1px solid var(--ks-border); border-radius:var(--ks-radius); overflow:hidden; }
body .ks-article table{ width:100% !important; min-width:0 !important; margin:0 !important; border-collapse:separate; border-spacing:0; table-layout:auto; background:#fff !important; font-size:14px; }
body .ks-article th, body .ks-article thead td{ background:var(--ks-navy) !important; color:#fff !important; font-weight:500; font-size:12px; text-transform:uppercase; letter-spacing:.04em; text-align:left; padding:12px 14px; border:0 !important; vertical-align:bottom; }
body .ks-article th *{ color:#fff !important; }
body .ks-article td{ background:#fff !important; color:var(--ks-text) !important; padding:12px 14px; border:0 !important; border-bottom:1px solid var(--ks-border) !important; vertical-align:top; line-height:1.55; font-size:14px; overflow-wrap:anywhere; }
body .ks-article tbody tr:nth-child(even) td{ background:#f7fafc !important; }
body .ks-article tbody tr:last-child td{ border-bottom:0 !important; }
body .ks-article td:first-child{ color:var(--ks-navy) !important; font-weight:500; }
body .ks-article td p, body .ks-article th p{ margin:0 0 6px; font-size:inherit; line-height:inherit; }
body .ks-article td p:last-child{ margin:0; }
/* Table sources / footnotes: directly under the table, small, no gap (overrides the table's bottom margin) */
body .ks-article .ks-table:has(+ .ks-table-note){ margin-bottom:0 !important; }
body .ks-article .ks-table-note{ margin:6px 0 var(--ks-block) !important; padding:0 2px; font-size:12.5px !important; line-height:1.5; color:var(--ks-muted); font-style:italic; }
body .ks-article .ks-table-note:has(+ .ks-table-note){ margin-bottom:2px !important; }
body .ks-article .ks-table-note em, body .ks-article .ks-table-note i{ font-style:italic; }

/* ---------- Table cards (text-heavy tables on every screen; every table on mobile) ----------
   A plain spec-sheet card: hairline border, tinted title strip, fields separated by hairlines. No side accent. */
body .ks-article .ks-table--prose{ border:0; border-radius:0; overflow:visible; }
body .ks-article .ks-table--prose table, body .ks-article .ks-table--prose tbody{ display:block; background:transparent !important; }
body .ks-article .ks-table--prose thead, body .ks-article .ks-table--prose.ks-table--headrow tbody tr:first-child{ display:none; }
body .ks-article .ks-table--prose tbody tr{ display:block; background:#fff; border:1px solid #dde6ee; border-radius:10px; overflow:hidden; padding:0; margin:0 0 14px; }
body .ks-article .ks-table--prose tbody tr:last-child{ margin-bottom:0; }
body .ks-article .ks-table--prose tbody tr td,
body .ks-article .ks-table--prose tbody tr:nth-child(even) td{ display:block; background:transparent !important; border:0 !important; border-top:1px solid #edf2f6 !important; padding:12px 18px; font-size:15px; line-height:1.6; color:var(--ks-text) !important; font-weight:400; }
body .ks-article .ks-table--prose td[data-label]::before{ content:attr(data-label); display:block; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#6b7a89; font-weight:600; margin-bottom:4px; }
body .ks-article .ks-table--prose td:empty{ display:none; }
/* multi-row: first cell is the card's title strip */
body .ks-article .ks-table--prose:not(.ks-table--single) tbody tr td:first-child{ background:#f4f8fb !important; border-top:0 !important; border-bottom:1px solid #dde6ee !important; font-size:16px; font-weight:600; color:var(--ks-navy) !important; }
body .ks-article .ks-table--prose:not(.ks-table--single) tbody tr td:first-child + td{ border-top:0 !important; }
body .ks-article .ks-table--prose:not(.ks-table--single) td:first-child::before{ display:none; }
/* single row (stages side by side): each column is its own card, titled with its header */
body .ks-article .ks-table--single tbody tr{ display:grid; gap:14px; padding:0; border:0; border-radius:0; overflow:visible; background:transparent; }
body .ks-article .ks-table--single tbody tr td,
body .ks-article .ks-table--single tbody tr:nth-child(even) td{ background:#fff !important; border:1px solid #dde6ee !important; border-radius:10px; overflow:hidden; padding:0 18px 14px !important; }
body .ks-article .ks-table--single td[data-label]::before{ margin:0 -18px 12px; padding:12px 18px; background:#f4f8fb; border-bottom:1px solid #dde6ee; font-size:15.5px; letter-spacing:0; text-transform:none; color:var(--ks-navy); font-weight:600; line-height:1.4; }

/* ---------- Components ---------- */
/* What you'll learn */
body .ks-article .ks-learn, body .ks-article .ks-takeaways{ background:#eef6fb; border:0; border-radius:14px; padding:22px 26px 20px; margin:var(--ks-block) 0; color:var(--ks-text); }
body .ks-article .ks-learn__title, body .ks-article .ks-box__title{ margin:0 0 10px !important; font-size:12px !important; font-weight:600; text-transform:uppercase; letter-spacing:.08em; color:var(--ks-navy) !important; }
body .ks-article .ks-learn ul, body .ks-article .ks-learn ol, body .ks-article .ks-takeaways ul, body .ks-article .ks-takeaways ol{ margin:0 !important; padding-left:20px !important; list-style:disc !important; display:grid; gap:6px; }
body .ks-article .ks-learn li, body .ks-article .ks-takeaways li{ margin:0 !important; padding-left:2px !important; color:var(--ks-text); }
body .ks-article .ks-learn li::marker, body .ks-article .ks-takeaways li::marker{ content:initial; color:var(--ks-accent); }
body .ks-article .ks-takeaways p{ color:var(--ks-text); }
body .ks-article .ks-takeaways strong{ color:var(--ks-navy); }
body .ks-article .ks-learn > :last-child, body .ks-article .ks-takeaways > :last-child{ margin-bottom:0 !important; }
/* Callout (Key insights, scenario, example) */
body .ks-article .ks-callout{ position:relative; background:#fff; border:1px solid #cfdfea; border-radius:14px; padding:26px 26px 20px; margin:calc(var(--ks-block) + 8px) 0 var(--ks-block); }
body .ks-article .ks-callout > .ks-box__title:first-child{ position:absolute; top:-11px; left:20px; margin:0 !important; padding:3px 10px; background:#fff; color:var(--ks-accent-ink, #0079A8) !important; letter-spacing:.1em; }
body .ks-article .ks-callout > :last-child{ margin-bottom:0 !important; }
/* Key takeaways: same card as What You Will Learn (above) */
/* Stat strip */
body .ks-article .ks-stats{ display:flex !important; flex-wrap:wrap; gap:2px; background:var(--ks-navy); border-radius:var(--ks-radius); overflow:hidden; margin:var(--ks-block) 0; }
body .ks-article .ks-stat{ flex:1 1 200px; padding:26px; background:var(--ks-navy); }
body .ks-article .ks-stat__fig{ display:block; font-size:36px; line-height:1.1; font-weight:600; color:var(--ks-light); margin:0 0 8px; }
body .ks-article .ks-stat__label{ display:block; font-size:13px; line-height:1.5; color:#C7D6E3; }
/* Bar chart (width comes from --w, the only permitted style value) */
body .ks-article .ks-chart{ background:var(--ks-navy-deep); border-radius:var(--ks-radius); padding:32px; margin:var(--ks-block) 0; }
body .ks-article .ks-chart__row{ margin:0 0 18px; }
body .ks-article .ks-chart__row:last-child{ margin:0; }
body .ks-article .ks-chart__head{ display:flex !important; justify-content:space-between; gap:12px; font-size:14px; color:#dce7f0; margin:0 0 6px; }
body .ks-article .ks-chart__val{ color:var(--ks-light); font-weight:600; }
body .ks-article .ks-chart__track{ height:10px; border-radius:99px; background:rgba(255,255,255,.08); overflow:hidden; }
body .ks-article .ks-chart__fill{ height:100%; width:var(--w,0); border-radius:99px; background:linear-gradient(90deg,#00628F 0%,#009CD8 60%,#57C7F0 100%); }
/* FAQ */
body .ks-article .ks-faq{ margin:0 0 var(--ks-block); }
body .ks-article .ks-faq__item{ border-top:1px solid var(--ks-border); padding:18px 0 4px; }
body .ks-article .ks-faq__item:first-child{ border-top:0; padding-top:4px; }
body .ks-article .ks-faq__q{ font-size:17px !important; margin:0 0 8px !important; }
/* Notes / captions */
body .ks-article .ks-note{ font-size:13.5px; line-height:1.6; color:var(--ks-muted); font-style:italic; }
/* Disclosures inside the article = same look as the template disclaimer */
body .ks-article .ks-disclosure, body .ks-article .ks-disclosure p, body .ks-article .ks-disclosure em{ font-size:12px !important; line-height:1.55 !important; color:var(--ks-disclaimer) !important; font-style:italic !important; font-weight:400 !important; }
body .ks-article .ks-disclosure{ margin:0 0 14px !important; padding:0 !important; }
body .ks-article .ks-disclosure:last-child{ margin-bottom:0 !important; }
body .ks-article *:has(+ .ks-disclosure){ margin-bottom:12px !important; }
body .ks-article .ks-disclosure + .ks-disclosure{ margin-top:-6px !important; }
body .ks-article .ks-disclosure strong{ color:var(--ks-disclaimer) !important; font-weight:600; }
/* Last updated (moved above "On this page") */
body .ks-article .ks-updated{ margin:0 0 12px !important; font-size:13px !important; line-height:1.5; font-style:italic; color:var(--ks-muted); }

/* ---------- On this page (server-built, excludes Sources / Further reading / FAQ) ---------- */
body .ks-article .ks-toc{ background:#eef6fb; border:1px solid #dcebf5; border-radius:12px; padding:20px 24px 14px; margin:0 0 36px; }
body .ks-article .ks-toc__title{ margin:0 0 10px !important; font-size:12px !important; font-weight:600; text-transform:uppercase; letter-spacing:.1em; color:var(--ks-navy); }
body .ks-article .ks-toc ol{ margin:0 !important; padding-left:0 !important; list-style:none !important; counter-reset:toc; columns:2; column-gap:36px; }
body .ks-article .ks-toc li{ counter-increment:toc; break-inside:avoid; display:flex; gap:10px; margin:0 0 8px !important; padding:0 !important; font-size:14.5px; line-height:1.45; }
body .ks-article .ks-toc li::marker{ content:none; }
body .ks-article .ks-toc li::before{ content:counter(toc, decimal-leading-zero); flex:0 0 auto; font-size:12px; font-weight:600; color:var(--ks-accent); padding-top:2px; font-variant-numeric:tabular-nums; }
body .ks-article .ks-toc a{ color:var(--ks-navy); text-decoration:none; }
body .ks-article .ks-toc a:hover{ color:var(--ks-accent); text-decoration:underline; }

/* ---------- Further reading ---------- */
body .ks-article .ks-further{ margin:var(--ks-section) 0 var(--ks-block); }
body .ks-article .ks-further__title{ margin:0 0 6px !important; font-size:18px !important; font-weight:600; color:var(--ks-navy); }
body .ks-article .ks-further ul{ list-style:none !important; padding:0 !important; margin:0 !important; display:grid !important; grid-template-columns:1fr 1fr; column-gap:32px; border-top:1px solid var(--ks-border); }
body .ks-article .ks-further li{ margin:0 !important; padding:0 !important; border-bottom:1px solid var(--ks-border); }
body .ks-article .ks-further li::marker{ content:none; }
body .ks-article .ks-further a{ display:flex !important; justify-content:space-between; align-items:center; gap:14px; padding:14px 2px; background:none; border:0; font-size:15px; line-height:1.45; font-weight:600; color:var(--ks-navy) !important; text-decoration:none !important; }
body .ks-article .ks-further a::after{ content:"→"; color:var(--ks-accent); font-size:17px; flex:0 0 auto; transition:transform .15s; }
body .ks-article .ks-further a:hover{ color:var(--ks-link) !important; }
body .ks-article .ks-further a:hover::after{ transform:translateX(3px); }

/* ---------- Sources (plain-text title, small, bullets, no bold, tight) ---------- */
body .ks-article .ks-sources{ margin:var(--ks-section) 0 var(--ks-block); padding:18px 22px; background:#fafbfc; border-radius:var(--ks-radius); }
body .ks-article .ks-sources__title{ margin:0 0 6px !important; font-size:13px !important; font-weight:600; color:var(--ks-navy); }
body .ks-article .ks-sources ul{ margin:0 !important; padding-left:18px; list-style:disc !important; }
body .ks-article .ks-sources li{ margin:0 !important; font-size:12.5px !important; line-height:1.5 !important; color:var(--ks-muted); }
body .ks-article .ks-sources li strong, body .ks-article .ks-sources li b{ font-weight:400; color:inherit; }
body .ks-article .ks-sources a{ color:var(--ks-link); }

/* ---------- CTAs ---------- */
/* End-of-article CTA: equal padding on all sides */
body .ks-article .ks-cta{ background:linear-gradient(135deg,var(--ks-navy) 0%,#00416F 100%); border-radius:var(--ks-radius); padding:36px !important; margin:var(--ks-section) 0 var(--ks-block); color:#C7D6E3; }
body .ks-article .ks-cta__eyebrow{ margin:0 0 10px !important; font-size:11.5px !important; letter-spacing:.14em; text-transform:uppercase; font-weight:600; color:#fff !important; }
body .ks-article .ks-cta__title{ margin:0 0 10px !important; font-size:23px !important; line-height:1.3; font-weight:600; color:#fff !important; }
body .ks-article .ks-cta p{ color:#C7D6E3; margin:0 0 14px; }
body .ks-article .ks-cta > :last-child{ margin-bottom:0 !important; }
body .ks-article .ks-cta a:not(.ks-btn){ color:#fff !important; text-decoration:underline; }
body .ks-article .ks-cta strong{ color:#fff; }
body .ks-article .ks-cta .ks-cta__action{ margin:0 !important; line-height:1; }
body .ks-article .ks-cta p:has(+ .ks-cta__action){ margin-bottom:20px; }
body .ks-article .ks-btn{ margin:0 !important; width:auto !important; display:inline-block !important; background:var(--ks-accent); color:#fff !important; text-decoration:none !important; font-weight:600; font-size:15px; line-height:1.2; padding:13px 26px; border-radius:99px; }
body .ks-article .ks-btn:hover{ background:#0089bf; color:#fff !important; }
/* Mid-article CTA: one line — message first, button last */
body .ks-article .ks-cta-mid{ display:flex !important; align-items:center; justify-content:space-between; gap:20px; margin:var(--ks-block) 0; padding:18px 18px 18px 24px; background:linear-gradient(90deg,#e6f4fb 0%,#f3f9fd 100%); border:0; border-radius:999px; }
body .ks-article .ks-cta-mid__text{ margin:0 !important; font-size:15px; line-height:1.5; color:var(--ks-text); }
body .ks-article .ks-cta-mid__text strong{ color:var(--ks-navy); font-weight:600; }
body .ks-article .ks-cta-mid .ks-btn{ flex:0 0 auto; padding:11px 24px; font-size:14px; }

/* ---------- Images ---------- */
body .ks-article img{ max-width:100%; height:auto; border-radius:var(--ks-radius); }
body .ks-article p img{ margin:var(--ks-block) 0; }

/* ---------- Mobile ---------- */
@media (max-width:767px){
  body .ks-article{ --ks-section:36px; --ks-block:22px; font-size:15px; }
  body .ks-article p, body .ks-article li{ font-size:15px; }
  body .ks-article h2{ font-size:22px; }
  body .ks-article h3{ font-size:18px; }
  body .ks-article .ks-num{ font-size:22px; }
  body .ks-article .ks-learn, body .ks-article .ks-callout, body .ks-article .ks-takeaways,
  body .ks-article .ks-chart, body .ks-article .ks-sources{ padding:18px !important; }
  body .ks-article .ks-callout{ padding-top:22px !important; }
  body .ks-article .ks-toc ol{ columns:1; }
  body .ks-article .ks-toc{ padding:16px 18px 10px; }
  body .ks-article .ks-cta{ padding:20px !important; }
  body .ks-article .ks-stat{ padding:18px; }
  body .ks-article .ks-further ul{ grid-template-columns:1fr; }
  /* ---------- Table cards (text-heavy tables on every screen; every table on mobile) ----------
     A plain spec-sheet card: hairline border, tinted title strip, fields separated by hairlines. No side accent. */
  body .ks-article .ks-table{ border:0; border-radius:0; overflow:visible; }
  body .ks-article .ks-table table, body .ks-article .ks-table tbody{ display:block; background:transparent !important; }
  body .ks-article .ks-table thead, body .ks-article .ks-table.ks-table--headrow tbody tr:first-child{ display:none; }
  body .ks-article .ks-table tbody tr{ display:block; background:#fff; border:1px solid #dde6ee; border-radius:10px; overflow:hidden; padding:0; margin:0 0 14px; }
  body .ks-article .ks-table tbody tr:last-child{ margin-bottom:0; }
  body .ks-article .ks-table tbody tr td,
  body .ks-article .ks-table tbody tr:nth-child(even) td{ display:block; background:transparent !important; border:0 !important; border-top:1px solid #edf2f6 !important; padding:12px 18px; font-size:15px; line-height:1.6; color:var(--ks-text) !important; font-weight:400; }
  body .ks-article .ks-table td[data-label]::before{ content:attr(data-label); display:block; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:#6b7a89; font-weight:600; margin-bottom:4px; }
  body .ks-article .ks-table td:empty{ display:none; }
  /* multi-row: first cell is the card's title strip */
  body .ks-article .ks-table:not(.ks-table--single) tbody tr td:first-child{ background:#f4f8fb !important; border-top:0 !important; border-bottom:1px solid #dde6ee !important; font-size:16px; font-weight:600; color:var(--ks-navy) !important; }
  body .ks-article .ks-table:not(.ks-table--single) tbody tr td:first-child + td{ border-top:0 !important; }
  body .ks-article .ks-table:not(.ks-table--single) td:first-child::before{ display:none; }
  /* single row (stages side by side): each column is its own card, titled with its header */
  body .ks-article .ks-table.ks-table--single tbody tr{ display:grid; gap:14px; padding:0; border:0; border-radius:0; overflow:visible; background:transparent; }
  body .ks-article .ks-table.ks-table--single tbody tr td,
  body .ks-article .ks-table.ks-table--single tbody tr:nth-child(even) td{ background:#fff !important; border:1px solid #dde6ee !important; border-radius:10px; overflow:hidden; padding:0 18px 14px !important; }
  body .ks-article .ks-table.ks-table--single td[data-label]::before{ margin:0 -18px 12px; padding:12px 18px; background:#f4f8fb; border-bottom:1px solid #dde6ee; font-size:15.5px; letter-spacing:0; text-transform:none; color:var(--ks-navy); font-weight:600; line-height:1.4; }
  body .ks-article ul, body .ks-article ol{ padding-left:20px; }
  body .ks-article .ks-btn{ padding:12px 20px; }
  body .ks-article .ks-table--single tbody tr{ grid-template-columns:1fr; }
  body .ks-article .ks-table tbody tr td{ padding:10px 16px; }
  body .ks-article .ks-table.ks-table--single tbody tr td{ padding:0 16px 12px !important; }
  body .ks-article .ks-table.ks-table--single td[data-label]::before{ margin:0 -16px 10px; padding:11px 16px; }
  body .ks-article .ks-cta-mid{ flex-direction:column; align-items:flex-start; gap:12px; padding:18px 20px; border-radius:16px; }
  body .ks-article .ks-cta-mid .ks-btn{ padding:10px 20px; }
}

/* Prev / next navigation cloned right after the hero */
body.single-post .ks-postnav-top{ margin:0 auto 8px !important; width:100%; }
body.single-post .ks-postnav-top > .elementor-widget-container{ margin:0 !important; padding:0 0 14px !important; border:0 !important; border-bottom:1px solid var(--ks-border) !important; }
body.single-post .ks-postnav-top span.post-navigation__prev--label,
body.single-post .ks-postnav-top span.post-navigation__next--label{ font-family:var(--ks-font) !important; font-size:13px !important; font-style:normal !important; text-decoration:none !important; text-transform:none !important; color:var(--ks-link) !important; }
body.single-post .ks-postnav-top .post-navigation__prev--title,
body.single-post .ks-postnav-top .post-navigation__next--title{ font-family:var(--ks-font); font-size:13px; color:var(--ks-navy); }

/* WordPress image captions carry an inline width — keep them inside the column */
body .ks-article figure, body .ks-article .wp-caption{ max-width:100% !important; margin:var(--ks-block) 0; }
body .ks-article figcaption, body .ks-article .wp-caption-text{ font-size:12.5px; color:var(--ks-muted); font-style:italic; margin-top:6px; }

@media (prefers-reduced-motion:reduce){ body .ks-article .ks-further a::after{ transition:none; } }
