.legal-hero{
  padding:138px 22px 64px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 15% 20%,rgba(66,133,255,.18),transparent 34%),
    radial-gradient(circle at 85% 35%,rgba(128,255,190,.12),transparent 30%);
}
.legal-hero:after{
  content:"";
  position:absolute;
  inset:auto -12% -55% 35%;
  height:420px;
  background:radial-gradient(circle,rgba(58,140,255,.15),transparent 68%);
  pointer-events:none;
}
.legal-hero-inner{
  width:min(1180px,100%);
  margin:auto;
  position:relative;
  z-index:1;
}
.legal-kicker{
  display:block;
  letter-spacing:.17em;
  font-size:.78rem;
  font-weight:800;
  color:var(--accent);
  margin-bottom:14px;
}
.legal-hero h1{
  font-size:clamp(2.55rem,7vw,5.7rem);
  line-height:1.02;
  max-width:940px;
  margin:0 0 20px;
  overflow-wrap:anywhere;
}
.legal-hero p{
  max-width:760px;
  margin:0;
  font-size:clamp(1.05rem,2vw,1.3rem);
  color:var(--muted);
  line-height:1.65;
}
.legal-hero-actions{
  display:flex;
  align-items:stretch;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}
.legal-hero-actions .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  min-width:154px;
  padding:12px 22px;
  white-space:nowrap;
  text-align:center;
  line-height:1.2;
}
.legal-page-section{padding:36px 22px 92px}
.legal-layout{
  width:min(1180px,100%);
  margin:auto;
  display:grid;
  grid-template-columns:minmax(230px,280px) minmax(0,1fr);
  gap:28px;
  align-items:start;
}
.legal-sidebar{
  position:sticky;
  top:104px;
  display:grid;
  gap:16px;
  min-width:0;
}
.legal-sidebar-card,.legal-document-card{
  min-width:0;
  background:var(--panel);
  border:1px solid var(--line);
  border-radius:24px;
  box-shadow:0 20px 70px rgba(0,0,0,.1);
  backdrop-filter:blur(16px);
}
.legal-sidebar-card{padding:22px}
.legal-sidebar-card strong{display:block;margin-bottom:14px}
.legal-sidebar-card nav{display:grid;gap:4px}
.legal-sidebar-card nav a{
  display:block;
  min-width:0;
  padding:9px 10px;
  border-radius:10px;
  color:var(--muted);
  font-size:.92rem;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.legal-sidebar-card nav a:hover,.legal-sidebar-card nav a:focus-visible{
  background:rgba(80,140,255,.12);
  color:var(--text);
}
.legal-privacy-note p{
  font-size:.88rem;
  line-height:1.55;
  color:var(--muted);
  margin:0;
  overflow-wrap:anywhere;
}
.legal-document-card{padding:clamp(26px,5vw,58px)}
.legal-article{display:none;line-height:1.78;min-width:0}
.legal-article.active{display:block}
.legal-article>h1:first-child{display:none}
.legal-article h2{
  font-size:clamp(1.35rem,2.4vw,1.75rem);
  margin:2.2em 0 .7em;
  padding-top:.3em;
  scroll-margin-top:120px;
  overflow-wrap:anywhere;
}
.legal-article h2:first-of-type{
  margin-top:0;
  font-size:clamp(2rem,4vw,3rem);
}
.legal-article p,.legal-article li{
  max-width:82ch;
  color:var(--muted);
  overflow-wrap:anywhere;
  word-break:normal;
}
.legal-article strong{color:var(--text)}
.legal-article a{color:var(--accent);overflow-wrap:anywhere}
.legal-article code{
  padding:.12em .35em;
  border-radius:6px;
  background:rgba(127,127,127,.15);
  white-space:normal;
  overflow-wrap:anywhere;
}
[dir=rtl] .legal-article{text-align:right}
[dir=rtl] .legal-sidebar-card nav{text-align:right}
[dir=rtl] .legal-hero-actions{justify-content:flex-start}

@media(max-width:900px){
  .legal-layout{grid-template-columns:minmax(0,1fr)}
  .legal-sidebar{position:static}
  .legal-sidebar-card nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  .legal-hero{padding-top:118px}
}
@media(max-width:620px){
  .legal-hero{padding:108px 16px 48px}
  .legal-page-section{padding:24px 14px 72px}
  .legal-sidebar-card nav{grid-template-columns:1fr}
  .legal-document-card{border-radius:18px;padding:24px 18px}
  .legal-sidebar-card{border-radius:18px}
  .legal-hero-actions{display:grid;grid-template-columns:1fr}
  .legal-hero-actions .btn{width:100%;min-width:0;white-space:normal}
}
@media(max-width:380px){
  .legal-hero h1{font-size:2.2rem}
  .legal-document-card{padding:21px 15px}
}
