html {
  padding: calc(1vmin + 0.5rem);
  margin-inline: auto;
  font-size: clamp(1em, 0.909em + 0.45vmin, 1.25em);
  font-family: system-ui;
}

body :not(:is(h1, h2, h3, h4, h5, h6)) {
  line-height: 1.35;
}

body {
  font-family: Calibri, Arial, serif;
}

h1::first-letter {
  font-size: 1.5em;
}

p::first-letter {
  margin-left: 48px;
  text-decoration: underline;
}

img {
  max-width: 100%;
}

i {
  margin-right: 48px;
}

a {
  text-decoration: underline;
  text-decoration-style: double;
  color: blue;
  font-style: italic;
}

a:hover {
  color: green;
  font-style: italic;
  text-decoration-style: solid;
}

a:visited {
  color: purple;
}

p {
  max-width: 70ch;
  min-width: unset;
}

hr {
  margin: 32px;
  background-color: lightgrey;
}

.icons {
  margin-top: 24px;
  margin-bottom: 24px;
  color: red !important;
}

.column {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

.row {
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
}

.infobox {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-wrap: wrap;
  margin: 32px;
  padding: 4px;
}

.infobox div {
  padding: 8px;
  margin: 8px;
  max-width: 480px;
}

.infobox p {
  padding: 8px;
  width: 100%;
  text-align: center;
  font-style: oblique;
}

.center {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.lighter {
  color: lightgrey;
}

.notice {
  padding: 32px;
}

blockquote {
  margin: 4px;
  padding: 24px;
  border: 1px solid #eee;
  background-color: #eee;
}

blockquote p {
  font-style: italic;
}

blockquote > footer {
  text-align: right;
}

body > footer {
  margin-top: 32px;
  text-align: center;
}
