/* Legal pages. Deliberately plain: these are read when something has gone
   wrong or before money changes hands, so legibility beats art direction. */

.legal { background: var(--paper, #fbf9f6); }

.legal__head { border-bottom: 1px solid var(--line, #e7e1d8); padding: 18px 0; }
.legal__back { font: 500 15px var(--sans, Inter, sans-serif);
               color: var(--ink-mid, #57514a); text-decoration: none; }
.legal__back:hover { color: var(--ink, #1e1b17); }

.legal__body { max-width: 760px; padding: 44px 24px 72px; }
.legal__body h1 { font: 400 38px/1.2 var(--serif, Fraunces, Georgia, serif);
                  margin: 0 0 8px; letter-spacing: -.02em; }
.legal__meta { margin: 0 0 36px; font-size: 14px; color: var(--ink-soft, #8a8279); }

.legal__body h2 { font: 600 20px/1.3 var(--sans, Inter, sans-serif);
                  margin: 40px 0 12px; color: var(--ink, #1e1b17); }
.legal__body h3 { font: 600 16px/1.4 var(--sans, Inter, sans-serif); margin: 26px 0 8px; }
.legal__body p, .legal__body li { font-size: 16px; line-height: 1.7;
                                  color: var(--ink-mid, #57514a); }
.legal__body p { margin: 0 0 14px; }
.legal__body ul, .legal__body ol { margin: 0 0 16px; padding-left: 22px; }
.legal__body li { margin-bottom: 7px; }
.legal__body strong { color: var(--ink, #1e1b17); font-weight: 600; }
.legal__body a { color: var(--accent, #4a3f8f); }

.legal__body table { width: 100%; border-collapse: collapse; margin: 0 0 20px;
                     font-size: 15px; display: block; overflow-x: auto; }
.legal__body th, .legal__body td { text-align: left; padding: 10px 12px;
                                   border-bottom: 1px solid var(--line-soft, #f0ece5);
                                   vertical-align: top; }
.legal__body th { font: 600 13px var(--sans, Inter, sans-serif);
                  text-transform: uppercase; letter-spacing: .05em;
                  color: var(--ink-soft, #8a8279); }

.legal__callout { background: #fff; border: 1px solid var(--line, #e7e1d8);
                  border-left: 3px solid var(--gold, #a8791f);
                  border-radius: 10px; padding: 16px 20px; margin: 0 0 22px; }
.legal__callout p:last-child { margin-bottom: 0; }

.legal__foot { border-top: 1px solid var(--line, #e7e1d8); padding: 26px 0 40px; }
.legal__links { display: flex; flex-wrap: wrap; gap: 18px; margin-bottom: 14px; }
.legal__links a { font-size: 14px; color: var(--ink-mid, #57514a); text-decoration: none; }
.legal__links a:hover { color: var(--accent, #4a3f8f); }
.legal__foot .foot__fine, .legal__foot .foot__credit {
  font-size: 13px; color: var(--ink-soft, #8a8279); margin: 0 0 6px; }

@media (max-width: 560px) {
  .legal__body { padding: 30px 18px 56px; }
  .legal__body h1 { font-size: 30px; }
}
