/* Import fonts */
@import url('https://fonts.googleapis.com/css2?family=Source+Serif+4:wght@400;500;600;700&family=Libre+Baskerville:wght@400;700&display=swap');

/* Base body */
body {
  font-family: "Source Serif 4", Georgia, serif !important;
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.1px;
  color: #111;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  font-family: "Libre Baskerville", Georgia, serif !important;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: -0.2px;
  margin-top: 1.5em;
  margin-bottom: 0.5em;
}

/* Heading scale */
h1 { font-size: 32px; }
h2 { font-size: 26px; }
h3 { font-size: 22px; }
h4 { font-size: 18px; }
h5 { font-size: 16px; }
h6 { font-size: 14px; }

/* Paragraph spacing */
p {
  margin-bottom: 1em;
}

/* UI elements */
button,
input,
textarea,
select,
label,
a {
  font-family: "Source Serif 4", Georgia, serif !important;
  font-weight: 500;
  letter-spacing: 0.2px;
}

/* Buttons */
button {
  font-weight: 600;
}

/* Labels */
label {
  font-size: 14px;
}

/* Links */
a {
  text-decoration: none;
}

/* Lists */
ul, ol {
  margin-bottom: 1em;
  padding-left: 1.2em;
}

/* Small spacing above list items */
li {
  margin-top: 0.35em !important;
  margin-bottom: 0 !important;
}

li p {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* Rendering improvements */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Remove shadows from buttons at all times */
button,
[type="button"],
[type="submit"],
[role="radio"],
[role="option"] {
  box-shadow: none !important;
}

button:hover,
button:focus,
button:active,
[type="button"]:hover,
[type="button"]:focus,
[type="button"]:active,
[type="submit"]:hover,
[type="submit"]:focus,
[type="submit"]:active {
  box-shadow: none !important;
}