@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior:smooth
  }
}

body {
  margin: 0;
  font-family: var(--font-sans-serif);
  font-weight: 400;
  text-align: left;
  font-size: calc(var(--base-font-size) + .35vw);
  line-height: calc(var(--base-font-size) + 1.05vw);
  background-color: var(--bg-color);
  color: var(--text-color);
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

*, ::before, ::after {
  max-inline-size: var(--measure);
  box-sizing: border-box;
}

html,
body,
div,
header,
nav,
main,
footer,
aside,
section,
svg,
ul {
  max-inline-size: none;
}


.page-main > * + * {
  margin-top: var(--s3);
}
/*
.page-main > div {
  margin-top: inherit;
}*/

a{
  color: var(--link-color);
  text-decoration-skip-ink: auto;
  text-decoration: none;
}
a:hover{
  color: var(--link-color-hover);
  text-decoration: underline;
}

/* --- Typography --- */

p {
  margin: 0;
}

h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
  margin:0;
  font-weight: 500;
}

h1, .h1 {
  font-size: 1.912rem;
  line-height: calc(18px + 1.8vw);
}

h2, .h2 {
  font-size: 1.616rem;
  line-height: calc(18px + 1vw);
}

h3, .h3 {
  font-size: 1.1rem;
  line-height: calc(18px + 0.7vw);
  font-weight: 650;
}

h4, .h4 { font-size: 1.3rem;   font-weight: 300;}
h5, .h5 { font-size: 1.243rem; }
h6, .h6 { font-size: 1.132rem; }

h4, h5, h6, .h4, .h5, .h6 {
  line-height: calc(18px + .2vw);
}

table {
  border-collapse: collapse;
  border: 1px solid var(--primary-color-darker);
  max-inline-size: fit-content;
  max-width: fit-content;
}

table thead {
  position: sticky;
  top: 0;
}

table thead th {
  background-color: var(--primary-color-darker);
  color: var(--primary-color-lighter);
}

table td, table th {
  padding: var(--s-1) var(--s1);
}
table td {
  padding: var(--s-1) var(--s1);
}

table tbody tr:nth-of-type(even) {
  background-color: var(--bg-color-accent);
}

.compact table,
table.compact {
  font-size: 0.7em;
  line-height: 1.4em;
  font-weight: normal;
  min-width: 200px;
}

.compact table th,
table.compact th {
  min-width: 27ch;
  padding: var(--s-1) var(--s-3);
}
.compact table td,
table.compact td {
  padding: var(--s-1) var(--s-3);
}

.chart {
  max-inline-size: var(--measure);
}
