article {
    background: white;
    font-size: var(--font-size-lg);
    padding: var(--spacing-4xl) var(--spacing-2xl) var(--spacing-5xl) var(--spacing-2xl);
}
article > * {
    width: min(1024px, 100%);
    margin: 0 auto;
}
article > ol {
    padding-left: unset;
}
article > ol > li {
    margin-block: var(--spacing-xl) var(--spacing-lg);
}
h1 {
    margin-block: var(--spacing-2xl) var(--spacing-4xl);
}
h2, h3 {
    display: inline-block;
}
h3, b {
    font-weight: 500;
}
p {
    margin-block: var(--spacing-md) var(--spacing-sm);
}
ul {
    margin-block: var(--spacing-2xl) var(--spacing-lg);
    padding-left: var(--spacing-xl);
}
ul li {
    margin-block: var(--spacing-md) var(--spacing-sm);
}
ol ul {
    margin-block: var(--spacing-md) var(--spacing-sm);
}
ol {
    counter-reset: section;
    list-style: none;
    padding-left: var(--spacing-xl);
}
ol > li {
    counter-increment: section;
    margin-block: var(--spacing-md) var(--spacing-sm);
}
ol > li::before {
    content: counter(section) ". ";
    font-weight: 500;
    font-size: var(--font-size-md);
}
ol > li:has(h2)::before {
    font-size: var(--font-size-xl);
}
li ol {
    counter-reset: subsection;
    list-style: none;
    padding-left: var(--spacing-lg);
}
li ol > li {
    counter-increment: subsection;
}
li ol > li::before {
    content: counter(section) "." counter(subsection) " ";
    font-weight: 400;
}
