.kb-wrap{
	--sb-green:#a4d866;
	--sb-green-2:#93c94f;
	--sb-ink:#003c1c;
	--sb-tint:#ecf6de;
	--sb-line:#e2e8dc;
	--sb-muted:#5f7168;
	max-width:1280px;margin:0 auto;padding:2rem 1.25rem;color:var(--sb-ink);
}

/* Anchor-jump offset for the fixed Divi header. help.css is enqueued ONLY on KB
   pages, so these html rules are scoped to the KB and never affect the rest of
   the site. Values = the SHRUNK (stuck) header height + ~20px breathing room. */
html{scroll-padding-top:108px}
@media (max-width:1095px) and (min-width:981px){html{scroll-padding-top:100px}}
@media (max-width:980px){html{scroll-padding-top:32px}}
/* Logged-in editors only: WP admin bar is fixed above 782px (adds 32px). */
html:has(.admin-bar){scroll-padding-top:140px}
@media (max-width:1095px) and (min-width:981px){html:has(.admin-bar){scroll-padding-top:132px}}
@media (max-width:980px) and (min-width:783px){html:has(.admin-bar){scroll-padding-top:64px}}

/* ---- shared search field + button (matches site .et_pb_button) ---- */
.kb-search{display:flex;gap:.5rem;align-items:center}
.kb-search input[type=search]{
	flex:1;min-width:0;padding:.55em 1.1em;border:1.5px solid var(--sb-line);border-radius:100px;
	background:#fff;color:var(--sb-ink);font:inherit;line-height:1.4;
}
.kb-search input[type=search]:focus{outline:none;border-color:var(--sb-green);box-shadow:0 0 0 3px rgba(164,216,102,.35)}
.kb-search button{
	flex:none;padding:.55em 1.4em;border:2px solid var(--sb-green);border-radius:100px;
	background:var(--sb-green);color:var(--sb-ink);font-family:inherit;font-weight:700;font-size:1rem;
	line-height:1.4;cursor:pointer;transition:background .15s ease,border-color .15s ease;
}
.kb-search button:hover{background:var(--sb-green-2);border-color:var(--sb-green-2)}

