/* Legal pages: shared styles */
.legal-main { padding-top: calc(var(--header-h) + 8px); }
.legal { max-width: 860px; }
.legal-header { margin-bottom: 8px; }
.legal-header h1 {
  font-family: "Playfair Display", serif;
  font-weight: 700;
  font-size: clamp(28px, 5vw, 40px);
  line-height: 1.12;
  color: #0b0f14;
}
.legal-header .meta { color: #64748b; margin: 4px 0; }
.legal-header .lede { color: #334155; margin-top: 8px; }

.legal h2 {
  font-family: "Poppins", system-ui, -apple-system, sans-serif;
  font-weight: 600;
  font-size: clamp(18px, 3.6vw, 22px);
  margin: 18px 0 6px;
  color: #0b1220;
}
.legal p, .legal li, .legal address { color: #2b3340; line-height: 1.65; }
.legal section { margin: 10px 0; }

.legal .bullet { padding-left: 1.2rem; }
.legal .bullet li { margin: .2rem 0; }
.legal a { color: #0d6efd; text-decoration: underline; }

.legal-contact { background: #f7fbff; border: 1px solid #e6f1ff; padding: 10px 12px; border-radius: 10px; }

/* Responsive container & safe area */
.legal-main .container { box-sizing: border-box; width: 100%; max-width: 860px; }
@supports (padding: max(0px)) {
  .legal-main .container { padding-left: max(16px, env(safe-area-inset-left)); padding-right: max(16px, env(safe-area-inset-right)); }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
  html:focus-within { scroll-behavior: auto; }
}
