/* Quiet legal/document layout on the Website v2 foundation. */
.legal-v2{background:var(--v2-bg)}
.legal-v2 .shell{width:min(1120px,calc(100% - (var(--v2-gutter) * 2)));margin-inline:auto}
.legal-v2 main{overflow:visible}
.legal-v2 .legal-hero{padding:clamp(70px,8vw,108px) 0 clamp(42px,5vw,64px);border-bottom:1px solid var(--v2-line)}
.legal-v2 .hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.55fr);gap:clamp(32px,7vw,86px);align-items:end}
.legal-v2 .eyebrow{margin:0;color:var(--v2-muted);font-size:.82rem;font-weight:720}
.legal-v2 .legal-hero h1{max-width:15ch;margin:14px 0 0;font-size:clamp(2.55rem,4.4vw,4.2rem);line-height:.98}
.legal-v2 .legal-hero h1 em{color:var(--v2-accent);font-style:normal}
.legal-v2 .hero-lead{max-width:60ch;margin:20px 0 0;color:var(--v2-text-soft);font-size:1rem;line-height:1.72}
.legal-v2 .hero-card{display:flex;gap:14px;align-items:flex-start;padding:18px 0;border-top:1px solid var(--v2-line);border-bottom:1px solid var(--v2-line)}
.legal-v2 .hero-card h2{font-size:1.2rem;letter-spacing:-.025em}
.legal-v2 .hero-card p{margin-top:6px;color:var(--v2-muted);font-size:.88rem;line-height:1.65}
.legal-v2 .trust-icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;color:var(--v2-accent)}
.legal-v2 .trust-icon svg{width:25px;height:25px}
.legal-v2 .evidence-strip{display:grid;grid-template-columns:repeat(3,1fr);margin-top:0;border-bottom:1px solid var(--v2-line)}
.legal-v2 .evidence-item{display:grid;grid-template-columns:auto 1fr;gap:12px;padding:18px 20px;border-right:1px solid var(--v2-line)}
.legal-v2 .evidence-item:last-child{border-right:0}
.legal-v2 .evidence-number{color:var(--v2-accent);font-size:.74rem;font-weight:800}
.legal-v2 .evidence-item strong{display:block;font-size:.88rem}
.legal-v2 .evidence-item span:last-child{display:block;margin-top:3px;color:var(--v2-muted);font-size:.78rem;line-height:1.5}
.legal-v2 .document-layout{display:grid;grid-template-columns:235px minmax(0,1fr);gap:clamp(34px,6vw,72px);align-items:start;margin-top:clamp(48px,6vw,74px);margin-bottom:clamp(64px,8vw,100px)}
.legal-v2 .toc{position:sticky;top:92px;padding-top:12px;border-top:1px solid var(--v2-line)}
.legal-v2 .toc-label{margin:0 0 10px;color:var(--v2-muted);font-size:.75rem;font-weight:740}
.legal-v2 .toc nav{display:grid}
.legal-v2 .toc nav a{display:block;min-height:34px;padding:7px 0;color:var(--v2-text-soft);font-size:.79rem;line-height:1.45}
.legal-v2 .toc nav a:hover{color:var(--v2-accent)}
.legal-v2 .toc-meta{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;margin:18px 0 0;padding-top:16px;border-top:1px solid var(--v2-line);font-size:.72rem}
.legal-v2 .toc-meta dt{color:var(--v2-muted)}
.legal-v2 .toc-meta dd{margin:0;color:var(--v2-text-soft);overflow-wrap:anywhere}
.legal-v2 .legal-document{min-width:0;max-width:790px}
.legal-v2 .document-intro{margin-bottom:28px;padding:16px 18px;border-left:2px solid var(--v2-accent);background:var(--v2-surface)}
.legal-v2 .document-intro p{margin:0;color:var(--v2-text-soft)}
.legal-v2 .legal-section{padding:30px 0;border-top:1px solid var(--v2-line)}
.legal-v2 .legal-section:first-of-type{border-top:0}
.legal-v2 .section-heading{display:grid;grid-template-columns:34px 1fr;gap:10px;align-items:start;margin-bottom:12px}
.legal-v2 .section-number{padding-top:5px;color:var(--v2-accent);font-size:.72rem;font-weight:800}
.legal-v2 .legal-section h2{font-size:clamp(1.45rem,2.5vw,2.15rem)}
.legal-v2 .legal-section h3{margin-top:22px;font-size:1.1rem}
.legal-v2 .legal-section p,.legal-v2 .legal-section li{color:var(--v2-text-soft);line-height:1.72}
.legal-v2 .legal-section p{margin-top:10px}
.legal-v2 .legal-section ul,.legal-v2 .legal-section ol{padding-left:1.25rem}
.legal-v2 .legal-section a{color:var(--v2-accent);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.legal-v2 .callout{margin:18px 0;padding:15px 17px;border-left:2px solid var(--v2-accent);background:var(--v2-surface);color:var(--v2-text-soft)}
.legal-v2 .license-card,.legal-v2 .dependency-card,.legal-v2 .notice-card{margin:14px 0;padding:16px;border:1px solid var(--v2-line);background:var(--v2-surface)}
.legal-v2 .license-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;margin-top:18px;background:var(--v2-line);border:1px solid var(--v2-line)}
.legal-v2 .license-summary>div{padding:15px;background:var(--v2-bg)}
.legal-v2 .license-summary strong{display:block;font-size:1.2rem;color:var(--v2-accent)}
.legal-v2 .license-summary span{color:var(--v2-muted);font-size:.78rem}
.legal-v2 .table-wrap{max-width:100%;overflow:auto;margin-top:14px;border:1px solid var(--v2-line)}
.legal-v2 table{width:100%;border-collapse:collapse;min-width:620px;font-size:.8rem}
.legal-v2 th,.legal-v2 td{padding:10px 12px;border-bottom:1px solid var(--v2-line);text-align:left;vertical-align:top;color:var(--v2-text-soft)}
.legal-v2 th{color:var(--v2-text);background:var(--v2-surface);font-weight:740}
.legal-v2 pre{max-width:100%;overflow:auto;padding:14px;border:1px solid var(--v2-line);background:#07090b;color:#d7ddd8;font: .78rem/1.6 ui-monospace,SFMono-Regular,Consolas,monospace}
.legal-v2 .contact-panel{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:clamp(64px,8vw,100px);padding:24px 0;border-top:1px solid var(--v2-line);border-bottom:1px solid var(--v2-line)}
.legal-v2 .contact-panel h2{font-size:clamp(1.65rem,3vw,2.7rem)}
.legal-v2 .contact-button{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:10px 15px;border:1px solid var(--v2-accent);background:var(--v2-accent);color:#11140e;font-weight:780}
.legal-v2 [id]{scroll-margin-top:88px}
@media(max-width:900px){.legal-v2 .hero-grid,.legal-v2 .document-layout{grid-template-columns:1fr}.legal-v2 .toc{position:static}.legal-v2 .evidence-strip{grid-template-columns:1fr}.legal-v2 .evidence-item{border-right:0;border-bottom:1px solid var(--v2-line)}.legal-v2 .evidence-item:last-child{border-bottom:0}}
@media(max-width:600px){.legal-v2 .legal-hero{padding:58px 0 40px}.legal-v2 .legal-hero h1{font-size:clamp(2.25rem,10.5vw,3rem)}.legal-v2 .hero-card{margin-top:4px}.legal-v2 .section-heading{grid-template-columns:28px 1fr}.legal-v2 .contact-panel{align-items:flex-start;flex-direction:column}.legal-v2 .contact-button{width:100%}.legal-v2 .license-summary{grid-template-columns:1fr}}
