.legal-hero{border-bottom:1px solid var(--border,#e0e0e0);padding:64px 60px 44px}.legal-hero h1{color:var(--text,#111);margin-bottom:14px;font-family:Cormorant Garamond,serif;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:400}.legal-hero p{color:var(--text3,#666);max-width:560px;font-size:.88rem;line-height:1.8}.legal-updated{color:var(--text4,#aaa);letter-spacing:.04em;margin-top:16px;font-size:.72rem}.legal-wrap{grid-template-columns:260px 1fr;max-width:1200px;margin:0 auto;display:grid}.legal-toc{border-right:1px solid var(--border,#e0e0e0);align-self:start;height:fit-content;max-height:calc(100vh - 61px);padding:52px 32px 52px 60px;position:sticky;top:61px;overflow-y:auto}.toc-label{letter-spacing:.2em;text-transform:uppercase;color:#bbb;margin-bottom:18px;font-size:.62rem;font-weight:700}.toc-link{color:var(--text3,#666);border-left:2px solid #0000;margin-left:-14px;padding:9px 0 9px 14px;font-size:.82rem;text-decoration:none;transition:color .2s,border-color .2s;display:block}.toc-link:hover{color:var(--text,#111)}.toc-link.active{color:var(--text,#111);border-left-color:var(--text,#111);font-weight:500}.legal-content{max-width:760px;padding:52px 60px 90px 48px}.legal-section{margin-bottom:64px;scroll-margin-top:80px}.legal-section:last-child{margin-bottom:0}.legal-section-num{letter-spacing:.16em;text-transform:uppercase;color:#bbb;margin-bottom:10px;font-size:.7rem;font-weight:700}.legal-section h2{color:var(--text,#111);margin-bottom:20px;font-family:Cormorant Garamond,serif;font-size:1.9rem;font-weight:500}.legal-section h3{color:var(--text,#111);margin:28px 0 12px;font-family:Cormorant Garamond,serif;font-size:1.25rem;font-weight:500}.legal-section p{color:var(--text2,#444);margin-bottom:16px;font-size:.88rem;line-height:1.85}.legal-section ul{margin:0 0 16px;padding-left:20px}.legal-section li{color:var(--text2,#444);margin-bottom:8px;font-size:.88rem;line-height:1.85}.legal-callout{background:var(--surface,#f7f7f7);border-left:3px solid var(--text,#111);margin:24px 0;padding:20px 24px}.legal-callout p{color:var(--text,#222);margin-bottom:0;font-weight:500}.legal-section a{color:var(--text,#111);text-decoration:underline}@media (max-width:900px){.legal-hero{padding:44px 20px 32px}.legal-wrap{grid-template-columns:1fr}.legal-toc{display:none}.legal-content{padding:36px 20px 60px}}
