.legal-header{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:90px;border-bottom:1px solid var(--line)}.legal-back{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:14px}.legal-back:hover{color:var(--violet-deep)}.legal-main{padding-block:72px 100px}.legal-heading{max-width:920px;margin-bottom:64px}.legal-heading h1{max-width:none;margin:0;font-size:clamp(36px,5vw,64px);line-height:1.12;letter-spacing:-.035em;overflow-wrap:anywhere}.legal-intro{max-width:62ch;margin:24px 0 16px;color:var(--ink-soft);font-size:18px;line-height:1.65}.legal-revision{margin:0;color:var(--ink-soft);font-size:13px;line-height:1.6}.legal-layout{display:grid;grid-template-columns:minmax(190px,.65fr) minmax(0,2fr);align-items:start;gap:clamp(40px,7vw,100px)}.legal-contents{position:sticky;top:32px;font-size:13px;line-height:1.6}.legal-contents>span{font-weight:700}.legal-contents ol{display:grid;gap:12px;margin:20px 0 0;padding:0;list-style:none}.legal-contents a{display:inline-block;color:var(--ink-soft);text-decoration:underline;text-decoration-color:var(--line);text-underline-offset:4px}.legal-contents a:hover{color:var(--violet-deep)}.legal-copy{max-width:73ch;font-size:16px;line-height:1.8;overflow-wrap:anywhere}.legal-copy section{scroll-margin-top:32px}.legal-copy section+section{margin-top:44px}.legal-copy h2{margin-bottom:18px;font-size:clamp(23px,2.3vw,30px);font-weight:650;line-height:1.3;letter-spacing:-.02em;text-wrap:initial}.legal-copy p{margin-bottom:16px}.legal-copy p:last-child{margin-bottom:0}.legal-copy ul{display:grid;gap:12px;margin:20px 0;padding-left:22px}.legal-copy li::marker{color:var(--violet-deep)}.legal-related{display:flex;flex-wrap:wrap;gap:16px 28px;margin-top:48px;padding-top:24px;border-top:1px solid var(--line);font-size:14px}.legal-related a{color:var(--violet-deep);text-decoration:underline;text-underline-offset:4px}@media(max-width:800px){.legal-header{min-height:76px}.legal-main{padding-block:44px 64px}.legal-heading{margin-bottom:36px}.legal-layout{grid-template-columns:1fr;gap:40px}.legal-contents{position:static;padding-bottom:28px;border-bottom:1px solid var(--line)}.legal-contents ol{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px}.legal-intro{font-size:16px}.legal-copy{font-size:15px}}@media(max-width:470px){.legal-heading h1{font-size:clamp(25px,8vw,36px)}.legal-contents ol{grid-template-columns:1fr;gap:10px}.legal-back{font-size:12px}}
