.legal{
  padding:60px 0 90px;
  background:linear-gradient(180deg,#fff 0%, #faf8ff 100%);
  position:relative;overflow:hidden;
}
.legal::before{
  content:"";position:absolute;
  inset:-200px -200px auto auto;
  width:600px;height:600px;border-radius:50%;
  background:radial-gradient(closest-side, rgba(167,139,250,.18), transparent 70%);
  z-index:0;
}
.legal__head{
  position:relative;z-index:1;
  text-align:center;
  margin-bottom:48px;
  padding-bottom:36px;
  border-bottom:1px solid var(--line);
}
.legal__back{
  display:inline-block;
  margin-bottom:18px;
  color:var(--muted);
  font-size:14px;
  font-weight:600;
}
.legal__back:hover{color:var(--brand)}
.legal__head h1{
  font-size:clamp(30px, 4vw, 44px);
  margin:14px 0 12px;
  letter-spacing:-.02em;
  line-height:1.1;
  font-weight:800;
}
.legal__meta{color:var(--muted);font-size:15px;margin:0}

.legal__body{
  position:relative;z-index:1;
  background:#fff;
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  padding:48px 52px;
  box-shadow:var(--shadow-sm);
}
.legal__body h2{
  font-size:22px;
  margin:36px 0 12px;
  letter-spacing:-.01em;
  font-weight:800;
  color:var(--ink);
}
.legal__body h2:first-child{margin-top:0}
.legal__body p{
  margin:0 0 14px;
  color:#3a3a5a;
  font-size:16px;
  line-height:1.7;
}
.legal__body strong{color:var(--ink);font-weight:700}
.legal__body a{color:var(--brand);font-weight:600}
.legal__body a:hover{text-decoration:underline}

.legal__rekv{
  margin-top:16px;
  background:var(--soft);
  border:1px solid var(--line);
  border-radius:16px;
  padding:20px 24px;
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:14px 28px;
}
.legal__rekv > div{
  display:flex;flex-direction:column;gap:2px;
}
.legal__rekv span{
  font-size:12px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.06em;
  font-weight:700;
}
.legal__rekv strong{
  font-size:15px;
  color:var(--ink);
  font-weight:700;
}

@media (max-width:720px){
  .legal__body{padding:32px 22px}
  .legal__rekv{grid-template-columns:1fr}
}
