nav {
  display: flex;
  gap: 1em;
}

img {
  display: block;
  margin: 0 auto;
  width: 25%;
  height: auto;
}

p {
  text-align: center;
}

h3 {
  text-align: center;
}

iframe {
  display: block;
  width: 100%;
  height: 90vh;
}

.centered {
  text-align: center;
}

.article h3,
.article p {
  text-align: left;
}

/* Code examples and figures on project pages */
pre {
  overflow-x: auto;
  padding: 0.75em 1em;
  border: 1px solid #ccc;
  background: #f6f6f6;
  font-size: 0.85em;
  line-height: 1.4;
}

figure {
  margin: 1.5em 0;
}

figcaption {
  font-size: 0.9em;
  color: #555;
}

img.screenshot {
  width: 100%;
  max-width: 900px;
}

img.photo {
  width: 100%;
  max-width: 480px;
}

table.memmap {
  border-collapse: collapse;
  font-family: monospace;
  font-size: 0.85em;
}

table.memmap th,
table.memmap td {
  border: 1px solid #ccc;
  padding: 0.25em 0.75em;
  text-align: left;
}

.table-scroll {
  overflow-x: auto;
}

figure img + figcaption {
  text-align: center;
}
