:root{
  --ink:#171a21;
  --ink-soft:#4a515e;
  --rule:#d6d3cb;
  --paper:#faf9f6;
  --mark:#1e3a5f;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  margin:0;
  background:var(--paper);
  color:var(--ink);
  font-family:"Source Serif 4",Georgia,serif;
  font-size:18px;
  line-height:1.65;
}
.sheet{max-width:38rem;margin:0 auto;padding:4rem 1.5rem 6rem}
header{border-bottom:1px solid var(--rule);padding-bottom:1.75rem;margin-bottom:2.5rem}
h1{font-size:1.9rem;font-weight:600;line-height:1.2;margin:0 0 .6rem;letter-spacing:-.01em}
.meta{color:var(--ink-soft);font-size:.95rem;margin:0}
.nav{margin-top:1.25rem;font-size:.95rem}
.nav a{color:var(--mark);text-decoration:underline;text-underline-offset:3px;margin-right:1rem}
.divider{
  border:0;
  border-top:1px solid var(--rule);
  margin:4rem 0 2.5rem;
}
section{margin-bottom:2.25rem;scroll-margin-top:2rem}
h2{font-size:1.05rem;font-weight:600;margin:0 0 .5rem;display:flex;gap:.75rem}
h2 .n{color:var(--mark);font-variant-numeric:tabular-nums;font-weight:400;flex:none}
p{margin:0 0 .8rem}
ul{margin:0 0 .8rem;padding-left:1.15rem}
li{margin-bottom:.35rem}
.fill{background:#fdf3d8;padding:0 .15em}
footer{border-top:1px solid var(--rule);margin-top:3.5rem;padding-top:1.5rem;color:var(--ink-soft);font-size:.9rem}
a:focus-visible{outline:2px solid var(--mark);outline-offset:2px}
@media (max-width:480px){
  body{font-size:17px}
  .sheet{padding:2.5rem 1.25rem 4rem}
}
