/* Legal pages, V2 layout (Legal.dc.html) */
:root { --g: #10141A; --s1: #171C24; --s2: #1E2530; --s3: #26303D; --ink: #ECE8E1; --ink2: #BDB8AF; --ink3: #8E949C; --red: #FF4655; --win: #3ED1B3; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--g); color: var(--ink); font: 17px/1.65 'Archivo', system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: var(--ink); text-underline-offset: 3px; }
a:focus-visible { outline: 2px solid var(--red); outline-offset: 3px; }
.lg-skip { position: absolute; left: -9999px; }
.lg-skip:focus { left: 16px; top: 16px; padding: 10px 14px; background: var(--red); color: var(--g); z-index: 2; }
.lg-top { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; max-width: 1240px; margin: 0 auto; padding: 22px 32px; }
.lg-brand { display: inline-flex; align-items: center; gap: 12px; font-weight: 800; font-stretch: 112%; font-size: 22px; text-decoration: none; }
.lg-brand span { width: 22px; height: 22px; background: var(--red); clip-path: polygon(0 0, calc(100% - 7px) 0, 100% 7px, 100% 100%, 0 100%); }
.lg-top nav { display: flex; gap: 4px; flex-wrap: wrap; }
.lg-top nav a { padding: 8px 14px; color: var(--ink2); font-weight: 600; text-decoration: none; }
.lg-top nav a:hover { color: var(--ink); }
.lg-top nav a[aria-current="page"] { color: var(--ink); box-shadow: inset 0 -3px 0 var(--red); }
.lg-wrap { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 24px 56px; max-width: 1240px; margin: 0 auto; padding: 24px 32px 64px; }
.lg-head { grid-column: 1 / -1; }
.lg-head h1 { margin: 0; font-size: clamp(38px, 6vw, 68px); font-weight: 800; font-stretch: 112%; line-height: 1; letter-spacing: -.02em; }
.lg-date { margin: 10px 0 0; color: var(--ink3); }
.lg-toc { position: sticky; top: 24px; align-self: start; padding: 20px; background: var(--s1); }
.lg-toc > span { font-weight: 700; color: var(--ink3); font-size: 14px; }
.lg-toc ol { margin: 8px 0 0; padding-left: 20px; display: flex; flex-direction: column; gap: 6px; font-size: 15px; }
.lg-toc a { color: var(--ink2); text-decoration: none; }
.lg-toc a:hover { color: var(--ink); text-decoration: underline; }
.lg-body { max-width: 72ch; }
.lg-body h2 { margin: 40px 0 10px; font-size: 26px; font-weight: 800; line-height: 1.2; scroll-margin-top: 24px; }
.lg-body p, .lg-body li { color: var(--ink2); }
.lg-body strong { color: var(--ink); }
.lg-body ul { padding-left: 22px; display: flex; flex-direction: column; gap: 8px; }
.lg-body code { padding: 1px 6px; background: var(--s2); font-size: .9em; }
.lg-short { padding: 22px 26px; background: var(--red); color: var(--g); clip-path: polygon(0 0, calc(100% - 14px) 0, 100% 14px, 100% 100%, 0 100%); }
.lg-short h2 { margin: 0 0 8px; font-size: 22px; }
.lg-short ul { margin: 0; }
.lg-short li { color: var(--g); font-weight: 600; }
.highlight-box, .disclaimer-box, .info-box, .warning-box { margin: 20px 0; padding: 16px 20px; background: var(--s1); border-left: 4px solid var(--ink3); color: var(--ink2); }
.highlight-box { border-left-color: var(--win); }
.disclaimer-box { border-left-color: var(--red); }
.lg-foot { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; max-width: 1240px; margin: 0 auto; padding: 24px 32px 40px; border-top: 1px solid var(--s3); color: var(--ink3); font-size: 15px; }
.lg-foot p { margin: 0; }
@media (max-width: 860px) {
    .lg-wrap { grid-template-columns: minmax(0, 1fr); padding: 16px 16px 48px; }
    .lg-toc { position: static; }
    .lg-top, .lg-foot { padding-left: 16px; padding-right: 16px; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
