:root {
  --paper: #F4ECDD;
  --paper-deep: #EADFCB;
  --ink: #2B2521;
  --muted: #7C7064;
  --tomato: #E2522F;
  --rule: #DCCFBA;
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background-color: var(--paper);
  background-image:
    linear-gradient(90deg, transparent 23px, rgba(226, 82, 47, 0.35) 23px, rgba(226, 82, 47, 0.35) 25px, transparent 25px),
    repeating-linear-gradient(180deg, transparent 0, transparent 33px, rgba(220, 207, 186, 0.55) 33px, rgba(220, 207, 186, 0.55) 34px);
  color: var(--ink);
  font-family: "Courier Prime", "American Typewriter", "Courier New", monospace;
  font-size: 17px;
  line-height: 1.55;
}

main {
  max-width: 640px;
  margin: 0 auto;
  padding: 48px 20px 80px 44px;
}

h1, h2, h3 { line-height: 1.2; }
h1 { font-size: 44px; margin: 12px 0 6px; }
h2 { font-size: 24px; margin-top: 40px; }
h3 { font-size: 18px; margin-top: 28px; }

.tagline { color: var(--muted); font-size: 18px; margin: 0 0 32px; }
.muted { color: var(--muted); }
a { color: var(--tomato); }

.card {
  background: var(--paper);
  border: 2px solid var(--ink);
  border-radius: 10px;
  box-shadow: 4px 4px 0 var(--ink);
  padding: 18px 20px;
  margin: 24px 0;
}

.card ol { margin: 0; padding-left: 22px; }
.card li::marker { color: var(--tomato); font-weight: bold; }

.button {
  display: inline-block;
  background: var(--tomato);
  color: var(--paper);
  text-decoration: none;
  font-weight: bold;
  border: 2px solid var(--ink);
  border-radius: 10px;
  box-shadow: 4px 4px 0 var(--ink);
  padding: 14px 22px;
  margin: 8px 12px 8px 0;
}

footer { margin-top: 56px; font-size: 14px; color: var(--muted); }
footer a { color: var(--muted); }
