/* KCOM_V34_EDITORIAL_V31 -- Page presentation only, based on approved v3.1.
 * Do not style auth/payment/workbench/human-review page internals.
 * The main/public shell is deliberately not replaced.
 */
body.kcom-v34-editorial {
 --v34-teal:#087a78; --v34-dark:#006764; --v34-yellow:#efca48;
 --v34-ink:#202b2f; --v34-muted:#607176; --v34-line:#e4eaeb;
 --v34-wash:#f4f8f8;
 background:#fff; color:var(--v34-ink); font-size:14px;
}
body.kcom-v34-editorial .site-header { background:#fff; border-bottom:1px solid var(--v34-line); box-shadow:none; }
body.kcom-v34-editorial .site-header__inner { max-width:1190px; min-height:72px; }
body.kcom-v34-editorial .primary-nav .menu > li > a { background:transparent; color:#364348; font-size:13px; border-radius:0; }
body.kcom-v34-editorial .primary-nav .menu > li > a:hover,
body.kcom-v34-editorial .primary-nav .menu > li.is-current > a { color:var(--v34-dark); background:transparent; box-shadow: inset 0 -2px 0 var(--v34-teal); }
body.kcom-v34-editorial .site-footer { border-top:1px solid var(--v34-line); background:#f7f9f9; }
body.kcom-v34-editorial .entry-title,
body.kcom-v34-editorial .page-title { letter-spacing:-.04em; font-weight:800; }
/* Only ordinary public editorial text and listing areas, no plugin form controls. */
body.kcom-v34-editorial.km-content-guide .entry-content > h2,
body.kcom-v34-editorial.km-content-tip .entry-content > h2 { border-bottom:1px solid var(--v34-line); padding-bottom:.2em; }
body.kcom-v34-editorial.km-content-guide .entry-content > p,
body.kcom-v34-editorial.km-content-tip .entry-content > p { line-height:1.8; }
body.kcom-v34-editorial .km-content-index__row,
body.kcom-v34-editorial .km-content-tip-list__item { border-bottom:1px solid #edf0f0; }
body.kcom-v34-editorial.km-route-grant-search .grant-v2-card { border-radius:0 !important; box-shadow:none !important; }
body.kcom-v34-editorial.km-route-tools :is(.kth-tool,.kth-item) { box-shadow:none; }
/* Actual v3.1 homepage. Classes do not overlap legacy R2/R5 cards. */
body.home.kcom-v34-editorial #content.kcom-v34-home { font-size:14px; background:#fff; color:var(--v34-ink); }
body.home.kcom-v34-editorial #content.kcom-v34-home a { color:inherit; text-decoration:none; }
body.home.kcom-v34-editorial #content.kcom-v34-home a:hover { color:var(--v34-dark); text-decoration:underline; text-underline-offset:3px; }
body.home.kcom-v34-editorial #content.kcom-v34-home :is(h1,h2,h3,p) { margin-top:0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-container { max-width:1190px; padding-left:35px; padding-right:35px; margin:0 auto; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-hero { background:#fff; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-hero__grid { display:grid; grid-template-columns:minmax(0,1.48fr) minmax(285px,.72fr); gap:60px; align-items:center; padding-top:43px; padding-bottom:42px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-kicker { font-size:10px; font-weight:850; color:var(--v34-dark); letter-spacing:.10em; line-height:1.5; margin-bottom:15px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-kicker > span { display:inline-block; width:5px; height:5px; background:var(--v34-yellow); margin-right:8px; vertical-align:2px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-hero h1 { color:var(--v34-ink); font-size:clamp(32px,3.8vw,42px); line-height:1.37; letter-spacing:-.064em; font-weight:800; margin:0 0 15px; padding:0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-hero__lead { color:var(--v34-muted); line-height:1.85; margin:0; font-size:13px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-search { display:grid; grid-template-columns:minmax(0,1fr) auto; margin:25px 0 0; max-width:615px; min-height:48px; gap:0; align-items:stretch; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-search input { min-width:0; width:100%; height:auto; font-size:13px; padding:10px 14px; border:1px solid #b7c9c8; border-right:none; border-radius:0; background:#fff; box-shadow:none; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-search button { min-width:135px; padding:11px 18px; background:var(--v34-teal); color:#fff; border:1px solid var(--v34-teal); border-radius:0; font-size:13px; font-weight:750; box-shadow:none; white-space:nowrap; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-search button:hover { background:var(--v34-dark); }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-search__caption { color:#849194; font-size:10px; margin:6px 0 0; }
/* Exactly one book, with *small* cover in the hero's right-hand column. */
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book { background:#f5f9f9; padding:22px; margin:0; border:1px solid #e0e9e8; width:100%; min-width:0; border-radius:0; box-shadow:none; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__layout { display:grid; grid-template-columns:110px minmax(0,1fr); column-gap:16px; align-items:center; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__cover { margin:0; padding:0; width:110px; max-width:100%; aspect-ratio:357/500; background:#fff; border:1px solid #dce5e3; box-shadow:none; overflow:hidden; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__cover img { display:block; width:100%; height:100%; object-fit:contain; border:0; margin:0; padding:0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__details { min-width:0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__label { font-size:10px; color:var(--v34-dark); font-weight:800; letter-spacing:.10em; margin:0 0 8px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__name { font-size:12px; font-weight:750; line-height:1.65; margin:0; overflow-wrap:anywhere; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__meta { font-size:10px; color:#79888a; margin:9px 0 0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__link { display:inline-block; margin:12px 0 0; font-size:12px; color:var(--v34-dark); font-weight:800; text-decoration:underline; text-underline-offset:3px; }
/* A shallow tint band, NOT four bordered/rounded cards. */
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-purpose { background:var(--v34-wash); padding:24px 0 25px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-purpose__grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-purpose__item { min-width:0; display:block; background:transparent; border:0; border-radius:0; box-shadow:none; padding:0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-purpose__number { display:block; color:var(--v34-dark); font-size:10px; font-weight:800; margin-bottom:3px; letter-spacing:.06em; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-purpose__item strong { display:block; font-size:17px; line-height:1.6; letter-spacing:-.035em; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-purpose__desc { display:block; font-size:11px; line-height:1.7; color:var(--v34-muted); margin-top:5px; }
/* Editorial grid + one subtle divider between the two content sections. */
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-main { display:grid; grid-template-columns:minmax(0,1fr) 285px; gap:56px; padding-top:38px; padding-bottom:48px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; margin-bottom:18px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-heading h2 { font-size:21px; line-height:1.5; font-weight:800; letter-spacing:-.04em; margin:0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-heading > span { font-size:9px; font-weight:700; color:#98a5a8; letter-spacing:.10em; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-featured__lead { margin-bottom:22px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-topic-label { color:var(--v34-dark); font-size:10px; font-weight:750; margin:0 0 8px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-featured__lead h3 { font-size:20px; font-weight:800; line-height:1.45; margin:0 0 8px; letter-spacing:-.04em; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-featured__lead > p:not(.kcom-v34-topic-label) { font-size:12px; line-height:1.75; color:var(--v34-muted); margin:0 0 7px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-textlink { font-size:12px; font-weight:770; color:var(--v34-dark) !important; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-topics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:30px; row-gap:24px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-topics article { background:none; border:0; box-shadow:none; border-radius:0; margin:0; padding:0; min-width:0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-topics article p,
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-resources__grid small { color:var(--v34-dark); font-size:10px; font-weight:760; letter-spacing:.02em; margin:0 0 6px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-topics article h3,
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-resources__grid h3 { font-size:15px; font-weight:800; line-height:1.5; margin:0 0 5px; letter-spacing:-.025em; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-topics article span,
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-resources__grid p { font-size:11px; color:var(--v34-muted); line-height:1.75; margin:0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-resources { margin-top:36px; padding-top:23px; border-top:1px solid #e6eded; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-resources__grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-resources__grid small { display:block; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-sidebar-note { background:var(--v34-wash); padding:19px 21px; border:0; border-radius:0; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-sidebar-note h2 { font-size:16px; font-weight:800; margin:0 0 8px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-sidebar-note p:not(.kcom-v34-kicker) { color:var(--v34-muted); font-size:11px; line-height:1.8; margin:0 0 8px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-ad { margin-top:24px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-ad__label { text-align:right; font-size:9px; color:#8a9698; margin:0 0 6px; }
body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-ad__body { min-height:0; background:#f3f5f5; }
/* Mobile: no outsized cover or artificial blank advertisement region. */
@media (max-width:980px) {
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-hero__grid { gap:22px; grid-template-columns:minmax(0,1fr) 300px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book { padding:14px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__layout { grid-template-columns:85px 1fr; gap:12px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__cover { width:85px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-main { gap:25px; grid-template-columns:minmax(0,1fr) 245px; }
}
@media (max-width:760px) {
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-container { padding-left:20px; padding-right:20px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-hero__grid { display:block; padding-top:29px; padding-bottom:30px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-hero h1 { font-size:clamp(29px,8vw,36px); }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-hero__lead { font-size:12px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-search { margin-top:18px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book { margin-top:20px; max-width:420px; padding:12px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__layout { grid-template-columns:78px 1fr; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__cover { width:78px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-purpose { padding:19px 0; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-purpose__grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:19px 22px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-main { display:block; padding-top:29px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-rail { margin-top:28px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-resources__grid { gap:15px; }
}
@media (max-width:450px) {
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-container { padding-inline:16px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-search { grid-template-columns:minmax(0,1fr) auto; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-search input { padding:8px 10px; font-size:11px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-search button { padding:9px 12px; min-width:104px; font-size:11px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-topics { gap:20px 14px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-resources__grid { grid-template-columns:1fr; gap:17px; }
 body.home.kcom-v34-editorial #content.kcom-v34-home .kcom-v34-book__name { font-size:11px; }
}
