/* Maple Kanzlei News: scoped styles, using the active Kanzlei theme's tokens. */
.mkn-page, .mkn-news-layout, .mkn-section-intro, .mkn-source-box {
	--mkn-brand: var(--bf-brand, #27335d);
	--mkn-accent: var(--bf-accent, #ff5e57);
	--mkn-accent-ink: var(--bf-accent-text, #ad3935);
	--mkn-ink: var(--bf-ink, #111827);
	--mkn-muted: #596477;
	--mkn-border: var(--bf-border, #d8dce4);
	--mkn-surface: #f6f7fa;
	--mkn-radius: var(--bf-card-radius, 1rem);
	color: var(--mkn-ink);
	font-family: inherit;
	line-height: 1.65;
}
.mkn-page *, .mkn-news-layout *, .mkn-section-intro * { box-sizing: border-box; }
.mkn-page { background: #fff; }
.mkn-container { width: min(100%, var(--bf-container-width, 80rem)); margin-inline: auto; padding-inline: var(--bf-gutter, 2rem); }
.mkn-page-hero { background: radial-gradient(ellipse at 80% 15%, var(--bf-gradient-light, #3e507c), var(--mkn-brand) 50%, var(--bf-gradient-edge, #1d2746)); padding-block: clamp(2rem, 5vw, 4.5rem); color: var(--bf-on-brand, #fff); }
.mkn-page-hero h1 { max-width: 22ch; color: inherit; margin: 1rem 0 1.25rem; font-size: clamp(2.1rem, 4.5vw, 3.75rem); font-weight: 700; line-height: 1.15; letter-spacing: -.035em; overflow-wrap: anywhere; text-wrap: balance; }
.mkn-page-hero--article h1 { max-width: 34ch; font-size: clamp(2rem, 3.7vw, 3.3rem); }
.mkn-hero-intro { margin: 0; font-size: 1.0625rem; opacity: .9; }
.mkn-eyebrow { display: flex; align-items: center; gap: .6rem; margin: 0 0 .8rem; color: var(--mkn-accent-ink); font-size: .72rem; font-weight: 700; letter-spacing: .11em; text-transform: uppercase; }
.mkn-eyebrow::before { content: ''; flex: 0 0 .4rem; width: .4rem; height: .4rem; background: var(--mkn-accent); border-radius: 50%; }
.mkn-page-hero .mkn-eyebrow { color: var(--bf-accent-on-brand, #ff8d87); }
.mkn-breadcrumbs { display: flex; gap: .7rem; flex-wrap: wrap; align-items: center; font-size: .78rem; margin-bottom: 2.5rem; color: inherit; opacity: .9; }
.mkn-breadcrumbs a { color: inherit; text-decoration: none; }
.mkn-breadcrumbs a:hover { text-decoration: underline; text-underline-offset: .25em; }
.mkn-page-body { padding-block: clamp(2.5rem, 5vw, 4.5rem); }
.mkn-news-shortcode { width: min(100%, var(--bf-container-width, 80rem)); padding: 80px 0; margin-inline: auto; box-sizing: border-box; padding-inline: 1.5rem; }
.mkn-section-intro { margin-block: 0 2.5rem; }
.mkn-section-intro h2 { max-width: 48rem; color: var(--mkn-brand); font-size: clamp(2rem, 3.5vw, 3rem); font-weight: 700; line-height: 1.18; letter-spacing: -.03em; margin: 0 0 1rem; }

.mkn-news-layout { display: grid; grid-template-columns: minmax(0, 1fr) 18.5rem; gap: clamp(2rem, 4vw, 3.5rem); align-items: start; width: 100%; }
.mkn-container.mkn-news-layout { width: min(100%, var(--bf-container-width, 80rem)); }
.mkn-news-layout--full { grid-template-columns: minmax(0, 1fr); }
.mkn-news-main, .mkn-news-copy, .mkn-article { min-width: 0; }
.mkn-list-toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem; padding-block: .1rem 1rem; margin-bottom: .5rem; border-bottom: 1px solid var(--mkn-border); color: var(--mkn-muted); font-size: .78rem; }
.mkn-list-toolbar > :first-child { font-weight: 700; color: var(--mkn-brand); }
.mkn-news-list { display: flex; flex-direction: column; }
.mkn-news-item { display: grid; grid-template-columns: minmax(160px, 29%) minmax(0, 1fr); gap: clamp(1rem, 2.2vw, 1.75rem); align-items: start; padding-block: 1.8rem; border-bottom: 1px solid var(--mkn-border); }
.mkn-news-visual { aspect-ratio: 4 / 3; overflow: hidden; border-radius: var(--mkn-radius); background: var(--mkn-surface); }
.mkn-news-image { display: block; width: 100%; height: 100%; object-fit: cover; }
.mkn-news-meta { display: flex; align-items: center; flex-wrap: wrap; gap: .45rem .8rem; color: var(--mkn-muted); font-size: .72rem; line-height: 1.5; }
.mkn-news-category { display: inline-flex; padding: .28rem .65rem; border-radius: 2rem; background: #fceceb; color: var(--mkn-accent-ink); font-size: .68rem; font-weight: 700; text-decoration: none; }
.mkn-news-category:hover { text-decoration: underline; text-underline-offset: .2em; }
.mkn-news-source { font-weight: 500; }
.mkn-news-source::before { content: '·'; margin-right: .65rem; }
.mkn-news-title { font-size: clamp(1.15rem, 1.7vw, 1.4rem); line-height: 1.35; font-weight: 700; letter-spacing: -.02em; margin: .75rem 0 .65rem; color: var(--mkn-brand); overflow-wrap: anywhere; }
.mkn-news-title a { color: inherit; text-decoration: none; }
.mkn-news-title a:hover { text-decoration: underline; text-decoration-color: var(--mkn-accent); text-underline-offset: .18em; }
.mkn-news-excerpt { margin: 0 0 .9rem; color: var(--mkn-muted); font-size: .88rem; line-height: 1.75; overflow-wrap: anywhere; }
.mkn-news-link { display: inline-flex; align-items: center; gap: .55rem; color: var(--mkn-brand); font-size: .79rem; font-weight: 700; text-decoration: none; }
.mkn-news-link > span { display: inline-flex; justify-content: center; align-items: center; width: 1.6rem; height: 1.6rem; border-radius: 50%; background: var(--mkn-accent); color: #111827; transition: transform .18s ease; }
.mkn-news-link:hover { text-decoration: underline; text-underline-offset: .2em; }
.mkn-news-link:hover > span { transform: translate(2px, -2px); }
.mkn-sidebar-panel { background: var(--mkn-surface); padding: 1.5rem; border: 1px solid #eceef3; border-radius: var(--mkn-radius); }
.mkn-sidebar-panel + .mkn-sidebar-panel { margin-top: 1.5rem; }
.mkn-sidebar-panel h2 { font-size: 1.08rem; font-weight: 700; letter-spacing: -.02em; line-height: 1.3; margin: 0 0 1.2rem; color: var(--mkn-brand); }
.mkn-news-layout .mkn-category-list, .mkn-news-layout .mkn-recent-list { margin: 0; padding: 0; list-style: none; }
.mkn-news-layout .mkn-category-list li::before, .mkn-news-layout .mkn-recent-list li::before { content: none; display: none; }
.mkn-category-list li + li { border-top: 1px solid var(--mkn-border); }
.mkn-category-list a { display: flex; justify-content: space-between; gap: .8rem; align-items: center; padding-block: .8rem; color: var(--mkn-brand); text-decoration: none; font-size: .8rem; font-weight: 500; }
.mkn-category-list a:hover, .mkn-category-list a[aria-current='page'] { color: var(--mkn-accent-ink); }
.mkn-category-list a[aria-current='page'] { font-weight: 800; }
.mkn-category-count { min-width: 1.6rem; padding: .05rem .4rem; text-align: center; background: #fff; border-radius: 1rem; color: var(--mkn-muted); font-size: .7rem; }
.mkn-sidebar-recent { background: #fff; }
.mkn-sidebar-recent .mkn-eyebrow { font-size: .6rem; }
.mkn-recent-list li { display: grid; grid-template-columns: 3.5rem minmax(0, 1fr); gap: .8rem; padding-block: 1rem; }
.mkn-recent-list li:first-child { padding-top: 0; }
.mkn-recent-list li + li { border-top: 1px solid var(--mkn-border); }
.mkn-recent-image { width: 3.5rem; height: 3.5rem; overflow: hidden; border-radius: .6rem; }
.mkn-recent-list time { display: block; font-size: .65rem; color: var(--mkn-muted); margin-bottom: .25rem; }
.mkn-recent-list h3 { margin: 0; font-size: .77rem; line-height: 1.55; font-weight: 600; overflow-wrap: anywhere; }
.mkn-recent-list a { color: var(--mkn-brand); text-decoration: none; }
.mkn-recent-list a:hover { text-decoration: underline; text-underline-offset: .2em; }
.mkn-news-pagination { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 1.25rem; margin-block: 2rem 0; }
.mkn-pagination-status { color: var(--mkn-muted); font-size: .75rem; }
.mkn-news-pagination ul.page-numbers { display: flex; flex-wrap: wrap; align-items: center; gap: .4rem; list-style: none; margin: 0; padding: 0; }
.mkn-news-pagination ul.page-numbers li { margin: 0; padding: 0; }
.mkn-news-pagination ul.page-numbers li::before { content: none; display: none; }
.mkn-news-pagination a.page-numbers, .mkn-news-pagination span.page-numbers { display: inline-flex; justify-content: center; align-items: center; min-width: 2.65rem; min-height: 2.65rem; padding: .45rem .7rem; border: 1px solid var(--mkn-border); border-radius: .65rem; color: var(--mkn-brand); background: #fff; font-size: .78rem; font-weight: 600; text-decoration: none; }
.mkn-news-pagination a.page-numbers:hover { border-color: var(--mkn-brand); background: var(--mkn-surface); }
.mkn-news-pagination span.current { background: var(--mkn-brand); color: #fff; border-color: var(--mkn-brand); }
.mkn-news-pagination span.dots { border: 0; background: transparent; padding-inline: 0; min-width: 1.2rem; }
.mkn-page-hero .mkn-news-meta { color: #e0e5ef; }
.mkn-page-hero .mkn-news-category { background: var(--mkn-accent); color: #111827; }
.mkn-article-visual { aspect-ratio: 16 / 9; margin: 0 0 2rem; border-radius: var(--bf-radius, 1.5rem); overflow: hidden; background: var(--mkn-surface); }
.mkn-article-body { max-width: 50rem; }
.mkn-article-lead { font-size: 1.2rem; line-height: 1.7; font-weight: 500; color: var(--mkn-brand); margin: 0 0 2rem; }
.mkn-article-content { font-size: 1rem; line-height: 1.85; overflow-wrap: anywhere; }
.mkn-article-content > :first-child { margin-top: 0; }
.mkn-article-content p, .mkn-article-content ul, .mkn-article-content ol { margin-block: 0 1.5rem; }
.mkn-article-content ul, .mkn-article-content ol { padding-left: 1.5rem; }
.mkn-article-content ul { list-style: disc; }
.mkn-article-content ol { list-style: decimal; }
.mkn-article-content h2, .mkn-article-content h3, .mkn-article-content h4 { color: var(--mkn-brand); font-weight: 700; line-height: 1.3; margin-block: 2rem 1rem; }
.mkn-article-content h2 { font-size: 1.7rem; }
.mkn-article-content h3 { font-size: 1.35rem; }
.mkn-article-content a { color: var(--mkn-accent-ink); text-decoration: underline; text-underline-offset: .2em; }
.mkn-article-content blockquote { border-left: 3px solid var(--mkn-accent); margin: 2rem 0; padding: 1rem 1.5rem; background: var(--mkn-surface); }
.mkn-article-content img { max-width: 100%; height: auto; border-radius: var(--mkn-radius); }
.mkn-article-content table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.mkn-article-content th, .mkn-article-content td { padding: .75rem; border: 1px solid var(--mkn-border); }
.mkn-source-box { border: 1px solid var(--mkn-border); border-left: 3px solid var(--mkn-accent); border-radius: .75rem; padding: 1.3rem 1.5rem; margin-block: 2rem; background: var(--mkn-surface); font-size: .85rem; }
.mkn-source-box p { margin: 0 0 .65rem; color: var(--mkn-brand); }
.mkn-source-box .mkn-news-source::before { content: none; margin: 0; }
.mkn-source-box a { font-weight: 700; color: var(--mkn-brand); text-underline-offset: .2em; }
.mkn-source-date { color: var(--mkn-muted); }
.mkn-back-link { display: inline-flex; align-items: center; gap: .6rem; padding: .75rem 1.1rem; margin-top: 1.5rem; border: 1px solid var(--mkn-border); border-radius: 2rem; font-weight: 600; font-size: .85rem; color: var(--mkn-brand); text-decoration: none; }
.mkn-back-link:hover { background: var(--mkn-surface); }
.mkn-news-empty { padding: 3rem 1.5rem; margin-top: 1rem; background: var(--mkn-surface); border-radius: var(--mkn-radius); }
.mkn-news-empty h2 { font-size: 1.3rem; font-weight: 700; color: var(--mkn-brand); margin: 0 0 .6rem; }
.mkn-news-empty p { color: var(--mkn-muted); }
.mkn-news-layout a:focus-visible, .mkn-page a:focus-visible, .mkn-source-box a:focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }
.mkn-news-sidebar { position: sticky; top: 25px; }
@media (max-width: 1000px) {
	.mkn-news-layout { grid-template-columns: minmax(0, 1fr); gap: 2.5rem; }
	.mkn-news-sidebar { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
	.mkn-sidebar-panel + .mkn-sidebar-panel { margin-top: 0; }
}
@media (max-width: 600px) {
	.mkn-container { padding-inline: 1.25rem; }
	.mkn-news-item { grid-template-columns: minmax(0, 1fr); gap: 1rem; padding-block: 1.5rem; }
	.mkn-news-visual { aspect-ratio: 16 / 9; }
	.mkn-news-title { font-size: 1.3rem; }
	.mkn-news-meta { gap: .4rem .65rem; }
	.mkn-news-sidebar { grid-template-columns: minmax(0, 1fr); }
	.mkn-page-hero h1 { font-size: 2rem; }
	.mkn-breadcrumbs { margin-bottom: 1.5rem; }
	.mkn-news-pagination { justify-content: center; }
	.mkn-pagination-status { flex-basis: 100%; text-align: center; }
	.mkn-news-pagination a.page-numbers, .mkn-news-pagination span.page-numbers { min-width: 2.5rem; min-height: 2.75rem; }
}
@media (prefers-reduced-motion: reduce) { .mkn-news-link > span { transition: none; } }
