:root {
  color-scheme: dark;
  --background: #151b17;
  --text: #f3f4e9;
  --muted: #abb5a9;
  --accent: #d6f77c;
  --line: #394138;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-synthesis: none;
}
* { box-sizing: border-box; }
body { margin: 0; background: var(--background); color: var(--text); }
a { color: inherit; }
a:focus-visible { outline: 2px solid var(--accent); outline-offset: 8px; }
::selection { background: var(--accent); color: var(--background); }
.page {
  min-height: 100svh;
  max-width: 1600px;
  margin-inline: auto;
  padding: 34px clamp(24px, 6vw, 96px) 28px;
  display: flex;
  flex-direction: column;
}
header, footer { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
header { padding-bottom: 30px; border-bottom: 1px solid var(--line); }
.wordmark { font-size: 30px; font-weight: 650; letter-spacing: -1.4px; text-decoration: none; }
.wordmark span { color: var(--accent); }
.edition { font-size: 14px; color: var(--muted); }
main { flex: 1; padding-block: clamp(70px, 11vh, 140px); }
.eyebrow { margin: 0 0 28px; color: var(--accent); font-size: 14px; letter-spacing: .09em; text-transform: uppercase; }
h1 { margin: 0; font-size: clamp(56px, 8.7vw, 128px); line-height: 1.04; letter-spacing: -.065em; font-weight: 500; }
h1 em { font-family: Georgia, "Times New Roman", serif; font-weight: 400; letter-spacing: -.055em; color: var(--accent); }
.intro { max-width: 490px; margin: 42px 0 0 auto; }
.intro p { margin: 0 0 28px; color: var(--muted); font-size: 19px; line-height: 1.65; }
.github { display: inline-flex; align-items: center; gap: 30px; min-height: 44px; font-size: 16px; text-decoration: none; border-bottom: 1px solid var(--accent); }
.github span { color: var(--accent); font-size: 22px; }
.github:hover { color: var(--accent); }
footer { padding-top: 24px; border-top: 1px solid var(--line); color: var(--muted); font-size: 14px; }
footer p { margin: 0; }
@media (max-width: 600px) {
  .page { padding-top: 24px; }
  header { align-items: baseline; padding-bottom: 24px; }
  .edition { max-width: 120px; text-align: right; line-height: 1.5; }
  main { padding-block: 70px; }
  h1 { font-size: clamp(48px, 12vw, 72px); }
  .intro { margin-top: 40px; margin-left: 0; }
  .intro p { font-size: 18px; }
  footer { flex-wrap: wrap; gap: 12px; }
}
@media (prefers-reduced-motion: no-preference) {
  main { animation: arrive .55s ease-out both; }
  @keyframes arrive { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: translateY(0); } }
}
