/* Shared legal links and multilingual documents. */
.site-footer { flex-wrap:wrap; row-gap:14px; }
.footer-legal-links { display:flex; flex-wrap:wrap; align-items:center; gap:18px; margin-left:auto; font-size:12px; line-height:1.6; color:var(--muted); }
.footer-legal-links a { text-underline-offset:4px; }
.footer-legal-links a:hover,.footer-legal-links [aria-current="page"] { color:var(--ink); text-decoration:underline; }
.site-footer>span { margin-left:0; }
.legal-main { background:var(--section-base,#fafbfd); }
.legal-heading { padding-top:48px; padding-bottom:0; }
.legal-back { display:inline-flex; align-items:center; gap:8px; font-size:13px; color:var(--muted); }
.legal-back:hover { color:var(--blue); }
.legal-eyebrow { margin:38px 0 12px; color:var(--blue); font-size:12px; letter-spacing:.09em; }
.legal-home-icon { display:none; }
.legal-heading h1 { overflow-wrap:anywhere; hyphens:auto; margin:0; font-size:46px; font-weight:650; letter-spacing:-.04em; line-height:1.2; }
.legal-lead { margin:18px 0 22px; max-width:720px; color:var(--muted); font-size:16px; line-height:1.8; }
.legal-meta { display:flex; align-items:center; flex-wrap:wrap; gap:14px 20px; color:var(--muted); font-size:12px; line-height:1.7; }
.legal-print { padding:4px 0; border:0; background:none; color:var(--muted); font:inherit; cursor:pointer; text-decoration:underline; text-underline-offset:4px; }
.legal-print:hover { color:var(--ink); }
.legal-layout { display:grid; grid-template-columns:210px minmax(0,760px); gap:64px; align-items:start; padding-top:48px; padding-bottom:80px; }
.legal-toc { position:sticky; top:calc(var(--header-height) + 28px); padding:2px 0; }
.legal-toc nav { max-height:calc(100dvh - var(--header-height) - 56px); overflow:auto; }
.legal-toc-title { margin:0 0 16px; font-size:12px; color:var(--muted); }
.legal-toc ol { margin:0; padding:0; list-style:none; }
.legal-toc a { display:flex; gap:10px; align-items:baseline; padding:8px 0; color:var(--muted); font-size:13px; line-height:1.7; }
.legal-toc a span { font-size:10px; color:var(--muted); font-variant-numeric:tabular-nums; }
.legal-toc a:hover,.legal-toc a[aria-current="location"] { color:var(--blue); }
.legal-article { hyphens:auto; min-width:0; font-size:15px; line-height:1.95; color:var(--ink); overflow-wrap:break-word; }
.legal-article section { padding:0 0 30px; margin:0 0 30px; border-bottom:1px solid var(--line); scroll-margin-top:calc(var(--header-height) + 28px); }
.legal-article h2 { display:flex; align-items:baseline; gap:12px; margin:0 0 18px; font-size:21px; line-height:1.5; letter-spacing:-.02em; font-weight:650; }
.legal-section-number { color:var(--blue); font-size:12px; letter-spacing:0; font-variant-numeric:tabular-nums; }
.legal-article p { margin:0 0 15px; }
.legal-article p:last-child { margin-bottom:0; }
.legal-article ul { margin:0 0 17px; padding-left:1.3em; list-style:disc; }
.legal-article li { margin:7px 0; }
.legal-article a { color:var(--blue); text-decoration:underline; text-underline-offset:4px; }
.legal-article code { padding:2px 5px; border-radius:4px; background:var(--soft); font-size:.9em; overflow-wrap:anywhere; }
.legal-callout { border-left:3px solid var(--blue); padding:15px 18px; margin-bottom:20px; background:var(--soft); border-radius:0 8px 8px 0; }
.legal-callout strong { font-weight:600; }
.legal-table { width:100%; border-collapse:collapse; table-layout:fixed; margin-bottom:20px; font-size:13px; line-height:1.9; overflow-wrap:anywhere; }
.legal-table th,.legal-table td { padding:14px 12px; border:1px solid var(--line); vertical-align:top; text-align:left; }
.legal-table thead { background:var(--soft); }
.legal-table th { font-weight:550; }
.legal-table th:first-child { width:23%; }
.legal-table th:nth-child(2) { width:45%; }
.legal-related { display:flex; align-items:center; justify-content:space-between; gap:20px; font-size:14px; padding:4px 0; }
.legal-related>span { color:var(--muted); }
.legal-page .site-footer { margin-top:0; }
@media(max-width:1000px) { .legal-layout { grid-template-columns:180px minmax(0,1fr); gap:36px; } }
@media(max-width:760px) {
  .legal-heading { padding-top:32px; }
  .legal-eyebrow { margin-top:30px; }
  .legal-heading h1 { font-size:38px; }
  .legal-layout { grid-template-columns:1fr; gap:30px; padding-top:30px; padding-bottom:55px; }
  .legal-toc nav { max-height:none; overflow:visible; }
  .legal-toc { position:static; border:1px solid var(--line); border-radius:10px; padding:18px 20px; }
  .legal-toc-title { margin-bottom:10px; }
  .legal-toc ol { display:grid; grid-template-columns:1fr 1fr; gap:0 20px; }
  .legal-toc a { padding:5px 0; font-size:12px; }
  .legal-article { font-size:15px; }
  .legal-article h2 { font-size:20px; }
}
@media(max-width:600px) {
  .footer-legal-links { order:3; flex-basis:100%; margin-left:0; gap:20px; font-size:12px; }
  .site-footer>span { margin-left:auto; }
  .legal-heading h1 { font-size:34px; }
  .legal-lead { font-size:14px; margin-top:14px; }
  .legal-meta { gap:10px 14px; }
  .legal-toc { padding:16px; }
  .legal-toc ol { grid-template-columns:1fr; }
  .legal-toc a { font-size:13px; }
  .legal-article section { padding-bottom:24px; margin-bottom:24px; }
  .legal-table th,.legal-table td { padding:10px 7px; }
  .legal-table { font-size:12px; }
  .legal-article code { padding:2px 3px; }
  .legal-page .nav-shell { gap:12px; }
  .legal-page .nav-actions { gap:8px; }
  .legal-page .button-small { font-size:12px; padding:0 12px; }
}
@media(max-width:540px) {
  .legal-page .nav-actions .legal-home { width:36px; padding:0; gap:0; }
  .legal-home-label { display:none; }
  .legal-home-icon { display:block; }
}
@media print {
  :root,[data-theme="dark"] { color-scheme:light; --ink:#111; --muted:#444; --blue:#111; --soft:#f5f5f5; --line:#bbb; --section-base:#fff; background:#fff; }
  .site-header,.legal-back,.legal-toc,.legal-print,.site-footer,.legal-related { display:none; }
  .legal-main { background:#fff; }
  .legal-heading { padding-top:0; }
  .legal-eyebrow { margin-top:0; }
  .legal-layout { display:block; padding-top:28px; padding-bottom:0; }
  .section-shell { max-width:none; padding-left:0; padding-right:0; }
  .legal-article section { break-inside:auto; }
  .legal-article h2 { break-after:avoid; }
  .legal-table tr { break-inside:avoid; }
  a { color:#111; }
}
