.legal-page { background: var(--legal-surface); color: var(--legal-ink); }
.legal-container { max-width: var(--legal-max); margin-inline: auto; padding-inline: var(--legal-gutter); }
.legal-hero { padding-block: var(--legal-top) var(--legal-large); }
.legal-hero h1 { font-size: var(--legal-display); font-weight: var(--legal-weight); line-height: var(--legal-display-leading); text-transform: uppercase; }
.legal-opening { display: grid; grid-template-columns: 1fr 1fr; gap: var(--legal-medium); margin-block-start: var(--legal-medium); }
.legal-opening > p { font-size: var(--legal-body); line-height: var(--legal-leading); max-width: 42ch; }
.legal-opening > div { align-self: end; justify-self: end; text-align: end; }
.legal-meta,.legal-draft { font-size: var(--legal-label); line-height: var(--legal-leading); color: var(--legal-muted); }
.legal-draft { margin-block-start: var(--legal-xs); }
.legal-layout { display: grid; grid-template-columns: repeat(12,minmax(0,1fr)); gap: var(--legal-small); align-items: start; padding-block-end: var(--legal-large); }
.legal-toc { grid-column: 1 / 5; position: sticky; top: var(--legal-sticky); max-height: calc(100svh - var(--legal-sticky) - var(--legal-small)); overflow-y: auto; padding-block-end: var(--legal-xs); }
.legal-toc > p { font-size: var(--legal-label); font-weight: var(--legal-regular); text-transform: uppercase; margin-block-end: var(--legal-small); }
.legal-toc nav { display: flex; flex-direction: column; align-items: flex-start; gap: var(--legal-micro); padding-inline-end: var(--legal-medium); }
.legal-toc a { font-size: var(--legal-label); line-height: var(--legal-leading); color: var(--legal-toc-muted); padding-block: var(--legal-micro); text-decoration-thickness: var(--legal-hairline); text-underline-offset: var(--legal-xs); }
.legal-toc a:hover,.legal-toc a[aria-current='location'] { color: var(--legal-ink); text-decoration: none; }
.legal-body { grid-column: 6 / 13; max-width: var(--legal-reading); }
.legal-body section { scroll-margin-block-start: var(--legal-sticky); margin-block-end: var(--legal-large); }
.legal-body h2 { font-size: var(--legal-heading); font-weight: var(--legal-weight); line-height: var(--legal-heading-leading); margin-block-end: var(--legal-small); text-transform: uppercase; }
.legal-body p,.legal-body li { font-size: var(--legal-body); line-height: var(--legal-leading); }
.legal-body p + p,.legal-body ul + p { margin-block-start: var(--legal-small); }
.legal-body ul { padding-inline-start: var(--legal-small); margin-block: var(--legal-small); }
.legal-body li + li { margin-block-start: var(--legal-xs); }
.legal-body a { text-decoration: underline; text-underline-offset: .2em; overflow-wrap: anywhere; }
.legal-switch { border-block-start: var(--legal-hairline) solid var(--legal-rule); padding-block-start: var(--legal-medium); display: flex; justify-content: space-between; gap: var(--legal-small); font-size: var(--legal-label); text-transform: uppercase; }
.legal-page :focus-visible { outline: var(--legal-focus) solid var(--brand-brown); outline-offset: var(--legal-xs); }
.legal-page .site-footer :focus-visible { outline-color: var(--brand-off-white); }
[dir='rtl'].legal-page { --legal-display-leading: 1.3; --legal-heading-leading: 1.4; --legal-leading: 1.8; }
@media(max-width:899px) {
 .legal-opening { grid-template-columns: 1fr; gap: var(--legal-small); }
 .legal-opening > div { justify-self: start; text-align: start; }
 .legal-layout { grid-template-columns: 1fr; gap: var(--legal-large); }
 .legal-toc,.legal-body { grid-column: 1; }
 .legal-toc { position: static; max-height: none; }
 .legal-toc nav { display: grid; grid-template-columns: 1fr 1fr; gap: var(--legal-xs) var(--legal-small); padding: 0; }
}
@media(max-width:599px) { .legal-toc nav { grid-template-columns: 1fr; } }
html[dir='rtl'] .legal-page .site-header.floating-nav { inset-inline-start: auto; left: 50%; }
