/* Privacy and Terms pages: quiet, readable, on-brand. */
.legal-head { display: flex; align-items: center; justify-content: space-between; gap: var(--space-2);
  padding: calc(env(safe-area-inset-top, 0px) + .9rem) var(--gutter) .9rem; border-bottom: 1px solid rgba(91, 21, 51, .14); }
.legal-head img { height: 2.6rem; width: auto; }
.legal-head a { text-decoration: none; }
.legal-back { font-size: var(--step--1); letter-spacing: .05em; color: var(--plum); padding: .7rem 0; }
.legal-back:hover, .legal-back:focus-visible { text-decoration: underline; text-underline-offset: 4px; }
.legal { padding-block: var(--space-5) var(--space-6); }
.legal__inner { max-width: 44rem; }
.legal h1 { font-size: var(--step-3); margin-bottom: var(--space-1); }
.legal__date { color: var(--plum-soft); font-size: var(--step--1); letter-spacing: .05em; margin-bottom: var(--space-4); }
.legal h2 { font-size: var(--step-2); margin: var(--space-4) 0 var(--space-1); }
.legal p, .legal li { font-weight: 400; color: var(--ink); max-width: 68ch; }
.legal p + p { margin-top: 1rem; }
.legal ul { margin: .8rem 0 0; padding-left: 1.2rem; display: grid; gap: .5rem; }
.legal a { color: var(--plum); text-underline-offset: 3px; }
.legal a:hover, .legal a:focus-visible { color: var(--rose); }
.legal-foot { background: var(--plum); color: var(--cream); padding: var(--space-4) 0; font-size: var(--step--1); }
.legal-foot .container { display: flex; flex-wrap: wrap; gap: var(--space-1) var(--space-3); justify-content: space-between; }
.legal-foot a { color: var(--cream); text-underline-offset: 4px; }
