@mixin markdown() {
    p,
    ol,
    ul {
        line-height: 1.5;
        margin-bottom: 1.5em;
    }

    a:link {
        text-decoration: underline;
    }

    ol {
        list-style-type: decimal;
    }

    ul {
        list-style-type: disc;
    }

    ol, ul {
        padding-inline: 1.75em;
    }

    img {
        max-width: 100%;
    }

    sup[id] {
        display: inline-block;
        font-weight: 500;
        padding-inline: 0.25em;

        &::before {
            content: '[';
        }

        &::after {
            content: ']';
        }

        a {
            text-decoration: none;
        }
    }

    .footnote {
        margin-block: 2em 0;

        hr {
            border: solid #ccc;
            border-width: 1px 0 0;
            margin-block: 0 1.5em;
            padding: 0;
        }

        ol {
            font-size: 88.75%;
        }

        @media (min-width: 600px) {
            ol {
                column-count: 2;
                gap: 40px;
            }
        }

        li[id] {
            a + a {
                margin-inline-start: 0.25em;
            }

            p {
                margin: 0 0 1ex;
            }
        }
    }
}
