/* Generated content pages (guides, blog, hubs). Loaded only by pages built with tools/build.py, after style.css.
   Adds the few pieces the legal-page layout lacks; every colour and font comes from style.css tokens. */
.legal h3{font-family:var(--f-display);font-weight:400;font-size:clamp(19px,1.7vw,23px);line-height:1.25;margin:32px 0 10px;letter-spacing:-.005em}
.legal ol{padding-left:1.35em;margin:0 0 16px;display:grid;gap:8px;color:#2A3B56}
.legal strong,.legal b{color:var(--ink)}
.legal blockquote{margin:0 0 16px;padding:4px 0 4px 18px;border-left:3px solid var(--orange);color:#2A3B56}
.legal pre{overflow-x:auto;background:var(--day);padding:14px 16px;border-radius:10px;font-size:13px}
.legal img{max-width:100%;height:auto;border-radius:12px}
.legal tbody tr:nth-child(even){background:#FAFBFC}
.legal .toc-anchor{scroll-margin-top:130px}
.legal h2,.legal h3{scroll-margin-top:130px}
.fc-solo{grid-column:1/-1}
.fc-sources{font-size:14.5px}
.fc-sources a{word-break:break-word}
.legal-nav.toc{max-height:calc(100vh - 150px);overflow:auto}
.legal-nav.toc b:not(:first-child){margin-top:22px}
.hub-grid{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;max-width:none}
.legal .hub-grid li{padding:0}
.legal .hub-grid li::before{display:none}
.legal a.hub-card{display:flex;flex-direction:column;gap:8px;height:100%;padding:22px;background:var(--day);border-radius:18px;border:1px solid #E3E8EF;color:var(--ink);text-decoration:none;transition:transform .2s,box-shadow .2s,border-color .2s}
.legal a.hub-card:hover{transform:translateY(-2px);border-color:var(--orange);box-shadow:0 18px 40px -26px rgba(7,26,58,.45)}
.hub-card b{font-family:var(--f-display);font-weight:400;font-size:21px;line-height:1.2;color:var(--ink)}
.hub-type{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.04em;text-transform:uppercase;color:#C77700}
.hub-desc{font-size:15px;line-height:1.5;color:var(--ink-2)}
.hub-go{margin-top:auto;padding-top:6px;font-weight:600;font-size:14.5px;color:#B56E00}
@media (max-width:900px){
  .legal-nav.toc{position:static;max-height:none;order:2}
  .legal-grid .fc-article{order:1}
}
.legal.fc-wide{max-width:none}
