* {
  box-sizing: border-box;
  text-wrap: pretty;
}

main,
body {
  margin: 0;
}

body {
  font-family: "Times New Roman", serif;
  letter-spacing: -0.03em;
  background: var(--bg);
}

main {
  padding: 0 5rem;
  max-width: 48rem;
  margin: 2rem auto;
}

header {
  padding: 3rem;
  position: relative;
  text-align: center;
}

header a {
  text-decoration: none;
}

footer {
  padding: 8rem 0;
  display: flex;
  gap: 1.5rem;
  justify-content: center;
}

footer a {
  color: inherit;
  font-size: 1.125rem;
}

h1 {
  font-size: 5.5vw;
  font-weight: 400;
  line-height: 100%;
  margin: 0;
}

h2 {
  font-size: 2rem;
  font-weight: 400;
  margin: 1rem 0;
}

h3 {
  font-weight: 400;
  font-size: 1.5rem;
  margin: 3rem 0 1.5rem 0;
}
a {
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
  color: blue;
}

a:visited {
  color: rgb(129, 7, 118);
}

a:hover {
  color: #000;
}

section {
  margin-bottom: 3rem;
}

section section {
  margin: 2rem 0;
}

p {
  margin: 1rem 0;
  font-size: 1.125rem;
  line-height: 150%;
}

ul {
  margin: 0 0 0 1rem;
  padding: 0;
}

ul li {
  gap: 0.5rem;
  margin: 0 0 1rem 0;
  font-size: 1.125rem;
}

li a {
  padding-left: 0.75rem;
  display: block;
  line-height: 140%;
}

li::marker {
  font-size: 0.75rem;
}

.col-2 {
  column-count: 2;
  gap: 1rem;
}

a {
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}

@media (max-width: 800px) {
  h1 {
    font-size: 2.25rem;
  }
  h2 {
    font-size: 1.625rem;
  }
  h3 {
    margin-bottom: 0.75rem;
  }
  main {
    padding: 2rem 1.5rem;
  }

  li a,
  p {
    font-size: 1rem;
  }

  ul li {
    margin: 0 0 0.625rem 0;
  }

  li a {
    padding-left: 0.5rem;
  }
}
