:root { --base03: #002b36; --base02: #073642; --base01: #586e75; --base00: #657b83; --base0: #839496; --base1: #93a1a1; --base2: #eee8d5; --base3: #fdf6e3; --yellow: #b58900; --orange: #cb4b16; --red: #dc322f; --magenta: #d33682; --violet: #6c71c4; --blue: #268bd2; --cyan: #2aa198; --green: #859900; --header-font-size: 150%; --column-min-width: 20ex; --border-width: 1px; --padding: 2ex; --margin: 2ex; --content-padding-left: 9ex; --content-padding-right: 5ex; --body-max-width: 130ex; --body-min-width: 75ex; --body-font-size: 115%; --first-letter-font-size: 140%; --content-width: 100ex; --dt-font-size: 120%; } @font-face { font-family: 'Libertinus'; font-style: normal; font-weight: normal; font-display: swap; src: url('/fonts/libertinus-regular.woff2') format('woff2'); } @font-face { font-family: 'Libertinus'; font-style: normal; font-weight: bold; font-display: swap; src: url('/fonts/libertinus-bold.woff2') format('woff2'); } @font-face { font-family: 'Libertinus'; font-style: italic; font-weight: normal; font-display: swap; src: url('/fonts/libertinus-italic.woff2') format('woff2'); } @font-face { font-family: 'Libertinus'; font-style: italic; font-weight: bold; font-display: swap; src: url('/fonts/libertinus-bold-italic.woff2') format('woff2'); } body { font-family: 'Libertinus'; color: var(--base1); background-color: var(--base02); font-size: var(--body-font-size); min-width: var(--body-min-width); max-width: var(--body-max-width); margin: auto; } section { border: var(--border-width) solid var(--blue); background-color: var(--base03); margin: var(--margin); padding: var(--padding); } em { color: var(--yellow); } strong { color: var(--orange); } article p::first-letter { font-size: var(--first-letter-font-size); color: var(--orange); } article { text-indent: 4ex; text-align: justify; padding-top: 2ex; padding-bottom: 5ex; } dt { font-size: var(--dt-font-size); } header, footer { text-align: center; } :link, :visited { color: var(--cyan); } .header header { font-size: 200%; } .logo { height: 4ex; vertical-align: middle; } .navigation { text-align: center; } .main { display: flex; justify-content: center; } .column header { font-size: var(--header-font-size); background-color: var(--base02); } .left { min-width: var(--column-min-width); } .content { width: var(--content-width); padding-left: var(--content-padding-left); padding-right: var(--content-padding-right); }