.legal-wrap{max-width:940px;margin:0 auto;padding:calc(var(--top) + 42px) var(--gut) 100px}
.legal-wrap h1{margin:0 0 28px;font-size:clamp(52px,8vw,100px);line-height:1;letter-spacing:-.055em;font-weight:500}
.legal-lead{max-width:720px;color:var(--muted);font-size:21px;line-height:1.6}
.legal-updated{margin-top:24px;font-size:14px;color:var(--dim)}
.legal-index{display:flex;flex-wrap:wrap;gap:12px 24px;padding:28px 0;margin-top:36px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:15px}
.legal-index a{text-decoration:none}
.legal-wrap section{padding-top:48px;scroll-margin-top:var(--top)}
.legal-wrap h2{margin:0 0 20px;font-size:clamp(28px,3.6vw,40px);font-weight:500;letter-spacing:-.03em;line-height:1.15}
.legal-wrap h3{font-size:22px;line-height:1.3;font-weight:500;margin:32px 0 16px;letter-spacing:-.015em}
.legal-wrap section p,.legal-contact p{margin:0 0 18px;color:var(--muted);line-height:1.8;overflow-wrap:anywhere}
.legal-wrap strong{color:var(--ink);font-weight:500}
.legal-wrap a{text-underline-offset:4px}.legal-wrap a:hover{color:var(--ink)}
.storage-details{margin:28px 0;border-top:1px solid var(--line)}
.storage-details > div{display:grid;grid-template-columns:160px minmax(0,1fr);gap:20px;padding:16px 0;border-bottom:1px solid var(--line)}
.storage-details dt{color:var(--dim);font-size:14px}.storage-details dd{margin:0;min-width:0;overflow-wrap:anywhere}
.storage-details code{font-family:var(--mono);font-size:14px}
.legal-wrap .legal-source{font-size:14px}
.legal-contact{padding:32px;margin-top:48px;border:1px solid #58312c;background:#171211;border-radius:18px}
.legal-contact p{margin:0}
.legal-wrap .btn{max-width:100%;padding:12px 22px;color:var(--ink);white-space:normal;text-align:left;font:inherit;line-height:1.4;cursor:pointer}
.legal-wrap .btn-line:hover{background:var(--ink);color:var(--bg)}
.legal-wrap .preference-status{margin:16px 0;color:var(--ink);font-size:15px;min-height:1.6em}
@media(max-width:520px){.legal-lead{font-size:18px}.storage-details > div{grid-template-columns:1fr;gap:6px}.legal-contact{padding:24px}}
@media print{.top,.skip,.project-footer,.legal-index,#preference-actions{display:none}.legal-wrap{max-width:none;padding:0;color:#000}.legal-wrap p,.legal-wrap section p,.legal-wrap strong,.legal-wrap h2,.legal-wrap h3{color:#000}body{background:#fff}.legal-contact{background:none;border-color:#888}}
