/* Company and legal pages (/about/, /terms/, /privacy/, /risks/): page head + one reading column, side links */
.rs-legal { padding: clamp(48px, 6vw, 96px) var(--rs-gutter) clamp(64px, 8vw, 120px); background: var(--rs-bg); }
.rs-legal__box { display: grid; grid-template-columns: minmax(180px, 220px) minmax(0, 68ch); gap: clamp(32px, 6vw, 96px); justify-content: center; }
.rs-legal__side { position: sticky; top: calc(var(--rs-ht) + var(--rs-hh) + 24px); align-self: start; display: flex; flex-direction: column; gap: 20px; font: 400 15px/1.45 var(--rs-font); color: var(--rs-text-3); }
.rs-legal__updated, .rs-legal__mail { margin: 0; }
.rs-legal__nav { display: flex; flex-direction: column; }
.rs-legal__nav a { display: flex; align-items: center; min-height: 40px; color: var(--rs-text-2); text-decoration: none; font-weight: 500; }
.rs-legal__nav a[aria-current="page"] { color: var(--rs-accent); }
@media (hover: hover) { .rs-legal__nav a:hover { color: var(--rs-text); } }
.rs-legal a { color: var(--rs-accent); text-underline-offset: 3px; }
.rs-legal__nav a { text-decoration: none; }

.rs-legal__body { font: 400 17px/1.65 var(--rs-font); color: var(--rs-text-2); }
.rs-legal__body > :first-child { margin-top: 0; }
.rs-legal__body h2 { margin: 2.2em 0 0.6em; font: 500 clamp(22px, 1.6vw + 8px, 28px)/1.2 var(--rs-display); letter-spacing: -0.01em; color: var(--rs-text); }
.rs-legal__body p { margin: 0 0 1em; text-wrap: pretty; }
.rs-legal__body ul { margin: 0 0 1em; padding-left: 1.2em; }
.rs-legal__body li { margin: 0 0 0.6em; padding-left: 0.2em; }
.rs-legal__body b { color: var(--rs-text); font-weight: 600; }
.rs-legal__lead { font-size: clamp(18px, 1vw + 10px, 21px); line-height: 1.55; color: var(--rs-text); }

.rs-legal__table { width: 100%; margin: 0 0 1em; border-collapse: collapse; font-size: 15px; line-height: 1.5; }
.rs-legal__table th { text-align: left; font-weight: 600; color: var(--rs-text); padding: 0 16px 10px 0; border-bottom: 1px solid var(--rs-line); }
.rs-legal__table td { vertical-align: top; padding: 12px 16px 12px 0; border-bottom: 1px solid var(--rs-line); }
.rs-legal__table td:first-child { color: var(--rs-text); }

.rs-legal__contact { display: grid; grid-template-columns: max-content 1fr; gap: 10px 28px; margin: 0 0 1.2em; }
.rs-legal__contact dt { color: var(--rs-text-3); }
.rs-legal__contact dd { margin: 0; color: var(--rs-text); }

@media (max-width: 860px) {
  .rs-legal__box { grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .rs-legal__side { position: static; order: 2; padding-top: 24px; border-top: 1px solid var(--rs-line); }
  .rs-legal__nav { flex-direction: row; flex-wrap: wrap; gap: 0 20px; }
}
@media (max-width: 600px) {
  .rs-legal__table thead { display: none; }
  .rs-legal__table tr { display: block; padding: 12px 0; border-bottom: 1px solid var(--rs-line); }
  .rs-legal__table td { display: block; padding: 2px 0; border: 0; }
}
