/* Impressum + privacy: typed sheets of paper (standalone pages and the overlay on the desk) */
:root { --desk: #e8e8e5; --sheet: #fbfaf5; --type: #26241f; --type-soft: #5c584f; }
.legal-page, .legal-page body { margin: 0; background: var(--desk); }

.paper {
  box-sizing: border-box; max-width: 760px; margin: 48px auto; padding: 64px 72px 80px;
  background:
    radial-gradient(120% 80% at 50% 0%, rgba(255,255,255,.55), rgba(255,255,255,0) 60%),
    repeating-linear-gradient(0deg, rgba(90,80,60,.018) 0 1px, transparent 1px 3px),
    var(--sheet);
  box-shadow: 0 1px 2px rgba(40,30,10,.12), 0 18px 40px -12px rgba(40,30,10,.28);
  color: var(--type); font: 400 16px/1.65 'Courier Prime', 'Courier New', monospace;
  text-shadow: 0 0 .5px rgba(38,36,31,.55); /* a little ink spread, like a typewriter ribbon */
  overflow-wrap: break-word; hyphens: auto;
}
.paper h1, .paper h2, .paper h3, .paper h4 { font-weight: 700; line-height: 1.3; margin: 2em 0 .6em; }
.paper h1 { font-size: 22px; margin-top: 0; text-transform: uppercase; letter-spacing: .04em; }
.paper h2 { font-size: 18px; text-transform: uppercase; letter-spacing: .03em; }
.paper h3, .paper h4 { font-size: 16px; text-decoration: underline; text-underline-offset: 3px; }
.paper p, .paper ul, .paper ol { margin: 0 0 1em; }
.paper a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.paper a:hover, .paper a:focus-visible { color: #000; text-decoration-thickness: 2px; }

.back { position: fixed; top: 20px; left: 20px; z-index: 2; padding: 8px 14px; border-radius: 999px; background: rgba(255,255,255,.7);
  color: #161616; font: 400 14px 'Courier Prime', monospace; text-decoration: none; box-shadow: 0 2px 10px rgba(0,0,0,.08); }

@media (max-width: 700px) {
  .paper { margin: 0; padding: 72px 20px 48px; box-shadow: none; }
  .back { top: 12px; left: 12px; }
}
