body {
    counter-reset: chapter;
}

div.section > h1 {
    counter-reset: section;
}

div.section > h2 {
    counter-reset: subsection;
}

div.section > h3 {
    counter-reset: subsubsection;
}

div.section > h1#the-scopes-programming-infrastructure:before, h1#search:before {
    content: none;
}

div.section > h1:before {
    content: counter(chapter) ". ";
}

div.section > h2:before {
    counter-increment: section;
    content: counter(chapter) "." counter(section) ". ";
}

div.section > h3:before {
    counter-increment: subsection;
    content: counter(chapter) "." counter(section) "." counter(subsection) ". ";
}

div.section > h4:before {
    counter-increment: subsubsection;
    content: counter(chapter) "." counter(section) "." counter(subsection) "." counter(subsubsection) ". ";
}
