.legal-page{background:#fcfbfe}
.legal-header .header-inner{min-height:88px;gap:20px}
.legal-back{flex-shrink:0;font-size:.875rem}
.legal-main{max-width:1160px;padding-block:62px 52px}
.legal-intro h1{font-size:clamp(2.1rem,4.5vw,3.5rem);line-height:1.13;letter-spacing:-.045em;font-weight:750;margin-top:18px;max-width:850px}
.legal-version{font-size:.875rem;line-height:1.8;color:var(--muted);margin-top:20px}
.legal-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.legal-tabs a{display:inline-flex;align-items:center;min-height:46px;padding:11px 17px;border:1px solid var(--line);border-radius:11px;background:white;font-size:.9375rem;font-weight:600}
.legal-tabs a[aria-current="page"]{background:var(--purple);border-color:var(--purple);color:white}
.legal-tabs a:hover:not([aria-current="page"]){border-color:var(--purple);color:var(--purple)}
.legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);align-items:start;gap:38px;margin-top:42px}
.legal-index{position:sticky;top:118px;border:1px solid var(--line);border-radius:18px;background:white;padding:22px 20px}
.legal-index h2{font-size:1rem;letter-spacing:-.01em;margin-bottom:15px}
.legal-index ol{list-style:none;margin:0;padding:0}
.legal-index li+li{margin-top:12px}
.legal-index a{display:block;color:#5b5267;font-size:.875rem;line-height:1.6}
.legal-index a:hover{color:var(--purple);text-decoration:underline;text-underline-offset:3px}
.legal-document{min-width:0;background:white;border:1px solid var(--line);border-radius:22px;padding:clamp(24px,3.5vw,42px);font-size:1rem;line-height:1.8;overflow-wrap:anywhere}
.legal-document h2{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;line-height:1.45;text-wrap:wrap;scroll-margin-top:116px;margin-block:32px 12px}
.legal-document p{line-height:1.8}
.legal-document p+p{margin-top:16px}
.legal-document ul{padding-left:23px;margin-block:15px 18px}
.legal-document li{padding-left:3px;margin-bottom:12px;line-height:1.8}
.legal-document .notice{padding:20px 22px;border-radius:14px;background:var(--pale);border-left:3px solid var(--purple);line-height:1.75}
.legal-bottom-back{margin-top:32px;margin-left:278px}
.legal-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:18px 30px;padding-block:25px 34px;border-top:1px solid var(--line);font-size:.8125rem;color:var(--muted)}
.legal-footer .footer-legal-links{font-size:.8125rem}
@media(max-width:940px){.legal-main{padding-top:44px}.legal-layout{grid-template-columns:210px minmax(0,1fr);gap:24px}.legal-index{padding:20px 16px;top:105px}.legal-document{padding:28px}.legal-bottom-back{margin-left:234px}}
@media(max-width:700px){.legal-header .header-inner{min-height:76px;gap:16px}.legal-header .brand-logo{width:150px}.legal-main{padding-block:36px 40px}.legal-intro h1{font-size:clamp(2rem,7.6vw,2.75rem);margin-top:14px}.legal-version{margin-top:16px}.legal-tabs{margin-top:22px;gap:9px}.legal-tabs a{font-size:.875rem;padding:11px 14px}.legal-layout{grid-template-columns:1fr;gap:23px;margin-top:28px}.legal-index{position:static;padding:22px}.legal-index a{font-size:.9375rem}.legal-index li+li{margin-top:10px}.legal-document{padding:25px 22px;border-radius:18px}.legal-document h2{font-size:1.1875rem;margin-top:28px;scroll-margin-top:100px}.legal-document .notice{padding:17px 16px}.legal-bottom-back{margin-left:0;margin-top:26px}.legal-footer{padding-block:23px 28px;gap:15px}.legal-footer .footer-legal-links{gap:12px 20px}}
@media print{.legal-header,.legal-tabs,.legal-index,.legal-bottom-back,.legal-footer,.skip-link{display:none}.legal-page{background:white}.legal-main{width:100%;max-width:none;padding:0}.legal-intro h1{font-size:26pt}.legal-version{margin-top:12px}.legal-layout{display:block;margin-top:24px}.legal-document{border:0;padding:0;border-radius:0;font-size:11pt}.legal-document h2{font-size:14pt;break-after:avoid}.legal-document .notice{border:1px solid #ddd;background:white}a{color:inherit}}
