:root{
  --bg1-l: #FFF;
  --bg1-l: FloralWhite;
  --bg2-l: #e5e5e5;
  --fg1-l: #444;
  --fg2-l: #666;
  --link-color-l: #0062cc; 
  --bg1-d: #000;
  --bg1-d: #002b36;
  --bg2-d: #222;
  --fg1-d: #bbb;
  --fg2-d: #b5b5b5;
  --link-color-d: #528dcc;
  --bg1: var(--bg1-l);
  --bg2: var(--bg2-l);
  --fg1: var(--fg1-l);
  --fg2: var(--fg2-l);
  --link-color: var(--link-color-l);
  --textwidth: 65ch;
}

body {
  counter-reset: bib;
  background-color: var(--bg1); 
  color: var(--fg1);
  padding: 1rem;
  text-rendering: optimizeLegibility;
  hyphens: auto;
  line-height: 1.35;
  margin-top: 5%;
  /* text-align: justify; */
  /* font-family: sans-serif; */
  max-width: var(--textwidth);
	margin: auto;
  font-family: "Stix Two";
  font-feature-settings: "onum", "pnum", "kern";
  text-wrap: pretty;
} 

main {
}

section:first-of-type p:first-of-type::first-letter {
  -webkit-initial-letter: 2;
  initial-letter: 2;
  font-size: 36pt;
  /* float: left; */
  line-height: 0.5;
  margin-right: 3px;
  /* height: 0.5rem; */
}

.smallcaps {
  font-feature-settings: "smcp";
}

section > p {
  text-align: justify;
}

.sc {
  font-variant-caps: small-caps;
  letter-spacing: 0.05rem;
}

abbr {
  font-feature-settings: "c2sc";
  letter-spacing: 0.01rem;
}

/* summary, cite, time, nav li, td li, ol ul, ol > li:before { */
/* summary, cite, nav li, td li, ol ul { */
cite, nav li, td li, ol ul {
  /* font-family: "Baskervville Sans SC"; */
  /* font-family: sans-serif; */
  /* text-transform: uppercase; */
  font-feature-settings: "smcp", "c2sc";
  letter-spacing: 0.05rem;
  font-size: 11pt;
}

summary {
  font-size: 11pt;
  font-style: italic;
}

nav, footer, figure {
  text-align: center;
}

nav {
  margin-top: 1rem;
  /* position: fixed; */
  /* width: 100vw; */
  /* background-color: rgba(255, 250, 240, 0.5); */
  /* backdrop-filter: blur(16px); */
}

header img {
  /* border-radius: 50%; */
  /* width: 75pt; */
}

aside {
  font-size: 0.9rem;
  padding: 0.5rem 1rem;
  border: solid 1px;
  margin-top: 1rem;
}

figure svg {
  width: 100%;
}

@media (min-width: 155ch) {
  figure, aside {
    float: right;
    margin-right: -45ch;
    margin-top: 0;
    width: 38ch;
    clear: both;
  }
}

td {
  vertical-align: top;
  /* padding: 0.5em 1em; */
  padding-left: 1em;
  padding-right: 1em;
}

ol, ul {
  padding-left: 25px;
  /* position: relative; */
  /* margin-bottom: 3em; */
  /* line-height: 1.35; */
  /* border-bottom: 1pt solid; */
}

ol {
  /* list-style: none; */
  /* padding-left: 0; */
}

ol li {
  margin-top: 2em;
}

cite {
  font-style: normal;
}

/* ol > li:before { */
/*   counter-increment: bib; */
/*   content: counter(bib); */
/*   position: absolute; */
/*   left: -2rem; */
/* } */

td:first-child {
  padding-left: 0;
  /* border-right: 1pt solid; */
  text-align: right;
  font-feature-settings: "onum";
}

td:last-child {
  padding-right: 0;
}

main table {
  /* border-spacing: 0; */
  /* border-collapse: collapse; */
  max-width: none;
  /* border-left: 1pt solid; */
}

h1, h2 {
  font-weight: normal;
}


h1 {
  font-size: 1.5rem;
}

section {
  margin: 5rem 0;
}

