/* Privacy/terms pages — page-specific rules only. */
.legal-page{max-width:720px;padding-block:48px 64px}
.legal-page h1{margin-bottom:var(--space-2)}
@media(min-width:561px){.legal-page .pricing-grid{grid-template-columns:repeat(2,1fr)}}   /* D11-03: four cards in 720px were 152px wide */
/* UX 5.4: the price page was a 720px strip on a 1440px screen. It takes the site container's width,
   the four plans sit in one row from 1000px, and its prose keeps a readable measure. The free card is
   lifted by its surface, not a lime frame (DESIGN: lime is never a border). */
.legal-page:has(.pricing-grid){max-width:1200px}
.legal-page:has(.pricing-grid) > :is(p, h2, h3, .hint){max-width:720px}
@media(min-width:1000px){.legal-page .pricing-grid{grid-template-columns:repeat(4,1fr)}}
.legal-page .pricing-card.featured{border:1px solid var(--color-border-strong)}
.legal-page h2{font-size:16px;margin-top:32px;margin-bottom:8px}
.legal-page p{color:var(--color-text-muted);line-height:1.9}
.legal-page p.hint{color:var(--color-warning);border:1px solid currentColor;border-radius:10px;padding:var(--space-3) var(--space-4);margin-bottom:8px}
/* axe link-in-text-block: inline links inside legal body copy must not rely on colour alone. */
.legal-page p a{text-decoration:underline;text-underline-offset:2px}

/* P9-06: download.html jumps to #android/#ios/#desktop; keep the heading clear of the sticky nav. */
.legal-page h2[id] { scroll-margin-top: var(--space-9); }
