/* Legal documents: night title, then the text on paper, built for reading.
   Tokens, fonts, header, buttons and footer come from home.css. */
.nav-link[aria-current="page"]{color:var(--on-night);text-decoration:underline;text-decoration-color:var(--mint);text-decoration-thickness:2px;text-underline-offset:8px}

.legal-head{max-width:calc(var(--page) + 2*var(--gutter));margin:0 auto;padding:40px var(--gutter) 88px;display:grid;grid-template-columns:minmax(0,1fr) 280px;align-items:center;gap:48px}
.legal-head h1{font-size:clamp(40px,5vw,68px);line-height:1;letter-spacing:-.04em;max-width:14ch}
.legal-intro{margin-top:24px;max-width:36em;color:var(--on-night-soft);font-size:18px}
.legal-updated{margin-top:20px;color:var(--on-night-soft);font-size:15px}
.legal-updated time{color:var(--on-night);font-weight:700}
.legal-head .actions{margin-top:32px}
.legal-head-art{width:100%;max-width:280px;justify-self:end}

.legal-paper{background:var(--paper);color:var(--ink);padding:88px var(--gutter) 120px}
.legal-layout{max-width:var(--page);margin:0 auto;display:grid;grid-template-columns:260px minmax(0,1fr);gap:72px;align-items:start}

/* Contents: sticky on desktop, a disclosure on phones. */
.legal-toc{position:sticky;top:32px;font-size:15px}
.legal-toc summary{list-style:none;font-weight:800;margin-bottom:14px;cursor:default}
.legal-toc summary::-webkit-details-marker{display:none}
.legal-toc ol{margin:0;padding:0;list-style:none;counter-reset:toc;border-left:2px solid var(--line)}
.legal-toc li{counter-increment:toc}
.legal-toc a{display:flex;gap:10px;padding:7px 0 7px 16px;margin-left:-2px;border-left:2px solid transparent;color:var(--ink-soft);text-decoration:none;line-height:1.35}
.legal-toc a::before{content:counter(toc) ".";flex:none;min-width:1.9em;color:var(--violet);font-weight:700;font-variant-numeric:tabular-nums}
.legal-toc a:hover{color:var(--ink);border-left-color:var(--violet)}

.legal-doc{max-width:68ch;font-size:17px;line-height:1.7}
.legal-doc section{padding-bottom:56px;scroll-margin-top:24px}
.legal-doc section+section{padding-top:8px}
.legal-doc h2{display:flex;gap:14px;align-items:baseline;font-size:28px;line-height:1.2;letter-spacing:-.025em;margin-bottom:18px}
.legal-num{flex:none;color:var(--violet);font-variant-numeric:tabular-nums}
.legal-doc h3{font-size:18px;line-height:1.35;margin:24px 0 8px}
.legal-doc p{color:#3E3852}
.legal-doc p+p{margin-top:14px}
.legal-doc a{color:var(--violet)}

/* Label and description pairs read as a table, not as cards. */
.legal-rows{margin:20px 0;border-top:1px solid var(--line)}
.legal-rows>div{display:grid;grid-template-columns:minmax(0,200px) minmax(0,1fr);gap:24px;padding:14px 0;border-bottom:1px solid var(--line)}
.legal-rows dt{font-weight:700;color:var(--ink)}
.legal-rows dd{margin:0;color:#3E3852}
.legal-rows--stacked>div{grid-template-columns:1fr;gap:4px}

.legal-list{margin:12px 0 0;padding:0;list-style:none}
.legal-list li{position:relative;padding-left:28px;color:#3E3852}
.legal-list li+li{margin-top:8px}
.legal-list li::before{content:"";position:absolute;left:6px;top:.72em;width:7px;height:7px;border-radius:50%;background:var(--violet)}
.legal-list--success li::before{content:"✓";left:2px;top:0;width:auto;height:auto;background:none;color:var(--mint-text);font-weight:800}
.legal-list--warning li::before,.legal-list--danger li::before{background:#C84B58}

/* Notes carry meaning through their tone: information, caution, the key point. */
.legal-note{margin:22px 0;padding:18px 22px;border-radius:14px;background:#ECE8F8}
.legal-note h3{margin-top:0}
.legal-note p{color:var(--ink)}
.legal-note--warning,.legal-note--danger{background:#FBEAEC}
.legal-note--success{background:#DDF4EE}
.legal-note--primary{background:var(--violet);color:#fff}
.legal-note--primary p,.legal-note--primary h3{color:#fff}

@media (max-width:960px){
  .legal-head{grid-template-columns:minmax(0,1fr) 180px;gap:24px}
  .legal-layout{grid-template-columns:1fr;gap:40px}
  .legal-toc{position:static;padding:18px 20px;border-radius:14px;background:#ECE8F8}
  .legal-toc summary{cursor:pointer;margin-bottom:0}
  .legal-toc summary::after{content:"+";float:right;color:var(--violet)}
  .legal-toc details[open] summary{margin-bottom:12px}
  .legal-toc details[open] summary::after{content:"\2212"}
}
@media (max-width:640px){
  .legal-head{grid-template-columns:1fr;gap:16px;padding-top:16px;padding-bottom:56px}
  .legal-head-art{grid-row:1;justify-self:start;max-width:96px}
  .legal-head h1{font-size:38px}
  .legal-intro{font-size:16px}
  .legal-paper{padding-top:48px}
  .legal-doc{font-size:16px}
  .legal-doc h2{font-size:23px}
  .legal-rows>div{grid-template-columns:1fr;gap:4px}
}
