/* Who They Name · legal pages (privacy, terms). Loaded after /site.css and reuses its
   tokens, frame, header, buttons and footer. Only the reading layout lives here. */

.legal-hdr{gap:1rem}
.legal-hdr .actions{gap:.5rem}

.legal{
  display:grid;grid-template-columns:15rem minmax(0,1fr);
  background:var(--panel);
}
.legal-toc{
  border-right:var(--hairline) solid var(--rule);
  padding:2.25rem 1.5rem 2rem;
}
.legal-toc-inner{position:sticky;top:1.5rem}
.legal-toc ol{list-style:none;margin:.875rem 0 0;padding:0;counter-reset:toc}
.legal-toc li{border-top:var(--hairline) solid rgba(38,38,31,.14)}
.legal-toc li:last-child{border-bottom:var(--hairline) solid rgba(38,38,31,.14)}
.legal-toc a{
  display:flex;gap:.625rem;align-items:baseline;
  padding:.5rem .125rem;font-size:.8125rem;line-height:1.35;letter-spacing:-.012em;color:var(--body);
  transition:color .18s ease;
}
.legal-toc a::before{
  counter-increment:toc;content:counter(toc,decimal-leading-zero);
  font-family:var(--mono);font-size:.625rem;letter-spacing:.1em;color:var(--muted);flex:0 0 auto;
}
.legal-toc a:hover{color:var(--ink)}
.legal-date{margin-top:1.75rem;font-family:var(--mono);font-size:.625rem;line-height:1.7;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.legal-date b{font-weight:400;color:var(--ink)}

.legal-body{padding:2.5rem 3rem 3.5rem;max-width:52rem;min-width:0}
.legal-body h1{
  margin-top:.75rem;font-size:clamp(1.875rem,3vw,2.75rem);line-height:1.08;letter-spacing:-.034em;font-weight:400;
}
.legal-body .lede{max-width:60ch}
.legal-body section{margin-top:2.5rem;padding-top:1.5rem;border-top:var(--hairline) solid var(--rule)}
.legal-body section:first-of-type{margin-top:2.25rem}
.legal-body h2{
  margin:0;max-width:none;
  font-size:1.375rem;line-height:1.2;letter-spacing:-.028em;font-weight:400;
  display:flex;gap:.875rem;align-items:baseline;
}
.legal-body h2 .n{font-family:var(--mono);font-size:.6875rem;letter-spacing:.14em;color:var(--muted);flex:0 0 auto}
.legal-body h3{margin-top:1.5rem;font-size:1rem;line-height:1.3;letter-spacing:-.02em;font-weight:500}
.legal-body p{margin-top:.875rem;font-size:.9375rem;line-height:1.6;letter-spacing:-.012em;color:var(--body);max-width:66ch}
.legal-body p.small{font-size:.8125rem;color:var(--soft)}
.legal-body ul,.legal-body ol{margin:.75rem 0 0;padding-left:1.25rem;max-width:66ch}
.legal-body ul{list-style:disc}
.legal-body ol{list-style:decimal}
.legal-body li{margin-top:.375rem;font-size:.9375rem;line-height:1.55;letter-spacing:-.012em;color:var(--body)}
.legal-body li::marker{color:var(--muted)}
.legal-body a{text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px;color:var(--ink)}
.legal-body a:hover{opacity:.6}
.legal-body strong{font-weight:500;color:var(--ink)}
.legal-body code{font-family:var(--mono);font-size:.8125em;letter-spacing:0;color:var(--ink)}

.legal-body .tablewrap{margin-top:1rem;overflow-x:auto;border:var(--hairline) solid var(--rule)}
.legal-body table{width:100%;min-width:38rem;border-collapse:collapse;font-size:.8125rem;line-height:1.45;letter-spacing:-.008em}
.legal-body th,.legal-body td{padding:.625rem .75rem;text-align:left;vertical-align:top;border-bottom:var(--hairline) solid rgba(38,38,31,.14)}
.legal-body th{font-family:var(--mono);font-size:.625rem;letter-spacing:.14em;text-transform:uppercase;font-weight:400;color:var(--muted);background:var(--cell);border-bottom-color:var(--rule)}
.legal-body tr:last-child td{border-bottom:0}
.legal-body td{color:var(--body)}
.legal-body td:first-child{color:var(--ink);white-space:nowrap}

.legal-body .box{margin-top:1.25rem;padding:1rem 1.125rem;border:var(--hairline) solid var(--rule);background:var(--cell)}
.legal-body .box p{margin-top:0}
.legal-body .box .eyebrow{margin-bottom:.5rem}

.legal-foot{display:flex;gap:1.25rem}
.legal-foot a{color:var(--soft);font-weight:400;transition:color .18s ease}
.legal-foot a:hover{color:var(--ink)}

@media (max-width:1040px){
  .legal-body{padding:2rem 1.75rem 3rem}
}
@media (max-width:860px){
  .legal{grid-template-columns:1fr}
  .legal-toc{border-right:0;border-bottom:var(--hairline) solid var(--rule);padding:1.75rem 1.5rem 1.5rem}
  .legal-toc-inner{position:static}
  .legal-toc ol{columns:2;column-gap:1.5rem}
  .legal-toc li{break-inside:avoid}
  .legal-toc li:last-child{border-bottom:0}
  .legal-date{margin-top:1.25rem}
}
@media (max-width:680px){
  .legal-toc{padding:1.5rem 1.125rem 1.25rem}
  .legal-toc ol{columns:1}
  .legal-body{padding:1.75rem 1.125rem 2.5rem}
  .legal-body h2{font-size:1.1875rem}
  .legal-body p,.legal-body li{font-size:.875rem}
  .legal-body table{min-width:32rem}
  .bottom .legal-foot{gap:.875rem}
}
