.legal-page{min-height:100vh;background:var(--paper);color:var(--dk)}
.legal-page .nav{background:rgba(9,11,23,.97);border-color:var(--line)}
.legal-page .menu a.on{background:rgba(122,78,244,.18);color:#fff}
.legal-page .nav .dd__panel a{color:var(--tx)}
.legal-page .nav .dd__panel a:hover,.legal-page .nav .dd__panel a.on{color:#fff}
.legal-page .portal-kicker{display:inline-flex;align-items:center;gap:9px;font:700 12px var(--fm);letter-spacing:.1em;text-transform:uppercase;color:var(--violet)}
.legal-page .portal-kicker::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 9px rgba(0,181,122,.6)}
.legal-main{min-height:calc(100vh - 80px);padding:142px 0 88px}
.legal-wrap{max-width:1120px}
.legal-hero{max-width:830px;margin-bottom:46px}
.legal-hero h1,.legal-document-head h1{font-size:clamp(40px,6vw,68px);line-height:1.02;letter-spacing:-.04em;margin-top:14px}
.legal-hero>p,.legal-document-head>p{max-width:790px;margin-top:20px;font-size:18px;line-height:1.7;color:var(--dmut)}
.legal-notice{margin-top:26px;padding:16px 18px;border-left:3px solid var(--violet);background:#fff;border-radius:0 10px 10px 0;color:var(--dk2);line-height:1.55}
.legal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.legal-card{display:flex;flex-direction:column;min-height:265px;padding:30px;border:1px solid #DDE0E8;border-radius:16px;background:#fff;box-shadow:0 24px 55px -44px rgba(30,25,80,.55)}
.legal-card h2{font-size:23px;letter-spacing:-.02em;line-height:1.2}
.legal-card p{margin-top:14px;color:var(--dmut);line-height:1.6}
.legal-link{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:auto;padding-top:28px;color:var(--violet);font-weight:700}
.legal-link span,.legal-related a span{font-size:21px;transition:transform .2s}
.legal-link:hover span,.legal-related a:hover span{transform:translateX(4px)}
.legal-back{display:inline-flex;margin-bottom:28px;color:var(--violet);font-weight:700}
.legal-document{overflow:hidden;border:1px solid #DDE0E8;border-radius:18px;background:#fff;box-shadow:0 30px 75px -56px rgba(30,25,80,.65)}
.legal-document-head{padding:48px 54px 42px;background:linear-gradient(145deg,#fff 0%,#F7F5FF 100%);border-bottom:1px solid #E3E1ED}
.legal-document-head h1{font-size:clamp(38px,5vw,58px)}
.legal-document-head small{display:block;margin-top:24px;color:var(--dmut);font:600 12px var(--fm);letter-spacing:.055em;text-transform:uppercase}
.legal-copy{padding:10px 54px 48px}
.legal-copy section{padding:34px 0;border-bottom:1px solid #E6E7ED}
.legal-copy section:last-child{border-bottom:0}
.legal-copy h2{font-size:23px;line-height:1.3;letter-spacing:-.018em}
.legal-copy p,.legal-copy li{font-size:16px;line-height:1.75;color:#43485A}
.legal-copy p{margin-top:15px}
.legal-copy ul{display:grid;gap:11px;margin:18px 0 0 20px;padding-left:5px}
.legal-copy li::marker{color:var(--violet)}
.legal-related{margin-top:28px;padding:28px 30px;border:1px solid #DDE0E8;border-radius:15px;background:#fff}
.legal-related h2{font-size:18px}
.legal-related>div{display:flex;flex-wrap:wrap;gap:12px;margin-top:17px}
.legal-related a{display:flex;align-items:center;gap:22px;padding:10px 14px;border-radius:8px;background:#F3F1FC;color:var(--violet);font-weight:700}
.legal-support{display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:42px;padding:30px 34px;border-radius:16px;background:var(--ink);color:#fff}
.legal-support h2{font-size:22px}
.legal-support p{max-width:680px;margin-top:7px;color:var(--tx2);line-height:1.55}
.legal-support .btn{flex:none}
.legal-page .portal-foot{padding:28px 0;border-top:1px solid #E1E3EA;background:#fff;color:var(--dmut);font-size:14px}
.legal-page .portal-foot .wrap,.legal-page .portal-foot div{display:flex;align-items:center;justify-content:space-between;gap:22px}
.legal-page .portal-foot a{color:var(--violet);font-weight:700}
@media(max-width:900px){
  .legal-grid{grid-template-columns:1fr}
  .legal-card{min-height:0}
  .legal-page .menu{display:none}
}
@media(max-width:640px){
  .legal-main{padding:112px 0 64px}
  .legal-document-head,.legal-copy{padding-left:22px;padding-right:22px}
  .legal-document-head{padding-top:34px;padding-bottom:30px}
  .legal-copy section{padding:28px 0}
  .legal-support{display:block;padding:25px 22px}
  .legal-support .btn{width:100%;margin-top:20px}
  .legal-page .portal-foot .wrap{align-items:flex-start;flex-direction:column}
}
