.legal{padding-top:calc(var(--head) + clamp(52px,6.5vw,92px));padding-bottom:clamp(72px,8vw,120px)}.legal .wrap{max-width:740px;margin-inline:auto;padding-inline:var(--gut)}.legal h1{font-size:clamp(2.25rem,5vw,3.5rem);letter-spacing:-.032em;line-height:1.05;text-wrap:balance}.legal .meta{margin-top:20px;font-size:.875rem;color:var(--ink2);display:flex;flex-wrap:wrap;gap:6px 18px}.legal .intro{margin-top:26px;max-width:60ch;font-size:clamp(1.0625rem,1.35vw,1.25rem);line-height:1.5;color:var(--ink2);letter-spacing:-.012em}.legal .rule{height:1px;background:var(--hair);margin:clamp(40px,5vw,60px) 0 0}.legal section{margin-top:clamp(38px,4.2vw,56px)}.legal h2{font-size:clamp(1.1875rem,1.8vw,1.4375rem);letter-spacing:-.022em;line-height:1.3}.legal h2 .num{color:var(--ink2);font-weight:500;margin-right:10px}.legal h3{font-size:1.0625rem;font-weight:600;letter-spacing:-.016em;margin-top:26px}.legal p{font-size:1.0625rem;line-height:1.65;color:var(--prose)}.legal p,.legal ul{margin:14px 0 0;max-width:66ch}.legal ul{padding-left:20px}.legal li{margin-top:9px;font-size:1.0625rem;line-height:1.6;color:var(--prose)}.legal li::marker{color:var(--ink2)}.legal strong{font-weight:600;color:var(--ink)}.legal a{color:var(--red);text-decoration:underline;text-underline-offset:3px}.legal a:hover{text-decoration-thickness:2px}.todo{display:inline-block;font-weight:600;font-size:.9375em;color:var(--red);background:rgba(168,47,40,.07);border:1px solid rgba(168,47,40,.38);border-radius:6px;padding:0 7px;line-height:1.5}:root[data-contrast=high] .todo{background:#FFFFFF;border-color:#000;color:#000}.toc{margin-top:clamp(34px,4vw,48px)}.toc h2{font-size:.8125rem;font-weight:600;color:var(--ink2);letter-spacing:-.004em}.toc ol{margin:16px 0 0;padding:0;list-style:none;column-count:2;column-gap:36px}.toc li{margin:0 0 9px;font-size:.9375rem;line-height:1.4;page-break-inside:avoid;break-inside:avoid}.toc a{color:var(--ink2);text-decoration:none}.toc a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:3px}@media (max-width:640px){.toc ol{column-count:1}}.also{margin-top:clamp(52px,6vw,80px);padding-top:26px;border-top:1px solid var(--hair)}.also span{font-size:.8125rem;color:var(--ink2)}.also div{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px 22px}.also a{font-size:.9375rem;color:var(--ink);text-decoration:none}.also a:hover{text-decoration:underline;text-underline-offset:3px}