/* geoplate.app - страницы Privacy, Terms, Support, Cookies (src/pages/*.astro).
   Только своя типографика текста и таблицы; цвета - токены --gp-* из styles.css. */

.legal { max-width: calc(46em + 56px); padding-top: 28px; }
@media (min-width: 1176px) { .legal { margin-left: calc((100vw - var(--max)) / 2); } }
.legal h1 { font-size: clamp(32px, 5.4vw, 48px); }
.legal h2 { font-size: clamp(21px, 2.6vw, 25px); margin-top: 36px; }
.legal h3 { margin-top: 22px; }
.legal p, .legal li { max-width: 42em; }
.legal ul { padding-left: 1.2em; margin: 0 0 14px; }
.legal li + li { margin-top: 8px; }
.legal a { text-decoration: underline; }
.legal code { font: 500 .92em/1 var(--mono); background: var(--gp-surface2); padding: 2px 6px; border-radius: 6px; }
.legal .updated { font: 500 13px/1.45 var(--mono); color: var(--gp-mute); margin: 0 0 6px; }
.legal .callout p + p { margin-top: 10px; }

.table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; margin: 14px 0 18px; border: 1px solid var(--gp-line); border-radius: var(--r-sm); background: var(--gp-surface); }
.table-scroll table { border-collapse: collapse; width: 100%; min-width: 520px; font-size: 15px; line-height: 1.5; }
.table-scroll th, .table-scroll td { text-align: left; vertical-align: top; padding: 10px 14px; border-top: 1px solid var(--gp-line); }
.table-scroll thead th { font: 600 12px/1.3 var(--mono); letter-spacing: .06em; text-transform: uppercase; color: var(--gp-mute); border-top: 0; }
