/* Same theme tokens as Maple Kanzlei News, independently scoped. */
.mks { --mks-brand:var(--bf-brand,#27335d); --mks-accent:var(--bf-accent,#ff5e57); --mks-ink:var(--bf-ink,#111827); --mks-muted:#596477; --mks-border:var(--bf-border,#d8dce4); --mks-radius:var(--bf-card-radius,1rem); color:var(--mks-ink); font-family:inherit; line-height:1.65; }
.mks *, .mks *::before, .mks *::after { box-sizing:border-box; }
.mks-page { background:#fff; }
.mks-container { width:min(100%,var(--bf-container-width,80rem)); margin-inline:auto; padding-inline:var(--bf-gutter,2rem); }
.mks-hero { background:radial-gradient(ellipse at 80% 15%,var(--bf-gradient-light,#3e507c),var(--mks-brand) 50%,var(--bf-gradient-edge,#1d2746)); padding-block:clamp(2rem,5vw,4.5rem); color:var(--bf-on-brand,#fff); }
.mks-hero h1 { max-width:28ch; color:inherit; margin:1rem 0 1.5rem; 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; }
.mks-hero-intro { max-width:65ch; font-size:1.0625rem; }
.mks-eyebrow { display:flex; align-items:center; gap:.6rem; margin:0 0 .8rem; color:var(--bf-accent-text,#ad3935); font-size:.75rem; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.mks-eyebrow::before { content:''; flex:0 0 .4rem; width:.4rem; height:.4rem; background:var(--mks-accent); border-radius:50%; }
.mks-hero .mks-eyebrow { color:var(--bf-accent-on-brand,#ff8d87); }
.mks-breadcrumbs { display:flex; gap:.7rem; flex-wrap:wrap; align-items:center; font-size:.85rem; margin-bottom:2.5rem; }
.mks-breadcrumbs a { color:inherit; text-decoration:none; }
.mks-breadcrumbs a:hover { text-decoration:underline; }
.mks-body { padding-block:clamp(2.5rem,5vw,4.5rem); }
.mks-shortcode { width:min(100%,var(--bf-container-width,80rem)); margin-inline:auto; padding:3rem 1.5rem; }
.mks-intro { margin-bottom:2.5rem; }
.mks-intro h2 { color:var(--mks-brand); font-size:clamp(2rem,3.5vw,3rem); line-height:1.18; }
.mks-list-toolbar { display:flex; justify-content:space-between; flex-wrap:wrap; gap:.5rem; padding-bottom:1rem; border-bottom:1px solid var(--mks-border); color:var(--mks-muted); font-size:.85rem; }
.mks-list-toolbar strong { color:var(--mks-brand); }
.mks-item { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:2rem; align-items:center; padding-block:2rem; border-bottom:1px solid var(--mks-border); }
.mks-item h2 { margin:0 0 1.2rem; color:var(--mks-brand); font-size:clamp(1.3rem,2vw,1.65rem); line-height:1.35; letter-spacing:-.02em; overflow-wrap:anywhere; }
.mks-item h2 a { color:inherit; text-decoration:none; }
.mks-item h2 a:hover { text-decoration:underline; text-decoration-color:var(--mks-accent); text-underline-offset:.2em; }
.mks-facts { display:flex; flex-wrap:wrap; gap:1rem 2rem; margin:0; padding:0; }
.mks-facts > div { min-width:7rem; max-width:100%; }
.mks-facts dt { margin:0 0 .15rem; color:var(--mks-muted); font-size:.75rem; font-weight:400; }
.mks-facts dd { margin:0; font-size:.9rem; font-weight:600; overflow-wrap:anywhere; }
.mks-hero .mks-facts { padding-top:.5rem; }
.mks-hero .mks-facts dt { color:inherit; opacity:.85; }
.mks-link { display:inline-flex; align-items:center; gap:.65rem; color:var(--mks-brand); font-size:.9rem; font-weight:700; text-decoration:none; white-space:nowrap; min-height:44px; }
.mks-link span { display:grid; place-items:center; width:2rem; height:2rem; border-radius:50%; background:var(--mks-accent); color:#111827; }
.mks-link:hover,.mks-back:hover { text-decoration:underline; text-underline-offset:.2em; }
.mks a:focus-visible,.mks summary:focus-visible,.mks input:focus-visible,.mks textarea:focus-visible,.mks button:focus-visible { outline:3px solid currentColor; outline-offset:5px; }
.mks-article { max-width:58rem; margin-inline:auto; }
.mks-text { margin-bottom:2.5rem; overflow-wrap:anywhere; }
.mks-text h2,.mks-application h2 { color:var(--mks-brand); font-size:clamp(1.5rem,2.5vw,2rem); line-height:1.25; margin:0 0 1rem; }
.mks-text ul,.mks-text ol { padding-left:1.4rem; }
.mks-text li + li { margin-top:.5rem; }
.mks-text a,.mks-form-body a { color:var(--mks-brand); text-decoration:underline; }
.mks-text img { max-width:100%; height:auto; }
.mks-application { padding:clamp(1.25rem,3vw,2.5rem); background:#f6f7fa; border:1px solid var(--mks-border); border-radius:var(--mks-radius); margin-block:3rem; }
.mks-application summary { color:var(--mks-brand); cursor:pointer; font-size:1.2rem; font-weight:700; min-height:44px; padding-block:.35rem; }
.mks-form-body { margin-top:1.5rem; }
.mks-application input:not([type=checkbox]):not([type=radio]):not([type=submit]),.mks-application textarea,.mks-application select { width:100%; max-width:100%; padding:.75rem; border:1px solid var(--mks-border); border-radius:.4rem; background:#fff; color:var(--mks-ink); font:inherit; }
.mks-application input[type=submit] { cursor:pointer; padding:.8rem 1.4rem; border:0; border-radius:.5rem; background:var(--mks-brand); color:#fff; font:inherit; }
.mks-back { display:inline-block; color:var(--mks-brand); font-weight:600; padding-block:.75rem; }
.mks-empty { padding:2rem 0; }
.mks-pagination { margin-top:2rem; }
.mks-pagination ul { display:flex; flex-wrap:wrap; gap:.5rem; padding:0; margin:0; list-style:none; }
.mks-pagination li { margin:0; padding:0; }
.mks-pagination li::before { content:none; }
.mks-pagination a,.mks-pagination span { display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:.5rem .8rem; border:1px solid var(--mks-border); border-radius:.6rem; color:var(--mks-brand); text-decoration:none; }
.mks-pagination .current { background:var(--mks-brand); color:#fff; }
@media(max-width:700px) { .mks-container { padding-inline:1.25rem; } .mks-item { grid-template-columns:minmax(0,1fr); gap:1rem; } .mks-facts { gap:1rem 1.5rem; } .mks-link { justify-self:start; } .mks-hero h1 { font-size:2.1rem; } }
/* Restore editorial list markers when the theme resets all lists. */
.mks-text ul,.mks-form-body ul { list-style:disc outside; padding-inline-start:1.5em; }
.mks-text ol,.mks-form-body ol { list-style:decimal outside; padding-inline-start:1.5em; }
