.legal-main {
  width: min(1160px, calc(100% - 128px));
  margin: 0 auto;
  padding: 156px 0 40px;
}
.legal-back { display: inline-flex; gap: 10px; align-items: center; color: #b3b3b3; font-size: 14px; }
.legal-back:hover, .legal-end a:hover { color: var(--lime); }
.legal-heading .eyebrow { margin-top: 48px; }
.legal-heading h1 { margin-top: 16px; font-size: 64px; line-height: 1.08; letter-spacing: -2.2px; }
.legal-meta { margin-top: 20px; color: var(--muted); font-size: 14px; line-height: 22px; }
.legal-tabs { display: flex; gap: 28px; margin-top: 36px; border-bottom: 1px solid var(--border); }
.legal-tabs a { padding: 0 0 16px; color: #a6a6a6; font-size: 15px; border-bottom: 2px solid transparent; }
.legal-tabs a:hover { color: var(--text); }
.legal-tabs a[aria-current="page"] { color: var(--lime); border-bottom-color: var(--lime); }
.legal-layout { display: grid; grid-template-columns: 270px minmax(0, 1fr); gap: 72px; margin-top: 56px; }
.legal-sidebar { min-width: 0; }
.legal-contents { position: sticky; top: 128px; border: 0; margin: 0; }
.legal-contents > summary { display: flex; align-items: center; justify-content: space-between; padding: 0 0 16px; font-size: 13px; line-height: 20px; font-weight: 500; letter-spacing: .04em; color: var(--muted); text-transform: uppercase; list-style: none; }
.legal-contents > summary::after { display: none; }
.legal-contents > summary::-webkit-details-marker { display: none; }
.legal-chevron { color: var(--lime); font-size: 21px; transition: transform .18s; }
.legal-contents[open] .legal-chevron { transform: rotate(180deg); }
.legal-contents nav { max-height: calc(100dvh - 190px); overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #444 transparent; padding: 6px 12px 8px 6px; margin-left: -6px; }
.legal-contents ol { list-style: none; padding: 0; }
.legal-contents li + li { margin-top: 14px; }
.legal-contents a { display: block; color: #a6a6a6; font-size: 13px; line-height: 20px; }
.legal-contents a:hover { color: var(--lime); }
.legal-document { min-width: 0; color: #b8b8b8; font-size: 16px; line-height: 1.8; overflow-wrap: break-word; }
.legal-document h2 { color: var(--text); font-size: 28px; line-height: 1.3; letter-spacing: -.6px; margin: 60px 0 22px; padding-top: 32px; border-top: 1px solid var(--border); }
.legal-document h2:first-child { margin-top: 0; border: 0; padding: 0; }
.legal-document h3 { color: #eee; font-size: 20px; line-height: 1.4; letter-spacing: -.2px; margin: 32px 0 14px; }
.legal-document p + p { margin-top: 16px; }
.legal-document ul, .legal-document ol { padding-left: 24px; margin: 16px 0; }
.legal-document li { padding-left: 5px; margin: 8px 0; }
.legal-document li::marker { color: var(--lime); }
.legal-document a { color: var(--lime); text-decoration: underline; text-underline-offset: 4px; overflow-wrap: anywhere; }
.legal-document strong { color: #e4e4e4; font-weight: 500; }
.legal-end { display: flex; justify-content: space-between; gap: 24px; margin: 64px 0 0 342px; padding-top: 28px; border-top: 1px solid var(--border); font-size: 14px; }
.legal-end a { display: inline-flex; align-items: center; gap: 12px; }
.legal-page .footer { margin-top: 48px; }
@media (min-width: 768px) and (max-width: 1099px) {
  .legal-main { width: calc(100% - 64px); padding-top: 144px; }
  .legal-heading h1 { font-size: 56px; }
  .legal-layout { grid-template-columns: 210px minmax(0, 1fr); gap: 36px; }
  .legal-end { margin-left: 246px; }
}
@media (max-width: 767px) {
  .legal-main { width: calc(100% - 48px); padding-top: 108px; padding-bottom: 16px; }
  .legal-heading .eyebrow { margin-top: 36px; }
  .legal-heading h1 { margin-top: 14px; font-size: 42px; line-height: 1.12; letter-spacing: -1.3px; }
  .legal-meta { margin-top: 16px; font-size: 12px; line-height: 20px; }
  .legal-tabs { gap: 24px; margin-top: 28px; }
  .legal-tabs a { font-size: 14px; padding-bottom: 14px; }
  .legal-layout { display: block; margin-top: 28px; }
  .legal-contents { position: static; padding: 16px 18px; background: var(--surface); border: 1px solid var(--border); border-radius: 12px; margin-bottom: 36px; }
  .legal-contents > summary { padding: 0; font-size: 13px; }
  .legal-contents nav { max-height: none; overflow: visible; margin-top: 22px; }
  .legal-contents a { font-size: 14px; line-height: 21px; }
  .legal-document { font-size: 15px; line-height: 1.8; }
  .legal-document h2 { font-size: 25px; line-height: 1.35; margin-top: 42px; padding-top: 28px; }
  .legal-document h3 { font-size: 19px; margin-top: 28px; }
  .legal-document ul, .legal-document ol { padding-left: 20px; }
  .legal-end { margin: 44px 0 0; font-size: 13px; }
  .legal-page .footer { margin-top: 32px; }
}
@media (prefers-reduced-motion: reduce) { .legal-chevron { transition: none; } }
