/* Images and text wrapping safety */
img {
  display: block;
  height: auto;
  margin-top: 2rem;
  max-width: 100%;
}

html {
  background-color: var(--my-bg);
  font-family: var(
    --my-font-default,
    "Segoe UI",
    Tahoma,
    Geneva,
    Verdana,
    sans-serif
  );
  overflow-x: hidden;
  scroll-behavior: smooth;
  width: 100%;
}

body {
  background-color: inherit;
  color: var(--my-text-color1);
  margin: 0 auto;

  /* Use a readable max width on desktop, not a percentage */
  max-width: 80ch;
  padding: 2rem;
}

footer {
  display: block;
  margin: auto;
  padding-top: 8rem;
  text-align: center;
  width: 100%;
}

body a {
  color: var(--my-accent2);
  text-decoration: none;
  transition-duration: 0.5s;
}

a:hover {
  color: var(--my-accent3);
  text-decoration: underline;
  text-decoration-thickness: 0.125rem;
  transition-duration: 0.25s;
}

aside {
  line-height: 1.5;
  margin: 2rem;
  text-align: justify;
}

aside p {
  color: #666;
}

aside h5 {
  color: #666;
}

blockquote {
  border-left: 0.2rem dotted var(--my-accent1);
  margin-left: 2rem;
  margin-right: 2rem;
  padding-left: 1rem;
}

hr {
  border: none;
  border-top: 0.1em solid black;
  box-shadow: 0.05em 0.05em 0.1em var(--my-accent1);
  margin: 2em 0;
}

img {
  overflow: hidden;
  width: 100%;
}

nav a {
  color: var(--my-text-color1);
}

p {
  letter-spacing: 0.015rem;
  line-height: 1.5;
  margin-bottom: 1rem;
  margin-top: 0;
  text-align: justify;
}

ul {
  color: var(--my-text-color1);
}

ul li:not(:last-child) {
  margin-bottom: 1rem;
}

ul.custom li::marker {
  color: var(--my-accent1); /* bullet color */
  content: "■  "; /* Unicode solid square */
  font-size: 1rem; /* adjust bullet size */
  margin-right: 1rem;
}
