.legal-page{background:#fff;color:#33465d;padding:30px 0 88px;min-height:calc(100vh - 230px);}
.legal-container{width:calc(100% - 48px);max-width:1120px;margin:0 auto;}
.legal-page .breadcrumb{margin:0 0 42px;}
.legal-header{padding-bottom:32px;border-bottom:1px solid #dce6f0;}
.legal-header h1{color:#062759;font-size:clamp(34px,4vw,48px);line-height:1.15;letter-spacing:-.03em;margin:0 0 20px;}
.legal-date{font-size:14px;color:#65758b;margin:0 0 12px;}
.legal-source{font-size:14px;line-height:1.6;margin:0;}
.legal-page a{color:#17649a;text-underline-offset:4px;}
.legal-page a:hover{text-decoration:underline;}
.legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:64px;padding-top:40px;align-items:start;}
.legal-toc{position:sticky;top:112px;display:flex;flex-direction:column;padding:8px 0;border-left:2px solid #dce6f0;}
.legal-toc a{display:flex;gap:14px;padding:9px 18px;font-size:14px;color:#33465d;}
.legal-toc a span{font-size:12px;color:#8495aa;}
.legal-content section{scroll-margin-top:115px;margin-bottom:34px;}
.legal-content h2{font-size:22px;line-height:1.4;color:#073277;margin:0 0 12px;}
.legal-content p,.legal-pending p{font-size:16px;line-height:1.85;margin:0;}
.legal-content .legal-note{border-top:1px solid #dce6f0;padding-top:22px;font-size:14px;color:#65758b;}
.legal-pending{padding:40px 0;}
.legal-pending>a{display:inline-block;margin-top:16px;}
.legal-page :focus-visible{outline:2px solid #3279c4;outline-offset:4px;}
@media(max-width:760px){.legal-page{padding-bottom:56px;}.legal-layout{grid-template-columns:1fr;gap:36px;padding-top:28px;}.legal-toc{position:static;display:grid;grid-template-columns:1fr 1fr;}.legal-toc a{padding:8px 12px;gap:8px;}.legal-container{width:calc(100% - 40px);}.legal-page .breadcrumb{margin-bottom:30px;}}
