/* Match the existing site's blog presentation using its own theme tokens. */
.cms-content { margin:4rem auto; }
.cms-content,.cms-content * { box-sizing:border-box; }
.cms-content img { max-width:100%; height:auto; }
.cms-blog>.cms-post { display:flow-root; border-bottom:1px solid var(--svc-cms-blog-border); padding:1.5rem 0; }
.cms-blog>.cms-post:first-of-type { padding-top:0; }
.cms-blog .cms-cover { float:left; width:180px; height:120px; object-fit:cover; border-radius:8px; margin:0 1.5rem 1rem 0; }
.cms-blog .cms-post:has(.cms-cover)>:not(.cms-cover) { margin-left:calc(180px + 1.5rem); }
.cms-blog h2 { font-family:var(--svc-cms-blog-serif); font-weight:400; }
.cms-date,.cms-author { font-size:.85rem; color:var(--svc-cms-blog-ink-soft); }
.cms-content>.cms-post>.cms-cover { width:100%; height:auto; border-radius:8px; margin:1.5rem 0; }
.cms-post-body { overflow-wrap:anywhere; }
.cms-post-body img { border-radius:8px; margin:1.5rem 0; }
.cms-tags { display:flex; flex-wrap:wrap; gap:.5rem; list-style:none; padding:0; }
.cms-pager { display:flex; flex-wrap:wrap; gap:1rem; margin:2rem 0; }
.cms-event { padding:1.5rem 0; border-bottom:1px solid var(--svc-cms-blog-border); }
.cms-content { --cms-gal-gap:1rem; --cms-gal-min:200px; --cms-gal-max:1fr; --cms-gal-ratio:4/3; }
@media(max-width:640px) { .cms-blog .cms-cover{float:none;width:100%;height:180px;margin:0 0 .75rem} .cms-blog .cms-post:has(.cms-cover)>:not(.cms-cover){margin-left:0} }

/* Keep the site's existing compact list hierarchy; the kit owns the content. */
.cms-blog>.cms-post { display:grid; grid-template-columns:1fr; gap:0; }
.cms-blog>.cms-post:has(.cms-cover) { grid-template-columns:180px minmax(0,1fr); column-gap:1.5rem; }
.cms-blog .cms-cover { display:block; float:none; grid-column:1; grid-row:1/5; width:180px; height:120px; margin:0; }
.cms-blog .cms-cover img { display:block; width:100%; height:100%; object-fit:cover; border-radius:8px; }
.cms-blog .cms-post:has(.cms-cover)>:not(.cms-cover) { grid-column:2; margin-left:0; }
.cms-blog h2 { grid-row:2; }
.cms-blog h2 a { text-decoration:none; }
.cms-blog .cms-date { grid-row:1; text-transform:uppercase; letter-spacing:.05em; margin:0 0 .5rem; }
.cms-blog .cms-author { display:none; }
.cms-blog .cms-post>p:not(.cms-author):not(.cms-date) { grid-row:3; }
@media(max-width:640px) { .cms-blog>.cms-post:has(.cms-cover){display:flex;flex-direction:column} .cms-blog .cms-cover{width:100%;height:180px;margin-bottom:.75rem} .cms-blog .cms-date{order:1}.cms-blog h2{order:2}.cms-blog .cms-post>p:not(.cms-author):not(.cms-date){order:3} }
/* Adapt the kit's semantic hooks to this site's original blog presentation. */
.cms-content { margin:0 auto; }
.cms-content>.cms-post { display:flex;flex-direction:column; }
.cms-content>.cms-post>a:first-child { display:block;align-self:flex-start;order:0;margin:0 0 1.5rem;opacity:.7;text-decoration:none;font-size:.9rem;color:var(--svc-cms-blog-ink-soft); }
.cms-content>.cms-post>.cms-cover { order:1;display:block;width:100%;margin:0 auto 1.5rem; }
.cms-content>.cms-post>.cms-cover img { display:block;width:100%;max-height:480px;height:auto;object-fit:contain;border-radius:8px; }
.cms-content>.cms-post>.cms-category { order:2;align-self:flex-start;display:inline-block;padding:.2rem .65rem;background:rgba(61,89,68,.08);border-radius:999px;font-size:.75rem;letter-spacing:.04em;text-transform:uppercase;color:var(--svc-cms-blog-accent);font-weight:600;margin:0 0 1rem; }
.cms-content>.cms-post>h1 { order:3;font-size:2.2rem;line-height:1.2;margin:.5rem 0 1rem; }
.cms-byline { order:4;display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.3em;margin:0 0 .5rem;font-size:.85rem;color:var(--svc-cms-blog-ink-soft); }
.cms-byline .cms-author,.cms-byline .cms-date { margin:0;font-size:inherit;color:inherit;letter-spacing:normal;text-transform:none; }
.cms-byline .cms-author { order:0; }.cms-byline .cms-author::before { content:'By '; }
.cms-byline .cms-date { order:1; }.cms-byline .cms-date::before { content:'— '; }
.cms-byline .cms-date+.cms-date,.cms-reading-time { display:none; }
.cms-content>.cms-post>.cms-summary { order:5;padding:1rem 1.25rem;background:rgba(176,125,90,.08);border-left:3px solid var(--svc-cms-blog-accent-warm);border-radius:0 6px 6px 0;margin:1.5rem 0;font-size:.95rem; }
.cms-takeaways { order:6;padding:1.25rem 1.5rem;background:rgba(61,89,68,.05);border-radius:8px;margin:1.5rem 0; }
.cms-post .cms-takeaways-label { font-family:var(--svc-cms-blog-sans);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase;font-weight:700;line-height:1.7;color:var(--svc-cms-blog-accent);margin:0 0 .6rem;display:block; }
.cms-takeaways ul { margin:0;padding-left:1.25rem; }.cms-takeaways li { margin:0 0 .4rem; }
.cms-post-body { order:7; }.cms-content>.cms-post>.cms-tags { display:none; }
.cms-blog>.cms-post { padding:1.5rem 0;border-bottom:1px solid var(--svc-cms-blog-border); }
.cms-blog>.cms-post:first-of-type { padding:0 0 2rem;margin:0 0 1.5rem; }
.cms-blog>.cms-post:last-of-type { border-bottom:none; }
.cms-blog>.cms-post h2 { font-size:1.25rem;line-height:1.3;margin:0 0 .5rem; }
.cms-blog>.cms-post:first-of-type h2 { font-size:1.9rem;margin:0 0 .75rem; }
.cms-blog>.cms-post>p:not(.cms-date):not(.cms-author) { margin:0;color:var(--svc-cms-blog-ink-soft);font-size:.95rem; }
.cms-blog>.cms-post:first-of-type>p:not(.cms-date):not(.cms-author) { font-size:1rem; }
.cms-blog .cms-date { font-size:.8rem;letter-spacing:.04em;color:var(--svc-cms-blog-ink-soft);opacity:.8;margin:0 0 .4rem; }
.cms-blog>.cms-post:first-of-type .cms-date { font-size:.85rem;letter-spacing:.05em;margin:0 0 .5rem; }
.cms-pager { display:flex;align-items:center;justify-content:center;gap:1rem;margin:2rem 0; }
@media(max-width:640px) { .cms-blog .cms-cover{height:120px}.cms-blog>.cms-post:first-of-type h2{font-size:1.5rem} }

