/* GENERAL STYLES */ html { scroll-behavior: smooth; } body { display: flex; align-items: center; flex-direction: column; font-family: var(--ff-primary), Arial, Helvetica, sans-serif; color: var(--clr-body-txt); background-color: var(--clr-body-bg); } h1 { color: var(--clr-main-heading); font-size: var(--sz-h1); border-bottom: 0.18rem solid var(--clr-title-border); padding-bottom: 0.3em; margin-bottom: 0.5em; } h2, h3, h4, h5, h6 { color: var(--clr-sub-heading); } h1, h2, h3 { line-height: 1.2; } h2, .h2 { font-size: var(--sz-h2); } h3, .h3 { font-size: var(--sz-h3); } h2:has(+ *[class]), .h2:has(+ *[class]), h3:has(+ *[class]), .h3:has(+ *[class]) { margin-bottom: 0.5em; } hr { border: 0.05rem solid var(--clr-title-border); } strong { color: var(--clr-bold-txt); } :focus { outline: 0.15em solid var(--clr-body-txt); } a { font-weight: 700; color: var(--clr-link); } a:hover { color: var(--clr-link-hover); } a:not([class]):focus { outline: 0.15rem solid var(--clr-link); } a:focus img { outline: 0.2em solid var(--clr-body-txt); } :not(.c-blockquote) > blockquote, .c-blockquote { padding: 1em 1.4em 1.4em; border-inline-start: 0.1em solid var(--clr-main-heading); background-color: var(--clr-quote-bg); margin-bottom: 1em; } blockquote > * + :not([class]), * + blockquote, * + .c-blockquote, .c-blockquote__attribution { margin-top: var(--sz-paragraph-margin); } button:hover { cursor: pointer; } button:focus, details:focus { outline-offset: 0.2em; } figure { margin-bottom: var(--sz-paragraph-margin); display: grid; place-content: center; justify-items: center; } figcaption { text-align: center; font-size: 0.9em; margin-top: 0.2em; } :not(pre) > code { color: var(--clr-bold-txt); padding: 0 0.15em; } pre { border: 0.07em solid var(--clr-code-border); background: var(--clr-code-bg); max-width: 90vw; overflow: auto; padding: 1rem; } pre > code { white-space: pre; } summary { cursor: pointer; } dl { display: grid; gap: 1em; grid-template-columns: auto auto; } dt { font-weight: bold; } dd { grid-column-start: 2; }