/* =============================================================
   ClawClipFactory — Blog / Insights (list, single, archive).
   Scoped to .ccf-insights / .ccf-single-post / .ccf-blog-archive.
   ============================================================= */

.ccf-insights { overflow: hidden; }
.ccf-insights .ccf-insights-hero { padding: clamp(72px, 9vw, 120px) 20px 74px; background: linear-gradient(135deg, #f6f3ec, #fffdf8 60%, #eaf1ed); }
.ccf-insights .ccf-insights-hero__grid { display: grid; grid-template-columns: 1fr auto; align-items: end; gap: 50px; }
.ccf-insights .ccf-insights-hero__grid > * { margin-block-start: 0; }
.ccf-insights .ccf-eyebrow { display: inline-flex; align-items: center; gap: 9px; margin: 0 0 17px; color: var(--wp--preset--color--forest-2); font-size: .75rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.ccf-insights .ccf-eyebrow::before { width: 28px; height: 3px; flex: 0 0 auto; border-radius: 9px; background: var(--wp--preset--color--accent); content: ""; }
.ccf-insights .ccf-insights-hero h1 { max-width: 760px; font-size: clamp(2.7rem, 5.7vw, 5.4rem); font-weight: 800; letter-spacing: -.035em; line-height: 1.08; }
.ccf-insights .ccf-lead { max-width: 670px; color: var(--wp--preset--color--muted); font-size: clamp(1.02rem, 1.5vw, 1.18rem); }
.ccf-insights .ccf-insights-hero .ccf-lead { margin-top: 22px; }
.ccf-insights .ccf-insights-search { width: 380px; max-width: 100%; justify-self: end; }
.ccf-insights .ccf-insights-search .wp-block-search { width: 100%; }
.ccf-insights .ccf-insights-search .wp-block-search__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.ccf-insights .ccf-insights-search .wp-block-search__inside-wrapper { display: flex; width: 100%; padding: 8px; border: 1px solid var(--wp--preset--color--line); border-radius: 15px; background: #fff; box-shadow: 0 12px 30px rgba(16, 39, 38, .07); }
.ccf-insights .ccf-insights-search .wp-block-search__inside-wrapper:focus-within { border-color: var(--wp--preset--color--forest-2); outline: 3px solid rgba(243, 189, 63, .28); outline-offset: 2px; }
.ccf-insights .ccf-insights-search .wp-block-search__input { min-width: 0; flex: 1; padding: 9px 11px; border: 0; color: var(--wp--preset--color--ink); background: transparent; font: inherit; outline: 0; }
.ccf-insights .ccf-insights-search .wp-block-search__input::placeholder { color: #77827f; opacity: 1; }
.ccf-insights .ccf-insights-search .wp-block-search__button { display: grid; width: 44px; height: 44px; flex: 0 0 44px; place-items: center; margin: 0; padding: 0; border: 0; border-radius: 10px; color: var(--wp--preset--color--ink); background: var(--wp--preset--color--accent); cursor: pointer; font-size: 0; }
.ccf-insights .ccf-insights-search .wp-block-search__button::before { content: none; }
.ccf-insights .ccf-insights-search .wp-block-search__button svg { display: block; width: 20px; height: 20px; }
.ccf-insights .ccf-insights-search .wp-block-search__button:hover { background: var(--wp--preset--color--accent-2); }
.ccf-insights .ccf-insights-search .wp-block-search__button:active { transform: scale(.98); }

.ccf-insights .ccf-insights-featured { padding: 0 20px clamp(70px, 8vw, 108px); background: linear-gradient(to bottom, #eef3ef 0 42%, var(--wp--preset--color--paper) 42%); }
.ccf-insights .ccf-featured-query .wp-block-post-template { margin: 0; padding: 0; }
.ccf-insights .ccf-featured-query .wp-block-post { list-style: none; }
.ccf-insights .ccf-featured-card { display: grid; grid-template-columns: 1.18fr .82fr; overflow: hidden; border-radius: var(--wp--custom--radius--large, 32px); background: var(--wp--preset--color--forest); box-shadow: 0 24px 70px rgba(16, 39, 38, .12); }
.ccf-insights .ccf-featured-card > * { margin-block-start: 0; }
.ccf-insights .ccf-featured-media { min-height: 520px; }
.ccf-insights .ccf-featured-media a { display: block; height: 100%; }
.ccf-insights .ccf-featured-media img { width: 100%; height: 100%; object-fit: cover; }
.ccf-insights .ccf-featured-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(34px, 5vw, 62px); color: #fff; }
.ccf-insights .ccf-featured-copy .wp-block-post-terms { margin: 0; }
.ccf-insights .ccf-featured-copy h2 { margin-top: 23px; color: #fff; font-size: clamp(2rem, 3.7vw, 3.25rem); }
.ccf-insights .ccf-featured-copy h2 a { color: #fff; text-decoration: none; }
.ccf-insights .ccf-featured-copy p { margin-top: 18px; color: #bed0ca; }
.ccf-insights .ccf-featured-copy .wp-block-post-date { margin-top: 20px; color: #9eb8b1; font-size: .76rem; }
.ccf-insights .ccf-featured-copy .wp-block-read-more, .ccf-insights .ccf-featured-copy .ccf-read-more { display: inline-flex; align-items: center; gap: 8px; margin-top: 30px; color: var(--wp--preset--color--accent-2); font-weight: 800; text-decoration: none; }

.ccf-insights .ccf-insights-section { padding: clamp(68px, 8vw, 108px) 20px; }
.ccf-insights .ccf-toolbar { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 40px; }
.ccf-insights .ccf-toolbar > * { margin-block-start: 0; }
.ccf-insights .ccf-toolbar h2 { font-size: clamp(1.8rem, 3.3vw, 2.75rem); font-weight: 800; letter-spacing: -.035em; line-height: 1.08; }
.ccf-insights .ccf-category-links { display: flex; flex-wrap: wrap; gap: 8px; }
.ccf-insights .ccf-category-links a { padding: 9px 13px; border: 1px solid var(--wp--preset--color--line); border-radius: 999px; color: var(--wp--preset--color--forest); background: #fff; font-size: .76rem; font-weight: 800; text-decoration: none; }
.ccf-insights .ccf-category-links a:hover, .ccf-insights .ccf-category-links a.ccf-active { border-color: var(--wp--preset--color--forest); color: #fff; background: var(--wp--preset--color--forest); }

.ccf-insights .wp-block-post-template.is-layout-grid { gap: 22px; }
.ccf-insights .ccf-post-card { display: flex; overflow: hidden; min-width: 0; flex-direction: column; height: 100%; border: 1px solid var(--wp--preset--color--line); border-radius: var(--wp--custom--radius--default, 22px); background: #fff; }
.ccf-insights .ccf-post-card > * { margin-block-start: 0; }
.ccf-insights .ccf-post-card .wp-block-post-featured-image { overflow: hidden; aspect-ratio: 16/10; background: var(--wp--preset--color--soft-green); }
.ccf-insights .ccf-post-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .35s ease; }
.ccf-insights .ccf-post-card:hover .wp-block-post-featured-image img { transform: scale(1.035); }
.ccf-insights .ccf-post-card .ccf-post-body { display: flex; flex: 1; flex-direction: column; padding: 25px; }
.ccf-insights .ccf-post-card .wp-block-post-terms { margin: 0; }
.ccf-insights .ccf-post-card .wp-block-post-terms a { display: inline-flex; padding: 6px 9px; border-radius: 7px; color: var(--wp--preset--color--forest); background: var(--wp--preset--color--soft-green); font-size: .67rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.ccf-insights .ccf-post-card .wp-block-post-title { margin: 18px 0 0; font-size: clamp(1.2rem, 1.5vw, 1.45rem); }
.ccf-insights .ccf-post-card .wp-block-post-title a { text-decoration: none; }
.ccf-insights .ccf-post-card .wp-block-post-excerpt { margin: 12px 0 0; color: var(--wp--preset--color--muted); font-size: .88rem; }
.ccf-insights .ccf-post-card .wp-block-post-excerpt__more-text { display: none; }
.ccf-insights .ccf-post-card .wp-block-post-date { margin-top: auto; padding-top: 23px; color: #7a8985; font-size: .76rem; }
.ccf-insights .wp-block-query-pagination { margin-top: 44px; }
.ccf-insights .ccf-principles { padding: clamp(68px, 8vw, 108px) 20px; background: var(--wp--preset--color--cream); }
.ccf-insights .ccf-principles-grid { display: grid; grid-template-columns: .9fr 1.1fr; align-items: center; gap: clamp(45px, 8vw, 95px); }
.ccf-insights .ccf-principles-grid > * { margin-block-start: 0; }
.ccf-insights .ccf-principles-grid h2 { max-width: 610px; font-size: clamp(2rem, 4vw, 3.55rem); font-weight: 800; letter-spacing: -.035em; line-height: 1.08; }
.ccf-insights .ccf-principles-grid .ccf-lead { margin-top: 22px; }
.ccf-insights .ccf-principle-list { display: grid; gap: 13px; }
.ccf-insights .ccf-principle-list > * { margin-block-start: 0; }
.ccf-insights .ccf-principle { display: grid; grid-template-columns: 44px 1fr; gap: 16px; padding: 20px; border: 1px solid var(--wp--preset--color--line); border-radius: 15px; background: #fff; }
.ccf-insights .ccf-principle b { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 12px; background: var(--wp--preset--color--accent); font-family: var(--wp--preset--font-family--heading); }
.ccf-insights .ccf-principle h3 { font-size: 1.1rem; }
.ccf-insights .ccf-principle p { margin-top: 5px; color: var(--wp--preset--color--muted); font-size: .83rem; }
.ccf-insights .ccf-insights-quote { padding: clamp(76px, 9vw, 120px) 20px; }
.ccf-insights .ccf-quote-box { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 32px; padding: clamp(36px, 6vw, 68px); border-radius: var(--wp--custom--radius--large, 32px); color: #fff; background: linear-gradient(135deg, var(--wp--preset--color--forest), #0e2d2b); }
.ccf-insights .ccf-quote-box > * { margin-block-start: 0; }
.ccf-insights .ccf-quote-box h2 { color: #fff; font-size: clamp(2rem, 3.8vw, 3.4rem); }
.ccf-insights .ccf-quote-box p { max-width: 650px; margin-top: 16px; color: #bed0cb; }
.ccf-insights .ccf-quote-box .wp-block-button__link { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 10px; padding: 13px 22px; border: 1px solid transparent; border-radius: 12px; color: var(--wp--preset--color--ink); background: var(--wp--preset--color--accent); box-shadow: 0 9px 25px rgba(184, 130, 0, .16); font-weight: 800; line-height: 1.25; text-decoration: none; transition: .2s ease; }
.ccf-insights .ccf-quote-box .wp-block-button__link:hover { background: var(--wp--preset--color--accent-2); transform: translateY(-2px); }

/* ============ Single post ============ */
.ccf-single-post { overflow-x: clip; }
.ccf-single-post .ccf-breadcrumb { padding: 22px 0; color: var(--wp--preset--color--muted); font-size: .78rem; }
.ccf-single-post .ccf-breadcrumb ol { display: flex; flex-wrap: wrap; gap: 7px; margin: 0; padding: 0; list-style: none; }
.ccf-single-post .ccf-breadcrumb li + li::before { margin-right: 7px; content: "/"; }
.ccf-single-post .ccf-breadcrumb a { color: var(--wp--preset--color--forest-2); font-weight: 700; text-decoration: none; }
.ccf-single-post .ccf-article-hero { padding: clamp(42px, 7vw, 82px) 0 58px; }
.ccf-single-post .ccf-article-hero > * { margin-block-start: 0; }
.ccf-single-post .ccf-article-hero .wp-block-post-terms { margin: 0; }
.ccf-single-post .ccf-article-hero .wp-block-post-terms a { display: inline-flex; padding: 6px 9px; border-radius: 7px; color: var(--wp--preset--color--forest); background: var(--wp--preset--color--soft-green); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.ccf-single-post .ccf-article-hero h1 { max-width: 1000px; margin-top: 23px; font-size: clamp(2.65rem, 5.2vw, 5.1rem); }
.ccf-single-post .ccf-article-hero .wp-block-post-excerpt { margin-top: 24px; max-width: 760px; color: var(--wp--preset--color--muted); font-size: clamp(1.05rem, 1.6vw, 1.22rem); }
.ccf-single-post .ccf-article-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 29px; padding-top: 25px; border-top: 1px solid var(--wp--preset--color--line); color: var(--wp--preset--color--muted); font-size: .79rem; }
.ccf-single-post .ccf-article-meta > * { margin-block-start: 0; }
.ccf-single-post .ccf-article-meta .wp-block-post-author { display: flex; align-items: center; gap: 11px; color: var(--wp--preset--color--ink); font-weight: 800; }
.ccf-single-post .ccf-article-meta .wp-block-post-author::before { display: grid; width: 38px; height: 38px; flex: 0 0 auto; place-items: center; border-radius: 50%; color: #fff; background: var(--wp--preset--color--forest); content: "CC"; font-family: var(--wp--preset--font-family--heading); font-size: .8rem; }
.ccf-single-post .ccf-article-meta .wp-block-post-author__avatar img { width: 38px; height: 38px; border-radius: 50%; }
.ccf-single-post .ccf-article-meta .wp-block-post-author__name { font-weight: 800; }
.ccf-single-post .ccf-hero-image { overflow: hidden; max-width: 1380px; margin-inline: auto; border-radius: var(--wp--custom--radius--large, 32px); }
.ccf-single-post .ccf-hero-image img { width: 100%; max-height: 720px; object-fit: cover; }
.ccf-single-post .ccf-article-section { padding: clamp(62px, 8vw, 100px) 0; }
.ccf-single-post .ccf-article-grid { display: grid; grid-template-columns: 210px minmax(0, 760px) 230px; width: min(calc(100vw - 48px), 1380px); max-width: none; margin-inline: auto; justify-content: space-between; gap: clamp(28px, 3vw, 48px); }
.ccf-single-post .ccf-article-grid > * { margin-block-start: 0; }
.ccf-single-post .ccf-article-toc { position: sticky; top: calc(var(--ccf-header-offset, 0px) + 120px); align-self: start; }
.ccf-single-post .ccf-article-toc > p { margin: 0 0 18px; color: var(--wp--preset--color--forest-2); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.ccf-single-post .ccf-article-toc nav { display: grid; gap: 16px; padding: 4px 0 4px 18px; border-left: 2px solid var(--wp--preset--color--line); }
.ccf-single-post .ccf-article-toc a { color: var(--wp--preset--color--muted); font-size: .82rem; font-weight: 700; line-height: 1.35; text-decoration: none; }
.ccf-single-post .ccf-article-toc a:first-child, .ccf-single-post .ccf-article-toc a:hover, .ccf-single-post .ccf-article-toc a:focus-visible { color: var(--wp--preset--color--forest); }
.ccf-single-post .ccf-article-toc a:focus-visible { border-radius: 3px; outline: 3px solid rgba(243, 189, 63, .45); outline-offset: 3px; }
.ccf-single-post .ccf-article-body { min-width: 0; }
.ccf-single-post .ccf-article-body > * { margin-block-start: 0; }
.ccf-single-post .ccf-article-body .wp-block-post-content { max-width: none; }
.ccf-single-post .ccf-article-body .wp-block-post-content > p { margin-top: 20px; color: #465a56; }
.ccf-single-post .ccf-article-body .wp-block-post-content > p:first-child { font-size: 1.18rem; color: #324945; margin-top: 0; }
.ccf-single-post .ccf-article-body .wp-block-post-content > h2 { margin-top: 60px; }
.ccf-single-post .ccf-article-body .wp-block-post-content > h3 { margin-top: 35px; }
.ccf-single-post .ccf-article-body .wp-block-post-content > ul, .ccf-single-post .ccf-article-body .wp-block-post-content > ol { display: grid; gap: 10px; margin: 20px 0 0; padding-left: 24px; color: #465a56; }
.ccf-single-post .ccf-article-body .wp-block-post-content a { color: var(--wp--preset--color--forest-2); font-weight: 800; text-decoration: underline; text-underline-offset: 3px; }
.ccf-single-post .ccf-article-body .wp-block-post-content figure { margin: 36px 0; }
.ccf-single-post .ccf-article-body .wp-block-post-content figure img { width: 100%; border-radius: var(--wp--custom--radius--default, 22px); }
.ccf-single-post .ccf-article-body .wp-block-post-content figcaption { margin-top: 9px; color: var(--wp--preset--color--muted); font-size: .72rem; }
.ccf-single-post .ccf-article-side { position: sticky; top: calc(var(--ccf-header-offset, 0px) + 120px); align-self: start; }
.ccf-single-post .ccf-article-cta { padding: 22px; border-radius: 18px; color: #fff; background: var(--wp--preset--color--forest); }
.ccf-single-post .ccf-article-cta small { display: block; margin-bottom: 13px; color: var(--wp--preset--color--accent-2); font-size: .69rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.ccf-single-post .ccf-article-cta h3 { color: #fff; font-size: 1.25rem; }
.ccf-single-post .ccf-article-cta p { margin-top: 10px; color: #b8ccc7; font-size: .78rem; }
.ccf-single-post .ccf-article-cta .wp-block-button__link { width: 100%; margin-top: 18px; padding-inline: 14px; display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 10px; border: 1px solid transparent; border-radius: 12px; color: var(--wp--preset--color--ink); background: var(--wp--preset--color--accent); box-shadow: 0 9px 25px rgba(184, 130, 0, .16); font-weight: 800; line-height: 1.25; text-decoration: none; }
.ccf-single-post .ccf-article-cta .wp-block-button__link:hover { background: var(--wp--preset--color--accent-2); }
.ccf-single-post .ccf-share { display: grid; gap: 8px; margin-top: 18px; padding-top: 18px; border-top: 1px solid rgba(255, 255, 255, .14); }
.ccf-single-post .ccf-share a, .ccf-single-post .ccf-share button { padding: 8px; border: 1px solid rgba(255, 255, 255, .2); border-radius: 8px; color: #e2ece9; background: transparent; text-align: center; font-size: .72rem; font-weight: 800; cursor: pointer; text-decoration: none; }
.ccf-single-post .ccf-share a:hover, .ccf-single-post .ccf-share button:hover { border-color: var(--wp--preset--color--accent-2); color: var(--wp--preset--color--accent-2); }
.ccf-single-post .ccf-copy-note { position: fixed; z-index: 300; right: 20px; bottom: 20px; padding: 11px 15px; border-radius: 10px; color: #fff; background: var(--wp--preset--color--forest); box-shadow: 0 24px 70px rgba(16, 39, 38, .12); opacity: 0; pointer-events: none; transform: translateY(10px); transition: .2s; }
.ccf-single-post .ccf-copy-note.ccf-show { opacity: 1; transform: none; }

.ccf-single-post .ccf-related { padding: clamp(70px, 8vw, 105px) 0; background: var(--wp--preset--color--cream); }
.ccf-single-post .ccf-related-head { display: flex; align-items: end; justify-content: space-between; gap: 30px; margin-bottom: 38px; }
.ccf-single-post .ccf-related-head > * { margin-block-start: 0; }
.ccf-single-post .ccf-related-head .ccf-eyebrow { display: inline-flex; align-items: center; gap: 12px; margin: 0 0 18px; color: var(--wp--preset--color--forest-2); font-size: .75rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.ccf-single-post .ccf-related-head .ccf-eyebrow::before { width: 44px; height: 4px; flex: 0 0 auto; border-radius: 9px; background: var(--wp--preset--color--accent); content: ""; }
.ccf-single-post .ccf-related-head .wp-block-button__link { display: inline-flex; min-height: 52px; align-items: center; justify-content: center; gap: 10px; padding: 13px 22px; border: 1px solid #b9c7c2; border-radius: 12px; color: var(--wp--preset--color--ink); background: transparent; font-weight: 800; line-height: 1.25; text-decoration: none; }
.ccf-single-post .ccf-related-head .wp-block-button__link:hover { border-color: var(--wp--preset--color--forest); background: var(--wp--preset--color--soft-green); }
.ccf-single-post .ccf-related-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.ccf-single-post .ccf-related-card { overflow: hidden; height: 100%; border: 1px solid var(--wp--preset--color--line); border-radius: var(--wp--custom--radius--default, 22px); background: #fff; }
.ccf-single-post .ccf-related-card .wp-block-post-featured-image { overflow: hidden; }
.ccf-single-post .ccf-related-card .wp-block-post-featured-image img { width: 100%; aspect-ratio: 16/9; object-fit: cover; }
.ccf-single-post .ccf-related-card .ccf-related-body { padding: 23px; }
.ccf-single-post .ccf-related-card .ccf-related-body .wp-block-post-terms { margin: 0; }
.ccf-single-post .ccf-related-card .ccf-related-body .wp-block-post-terms a { color: var(--wp--preset--color--forest-2); font-size: .68rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.ccf-single-post .ccf-related-card .ccf-related-body .wp-block-post-title { margin-top: 11px; font-size: 1.2rem; }
.ccf-single-post .ccf-related-card .ccf-related-body .wp-block-post-title a { text-decoration: none; }
.ccf-single-post .ccf-back-insights { display: inline-flex; align-items: center; gap: 8px; margin: 38px 0 0; color: var(--wp--preset--color--forest-2); font-weight: 800; text-decoration: none; }

/* TOC pattern inside article body */
.ccf-post-toc { max-width: 760px; margin: 0 0 40px; padding: 22px; border: 1px solid var(--wp--preset--color--line); border-radius: 15px; background: var(--wp--preset--color--cream); }
.ccf-post-toc small { display: block; margin-bottom: 13px; color: var(--wp--preset--color--forest-2); font-size: .69rem; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; }
.ccf-post-toc nav { display: grid; gap: 10px; padding-left: 16px; border-left: 2px solid var(--wp--preset--color--line); }
.ccf-post-toc a { color: var(--wp--preset--color--muted); font-size: .79rem; font-weight: 700; text-decoration: none; }
.ccf-post-toc a:hover { color: var(--wp--preset--color--forest); }

/* Callouts / decision / checklist inside articles */
.ccf-article-body .wp-block-post-content .ccf-callout { margin: 34px 0; padding: 25px; border-left: 5px solid var(--wp--preset--color--accent); border-radius: 0 15px 15px 0; background: var(--wp--preset--color--cream); }
.ccf-article-body .wp-block-post-content .ccf-callout strong { display: block; font-family: var(--wp--preset--font-family--heading); }
.ccf-article-body .wp-block-post-content .ccf-callout p { margin-top: 7px; margin-bottom: 0; font-size: .9rem; color: #465a56; }
.ccf-article-body .wp-block-post-content .ccf-decision { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 28px 0; }
.ccf-article-body .wp-block-post-content .ccf-decision-card { padding: 24px; border: 1px solid var(--wp--preset--color--line); border-radius: 17px; background: #fff; }
.ccf-article-body .wp-block-post-content .ccf-decision-card.ccf-highlight { border-color: var(--wp--preset--color--accent); background: #fffaf0; }
.ccf-article-body .wp-block-post-content .ccf-decision-card > span { display: inline-flex; margin-bottom: 17px; padding: 5px 8px; border-radius: 6px; background: var(--wp--preset--color--soft-green); color: var(--wp--preset--color--forest); font-size: .66rem; font-weight: 800; text-transform: uppercase; }
.ccf-article-body .wp-block-post-content .ccf-decision-card.ccf-highlight > span { background: var(--wp--preset--color--accent); }
.ccf-article-body .wp-block-post-content .ccf-decision-card h3 { font-size: 1.15rem; }
.ccf-article-body .wp-block-post-content .ccf-decision-card p { margin-top: 9px; font-size: .86rem; color: #465a56; }
.ccf-article-body .wp-block-post-content .ccf-checklist { margin: 28px 0; padding: 29px; border-radius: var(--wp--custom--radius--default, 22px); color: #fff; background: var(--wp--preset--color--ink); }
.ccf-article-body .wp-block-post-content .ccf-checklist h3 { color: #fff; margin-top: 0; }
.ccf-article-body .wp-block-post-content .ccf-checklist ul { color: #c1d2ce; }
.ccf-article-body .wp-block-post-content .ccf-checklist li::marker { color: var(--wp--preset--color--accent); }
.ccf-article-body .wp-block-post-content .ccf-article-end { margin-top: 55px; padding-top: 28px; border-top: 1px solid var(--wp--preset--color--line); }
.ccf-article-body .wp-block-post-content .ccf-article-end p { margin-top: 0; color: var(--wp--preset--color--muted); font-size: .82rem; }

/* ============ Blog archive (category/tag) ============ */
.ccf-blog-archive { overflow: hidden; }
.ccf-blog-archive .ccf-blog-archive-hero { padding: clamp(56px, 7vw, 90px) 0; background: linear-gradient(135deg, #f6f3ec, #fffdf8 60%, #eaf1ed); }
.ccf-blog-archive .wp-block-query-title { margin: 0; }
.ccf-blog-archive .wp-block-query-title span { color: var(--wp--preset--color--forest-2); }
.ccf-blog-archive .ccf-blog-archive-list { padding: clamp(60px, 8vw, 100px) 0; }
.ccf-blog-archive .wp-block-post-template.is-layout-grid { gap: 22px; }
.ccf-blog-archive .ccf-post-card { display: flex; overflow: hidden; min-width: 0; flex-direction: column; height: 100%; border: 1px solid var(--wp--preset--color--line); border-radius: var(--wp--custom--radius--default, 22px); background: #fff; }
.ccf-blog-archive .ccf-post-card > * { margin-block-start: 0; }
.ccf-blog-archive .ccf-post-card .wp-block-post-featured-image { overflow: hidden; aspect-ratio: 16/10; background: var(--wp--preset--color--soft-green); }
.ccf-blog-archive .ccf-post-card .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.ccf-blog-archive .ccf-post-card .ccf-post-body { display: flex; flex: 1; flex-direction: column; padding: 25px; }
.ccf-blog-archive .ccf-post-card .wp-block-post-terms { margin: 0; }
.ccf-blog-archive .ccf-post-card .wp-block-post-terms a { display: inline-flex; padding: 6px 9px; border-radius: 7px; color: var(--wp--preset--color--forest); background: var(--wp--preset--color--soft-green); font-size: .67rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; text-decoration: none; }
.ccf-blog-archive .ccf-post-card .wp-block-post-title { margin: 18px 0 0; font-size: clamp(1.2rem, 1.5vw, 1.45rem); }
.ccf-blog-archive .ccf-post-card .wp-block-post-title a { text-decoration: none; }
.ccf-blog-archive .ccf-post-card .wp-block-post-excerpt { margin: 12px 0 0; color: var(--wp--preset--color--muted); font-size: .88rem; }
.ccf-blog-archive .ccf-post-card .wp-block-post-excerpt__more-text { display: none; }
.ccf-blog-archive .ccf-post-card .wp-block-post-date { margin-top: auto; padding-top: 23px; color: #7a8985; font-size: .76rem; }
.ccf-blog-archive .wp-block-query-pagination { margin-top: 44px; }
/* A one- or two-article archive should remain visually centered. */
.ccf-blog-archive .wp-block-post-template.is-layout-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 340px), 360px)); justify-content: center; }

/* ============ Responsive ============ */
@media (max-width: 1240px) {
  .ccf-single-post .ccf-article-grid { grid-template-columns: 200px minmax(0, 760px); }
  .ccf-single-post .ccf-article-side { display: none; }
}
@media (max-width: 980px) {
  .ccf-insights .ccf-insights-hero__grid, .ccf-insights .ccf-principles-grid { grid-template-columns: 1fr; }
  .ccf-insights .ccf-insights-search { justify-self: start; }
  .ccf-insights .ccf-featured-card { grid-template-columns: 1fr; }
  .ccf-insights .ccf-featured-media { min-height: 390px; }
  .ccf-insights .wp-block-post-template.is-layout-grid { grid-template-columns: 1fr 1fr; }
  .ccf-single-post .ccf-related-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 700px) {
  .ccf-insights .ccf-insights-hero { padding: 58px 14px 74px; }
  .ccf-insights .ccf-insights-featured, .ccf-insights .ccf-insights-section, .ccf-insights .ccf-principles, .ccf-insights .ccf-insights-quote { padding-inline: 14px; }
  .ccf-insights .ccf-insights-hero__grid { gap: 30px; }
  .ccf-insights .ccf-insights-search { width: 100%; }
  .ccf-insights .ccf-featured-media { min-height: 280px; }
  .ccf-insights .ccf-toolbar { align-items: flex-start; flex-direction: column; }
  .ccf-insights .wp-block-post-template.is-layout-grid { grid-template-columns: 1fr; }
  .ccf-insights .ccf-quote-box, .ccf-single-post .ccf-quote-box { grid-template-columns: 1fr; }
  .ccf-insights .ccf-quote-box .wp-block-button__link { width: 100%; }
  .ccf-single-post .ccf-article-hero { padding-top: 30px; }
  .ccf-single-post .ccf-hero-image { border-radius: 0; }
  .ccf-single-post .ccf-article-grid { grid-template-columns: minmax(0, 1fr); width: min(calc(100vw - 32px), 760px); }
  .ccf-single-post .ccf-article-toc { position: static; padding: 22px; border: 1px solid var(--wp--preset--color--line); border-radius: 15px; background: var(--wp--preset--color--cream); }
  .ccf-single-post .ccf-article-toc nav { grid-template-columns: 1fr 1fr; gap: 12px 18px; }
  .ccf-single-post .ccf-related-grid { grid-template-columns: 1fr; }
  .ccf-single-post .ccf-related-head { align-items: flex-start; flex-direction: column; }
  .ccf-blog-archive .wp-block-post-template.is-layout-grid { grid-template-columns: 1fr; }
}
@media (max-width: 460px) {
  .ccf-single-post .ccf-article-toc nav { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
  .ccf-insights .ccf-quote-box .wp-block-button__link, .ccf-single-post .ccf-article-cta .wp-block-button__link { transition: none; }
  .ccf-insights .ccf-post-card .wp-block-post-featured-image img { transition: none; }
}