.cms-blog{padding-top:2.5rem}
.cms-content>.cms-post>a:first-child{min-height:44px;margin-top:2px}
.cms-content>.cms-post>.cms-category{margin-bottom:.5rem}
.cms-summary+.cms-takeaways{margin-top:0}
.cms-author-bio{order:4;font-size:.85rem;font-style:italic;opacity:.7;color:var(--svc-cms-blog-ink-soft);margin:0 0 2rem}

.cms-post .cms-category{ color: var(--accent); }

.cms-post .cms-summary{ padding: 16px 20px; background: var(--accent-glow); border-left: 3px solid var(--accent); border-radius: 0 6px 6px 0; margin: 0 0 28px; font-size: .98rem; color: var(--text-heading); }

.cms-post .cms-takeaways{ padding: 16px 20px; background: var(--card); border: 1px solid var(--border); border-radius: 6px; margin: 0 0 28px; }

.cms-post .cms-takeaways-label{ display: block; font-size: .68rem; color: var(--accent); text-transform: uppercase; letter-spacing: .12em; font-weight: 700; margin-bottom: 8px; }

.cms-post .cms-takeaways ul{ list-style: disc; padding-left: 22px; }

.cms-post .cms-takeaways li{ margin-bottom: 6px; }

/* Category and date flow together as on the original list cards. */
.cms-blog>.cms-post { display:flex;flex-wrap:wrap;align-content:flex-start;column-gap:.35em;position:relative; }
.cms-blog>.cms-post:has(.cms-cover) { display:flex;padding-left:calc(180px + 1.5rem);min-height:calc(120px + 3rem); }
.cms-blog>.cms-post>.cms-cover { position:absolute;left:0;top:1.5rem;width:180px;height:120px;margin:0; }
.cms-blog>.cms-post:first-of-type>.cms-cover { top:0; }
.cms-blog>.cms-post>.cms-category,.cms-blog>.cms-post>.cms-date { font-family:var(--svc-cms-blog-sans);font-size:.8rem;letter-spacing:.04em;text-transform:uppercase;color:var(--svc-cms-blog-ink-soft);opacity:.8;margin:0 0 .4rem; }
.cms-blog>.cms-post:first-of-type>.cms-category,.cms-blog>.cms-post:first-of-type>.cms-date { font-size:.85rem;letter-spacing:.05em;margin:0 0 .5rem; }
.cms-blog>.cms-post>.cms-category { order:1; }
.cms-blog>.cms-post>.cms-date { order:2; }
.cms-blog>.cms-post>.cms-category::after { content:' ·';white-space:pre; }
.cms-blog>.cms-post>h2 { order:3;flex-basis:100%; }
.cms-blog>.cms-post>p:not(.cms-date):not(.cms-author) { order:4;flex-basis:100%; }
.cms-blog h2 a { color:inherit; }
@media(max-width:640px) {
 .cms-blog>.cms-post:has(.cms-cover) { display:flex;flex-direction:row;padding-left:0; }
 .cms-blog>.cms-post>.cms-cover { position:static;order:0;flex-basis:100%;height:120px;margin:0 0 .75rem; }
}

.cms-blog>.cms-post:has(.cms-cover) { column-gap:.35em; }

.cms-blog>.cms-post>.cms-category { background:none;border:0;border-radius:0;padding:0;font-weight:400; }
@media(max-width:640px) { .cms-blog>.cms-post>.cms-cover img { width:auto;height:120px;max-width:100%; } }

@media(min-width:641px) { .cms-content>.cms-post>a:first-child { min-height:0; } }

.footer__center { font-size:.72rem;color:var(--text-muted); }
.footer__center a { color:inherit;text-decoration:none; }