/* ---- breadcrumb ---- */
.kb-breadcrumb{font-size:.85rem;color:var(--sb-muted)}
.kb-breadcrumb a{color:var(--sb-ink);text-decoration:none}
.kb-breadcrumb a:hover{text-decoration:underline}
.kb-breadcrumb span{margin:0 .4rem;color:#9fb0a4}

/* ---- hub hero ---- */
.kb-hub{padding-bottom:5.5rem}
.kb-hub__hero{text-align:center;padding:2rem 0}
.kb-results{padding-bottom:1rem}
.kb-results__title{margin:0 0 1.25rem;font-size:1.6rem;line-height:1.2}
.kb-results__group{margin-top:2.75rem}
.kb-results__group>h3{margin:0 0 .8rem;font-size:1.4rem;line-height:1.2}
.kb-results__empty{margin-top:1.5rem;color:var(--sb-muted)}
.kb-results__count{margin-left:.15rem;font-size:.72em;font-weight:600;color:var(--sb-muted)}

/* "Show all" disclosure. The closed <details> is the primary guard: its subtree
   isn't rendered and its lazy images don't fetch until it is opened. */
.kb-more{margin-top:1.1rem}
.kb-more__toggle{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:.4rem;padding:.45em 1.15em;border:2px solid var(--sb-green);border-radius:100px;background:var(--sb-tint);color:var(--sb-ink);font-weight:700;font-size:.9rem;line-height:1.3;transition:background .15s ease}
.kb-more__toggle::-webkit-details-marker{display:none}
.kb-more__toggle:hover{background:#e2f0cd}
.kb-more__toggle:focus-visible{outline:2px solid var(--sb-green-2);outline-offset:2px}
.kb-more[open]>.kb-more__toggle{margin-bottom:1.25rem}
.kb-more[open] .kb-more__show{display:none}
.kb-more:not([open]) .kb-more__hide{display:none}
.kb-more__note{margin:.9rem 0 0;color:var(--sb-muted);font-size:.85rem}

.kb-hub__hero h1{font-size:2.8rem;line-height:1.1;margin:0 0 1.25rem}
.kb-hub__topics{margin-top:2.5rem}
.kb-topicgrid{list-style:none;margin:0;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}
.kb-topicbtn{display:flex;align-items:center;gap:.85rem;padding:1rem 1.15rem;border-radius:12px;background:var(--sb-tint);color:var(--sb-ink);text-decoration:none;font-weight:600;font-size:1.05rem;line-height:1.25;transition:background .15s ease}
.kb-topicbtn:hover{background:#e2f0cd}
.kb-topicbtn svg{flex:none;color:var(--sb-ink)}
@media (max-width:820px){.kb-topicgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.kb-topicgrid{grid-template-columns:1fr}}
.kb-hub__hero .kb-search{max-width:640px;margin:1rem auto 0}

/* ================= ARTICLE ================= */
.kb-article__head{display:flex;align-items:center;gap:.75rem 1.5rem;flex-wrap:wrap;margin-bottom:1.75rem;padding-bottom:1.25rem;border-bottom:2px solid var(--sb-green)}
.kb-article__head .kb-breadcrumb{flex:0 1 auto;min-width:0}
.kb-article__head .kb-search{flex:1 1 340px;margin:0}

.kb-article__title{margin:0 0 1.25rem}
.kb-article__title h1{margin:0 0 .35rem}
.kb-article__updated{margin:0;color:var(--sb-muted);font-size:.9rem}

.kb-article__grid{display:grid;grid-template-columns:260px minmax(0,1fr);column-gap:2.5rem;align-items:start}

/* ---- sidebar: topic box ---- */
.kb-article__sidebar{grid-column:1;grid-row:1;position:sticky;top:1.5rem;display:flex;flex-direction:column;gap:1rem}
.kb-topicbox{background:var(--sb-tint);border-radius:14px;padding:1.1rem 1.15rem}
.kb-topicbox__title{margin:0 0 .6rem;font-size:1rem;font-weight:700;line-height:1.25}
.kb-topicbox__title a{display:flex;align-items:center;gap:.5rem;color:var(--sb-ink);text-decoration:none}
.kb-topicbox__title a:hover{text-decoration:underline}
.kb-topicbox__title svg{flex:none;color:var(--sb-ink)}
.kb-topicbox__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}
.kb-topicbox__list a{display:block;padding:.3rem .5rem;border-radius:8px;color:var(--sb-ink);text-decoration:none;font-size:.9rem;line-height:1.35}
.kb-topicbox__list a:hover{background:rgba(255,255,255,.6)}
.kb-topicbox__list a[aria-current=page]{background:#fff;font-weight:700}
.kb-topicbox__more{margin:.9rem 0 .35rem;padding-top:.85rem;border-top:1px solid rgba(0,60,28,.12);font-size:.7rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--sb-muted)}
.kb-topicbox__topics{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.1rem}
.kb-topicbox__topics a{display:block;padding:.26rem .5rem;border-radius:8px;color:var(--sb-ink);text-decoration:none;font-size:.88rem;line-height:1.35}
.kb-topicbox__topics a:hover{background:rgba(255,255,255,.6)}

/* ---- sidebar: table of contents (details = toggle on mobile) ---- */
.kb-toc-mount--inline{display:none}
.kb-toc{padding:0 .25rem}
.kb-toc__summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.kb-toc__summary::-webkit-details-marker{display:none}
.kb-toc__summary::after{content:"";flex:none;width:.5em;height:.5em;border-right:2px solid var(--sb-muted);border-bottom:2px solid var(--sb-muted);transform:rotate(45deg);transition:transform .2s ease;display:none}
.kb-toc[open] .kb-toc__summary::after{transform:rotate(-135deg)}
.kb-toc__title{margin:0;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sb-muted);display:inline}
.kb-toc__list{list-style:none;margin:.6rem 0 0;padding:0;border-left:2px solid var(--sb-line)}
.kb-toc__list li{margin:0}
.kb-toc__list a{display:block;padding:.28rem 0 .28rem .9rem;margin-left:-2px;border-left:2px solid transparent;color:var(--sb-muted);text-decoration:none;font-size:.85rem;line-height:1.3}
.kb-toc__list a:hover{color:var(--sb-ink)}
.kb-toc__h3 a{padding-left:1.7rem;font-size:.82rem}

/* ---- article body ---- */
.kb-article__body{grid-column:2;grid-row:1;min-width:0}
.kb-article__content{line-height:1.7}
.kb-article__content > :first-child{margin-top:0 !important}
.kb-article__content p,
.kb-article__content ul,
.kb-article__content ol{margin:0 0 1.15rem !important}
.kb-article__content ul{list-style:disc !important;padding-left:1.6em !important}
.kb-article__content ol{list-style:decimal !important;padding-left:1.6em !important}
.kb-article__content ul ul{list-style:circle !important}
.kb-article__content ol ol{list-style:lower-alpha !important}
.kb-article__content li{margin:.35rem 0;list-style:inherit !important}
.kb-article__content li>ul,.kb-article__content li>ol{margin:.4rem 0 0 !important}
.kb-article__content h2{margin:2.4rem 0 .9rem !important;line-height:1.25}
.kb-article__content h3{margin:1.8rem 0 .6rem !important;line-height:1.3}
.kb-article__content img{display:block;height:auto;margin:.5rem 0 1.4rem}

/* ---- related: article cards (blog-style) ---- */
.kb-related{margin-top:2.75rem;border-top:1px solid var(--sb-line);padding-top:1.75rem}
.kb-related>h2{margin:0 0 1.15rem}
.kb-rcards{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.kb-rcard{position:relative;display:flex;flex-direction:column}
.kb-rcard__media{aspect-ratio:16/10;border-radius:12px;overflow:hidden;background:var(--sb-tint);display:flex;align-items:center;justify-content:center}
.kb-rcard__media img{width:100%;height:100%;object-fit:cover;display:block}
.kb-rcard__ph{color:var(--sb-green-2);opacity:.9}
.kb-rcard__body{padding:.7rem .1rem 0}
.kb-rcard__cat{display:block;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--sb-green-2)}
.kb-rcard__title{margin:.25rem 0 .3rem;font-family:"neue-haas-grotesk-text",sans-serif;font-size:1.05rem;font-weight:600;line-height:1.25}
.kb-rcard__title a{color:var(--sb-ink);text-decoration:none}
.kb-rcard__title a::after{content:"";position:absolute;inset:0}
.kb-rcard:hover .kb-rcard__title a{text-decoration:underline}
.kb-rcard__excerpt{margin:0;color:var(--sb-muted);font-size:.9rem;line-height:1.5}

/* ---- topic archive: horizontal article cards (image left, text right) ---- */
.kb-hcards{display:flex;flex-direction:column;gap:1.25rem}
.kb-hcard{position:relative;display:flex;gap:1.25rem;align-items:center;border:1px solid var(--sb-line);border-radius:12px;padding:1rem;background:#fff;transition:box-shadow .15s ease}
.kb-hcard:hover{box-shadow:0 4px 18px rgba(0,60,28,.08)}
.kb-hcard__media{flex:none;width:200px;aspect-ratio:16/10;border-radius:8px;overflow:hidden;background:var(--sb-tint);display:flex;align-items:center;justify-content:center}
.kb-hcard__media img{width:100%;height:100%;object-fit:cover;display:block}
.kb-hcard__ph{color:var(--sb-green-2)}
.kb-hcard__body{min-width:0}
.kb-hcard__title{margin:0 0 .35rem;font-family:"neue-haas-grotesk-text",sans-serif;font-size:1.2rem;font-weight:600;line-height:1.25}
.kb-hcard__title a{color:var(--sb-ink);text-decoration:none}
.kb-hcard__title a::after{content:"";position:absolute;inset:0}
.kb-hcard:hover .kb-hcard__title a{text-decoration:underline}
.kb-hcard__excerpt{margin:0 0 .4rem;color:var(--sb-muted);font-size:.95rem;line-height:1.55}
.kb-hcard__updated{margin:0;color:var(--sb-muted);font-size:.8rem}
@media (max-width:600px){
	.kb-hcard{flex-direction:column;align-items:stretch}
	.kb-hcard__media{width:100%;aspect-ratio:16/9}
}

/* ---- FAQ accordions (related questions / topic pages) ---- */
.kb-faqs .kb-faq{border-bottom:1px solid var(--sb-line);padding:.5rem 0}
.kb-faq summary{cursor:pointer;font-weight:600;color:var(--sb-ink)}
.kb-faq__a{padding:.5rem 0 .25rem}

/* ================= HUB / TOPIC cards (unchanged base) ================= */
.kb-cardlist{list-style:none;margin:0;padding:0;display:grid;gap:1rem;grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.kb-card{border:1px solid var(--sb-line);border-radius:12px;padding:1rem}
.kb-card h2,.kb-card h3,.kb-card h4{margin:.2rem 0}
.kb-card a{text-decoration:none;color:var(--sb-ink)}
.kb-card__updated,.kb-card__excerpt{font-size:.85rem;color:var(--sb-muted)}
.kb-card__type{display:inline-block;font-size:.7rem;text-transform:uppercase;letter-spacing:.04em;color:var(--sb-green-2)}
.kb-hub__rail,.kb-topic>section{margin-top:2.75rem}
.kb-topic{padding-bottom:4rem}
.kb-topic__head{padding-top:.75rem;margin-bottom:2.25rem}
.kb-topic__head h1{font-size:2.6rem;line-height:1.1;margin:0 0 .5rem}
.kb-topic__desc{margin:0;color:var(--sb-muted);font-size:1.05rem;line-height:1.55}
.kb-topic>section>h2,.kb-hub__rail>h2{margin:0 0 1.5rem}

/* ---- shared two-column layout (search results + topic pages) ---- */
.kb-side{display:grid;grid-template-columns:260px minmax(0,1fr);column-gap:2.5rem;align-items:start}
.kb-side__main{grid-column:2;grid-row:1;min-width:0}
.kb-side__aside{grid-column:1;grid-row:1;position:sticky;top:1.5rem;display:flex;flex-direction:column;gap:1rem}
.kb-side__main>section{margin-top:2.75rem}
.kb-side__main>section>h2{margin:0 0 1.5rem}
.kb-side__main>section:first-child,
.kb-side__main>.kb-results__group:first-child,
.kb-side__main>.kb-results__title+.kb-results__group,
.kb-side__main>.kb-toc-mount--inline+section,
.kb-side__main>.kb-toc-mount--inline+.kb-results__group{margin-top:0}

/* ================= responsive ================= */
/* TOC: static/always-open on desktop, tappable on mobile */
@media (min-width:901px){
	.kb-toc__summary{pointer-events:none}
}
@media (max-width:900px){
	.kb-article__grid,.kb-side{display:block}
	.kb-article__sidebar,.kb-side__aside{position:static;margin-top:2.5rem}
	.kb-toc__summary::after{display:block}
	.kb-toc-mount--aside{display:none}
	.kb-toc-mount--inline{display:block;margin-bottom:1.5rem}
}
@media (max-width:600px){
	.kb-article__head .kb-search{flex-basis:100%}
	.kb-search{flex-wrap:wrap}
}
