@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat/Montserrat-VariableFont_wght.ttf') format('truetype');
  font-style: normal;
}

@font-face {
  font-family: Montserrat;
  src: url('../fonts/Montserrat/Montserrat-Italic-VariableFont_wght.ttf') format('truetype');
  font-style: italic;
}

@font-face {
  font-family: 'Crimson Text';
  src: url('../fonts/Crimson_Text/CrimsonText-Regular.ttf') format('truetype');
  font-style: normal;
  font-weight: normal;
}

@font-face {
  font-family: 'Crimson Text';
  src: url('../fonts/Crimson_Text/CrimsonText-Bold.ttf') format('truetype');
  font-style: normal;
  font-weight: bold;
}

@font-face {
  font-family: 'Crimson Text';
  src: url('../fonts/Crimson_Text/CrimsonText-Italic.ttf') format('truetype');
  font-style: italic;
  font-weight: normal;
}

@font-face {
  font-family: 'Crimson Text';
  src: url('../fonts/Crimson_Text/CrimsonText-BoldItalic.ttf') format('truetype');
  font-style: italic;
  font-weight: bold;
}

:root {
  --font-sans-serif: Montserrat, Arial, sans-serif;
  --font-serif: 'Crimson Text', Georgia, serif;
}

body {
  font-family: var(--font-sans-serif);
  font-size: 18px;
  color: var(--font-dark-gray);
}

a {
  color: var(--link);
}

a:hover, a:visited {
  color: var(--link-visited);
}

h1 {
  color: var(--content-h1);
  font-weight: bold;
  font-size: 2rem;
  line-height: 2.3125rem;
}

p + h2, ol + h2, ul + h2, table + h2, h2:not(:first-of-type)  {
  margin-top: 60px;
  padding-top: 30px;
  border-top: 1px solid var(--border-light-gray);
}

p, li {
  line-height: 1.6rem;
}

.caption {
  text-align: center;
  font-size: 0.8rem;
  width: 100%;
}

.section-highlight {
  padding: 20px;
  background-color: var(--bg-gray);
}
