/**
 * Knowledge Hub in the current site theme ("classic" design).
 * Same markup as the hp design; this file swaps type, colours and shapes
 * for the ones the rest of the site uses (Forza + Manrope, navy black,
 * 8px corners) and makes room for the fixed site header.
 */

.bd-kb-classic {
    --hp-font-body: var(--bd-font-body);
    --hp-font-mono: var(--bd-font-mono);
    --hp-navy-900: #000313;
    --hp-ink: #11193f;
    --hp-ink-muted: #4a5170;
    --hp-max: 1200px;
    --hp-radius-card: 8px;
    --hp-radius-md: 6px;
    --hp-section-y: 80px;
}

/* Hero: the page header used on blog and resource pages */
.bd-kb-classic .hp-kb-hero {
    margin-top: 88px;
    padding-block: 56px 64px;
    background:
        radial-gradient(72.5% 49.87% at 50% 100%, rgba(255, 82, 71, .2) 0%, rgba(0, 3, 19, .2) 100%),
        #000313;
}

@media (min-width: 1024px) {
    .bd-kb-classic .hp-kb-hero {
        margin-top: 100px;
    }
}

.bd-kb-classic .hp-kb-hero__title {
    font-size: var(--bd-h1-size);
    font-weight: var(--bd-heading-weight);
    line-height: var(--bd-h1-lh);
    letter-spacing: var(--bd-h1-track);
}

.bd-kb-classic .hp-lead {
    font-size: var(--bd-body-size);
}

.bd-kb-classic .hp-kb-hero .hp-lead {
    color: rgba(255, 255, 255, .82);
}

.bd-kb-classic .hp-h2 {
    font-size: var(--bd-h3-size);
    font-weight: var(--bd-heading-weight);
    line-height: var(--bd-h3-lh);
    letter-spacing: var(--bd-h3-track);
}

.bd-kb-classic .hp-eyebrow,
.bd-kb-classic .hp-kb-crumbs,
.bd-kb-classic .hp-kb-card__aka,
.bd-kb-classic .hp-kb-hero__sigil {
    font-weight: var(--bd-eyebrow-weight);
    letter-spacing: var(--bd-eyebrow-track);
    font-family: var(--bd-font-mono);
    text-transform: uppercase;
}

/* Buttons: the site's red button */
.bd-kb-classic .hp-btn {
    border-radius: 6px;
    font-family: var(--bd-font-display);
}

/* Cards and section titles */
.bd-kb-classic .hp-kb-card {
    box-shadow: none;
}

.bd-kb-classic .hp-kb-card__name {
    font-size: var(--bd-card-size);
    font-weight: var(--bd-heading-weight);
    line-height: var(--bd-card-lh);
    letter-spacing: var(--bd-card-track);
}

.bd-kb-classic .hp-kb-card__summary {
    font-size: var(--bd-small-size);
    line-height: 1.6;
}

.bd-kb-classic .hp-kb-tag,
.bd-kb-classic .hp-kb-level,
.bd-kb-classic .hp-kb-status,
.bd-kb-classic .hp-kb-mitre,
.bd-kb-classic .hp-kb-chip {
    border-radius: 6px;
}

.bd-kb-classic .hp-kb-alias__name {
    font-weight: 500;
}

.bd-kb-classic .hp-kb-block__title {
    font-size: var(--bd-h3-size);
    font-weight: var(--bd-heading-weight);
    letter-spacing: var(--bd-h3-track);
    line-height: var(--bd-h3-lh);
}

.bd-kb-classic .hp-kb-prose,
.bd-kb-classic .hp-kb-block p:not(.hp-kb-defense p) {
    font-size: var(--bd-article-size);
    line-height: var(--bd-article-lh);
}

.bd-kb-classic :where(h3) {
    font-family: var(--bd-font-display);
    font-weight: 500;
}

/* Keep the "on this page" list clear of the fixed header */
.bd-kb-classic .hp-kb-toc {
    top: 124px;
}

.bd-kb-classic .hp-kb-block {
    scroll-margin-top: 124px;
}

.bd-kb-classic .hp-kb-content :where(h2, h3)[id] {
    scroll-margin-top: 124px;
}

/* Contents list and target list: no pill shapes at any width */
.bd-kb-classic .hp-kb-toc a,
.bd-kb-classic .hp-kb-toc a.is-current,
.bd-kb-classic .hp-kb-targets__list li {
    border-radius: 6px;
}

/* The header bar stays solid when the page is scrolled */
body:has(.bd-kb-classic) #top-bar.bg-navy-black-40 {
    background-color: rgb(0, 3, 19);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}
