/* Chimundo — shared tokens, utilities, then a small GeneratePress adapter. */
:root {
  --cm-body: Arial, Helvetica, sans-serif;
  --cm-heading: Arial, Helvetica, sans-serif;
  --cm-mono: "Google Sans Code", Consolas, monospace;
  --cm-paper: #fff;
  --cm-ink: #1e2124;
  --cm-muted: #636363;
  --cm-surface: #f3f3f3;
  --cm-rule: #d5d6d7;
  --cm-green: #2b5945;
  --cm-red: #b42318;
  --cm-gutter: clamp(20px, 3vw, 40px);
  --cm-space: 20px;
  --cm-speed: 250ms;
  --contrast: var(--cm-ink);
  --contrast-2: var(--cm-muted);
  --contrast-3: var(--cm-rule);
  --base: var(--cm-surface);
  --base-2: #f9f9f9;
  --base-3: var(--cm-paper);
  --accent: var(--cm-green);
}
/* Reusable utilities: usable in Gutenberg's Additional CSS class(es). */
.cm-container { max-width: 1440px; margin-inline: auto; padding-inline: var(--cm-gutter); }
.cm-stack > * + * { margin-top: var(--cm-space); }
.cm-cluster { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 20px; }
.cm-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr)); gap: 30px; }
.cm-section { padding-block: clamp(40px, 6vw, 100px); }
.cm-measure { max-width: 68ch; }
.cm-rule-bottom { border-bottom: 1px solid var(--cm-rule); }
.cm-muted { color: var(--cm-muted); }
.cm-surface { background: var(--cm-surface); padding: 20px; }
.cm-inverse { background: var(--cm-ink); color: #efefef; padding: 20px; }
.cm-inverse a { color: inherit; }
.cm-h1, .cm-h2, .cm-site .cm-h3 { font-family: var(--cm-heading); font-weight: 400; letter-spacing: -.02em; }
.cm-site .cm-h1 { font-size: clamp(38px, 6vw, 80px); line-height: .975; letter-spacing: -.0425em; }
.cm-site .cm-h2 { font-size: clamp(34px, 4vw, 50px); line-height: 1; }
.cm-site .cm-h3 { font-size: clamp(26px, 3vw, 34px); line-height: 1.1765; }
.cm-lead { font-size: clamp(24px, 3vw, 34px); line-height: 1.18; }
.cm-small { font-size: 16px; line-height: 1.5; }
.cm-label { font-size: 12px; line-height: 1.6; letter-spacing: .05em; text-transform: uppercase; }
.cm-mono, .cm-financial, .cm-ticker { font-family: var(--cm-mono); font-variant-numeric: lining-nums tabular-nums; font-variant-ligatures: none; letter-spacing: 0; }
.cm-financial { white-space: nowrap; }
.cm-price { font-size: clamp(30px, 5vw, 48px); line-height: 1.2; font-weight: 500; }
.cm-number { white-space: nowrap; text-align: right; font-family: var(--cm-mono); font-variant-numeric: lining-nums tabular-nums; }
.cm-ticker { font-size: 13px; font-weight: 500; }
.cm-up { color: var(--cm-green); }
.cm-down, .cm-error { color: var(--cm-red); }
.cm-link { color: inherit; text-decoration: underline; text-underline-offset: 4px; }
.cm-link:hover { color: var(--cm-muted); }
.cm-button, .cm-site :is(.button, .wp-element-button, input[type=submit], button[type=submit]) {
  display: inline-flex; align-items: center; justify-content: center; gap: 12px;
  min-height: 44px; padding: 12px 20px; border: 1px solid var(--cm-ink); border-radius: 0;
  background: transparent; color: var(--cm-ink); font: 400 16px/1.43 var(--cm-body);
  text-decoration: none; cursor: pointer; transition: background-color var(--cm-speed), color var(--cm-speed), border-color var(--cm-speed);
}
.cm-button:hover, .cm-site :is(.button, .wp-element-button, input[type=submit], button[type=submit]):hover {
  background: var(--cm-ink); color: var(--cm-paper); border-color: var(--cm-ink);
}
.cm-button-solid { background: var(--cm-ink); color: var(--cm-paper); }
.cm-button-solid:hover { background: var(--cm-paper); color: var(--cm-ink); }
.cm-button .cm-arrow { transition: transform var(--cm-speed); }
.cm-button:hover .cm-arrow { transform: translateX(8px); }
.cm-button:disabled, .cm-site :where(input[type=submit], button[type=submit]):disabled { background: var(--cm-surface); color: var(--cm-muted); border-color: var(--cm-rule); cursor: not-allowed; }
.cm-bubble, .cm-tag, .cm-site :where(.cat-links a, .tags-links a, .tag-cloud-link) {
  display: inline-flex; align-items: center; justify-content: center; max-width: 100%; padding: 5px 20px;
  border: 1px solid currentColor; border-radius: 34px; background: transparent; color: var(--cm-ink);
  font: 400 12px/1.4 var(--cm-heading); letter-spacing: .03em; text-transform: uppercase; text-decoration: none;
  text-align: center; overflow-wrap: anywhere;
}
.cm-bubble, .cm-site :where(.cat-links a, .tags-links a, .tag-cloud-link) { min-height: 44px; transition: background-color var(--cm-speed), color var(--cm-speed); }
.cm-bubble:hover, .cm-bubble[aria-pressed=true], .cm-bubble[aria-current=page], .cm-site :where(.cat-links a, .tags-links a, .tag-cloud-link):hover { background: var(--cm-ink); color: var(--cm-paper); border-color: var(--cm-ink); }
.cm-field { display: grid; gap: 10px; }
.cm-input, .cm-site :is(input:not([type=submit]):not([type=button]):not([type=checkbox]):not([type=radio]):not([type=hidden]), select, textarea) {
  box-sizing: border-box; max-width: 100%; min-width: 0; min-height: 44px; padding: 8px 2px;
  border: 0; border-bottom: 1px solid var(--cm-muted); border-radius: 0; background: transparent;
  color: var(--cm-ink); font: 400 18px/1.4 var(--cm-body);
}
.cm-site textarea { width: 100%; min-height: 140px; padding: 20px; border: 1px solid var(--cm-muted); resize: vertical; }
.cm-site :where(input, select, textarea):focus { border-color: var(--cm-green); }
.cm-site :where(input, select, textarea)[aria-invalid=true] { border-color: var(--cm-red); }
.cm-site :where(input, textarea)::placeholder { color: var(--cm-muted); opacity: 1; }
.cm-site :where(input, select, textarea):disabled { background: var(--cm-surface); cursor: not-allowed; }
.cm-site :where(input[type=checkbox], input[type=radio]) { width: 18px; height: 18px; accent-color: var(--cm-ink); }
.cm-site :where(label) { display: inline-block; margin-bottom: 10px; font-size: 12px; letter-spacing: .05em; text-transform: uppercase; }
.cm-site :where(a, button, input, textarea, select, summary):focus-visible { outline: 2px solid var(--cm-green); outline-offset: 4px; }
.cm-inverse :focus-visible { outline-color: #fff; }
.cm-avatar { display: inline-grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--cm-ink); color: #fff; object-fit: cover; flex-shrink: 0; }
.cm-avatar-large { width: 80px; height: 80px; font-size: 26px; }
.cm-author-profile { display: grid; grid-template-columns: 80px minmax(0,1fr); gap: 24px; padding-block: 30px; margin-top: 40px; border-block: 1px solid var(--cm-rule); }
.cm-author-profile .cm-label { margin-bottom: 10px; }
.cm-author-profile h2 { margin-bottom: 18px; }
.cm-author-bio { white-space: pre-wrap; color: var(--cm-muted); font-size: 16px; line-height: 1.5; }
.cm-author-profile a { color: inherit; }
.cm-table-scroll { overflow-x: auto; max-width: 100%; }
.cm-table { min-width: 520px; border-collapse: collapse; width: 100%; font-size: 16px; }
.cm-table :is(th, td) { padding: 14px 12px; border: 0; border-bottom: 1px solid var(--cm-rule); vertical-align: top; }
.cm-table th { background: var(--cm-surface); font-size: 12px; letter-spacing: .03em; text-transform: uppercase; font-weight: 400; }
/* Adapter: the theme owns structure and mobile-menu behaviour. */
body.cm-site { background: var(--cm-paper); color: var(--cm-ink); font: 400 18px/1.5 var(--cm-body); }
.cm-site *, .cm-site *::before, .cm-site *::after { box-sizing: border-box; }
.cm-site h1, .cm-site h2, .cm-site h3, .cm-site h4 { font-family: var(--cm-heading); font-weight: 400; letter-spacing: -.02em; overflow-wrap: anywhere; }
.cm-site h1 { font-size: clamp(38px, 5.5vw, 72px); line-height: 1.05; }
.cm-site h2 { font-size: clamp(30px, 3.5vw, 46px); line-height: 1.1; }
.cm-site h3 { font-size: clamp(26px, 3vw, 34px); line-height: 1.18; }
.cm-site a { text-underline-offset: 4px; }
.cm-site :where(.entry-content, .entry-summary) a:not(.cm-button):not(.cm-bubble) { color: var(--cm-ink); text-decoration: underline; }
.cm-site :where(.entry-content, .entry-summary) a:not(.cm-button):not(.cm-bubble):hover { color: var(--cm-green); }
.cm-site .site-header { border-bottom: 1px solid var(--cm-rule); }
.cm-site .inside-header { padding-block: 30px; gap: 20px; flex-wrap: wrap; }
.cm-site .main-title { font-size: 30px; line-height: 1.2; letter-spacing: -.04em; font-weight: 400; }
.cm-site .main-title a { color: var(--cm-ink); }
.cm-site .main-navigation { background: transparent; }
.cm-site .main-navigation .main-nav ul li a { padding: 10px 12px; font-size: 14px; line-height: 1.7; min-height: 44px; color: var(--cm-ink); }
.cm-site .main-navigation .main-nav ul li:is(:hover, .current-menu-item) > a { background: var(--cm-surface); color: var(--cm-ink); }
.cm-site .main-navigation .menu-toggle { min-height: 44px; color: var(--cm-ink); }
.cm-site .site-content { padding-top: 40px; gap: 40px; }
.cm-site .content-area { min-width: 0; flex: 1; }
.cm-site .site-main { margin: 0; }
.cm-site .sidebar { width: 280px; flex-shrink: 0; }
.cm-site .inside-article, .cm-site .page-header, .cm-site .comments-area { padding: 0 0 40px; background: transparent; }
.cm-site .inside-article { border-bottom: 1px solid var(--cm-rule); margin-bottom: 40px; }
.cm-site .entry-title a { color: var(--cm-ink); text-decoration: none; }
.cm-site .entry-title a:hover { color: var(--cm-green); }
.cm-site .entry-content { max-width: 72ch; overflow-wrap: anywhere; }
.cm-site .entry-content > :is(h2, h3) { margin-top: 50px; }
.cm-site .entry-content :is(pre, .wp-block-table) { overflow-x: auto; }
.cm-site .entry-content > table { display: block; overflow-x: auto; }
.cm-site :where(code, pre, kbd, samp) { font-family: var(--cm-mono); }
.cm-site .entry-meta { color: var(--cm-muted); font-size: 16px; line-height: 1.5; }
.cm-site .entry-header .entry-meta { display: flex; flex-wrap: wrap; gap: 10px 20px; align-items: baseline; margin-top: 20px; }
.cm-site .entry-meta a { color: var(--cm-ink); text-decoration: underline; }
.cm-site .entry-meta a:hover { color: var(--cm-green); }
.cm-site .cat-links, .cm-site .tags-links { display: flex; flex-wrap: wrap; gap: 6px; }
.cm-site .entry-meta :is(.cat-links, .tags-links) a { min-height: 24px; padding: 2px 8px; font-size: 10px; line-height: 1.4; text-decoration: none; }
.cm-site .entry-meta :is(.cat-links, .tags-links) a:hover { color: #fff; }
.cm-site :is(.cat-links, .tags-links) > .gp-icon { display: none; }
.cm-site .comments-link { width: 100%; font-size: 14px; }
.cm-site .widget { padding: 20px 0 30px; background: transparent; border-bottom: 1px solid var(--cm-rule); }
.cm-site .widget :is(h2, h3) { font-size: 20px; line-height: 1.3; }
.cm-site .widget :is(p, li, .no-comments) { font-size: 16px; }
.cm-site .widget a { color: var(--cm-ink); }
.cm-site .wp-block-search__button { padding-inline: 12px; }
.cm-site .wp-block-search__input { width: 100%; }
.cm-site .wp-block-latest-posts li { padding-block: 10px; }
.cm-site .site-info { border-top: 1px solid var(--cm-rule); background: var(--cm-paper); color: var(--cm-muted); font-size: 14px; }
.cm-site .inside-site-info { padding-block: 30px; }
.cm-site .chimundo-persona-profile { padding-block: 30px; border-block: 1px solid var(--cm-rule); }
.cm-site .chimundo-persona-bio { max-width: 65ch; font-size: 16px; color: var(--cm-muted); }
.cm-site .chimundo-persona-disclosure { max-width: 65ch; }
.cm-site .comment-form-cookies-consent label { text-transform: none; letter-spacing: 0; font-size: 14px; }
@media (min-width: 769px) { .cm-site .main-navigation .main-nav > ul { flex-wrap: wrap; } }
@media (max-width: 1024px) and (min-width: 769px) { .cm-site .sidebar { width: 240px; } .cm-site .site-content { gap: 30px; } }
@media (max-width: 768px) {
  .cm-site .site-content { display: block; }
  .cm-site .sidebar { width: 100%; }
  .cm-site .inside-header { padding-block: 20px; }
  .cm-site .inside-article { margin-bottom: 30px; padding-bottom: 30px; }
  .cm-site .entry-content > :is(h2, h3) { margin-top: 36px; }
}
@media (max-width: 480px) { .cm-author-profile { grid-template-columns: minmax(0,1fr); gap: 20px; } }
@media (prefers-reduced-motion: reduce) { .cm-site *, .cm-site *::before, .cm-site *::after { transition-duration: 0s; animation-duration: 0s; scroll-behavior: auto; } }
/* Publication footer. */
.cm-footer { margin-top: 40px; background: var(--cm-ink); color: #efefef; }
.cm-footer a { color: inherit; text-decoration: none; }
.cm-footer a:hover { color: #fff; text-decoration: underline; text-underline-offset: 5px; }
.cm-footer a:focus-visible { outline-color: #fff; }
.cm-footer-masthead { justify-content: space-between; padding-block: 36px; border-bottom: 1px solid #4b4e50; }
.cm-footer-wordmark { font-size: clamp(36px, 5vw, 64px); line-height: 1; letter-spacing: -.055em; }
.cm-footer-wordmark span { color: #b9b9b9; }
.cm-footer-top { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; font-size: 13px; }
.cm-footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr .8fr; gap: 40px; padding-block: 48px 56px; }
.cm-footer-intro { max-width: 32ch; }
.cm-footer-intro p { color: #b9b9b9; font-size: 16px; line-height: 1.5; }
.cm-footer-intro .cm-footer-statement { margin-bottom: 20px; color: #efefef; font-size: clamp(26px, 3vw, 34px); line-height: 1.15; letter-spacing: -.025em; }
.cm-footer-cta { display: inline-flex; gap: 14px; align-items: center; min-height: 44px; font-size: 14px; border-bottom: 1px solid #858789; }
.cm-site .cm-footer h2 { margin: 0 0 20px; color: #b9b9b9; font-size: 11px; line-height: 1.6; letter-spacing: .09em; text-transform: uppercase; }
.cm-footer ul { list-style: none; padding: 0; margin: 0; }
.cm-footer li a { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding-block: 7px; font-size: 15px; line-height: 1.5; }
.cm-footer-bottom { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 12px 30px; border-top: 1px solid #4b4e50; padding-block: 24px; color: #b9b9b9; font-size: 12px; }
.cm-footer-bottom p { margin: 0; }
.cm-site .publisher-cookie-controls { background: var(--cm-ink); color: #b9b9b9; padding: 0 var(--cm-gutter) 24px; font-size: 12px; }
.cm-site .publisher-cookie-controls :is(a, button) { display: inline-flex; align-items: center; min-height: 32px; padding: 4px 0; }
@media (max-width: 1000px) { .cm-footer-grid { grid-template-columns: repeat(3, minmax(0,1fr)); gap: 30px; } .cm-footer-intro { grid-column: 1 / -1; max-width: 44ch; } }
@media (max-width: 540px) { .cm-footer-grid { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 30px 20px; padding-block: 32px; } .cm-footer-masthead { padding-block: 28px; } .cm-footer li a { font-size: 14px; } }
/* Latest-headlines ticker: one lightweight CSS animation, JS pause control. */
.cm-ticker-bar { background: var(--cm-ink); color: #efefef; font: 400 12px/1.5 var(--cm-mono); }
.cm-ticker-layout { display: flex; align-items: center; gap: 20px; min-height: 44px; }
.cm-ticker-label { display: inline-flex; align-items: center; gap: 10px; flex-shrink: 0; min-height: 44px; color: #efefef; font-size: 11px; text-transform: uppercase; letter-spacing: .04em; }
.cm-ticker-label:hover { color: #fff; }
.cm-ticker-window { flex: 1; min-width: 0; overflow: hidden; }
.cm-ticker-track { display: flex; width: max-content; }
.cm-ticker-group { display: flex; flex-shrink: 0; align-items: center; }
.cm-ticker-item { display: inline-flex; align-items: center; gap: 14px; padding-right: 48px; white-space: nowrap; }
.cm-ticker-dot { color: #9cbda9; font-size: 8px; }
.cm-ticker-bar.is-ready .cm-ticker-track { animation: cm-headlines 55s linear infinite; }
.cm-ticker-bar.is-paused .cm-ticker-track, .cm-ticker-window:hover .cm-ticker-track { animation-play-state: paused; }
.cm-ticker-toggle { flex-shrink: 0; min-width: 72px; min-height: 44px; padding: 8px 0 8px 16px; border: 0; border-left: 1px solid #4b4e50; background: transparent; color: #efefef; font: inherit; cursor: pointer; }
.cm-ticker-toggle[hidden] { display: none; }
.cm-ticker-toggle:hover, .cm-ticker-toggle:focus { color: #fff; background: transparent; }
.cm-ticker-bar :focus-visible { outline-color: #fff; outline-offset: -3px; }
@keyframes cm-headlines { to { transform: translateX(-50%); } }
@media (max-width: 540px) { .cm-ticker-layout { gap: 12px; } .cm-ticker-label { max-width: 76px; font-size: 9px; line-height: 1.3; } .cm-ticker-toggle { min-width: 60px; padding-left: 10px; font-size: 11px; } }
@media (prefers-reduced-motion: reduce) { .cm-ticker-bar:not(.is-playing) .cm-ticker-track { animation: none; } }

/* Approved Chimundo monkey mark — brand/assets, 12 October 2026. */
.cm-site .main-title a{display:inline-flex;align-items:center;gap:10px}
.cm-site .main-title a::before{content:"";display:block;flex:0 0 52px;width:52px;height:52px;background:url("https://chimundo.com/wp-content/uploads/2026/10/chimundo-logo-web.png") center/contain no-repeat}
.cm-site .cm-footer-wordmark::before{content:"";display:inline-block;width:clamp(60px,9vw,112px);height:clamp(60px,9vw,112px);margin-right:16px;vertical-align:middle;background:url("https://chimundo.com/wp-content/uploads/2026/10/chimundo-logo-white-web.png") center/contain no-repeat;mix-blend-mode:lighten}
@media(max-width:600px){.cm-site .main-title a::before{width:44px;height:44px;flex-basis:44px}.cm-site .cm-footer-wordmark::before{margin-right:8px}}

/* Chimundo article statistics — readable mobile rows, max 380px including sources. */
.cm-stat-graphic{container-type:inline-size;box-sizing:border-box;display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:18px;width:100%;height:340px;max-height:380px;margin:32px 0;padding:26px 30px;background:#1e2124;color:#fff;border:1px solid #4b4e50;font-family:Arial,Helvetica,sans-serif;overflow-wrap:break-word}
.cm-stat-graphic *{box-sizing:border-box}
.cm-stat-graphic .cm-stat-heading{margin:0;color:#fff;font-size:clamp(22px,2.8cqw,28px);font-weight:400;line-height:1.2;letter-spacing:-.02em}
.cm-stat-graphic .cm-stat-eyebrow{margin:0 0 7px;color:#d5d6d7;font:400 13px/1.4 Consolas,monospace;text-transform:uppercase;letter-spacing:.06em}
.cm-stat-graphic .cm-stat-grid{display:grid;grid-template-columns:1fr;align-items:center;min-height:0;gap:22px}
.cm-stat-graphic[data-count="2"] .cm-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.cm-stat-graphic[data-count="3"] .cm-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.cm-stat-graphic .cm-stat-item{min-width:0;margin:0}
.cm-stat-graphic[data-count="1"] .cm-stat-item{text-align:center;justify-self:center}
.cm-stat-graphic[data-count="1"] .cm-stat-value{font-size:clamp(60px,11cqw,104px)}
.cm-stat-graphic .cm-stat-value{display:block;margin:0 0 12px;color:#fff;font:400 clamp(38px,8cqw,82px)/1 Consolas,"Courier New",monospace;letter-spacing:-.055em;font-variant-numeric:tabular-nums;white-space:nowrap}
.cm-stat-graphic .cm-stat-label{margin:0;color:#efefef;font-size:18px;line-height:1.3}
.cm-stat-graphic .cm-stat-context{margin:7px 0 0;color:#d5d6d7;font-size:16px;line-height:1.3}
.cm-stat-graphic .cm-stat-item+.cm-stat-item{border-left:1px solid #4b4e50;padding-left:22px}
.cm-stat-graphic .cm-stat-source{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;min-width:0;margin:0;padding-top:12px;border-top:1px solid #4b4e50;color:#d5d6d7;font-size:14px;line-height:1.35}
.cm-stat-graphic .cm-stat-source span:first-child{min-width:0}
.cm-stat-graphic .cm-stat-brand{flex-shrink:0;white-space:nowrap;color:#efefef;letter-spacing:-.04em}
.cm-stat-graphic a,.cm-site .entry-content .cm-stat-graphic a{color:#fff;text-decoration:underline;text-underline-offset:3px}
.cm-stat-graphic a:focus-visible{outline:2px solid #fff;outline-offset:3px}
@container (max-width:480px){
.cm-stat-graphic .cm-stat-grid{gap:10px}
.cm-stat-graphic[data-count="2"] .cm-stat-grid,.cm-stat-graphic[data-count="3"] .cm-stat-grid{grid-template-columns:minmax(0,1fr)}
.cm-stat-graphic[data-count="2"] .cm-stat-item,.cm-stat-graphic[data-count="3"] .cm-stat-item{display:grid;grid-template-columns:128px minmax(0,1fr);column-gap:12px;align-items:center}
.cm-stat-graphic .cm-stat-item+.cm-stat-item{border-left:0;border-top:1px solid #4b4e50;padding:10px 0 0}
.cm-stat-graphic[data-count="2"] .cm-stat-value,.cm-stat-graphic[data-count="3"] .cm-stat-value{grid-column:1;grid-row:1/3;font-size:38px;margin:0}
.cm-stat-graphic[data-count="2"] .cm-stat-label,.cm-stat-graphic[data-count="3"] .cm-stat-label{grid-column:2;grid-row:1;font-size:16px}
.cm-stat-graphic[data-count="2"] .cm-stat-context,.cm-stat-graphic[data-count="3"] .cm-stat-context{grid-column:2;grid-row:2;font-size:14px;margin:4px 0 0}
.cm-stat-graphic .cm-stat-source{gap:10px;font-size:14px}
}
@media(max-width:600px){.cm-stat-graphic{height:380px;padding:20px 18px;gap:14px}.cm-stat-graphic[data-count="1"]{height:340px}}
