/* Legal, contact and thank-you pages */
.legal { max-width: 780px; margin: 0 auto; padding: calc(var(--nav-h) + 64px) var(--gutter) 96px; }
.legal__back { display: inline-block; margin-bottom: 40px; font: 500 13px var(--font-mono); text-transform: uppercase; letter-spacing: .08em; color: var(--orange-deep); text-decoration: none; }
.legal h1 { font-size: clamp(36px, 6vw, 64px); margin-bottom: 14px; }
.legal__date { color: var(--muted); margin-bottom: 40px; }
.legal h2 { font: 700 22px/1.2 var(--font-display); margin: 44px 0 12px; }
.legal p, .legal li { color: var(--ink-soft); margin-bottom: 12px; }
.legal ul { padding-left: 20px; }
.legal table { width: 100%; border-collapse: collapse; margin: 12px 0 20px; font-size: 15px; }
.legal th, .legal td { text-align: left; padding: 10px 8px; border-bottom: 1px solid var(--cream-deep); vertical-align: top; }
.legal mark { background: rgba(244, 162, 97, .35); padding: 0 4px; border-radius: 4px; }
.legal__note { padding: 16px 18px; border-radius: 14px; background: #fff; border-left: 3px solid var(--orange); font-size: 14px; }
.legal form { display: grid; gap: 14px; margin-top: 24px; }
.legal textarea { width: 100%; min-height: 160px; padding: 15px 18px; border-radius: 14px; border: 1.5px solid rgba(14, 13, 12, .18); font: 500 16px var(--font-body); resize: vertical; }
.legal .nav { position: fixed; }
.legal-page .nav { visibility: visible; }
.legal-page .nav::before { opacity: 1; }
.downloads { list-style: none; padding: 0; display: grid; gap: 10px; }
.downloads a { display: flex; justify-content: space-between; padding: 16px 18px; border-radius: 14px; background: #fff; text-decoration: none; font-weight: 600; }
