/* Policy pages: plain text on the site's background and type. Loaded after style.css. */
.policy { max-width: 760px; margin: 0 auto; padding: 40px var(--gutter) 96px; }
.policy__nav { display: flex; flex-wrap: wrap; gap: 8px 22px; margin-bottom: 48px; font: 500 12px/1 var(--f-mono); letter-spacing: .08em; text-transform: uppercase; }
.policy__nav a { color: var(--text-2); text-decoration: none; }
.policy__nav a:hover { color: var(--text); }
.policy__nav span { color: var(--accent); }
.policy__head { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 40px; align-items: start; }
.policy__head .pixel { margin-top: 6px; }
.policy h1 { font-size: clamp(2rem, 1.4rem + 2vw, 2.75rem); line-height: 1.1; letter-spacing: -.03em; font-weight: 600; }
.policy h2 { font-size: 1.15rem; font-weight: 600; margin-top: 2.4em; letter-spacing: -.01em; }
.policy h3 { font-size: 1rem; font-weight: 600; margin-top: 1.8em; }
.policy h3 a { color: var(--text); text-decoration: underline; text-decoration-color: var(--accent); text-underline-offset: 4px; }
.policy h3 a:hover { color: var(--accent); }
.policy p, .policy li { color: var(--text-2); line-height: 1.75; }
.policy p { margin-top: .9em; }
.policy ul { list-style: disc; padding-left: 1.3em; margin-top: .6em; }
.policy li + li { margin-top: .3em; }
.policy strong { color: var(--text); font-weight: 600; }
.policy code { font-family: var(--f-mono); font-size: .88em; color: var(--text); }
.policy a { color: var(--accent); }
.policy .meta { font: 12px/1.8 var(--f-mono); letter-spacing: .03em; color: var(--text-3); margin-top: 1.2em; }
.policy .meta a { color: var(--text-2); }
.policy .soon { color: var(--text-3); }
@media (max-width: 720px) {
  .policy__head { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .policy__head .pixel { margin-inline: auto; }
}
