/* Legal information and the shared email contact use the existing brand styles. */
@layer legal {
  .footer a[href^="mailto:"], .enquiry-delivery-note strong { overflow-wrap: anywhere; }
  .footer-operator { display: block; color: #d3dfd7; font-size: .8125rem; line-height: 1.7; margin-top: 18px; }
  .closing-contact { min-width: 0; }
  .legal-page { max-width: 900px; }
  .legal-page h1 { margin-bottom: 18px; }
  .legal-lead { max-width: 58ch; font-size: 1.125rem; margin-bottom: 32px; }
  .legal-page .legal-draft { margin: 0 0 36px; border-radius: 8px; }
  .legal-page section { padding-block: 4px 20px; border-bottom: 1px solid var(--line); }
  .legal-page h2 { scroll-margin-top: 120px; }
  .legal-page p + p { margin-top: 14px; }
  .legal-page strong { color: var(--ink); font-weight: 600; }
  .legal-index { display: flex; flex-wrap: wrap; gap: 10px 22px; padding-bottom: 25px; border-bottom: 1px solid var(--line); font-size: .875rem; }
  .legal-details { margin-top: 22px; }
  .legal-details > div { display: grid; grid-template-columns: minmax(150px, 1fr) minmax(0, 2fr); gap: 16px; padding-block: 13px; border-bottom: 1px solid var(--line); line-height: 1.7; }
  .legal-details > div:last-child { border-bottom: 0; }
  .legal-details dt { font-size: .875rem; color: var(--muted); }
  .legal-details dd { margin: 0; overflow-wrap: anywhere; }
  .legal-page .legal-pending { font-size: .9375rem; padding-left: 16px; border-left: 2px solid var(--line); }
  .legal-end { padding-top: 30px; font-size: .875rem; }
  .legal-page a { overflow-wrap: anywhere; }
  @media (max-width: 520px) {
    .legal-details > div { grid-template-columns: minmax(0, 1fr); gap: 3px; }
    .legal-lead { font-size: 1rem; }
    .legal-page h2 { scroll-margin-top: 100px; }
  }
}
