:root {
  color-scheme: light;
  background: #faf9f6;
  color: #26382e;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}

* { box-sizing: border-box; }
body { margin: 0; }
a { color: inherit; text-underline-offset: 4px; }
a:hover { color: #26382e; }
a:focus-visible { outline: 2px solid #26382e; outline-offset: 6px; border-radius: 1px; }

.landing {
  min-height: 100vh;
  min-height: 100svh;
  display: grid;
  grid-template-rows: 1fr auto;
  padding: 32px;
}

.landing main { display: grid; place-items: center; text-align: center; }
.landing h1 {
  margin: 0;
  padding-block: 40px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(1.9rem, 4.5vw, 3rem);
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: -0.035em;
  text-wrap: balance;
}

.landing footer { padding-block: 12px; }
.landing nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 28px; }
.landing nav a { color: #686c65; font-size: 0.8125rem; line-height: 1.8; }

.document { max-width: 720px; margin: 0 auto; padding: 48px 24px 64px; line-height: 1.75; }
.document header { margin-bottom: 44px; }
.document header a { font-size: 0.875rem; }
.document h1 { font-family: Georgia, "Times New Roman", serif; font-size: clamp(2rem, 5vw, 2.75rem); font-weight: 400; line-height: 1.2; letter-spacing: -0.03em; margin-bottom: 12px; }
.document h2 { font-size: 1.0625rem; line-height: 1.4; margin: 32px 0 10px; }
.document p { margin: 0 0 16px; }
.document .updated { color: #686c65; font-size: 0.875rem; }
.document footer { border-top: 1px solid #deded5; margin-top: 44px; padding-top: 20px; font-size: 0.875rem; }
.document footer nav { display: flex; flex-wrap: wrap; gap: 12px 24px; }

@media (max-width: 480px) {
  .landing { padding: 24px; }
  .landing h1 { max-width: 14ch; }
  .document { padding-top: 32px; }
}
