
.legal-page{margin:0;line-height:1.7;background:var(--surface)}
.legal-wrap{width:min(1120px,calc(100% - 40px));margin:0 auto}
.legal-header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0}
.legal-logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink);font-size:24px;font-weight:800}
.legal-logo small{display:block;font-size:12px;font-weight:400;color:var(--ink-soft)}
.legal-back,.legal-content a,.legal-footer a{color:var(--brand);text-underline-offset:3px}
.legal-intro{padding:56px 0 32px;max-width:900px}
.legal-intro h1{font-size:clamp(28px,4vw,46px);line-height:1.18;margin:16px 0 20px;overflow-wrap:anywhere}
.legal-date{color:var(--ink-soft);font-size:14px}
.legal-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:32px;align-items:start;padding-bottom:64px}
.legal-nav{position:sticky;top:24px;padding:20px;border:1px solid var(--line);border-radius:16px;background:var(--paper)}
.legal-nav h2{font-size:16px;margin:0 0 12px}.legal-nav a{display:block;padding:7px 0;font-size:14px;line-height:1.5;color:var(--ink-soft);text-decoration:none}.legal-nav a:hover{color:var(--brand);text-decoration:underline}
.legal-content{padding:32px;background:var(--paper);border:1px solid var(--line);border-radius:20px;overflow-wrap:anywhere}
.legal-content section{scroll-margin-top:24px}.legal-content section+section{border-top:1px solid var(--line);padding-top:24px;margin-top:28px}
.legal-content h2{font-size:23px;line-height:1.35;margin:0 0 18px}.legal-content p,.legal-content li{color:var(--ink-soft)}
.legal-content ul{padding-left:22px}.legal-content li+li{margin-top:12px}
.legal-details{background:var(--surface);padding:20px;border-radius:12px}.legal-details dt{font-size:13px;color:var(--ink-soft);margin-top:12px}.legal-details dt:first-child{margin-top:0}.legal-details dd{margin:2px 0 0;font-weight:600}
.legal-law{font-size:13px;padding-top:24px;border-top:1px solid var(--line)}
.legal-footer{padding:28px 0;border-top:1px solid var(--line);background:var(--paper);font-size:13px;color:var(--ink-soft)}
.legal-skip{position:absolute;left:16px;top:-100px;padding:12px;background:var(--paper);z-index:100}.legal-skip:focus{top:12px}
@media(max-width:760px){.legal-layout{grid-template-columns:1fr;gap:20px}.legal-nav{position:static}.legal-content{padding:22px}.legal-intro{padding-top:32px}.legal-back{font-size:13px}.legal-logo{font-size:21px}.legal-logo small{font-size:10px}}
@media print{.legal-nav,.legal-back,.legal-skip{display:none}.legal-layout{display:block}.legal-content{border:0;padding:0}.legal-wrap{width:100%}.legal-intro{padding-top:10px}.legal-page{background:#fff}}
