.marginnote, .sidenote { font-size: 80%; position: relative; } /* Wide viewport */ @media (min-width: 1080px) { .marginnote, .sidenote { float: right; clear: right; margin-right: -23vw; text-align: left; top: -3rem; width: 20vw; margin-top: 1rem; } } /* Narrow viewport */ @media (max-width: 1080px) { .marginnote, .sidenote { float: right; text-align: left; width: 100%; margin: 1rem 0; padding-left: 7.5%; } } /* Sidenote counter */ body { counter-reset: sidenote-counter; } .sidenote-number { counter-increment: sidenote-counter; } /* Counter before the sidenote in the margin. */ .sidenote::before { content: counter(sidenote-counter)"."; position: relative; vertical-align: baseline; font-size: 0.9em; font-weight: bold; } /* Counter in the main body. */ .sidenote-number::after { content: counter(sidenote-counter); vertical-align: super; font-size: 0.7em; font-weight: bold; margin-right: 0.5rem; }