/* About page: allow scrolling, override homepage full-viewport lock */
body {
  height: auto;
  min-height: 100svh;
  overflow-y: auto;
}

/* Home link sits left */
header {
  justify-content: flex-start;
}

#home-link {
  font-family: 'IBM Plex Mono', 'Courier New', monospace;
  font-size: clamp(0.62rem, 0.78vw, 0.82rem);
  letter-spacing: 0.025em;
  color: inherit;
  text-decoration: none;
  position: relative;
}

#home-link::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.25s ease;
}

#home-link:hover::after {
  transform: scaleX(1);
  transform-origin: left;
}

/* Content */
main {
  justify-content: flex-start;
  padding: 8vh 11vw 12vh;
}

article {
  max-width: 480px;
  animation: appear 0.6s ease-out 0.05s both;
}

article p {
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-weight: 400;
  font-size: clamp(1rem, 1.15vw, 1.15rem);
  line-height: 1.72;
  color: #1C1C1A;
  margin-bottom: 1.3em;
}

article p:last-child {
  margin-bottom: 0;
}

.section-start {
  margin-top: 2.5em;
}

.standout {
  margin-top: 3.5em;
  margin-bottom: 3.5em;
}

.closing {
  margin-top: 3.5em;
  color: #4A4A42;
  font-style: italic;
}

.signature {
  display: block;
  margin-top: 0.9em;
  font-family: 'IBM Plex Mono', 'Courier New', monospace;
  font-size: clamp(0.62rem, 0.78vw, 0.82rem);
  letter-spacing: 0.025em;
  color: #1C1C1A;
  text-decoration: none;
  position: relative;
  width: fit-content;
}

.signature::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform 0.25s ease;
}

.signature:hover::after {
  transform: scaleX(1);
  transform-origin: left;
}

@media (max-width: 560px) {
  main {
    padding: 6vh 6vw 10vh;
  }
}
