The 'counter-reset' property acts like a variable assignment in a programming language - it sets a new value for the specified counter whenever the current CSS selector is encountered. The property lists one or more counter labels, each followed by an optional integer reset value (default reset value is 0.)
If a counter is reset AND rendered using a single CSS selector (with the 'content' property and 'before:'/'after:' pseudo-elements), it should be reset first, then rendered. If a single CSS selector both increments and resets a counter, it is reset, then incremented.
h1:before {
counter-increment: main-heading;
counter-reset: sub-heading;
content: "Section " counter(main-heading) ":"
}