* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: radial-gradient(circle at top left, #fff8ed 0, var(--paper) 34%, #efe4d6 100%);
  color: var(--ink);
  font-family: var(--font-sans);
  line-height: 1.58;
}
a { color: inherit; text-decoration: none; }
button, input, select { font: inherit; }
button { cursor: pointer; }
.paper-shell { min-height: 100vh; }
main { width: min(var(--container), calc(100% - 40px)); margin: 0 auto; }
.page { padding: 88px 0 44px; min-height: calc(100vh - 86px); }
.hidden { display: none !important; }
.muted { color: var(--muted); }
.eyebrow { margin: 0 0 10px; color: var(--terracotta-dark); font-size: 13px; font-weight: 720; letter-spacing: .12em; text-transform: uppercase; }
h1, h2, h3, p { margin-top: 0; }
h1 { font-size: clamp(42px, 6vw, 76px); line-height: .98; letter-spacing: -0.055em; font-weight: 760; }
h2 { font-size: clamp(28px, 3.2vw, 44px); line-height: 1.08; letter-spacing: -0.035em; font-weight: 730; }
h3 { font-size: 18px; letter-spacing: -0.015em; }
pre { margin: 0; overflow: auto; }
code { font-family: var(--font-mono); }
@media (max-width: 760px) {
  main { width: min(100% - 24px, var(--container)); }
  .page { padding-top: 72px; }
}