h2 {
  /* font-family: sans-serif; */
  /* font-weight: bold; */
  /* font-size: 1.1rem; */
  /* font-size: 0.8rem; */
  font-size: 12pt;
  /* text-transform: uppercase; */
  /* font-family: "Baskervville SC"; */
  /* font-variant-caps: small-caps; */
  letter-spacing: 0.05rem;
  font-feature-settings: "c2sc", "smcp";
  margin-top: 3em;
  margin-bottom: 2em;
  /* border-bottom: 1pt solid black; */
}

h3 {
  font-weight: normal;
  font-size: 12pt;
  font-style: italic;
  /* margin-top: 0.25em; */
  /* margin: 0.25em 0; */
  margin-bottom: 0.5em; 
  hyphens: none;
}

ol li a {
  color: inherit;
}

td ul, ol ul {
  /* float: right; */
  margin-top: 0.5em;
  padding-left: 0;
}

td ul {
  display: inline;
  /* padding-left: 0; */
}

ol li > p { 
  /* margin-bottom: 0.5rem; */ 
  hyphens: none;
} 

a h3 {
  color: var(--fg1);
}

pre, kbd, code {
  font-family: monospace;
  background-color: var(--bg2);
  border-radius: 0.25rem;
  overflow: auto;
  padding: 1pt 2pt;
}

summary {
  padding-top: 3.33pt;
}

a {
  color: var(--link-color);
  /* color: var(--fg1); */
  text-decoration: none;
  background-color: transparent; 
}

td li a, ol ul a {
  /* background-color: var(--fg1); */
  color: var(--fg1);
  border-radius: 0.25em;
  border: 1pt solid;
  padding: 1pt 2pt;
}

td ul {
  margin: 0;
}

td li a:hover, ol ul li a:hover {
  background-color: var(--fg1);
  color: var(--bg1);
} 

td p, li p {
  margin: 0;
}

li p {
  /* hyphens: none; */
}

pre {
  padding: 1em 1em;
}

pre code {
  padding: 0px;
}

blockquote {
    font-style: italic;
}

nav ul, footer ul {
  padding: 0px;
  hyphens: none;
}

td li, ol ul li, nav li {
  display: inline;
  line-height: 2em;
  white-space: nowrap;
}

details p {
  margin-top: 0.5rem;
  /* padding: 0.5rem; */
  /* border-radius: 0.25rem; */
  /* border: 1pt solid; */
  text-align: justify;
  font-size: 11pt;
  hyphens: auto;
}


nav li + li{
  padding-left: 1em;
}

hr {
    border: 0.5px solid;
    margin: 2em;
}

a:hover, a:focus {
  /* font-weight: bold; */
}

img {
  max-width: 100%;
}

footer img {
  width: 100px;
  image-rendering: pixelated;
}

figcaption {
  font-style: italic;
}


/* @media (prefers-color-scheme: dark) { */
/*   :root{ */
/*     --bg1: var(--bg1-d); */
/*     --fg1: var(--fg1-d); */
/*     --bg2: var(--bg2-d); */
/*     --fg2: var(--fg2-d); */
/*     --link-color: var(--link-color-d); */
/* } */

@font-face{
  font-family: 'Stix Two';
  src: url('stixtwo/STIXTwoText-Regular.woff2') format('woff2');
  font-weight: normal;
}

@font-face{
  font-family: 'Stix Two';
  src: url('stixtwo/STIXTwoText-Bold.woff2') format('woff2');
  font-weight: bold;
}


@font-face{
  font-family: 'Stix Two';
  src: url('stixtwo/STIXTwoText-BoldItalic.woff2') format('woff2');
  font-weight: bold;
  font-style: italic;
}


@font-face{
  font-family: 'Stix Two';
  src: url('stixtwo/STIXTwoText-Italic.woff2') format('woff2');
  font-weight: normal;
  font-style: italic;
}


@font-face{
  font-family: 'Stix Two';
  src: url('stixtwo/STIXTwoText-Medium.woff2') format('woff2');
  font-weight: 500;
}

@font-face{
  font-family: 'Stix Two';
  src: url('stixtwo/STIXTwoText-MediumItalic.woff2') format('woff2');
  font-weight: 500;
  font-style: italic;
}

@font-face{
  font-family: 'Stix Two';
  src: url('stixtwo/STIXTwoText-SemiBold.woff2') format('woff2');
  font-weight: 600;
}

@font-face{
  font-family: 'Stix Two';
  src: url('stixtwo/STIXTwoText-SemiBoldItalic.woff2') format('woff2');
  font-weight: 600;
  font-style: italic;
}
