.legal{--ink:#0f1729;--ink-2:#334155;--muted:#5b6b82;--sky:#3bbff7;--sky-ink:#0a6c9c;--line:#0f172917;min-height:100dvh;color:var(--ink);font-family:var(--font-sans), system-ui, sans-serif;-webkit-font-smoothing:antialiased;background:#f8fafc}.legal a{color:var(--sky-ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.legal__bar{z-index:10;height:60px;box-shadow:0 1px 0 var(--line);background:#f8fafcf7;justify-content:space-between;align-items:center;padding:0 16px;display:flex;position:sticky;top:0}.legal .legal__brand{color:var(--ink);font-family:var(--font-brand), sans-serif;align-items:center;gap:8px;font-size:1.25rem;text-decoration:none;display:flex}.legal__mark{width:auto;height:30px}.legal__mark .mark__face{fill:#fff}.legal__mark .mark__ink{fill:#3fa9da}.legal .legal__open{background:var(--sky);height:38px;color:var(--ink);border-radius:999px;align-items:center;padding:0 16px;font-size:.875rem;font-weight:600;text-decoration:none;transition:transform .16s cubic-bezier(.23,1,.32,1);display:inline-flex}.legal .legal__open:active{transform:scale(.97)}.legal__main{max-width:760px;margin:0 auto;padding:48px 20px 72px}.legal__date{color:var(--muted);font-size:.875rem}.legal__title{letter-spacing:-.04em;margin-top:10px;font-size:clamp(2.25rem,7vw,3.5rem);font-weight:600;line-height:1.02}.legal__intro{color:var(--ink-2);margin-top:20px;font-size:1.125rem;line-height:1.6}.legal__intro p+p{margin-top:12px}.legal__toc{border:1px solid var(--line);background:#fff;border-radius:22px;margin-top:32px;padding:20px 22px}.legal__toc>p{margin-bottom:8px;font-weight:600}.legal__toc ol{color:var(--muted);gap:6px;margin:0;padding-left:20px;display:grid}.legal__toc a{color:var(--ink-2);text-decoration:none}.legal__body{color:var(--ink-2);margin-top:16px;font-size:1rem;line-height:1.65}.legal__section{padding-top:40px;scroll-margin-top:70px}.legal__section h2{letter-spacing:-.025em;color:var(--ink);margin-bottom:12px;font-size:1.5rem;font-weight:600;line-height:1.2}.legal__section h3{color:var(--ink);margin:22px 0 6px;font-size:1.0625rem;font-weight:600}.legal__section p+p,.legal__section p+ul,.legal__section ul+p{margin-top:10px}.legal__section ul{gap:6px;padding-left:20px;list-style:outside;display:grid}.legal__table{border:1px solid var(--line);background:#fff;border-radius:18px;width:100%;margin-top:12px;overflow-x:auto}.legal__table table{border-collapse:collapse;width:100%;min-width:560px;font-size:.9375rem}.legal__table th,.legal__table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:12px 14px}.legal__table tr:last-child td{border-bottom:0}.legal__table th{color:var(--ink);background:#f3f8fc;font-weight:600}.legal__table code{word-break:break-all;background:#eef4f9;border-radius:6px;padding:1px 6px;font-size:.85em}@media (max-width:640px){.legal__table{background:0 0;border:0;overflow:visible}.legal__table table{min-width:0}.legal__table thead{display:none}.legal__table table,.legal__table tbody,.legal__table tr,.legal__table td{display:block}.legal__table tr{border:1px solid var(--line);background:#fff;border-radius:16px;margin-bottom:10px;padding:12px 14px}.legal__table td{border:0;padding:3px 0}.legal__table td:before{content:attr(data-label);color:var(--muted);font-size:.75rem;font-weight:600;display:block}.legal__table td:first-child:before{display:none}.legal__table td:first-child{color:var(--ink);font-weight:600}}.legal__address{border:1px solid var(--line);color:var(--ink);background:#fff;border-radius:18px;margin-top:8px;padding:16px 18px;font-style:normal;line-height:1.6}.legal__note{color:var(--ink);background:#e7f6fe;border-radius:16px;margin-top:12px;padding:14px 16px}.legal__foot{border-top:1px solid var(--line);padding:28px 20px calc(28px + env(safe-area-inset-bottom));max-width:1100px;color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:12px 28px;margin:0 auto;font-size:.9375rem;display:flex}.legal__foot nav{flex-wrap:wrap;gap:8px 20px;display:flex}.legal__foot nav a,.legal__foot nav button{color:var(--muted);text-decoration:none}@media (min-width:768px){.legal__bar{padding:0 28px}.legal__main{padding-top:72px}}
