/* Blog only. The existing site header, footer and homepage keep their own containers. */
body.mcppk-blog { background: #fff; }
body.mcppk-blog #page.site.grid-container.container,
body.mcppk-blog #page > .site-content { box-sizing: border-box; width: 100%; max-width: none; margin: 0; padding: 0; }
body.mcppk-blog #page > .site-content { display: block; min-width: 0; }
body.mcppk-blog .mcppk-blog { --blog-blue: #427bbd; --blog-action: #285f9a; --blog-ink: #173a5e; --blog-muted: #506579; --blog-line: #dce8f4; color: var(--blog-ink); background: #f7fbff; padding-block: 24px 56px; font-size: 17px; line-height: 1.6; overflow-wrap: anywhere; }
body.mcppk-blog .mcppk-blog *, body.mcppk-blog .mcppk-blog *::before, body.mcppk-blog .mcppk-blog *::after { box-sizing: border-box; }
body.mcppk-blog .mcppk-blog-container { width: 100%; max-width: 1200px; margin-inline: auto; padding-inline: 24px; }
body.mcppk-blog .mcppk-blog h1, body.mcppk-blog .mcppk-blog h2, body.mcppk-blog .mcppk-blog h3, body.mcppk-blog .mcppk-blog p, body.mcppk-blog .mcppk-blog ul, body.mcppk-blog .mcppk-blog ol { margin: 0; }
body.mcppk-blog .mcppk-blog h1, body.mcppk-blog .mcppk-blog h2, body.mcppk-blog .mcppk-blog h3 { color: var(--blog-ink); font-weight: 700; }
body.mcppk-blog .mcppk-blog a { color: var(--blog-action); text-underline-offset: .2em; text-decoration-thickness: 1px; }
body.mcppk-blog .mcppk-blog a:hover { color: #184b80; text-decoration-thickness: 2px; }
body.mcppk-blog .mcppk-blog :is(a, button, input, textarea, summary):focus-visible { outline: 3px solid #185f9a; outline-offset: 4px; }
body.mcppk-blog .mcppk-blog-breadcrumbs { margin-block-end: 24px; font-size: 14px; color: var(--blog-muted); }
body.mcppk-blog .mcppk-blog-breadcrumbs ol { display: flex; flex-wrap: wrap; list-style: none; padding: 0; gap: 8px; }
body.mcppk-blog .mcppk-blog-breadcrumbs li { display: flex; align-items: center; gap: 8px; }
body.mcppk-blog .mcppk-blog-breadcrumbs li + li::before { content: '/'; color: #7a91a7; }
body.mcppk-blog .mcppk-blog-header { display: flex; justify-content: space-between; align-items: end; gap: 24px; margin-block-end: 28px; }
body.mcppk-blog .mcppk-blog-header > div { min-width: 0; }
body.mcppk-blog .mcppk-blog-eyebrow { color: var(--blog-action); font-size: 13px; font-weight: 700; margin-block-end: 8px; }
body.mcppk-blog .mcppk-blog-header h1 { font-size: clamp(30px, 3.5vw, 42px); line-height: 1.18; text-wrap: balance; }
body.mcppk-blog .mcppk-blog-lead { font-size: 17px; color: var(--blog-muted); margin-block-start: 12px; max-width: 60ch; }
body.mcppk-blog .mcppk-blog-search { width: 100%; max-width: 350px; flex: 0 0 350px; }
body.mcppk-blog .mcppk-blog-search label { display: block; font-size: 14px; font-weight: 700; margin-block-end: 8px; }
body.mcppk-blog .mcppk-blog-search-control { display: flex; gap: 8px; min-width: 0; }
body.mcppk-blog .mcppk-blog-search input { width: 100%; min-width: 0; min-height: 46px; padding: 10px 12px; background: #fff; color: var(--blog-ink); border: 1px solid #a9c2db; border-radius: 10px; font: inherit; font-size: 16px; }
body.mcppk-blog .mcppk-blog-search button { flex: 0 0 auto; min-height: 46px; border: 0; border-radius: 10px; padding: 10px 16px; background: var(--blog-action); color: #fff; font: inherit; font-size: 16px; font-weight: 700; cursor: pointer; }
body.mcppk-blog .mcppk-blog-search button:hover { background: #184b80; }
body.mcppk-blog .mcppk-blog-categories { margin-block-end: 24px; }
body.mcppk-blog .mcppk-blog-categories ul { display: flex; flex-wrap: wrap; list-style: none; padding: 0; gap: 10px; }
body.mcppk-blog .mcppk-blog-categories a { display: inline-flex; align-items: center; min-height: 44px; gap: 12px; background: #fff; padding: 8px 16px; border-radius: 20px; font-size: 15px; font-weight: 700; text-decoration: none; }
body.mcppk-blog .mcppk-blog-categories a[aria-current="page"] { background: var(--blog-action); color: #fff; }
body.mcppk-blog .mcppk-blog-categories a span { font-size: 13px; font-weight: 400; }
body.mcppk-blog .mcppk-blog-layout { display: grid; grid-template-columns: minmax(0, 1fr) 300px; align-items: start; gap: 24px; }
body.mcppk-blog .mcppk-blog-feed, body.mcppk-blog .mcppk-blog-article, body.mcppk-blog .mcppk-blog-sidebar { min-width: 0; }
body.mcppk-blog .mcppk-blog-feed { display: grid; gap: 18px; }
body.mcppk-blog .mcppk-blog-card { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 22px; padding: 18px; border-radius: 16px; background: #fff; box-shadow: 0 5px 22px rgba(34, 77, 120, .055); }
body.mcppk-blog .mcppk-blog-card--text { grid-template-columns: minmax(0, 1fr); }
body.mcppk-blog .mcppk-blog-card-media { display: block; align-self: start; border-radius: 11px; overflow: hidden; background: #edf4fb; }
body.mcppk-blog .mcppk-blog-card-media img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; }
body.mcppk-blog .mcppk-blog-card-body { display: flex; flex-direction: column; align-items: start; gap: 12px; min-width: 0; }
body.mcppk-blog .mcppk-blog-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; font-size: 13px; line-height: 1.4; color: var(--blog-muted); }
body.mcppk-blog .mcppk-blog-meta time { white-space: nowrap; }
body.mcppk-blog .mcppk-blog-category { display: inline-block; border-radius: 16px; padding: 4px 10px; background: #eef5fd; text-decoration: none; font-weight: 700; }
body.mcppk-blog .mcppk-blog-card h2 { font-size: 22px; line-height: 1.3; text-wrap: pretty; }
body.mcppk-blog .mcppk-blog-card h2 a { color: var(--blog-ink); text-decoration: none; }
body.mcppk-blog .mcppk-blog-card h2 a:hover { color: var(--blog-action); text-decoration: underline; }
body.mcppk-blog .mcppk-blog-excerpt { color: var(--blog-muted); font-size: 15px; line-height: 1.55; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
body.mcppk-blog .mcppk-blog-link { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; font-size: 15px; font-weight: 700; text-decoration: none; }
body.mcppk-blog .mcppk-blog-link:hover { text-decoration: underline; }
body.mcppk-blog .mcppk-blog-link > span[aria-hidden="true"] { font-size: 20px; }
body.mcppk-blog .mcppk-blog-sidebar { display: grid; gap: 20px; }
body.mcppk-blog .mcppk-blog-sidebar-section { background: #fff; padding: 24px; border-radius: 16px; }
body.mcppk-blog .mcppk-blog-sidebar-section--blue { background: #eaf4ff; }
body.mcppk-blog .mcppk-blog-sidebar h2 { font-size: 20px; line-height: 1.3; margin-block-end: 12px; }
body.mcppk-blog .mcppk-blog-sidebar p:not(.mcppk-blog-eyebrow) { color: var(--blog-muted); font-size: 15px; line-height: 1.55; }
body.mcppk-blog .mcppk-blog-sidebar nav ul { list-style: none; padding: 0; margin-block-start: 16px; }
body.mcppk-blog .mcppk-blog-sidebar nav li + li { border-top: 1px solid #cfdfef; }
body.mcppk-blog .mcppk-blog-sidebar nav a { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 48px; padding-block: 9px; text-decoration: none; font-size: 15px; font-weight: 700; }
body.mcppk-blog .mcppk-blog-sidebar nav a:hover { text-decoration: underline; }
body.mcppk-blog .mcppk-blog-sidebar nav a span { font-size: 20px; }
body.mcppk-blog .mcppk-blog-sidebar .mcppk-blog-link { margin-block-start: 12px; }
body.mcppk-blog .mcppk-blog-all { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-height: 44px; font-size: 15px; font-weight: 700; text-decoration: none; }
body.mcppk-blog .mcppk-blog-all span { display: inline-grid; place-items: center; min-width: 30px; min-height: 30px; background: #eef5fd; border-radius: 16px; font-weight: 400; }
body.mcppk-blog .mcppk-blog-recent { list-style: none; padding: 0; }
body.mcppk-blog .mcppk-blog-recent li + li { border-top: 1px solid var(--blog-line); }
body.mcppk-blog .mcppk-blog-recent a { display: flex; flex-direction: column; gap: 6px; padding-block: 14px; text-decoration: none; font-size: 15px; line-height: 1.45; }
body.mcppk-blog .mcppk-blog-recent a:hover span { text-decoration: underline; }
body.mcppk-blog .mcppk-blog-recent time { color: var(--blog-muted); font-size: 12px; }
body.mcppk-blog .mcppk-blog-pagination { margin-block-start: 12px; }
body.mcppk-blog .mcppk-blog-pagination ul { display: flex; flex-wrap: wrap; justify-content: center; list-style: none; padding: 0; gap: 8px; }
body.mcppk-blog .mcppk-blog-pagination a, body.mcppk-blog .mcppk-blog-pagination span:not(.mcppk-blog-pagination-gap) { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; padding: 8px 12px; background: #fff; border-radius: 10px; font-size: 15px; text-decoration: none; }
body.mcppk-blog .mcppk-blog-pagination [aria-current="page"] { color: #fff; background: var(--blog-action) !important; font-weight: 700; }
body.mcppk-blog .mcppk-blog-pagination-gap { display: inline-flex; align-items: center; min-height: 44px; padding-inline: 4px; }
body.mcppk-blog .mcppk-blog-empty { background: #fff; border-radius: 16px; padding: 32px; }
body.mcppk-blog .mcppk-blog-empty h2 { font-size: 24px; margin-block-end: 12px; }
body.mcppk-blog .mcppk-blog-empty p { color: var(--blog-muted); }
body.mcppk-blog .mcppk-blog-empty a { margin-block-start: 16px; }
body.mcppk-blog .mcppk-blog-article { background: #fff; border-radius: 16px; padding: clamp(22px, 3vw, 38px); }
body.mcppk-blog .mcppk-blog-article-header { margin-block-end: 28px; }
body.mcppk-blog .mcppk-blog-article-header h1 { font-size: clamp(26px, 3vw, 36px); line-height: 1.25; margin-block-start: 16px; text-wrap: balance; max-width: 34ch; }
body.mcppk-blog .mcppk-blog-content { font-size: 18px; line-height: 1.75; }
body.mcppk-blog .mcppk-blog-content p, body.mcppk-blog .mcppk-blog-content ul, body.mcppk-blog .mcppk-blog-content ol, body.mcppk-blog .mcppk-blog-content blockquote, body.mcppk-blog .mcppk-blog-content figure { margin-block: 0 1.25em; }
body.mcppk-blog .mcppk-blog-content ul, body.mcppk-blog .mcppk-blog-content ol { padding-inline-start: 1.4em; }
body.mcppk-blog .mcppk-blog-content h2 { font-size: 25px; line-height: 1.35; margin-block: 1.4em .7em; }
body.mcppk-blog .mcppk-blog-content h3 { font-size: 21px; line-height: 1.4; margin-block: 1.3em .65em; }
body.mcppk-blog .mcppk-blog-content img { display: block; max-width: 100%; height: auto; border-radius: 10px; }
body.mcppk-blog .mcppk-blog-content .article__img { margin-block-end: 28px; }
body.mcppk-blog .mcppk-blog-content .article__img > br { display: none; }
body.mcppk-blog .mcppk-blog-content .article__img-hide { display: none; }
body.mcppk-blog .mcppk-blog-content table { max-width: 100%; display: block; overflow-x: auto; }
body.mcppk-blog .mcppk-blog-content > :last-child, body.mcppk-blog .mcppk-blog-content .article-page > :last-child { margin-block-end: 0; }
body.mcppk-blog .mcppk-blog-neighbours { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; margin-block-start: 36px; padding-block-start: 24px; border-top: 1px solid var(--blog-line); }
body.mcppk-blog .mcppk-blog-neighbours a { display: flex; flex-direction: column; gap: 8px; font-size: 15px; text-decoration: none; }
body.mcppk-blog .mcppk-blog-neighbours a span { color: var(--blog-muted); font-size: 13px; }
body.mcppk-blog .mcppk-blog-neighbours a:hover strong { text-decoration: underline; }
body.mcppk-blog .mcppk-blog-comments { margin-block-start: 36px; }
body.mcppk-blog .mcppk-blog-comments .comments-area { margin: 0; padding: 24px 0 0; border-top: 1px solid var(--blog-line); background: transparent; }
body.mcppk-blog .mcppk-blog-comments :is(input:not([type="checkbox"]), textarea) { width: 100%; max-width: 100%; font: inherit; border-radius: 8px; }
body.mcppk-blog .mcppk-blog-comments input[type="submit"] { background: var(--blog-action); color: #fff; min-height: 46px; width: auto; cursor: pointer; }
body.mcppk-blog .mcppk-blog-comments p, body.mcppk-blog .mcppk-blog-comments h3 { margin-block-end: 16px; }
body.mcppk-blog .mcppk-blog-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; }
@media (max-width: 1000px) {
  body.mcppk-blog .mcppk-blog-layout { grid-template-columns: minmax(0, 1fr) 280px; gap: 20px; }
  body.mcppk-blog .mcppk-blog-card { grid-template-columns: 180px minmax(0, 1fr); gap: 18px; }
  body.mcppk-blog .mcppk-blog-card--text { grid-template-columns: minmax(0, 1fr); }
  body.mcppk-blog .mcppk-blog-card h2 { font-size: 20px; }
}
@media (max-width: 850px) {
  body.mcppk-blog .mcppk-blog-layout { grid-template-columns: minmax(0, 1fr); }
  body.mcppk-blog .mcppk-blog-sidebar { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.mcppk-blog .mcppk-blog-header { align-items: start; flex-direction: column; }
  body.mcppk-blog .mcppk-blog-search { flex-basis: auto; max-width: 500px; }
  body.mcppk-blog .mcppk-blog-card { grid-template-columns: 220px minmax(0, 1fr); }
  body.mcppk-blog .mcppk-blog-card--text { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  body.mcppk-blog .mcppk-blog { padding-block: 20px 40px; font-size: 16px; }
  body.mcppk-blog .mcppk-blog-container { padding-inline: 16px; }
  body.mcppk-blog .mcppk-blog-breadcrumbs { margin-block-end: 20px; font-size: 13px; }
  body.mcppk-blog .mcppk-blog-card { grid-template-columns: minmax(0, 1fr); padding: 18px; gap: 16px; }
  body.mcppk-blog .mcppk-blog-card-media img { aspect-ratio: 16 / 9; }
  body.mcppk-blog .mcppk-blog-card h2 { font-size: 22px; }
  body.mcppk-blog .mcppk-blog-sidebar { grid-template-columns: minmax(0, 1fr); }
  body.mcppk-blog .mcppk-blog-article { padding: 22px 18px; }
  body.mcppk-blog .mcppk-blog-content { font-size: 17px; line-height: 1.7; }
  body.mcppk-blog .mcppk-blog-content h2 { font-size: 23px; }
  body.mcppk-blog .mcppk-blog-content h3 { font-size: 20px; }
  body.mcppk-blog .mcppk-blog-neighbours { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) { body.mcppk-blog .mcppk-blog *, body.mcppk-blog .mcppk-blog *::before, body.mcppk-blog .mcppk-blog *::after { transition: none !important; scroll-behavior: auto !important; } }
@media (forced-colors: active) { body.mcppk-blog .mcppk-blog-card, body.mcppk-blog .mcppk-blog-sidebar-section { border: 1px solid CanvasText; } body.mcppk-blog .mcppk-blog-search button { border: 1px solid ButtonText; } }
