/* Privacy and Terms: a quiet reading column on the shared shell. Headings stay smaller than the site's display h2. */
.legal { padding:28px 0 var(--section); }
.legal>.wrap { max-width:1200px; }
.legal__crumb { max-width:780px; margin:0 auto; display:flex; align-items:center; gap:12px; min-height:44px; color:var(--stone); font-size:11px; }
.legal__crumb a { text-decoration:none; }
.legal__crumb a:hover { text-decoration:underline; text-underline-offset:4px; }
.legal__header { max-width:780px; margin:0 auto; padding:46px 0 34px; }
.legal__header .eyebrow { color:var(--terra); margin-bottom:21px; }
.legal__header h1 { font-size:clamp(46px,6.4vw,84px); line-height:1.02; letter-spacing:-.055em; }
.legal__lede { max-width:60ch; margin-top:24px; color:var(--stone); font-size:clamp(17px,2vw,20px); line-height:1.7; }
.legal__meta { margin-top:22px; color:var(--stone); font-size:12px; }
.legal__toc { max-width:780px; margin:0 auto 10px; padding:22px 0 26px; border-top:1px solid var(--line); border-bottom:1px solid var(--line); }
.legal__toc h2 { margin-bottom:12px; font-size:11px; letter-spacing:.11em; line-height:1.5; text-transform:uppercase; color:var(--stone); }
.legal__toc ol { margin:0; padding-left:22px; columns:2; column-gap:40px; font-size:14px; line-height:1.5; }
.legal__toc li { padding:3px 0 3px 4px; break-inside:avoid; }
.legal__toc a { text-decoration:none; }
.legal__toc a:hover { text-decoration:underline; text-decoration-color:var(--terra); text-underline-offset:3px; }
.legal__body { max-width:780px; margin:0 auto; font-size:16px; line-height:1.75; color:#38342E; }
.legal__body>h2 { margin:46px 0 14px; scroll-margin-top:110px; font-size:clamp(23px,2.8vw,29px); line-height:1.25; letter-spacing:-.03em; color:var(--ink); }
.legal__body>h3 { margin:26px 0 8px; font-size:18px; line-height:1.4; letter-spacing:-.01em; color:var(--ink); }
.legal__body>p { margin:0 0 16px; }
.legal__body>ul,.legal__body>ol { margin:0 0 18px; padding-left:24px; }
.legal__body li { margin:7px 0; padding-left:4px; }
.legal__body a { color:inherit; text-decoration-color:#B4492B88; text-underline-offset:3px; }
.legal__body a:hover { color:var(--terra); }
.legal__body strong { color:var(--ink); font-weight:500; }
.legal__body code { padding:1px 6px; background:#EAE5DA; border-radius:6px; font-family:var(--mono); font-size:.86em; }
.legal__summary { margin:0 0 8px!important; padding:20px 24px 20px 46px!important; background:#EAE5DA; border-radius:4px; }
.legal__table { width:100%; margin:4px 0 20px; border-collapse:collapse; font-size:14px; line-height:1.55; }
.legal__table th,.legal__table td { padding:11px 14px 11px 0; border-bottom:1px solid var(--line); text-align:left; vertical-align:top; }
.legal__table thead th { color:var(--stone); font-size:11px; font-weight:500; letter-spacing:.08em; text-transform:uppercase; }
.legal__table tbody th { color:var(--ink); font-weight:500; white-space:nowrap; }
.legal__end { max-width:780px; margin:44px auto 0; padding-top:20px; border-top:1px solid var(--line); display:flex; justify-content:space-between; gap:20px; }
@media(max-width:760px) {
  .legal { padding-top:16px; }
  .legal__header { padding:30px 0 28px; }
  .legal__header h1 { font-size:clamp(42px,12vw,60px); }
  .legal__toc ol { columns:1; }
  .legal__body>h2 { margin-top:38px; }
  .legal__summary { padding-right:18px!important; }
  .legal__table thead { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); }
  .legal__table,.legal__table tbody,.legal__table tr,.legal__table th,.legal__table td { display:block; width:auto; }
  .legal__table tr { padding:12px 0; border-bottom:1px solid var(--line); }
  .legal__table th,.legal__table td { padding:2px 0; border:0; }
  .legal__table tbody th { white-space:normal; }
  .legal__end { flex-direction:column; align-items:flex-start; gap:4px; }
}
