.legal-page{width:min(920px,100%);color:var(--ink);margin:0 auto;padding:64px 32px 88px}.legal-hero{border:1px solid var(--line);background:linear-gradient(145deg,#fff 20%,var(--washi-2));border-radius:28px;padding:40px clamp(24px,5vw,56px);box-shadow:0 18px 50px #1a17120d}.legal-eyebrow{letter-spacing:.22em;color:var(--shu);font-size:11px;font-weight:800}.legal-hero h1{letter-spacing:-.025em;margin-top:12px;font-size:clamp(32px,5vw,48px);font-weight:750}.legal-lead{max-width:680px;color:var(--soft);margin-top:18px;font-size:16px;line-height:1.9}.legal-date{color:var(--faint);margin-top:20px;font-size:12px}.legal-tabs{flex-wrap:wrap;gap:10px;margin:28px 0;display:flex}.legal-tabs a{border:1px solid var(--line);background:var(--washi-hi);color:var(--soft);border-radius:999px;padding:10px 15px;font-size:13px}.legal-tabs a[aria-current]{border-color:var(--shu);background:var(--washi-2);color:var(--ink);font-weight:700}.legal-document{border:1px solid var(--line);background:var(--washi-hi);border-radius:24px;padding:clamp(24px,5vw,56px)}.legal-document section+section{border-top:1px solid var(--line);margin-top:44px;padding-top:42px}.legal-document h2{font-size:21px;font-weight:750;line-height:1.5}.legal-document p,.legal-document li{color:var(--ink);font-size:14px;line-height:2}.legal-document h2+p,.legal-document h2+ul,.legal-document h2+dl{margin-top:16px}.legal-document p+p{margin-top:12px}.legal-document ul{gap:8px;padding-left:1.4rem;list-style:outside;display:grid}.legal-document dl{border:1px solid var(--line);border-radius:16px;overflow:hidden}.legal-document dl>div{grid-template-columns:minmax(120px,180px) minmax(0,1fr);display:grid}.legal-document dl>div+div{border-top:1px solid var(--line)}.legal-document dt,.legal-document dd{padding:15px 18px;font-size:14px;line-height:1.7}.legal-document dt{background:var(--washi);color:var(--ink);font-weight:700}.legal-document dd{overflow-wrap:anywhere}.legal-document dd a{color:var(--ai);text-underline-offset:3px;align-items:center;gap:6px;text-decoration:underline;display:inline-flex}.legal-contact-note{background:var(--washi-2);color:var(--soft);border-radius:14px;margin:24px 4px 0;padding:18px 20px;font-size:13px;line-height:1.8}@media (width<=640px){.legal-page{padding:32px 16px 64px}.legal-hero{border-radius:20px;padding:28px 22px}.legal-hero h1{font-size:32px}.legal-tabs{grid-template-columns:1fr;display:grid}.legal-tabs a{text-align:center}.legal-document{border-radius:18px;padding:26px 20px}.legal-document section+section{margin-top:34px;padding-top:32px}.legal-document h2{font-size:19px}.legal-document p,.legal-document li{font-size:14px;line-height:1.85}.legal-document dl>div{display:block}.legal-document dt{padding-bottom:6px}.legal-document dd{padding-top:6px}}@media print{.legal-page{color:#000;width:100%;padding:0}.legal-hero,.legal-document{box-shadow:none;border:0;padding:0}.legal-tabs,.legal-contact-note{display:none}.legal-document{margin-top:36px}.legal-document section+section{break-before:auto}.legal-document p,.legal-document li{color:#222}}.legal-page{color:var(--ink)}.legal-hero{color:var(--washi-hi);background-color:var(--sumi);background-image:radial-gradient(circle at 92% 0%,#cf3b224d,transparent 45%),linear-gradient(var(--board-line) 1px,transparent 1px),linear-gradient(90deg,var(--board-line) 1px,transparent 1px);background-size:100% 100%,44px 44px,44px 44px;border:0;box-shadow:0 40px 70px -46px #111210}.legal-eyebrow{color:var(--shu);letter-spacing:.34em}.legal-hero h1{font-family:var(--display);letter-spacing:.04em;font-weight:800}.legal-lead{color:#faf8f2a8}.legal-date{color:var(--kaya)}.legal-tabs a{border-color:var(--line);background:var(--washi-hi);color:var(--soft);transition:border-color .2s,color .2s}.legal-tabs a:hover{border-color:var(--ink);color:var(--ink)}.legal-tabs a[aria-current]{border-color:var(--sumi);background:var(--sumi);color:var(--washi-hi)}.legal-document{border-color:var(--line);box-shadow:0 30px 50px -44px #1a171280}.legal-document h2{font-family:var(--display);letter-spacing:.03em;font-weight:800}.legal-document a{color:var(--ai);text-underline-offset:3px}
