/* page-terms.css (только стили страницы Terms / Legal) */

.legal-page{
  background:var(--bg);
  color:var(--text);
}

/* Hero */
.legal-hero{
  padding:clamp(34px,5vw,66px) 0 22px;
}

.legal-hero__inner{
  border:1px solid var(--border);
  background:rgba(255,255,255,.04);
  border-radius:24px;
  padding:clamp(18px,3.2vw,28px);
  box-shadow:var(--shadow);
  overflow:hidden;
  position:relative;
}

.legal-hero__inner::before{
  content:"";
  position:absolute;
  inset:-2px;
  background:radial-gradient(900px 340px at 20% 0, rgba(var(--primary-rgb),.22), transparent 60%);
  pointer-events:none;
}

.legal-breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  color:var(--muted);
  font-size:14px;
  position:relative;
  z-index:1;
}

.legal-breadcrumbs a{
  color:var(--text);
  text-decoration:none;
}

.legal-breadcrumbs a:hover{color:var(--primary-hover);}

.legal-h1{
  font-size:clamp(28px,4vw,48px);
  line-height:1.08;
  margin:10px 0 12px;
  position:relative;
  z-index:1;
}

.legal-lead{
  max-width:78ch;
  color:var(--muted);
  margin:0 0 14px;
  position:relative;
  z-index:1;
}

.legal-meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  position:relative;
  z-index:1;
}

.legal-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid var(--border);
  background:rgba(255,255,255,.05);
  color:var(--text);
  font-weight:650;
  font-size:13px;
}

/* Layout */
.legal-shell{
  display:grid;
  grid-template-columns:280px minmax(0,1fr);
  gap:24px;
  align-items:start;
  padding:22px 0 64px;
}

.legal-sidebar{
  position:sticky;
  top:18px;
}

.legal-toc{
  border:1px solid var(--border);
  background:rgba(255,255,255,.04);
  border-radius:20px;
  padding:16px 16px 14px;
  box-shadow:0 14px 34px rgba(0,0,0,.25);
}

.legal-toc__title{
  margin:0 0 10px;
  font-family:var(--font-head);
  font-size:18px;
  letter-spacing:.03em;
}

.legal-toc__list{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}

.legal-toc__link{
  display:flex;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid transparent;
  color:var(--text);
  text-decoration:none;
  background:transparent;
  transition:background-color var(--anim-fast,150ms) var(--ease-out,ease-out),
             border-color var(--anim-fast,150ms) var(--ease-out,ease-out),
             transform var(--anim-fast,150ms) var(--ease-out,ease-out);
}

.legal-toc__link:hover{
  background:rgba(var(--primary-rgb),.1);
  border-color:rgba(var(--primary-rgb),.28);
  transform:translateY(-1px);
}

.legal-toc__link:focus{
  outline:3px solid var(--ring);
  outline-offset:2px;
}

.legal-toc__link:focus-visible{
  outline:2px solid var(--primary);
  outline-offset:2px;
}

.legal-main{min-width:0;}

.legal-article{
  border:1px solid var(--border);
  background:rgba(255,255,255,.03);
  border-radius:24px;
  padding:clamp(16px,2.8vw,28px);
  box-shadow:0 14px 34px rgba(0,0,0,.25);
}

/* Content blocks */
.legal-block{
  padding:18px 0;
  border-top:1px solid var(--border);
  scroll-margin-top:92px;
}

.legal-block:first-child{
  border-top:0;
  padding-top:8px;
}

.legal-block + .legal-block{
  margin-top:22px;
  padding-top:22px;
  border-top:1px solid var(--border);
}

.legal-h2{
  font-size:clamp(18px,2vw,26px);
  line-height:1.2;
  margin:0 0 10px;
}

.legal-text{
  color:var(--text);
  opacity:.92;
  margin:0 0 12px;
  max-width:80ch;
}

.legal-text + .legal-text{margin-top:10px;}

/* Links/lists inside content */
.legal-text a:not(.legal-link){text-decoration:underline;}
.legal-list{
  margin:0 0 12px 18px;
  color:var(--text);
  opacity:.92;
}
.legal-list li{margin:6px 0;}

.legal-note{
  border:1px solid rgba(var(--primary-rgb),.26);
  background:linear-gradient(180deg, rgba(var(--primary-rgb),.14), rgba(var(--primary-rgb),.06));
  border-radius:18px;
  padding:14px 14px;
  color:var(--text);
}
.legal-note strong{font-weight:900;}

.legal-link{
  color:var(--primary-hover);
  text-decoration:none;
}
.legal-link:hover{text-decoration:underline;}

.legal-backtop{
  display:inline-flex;
  margin-top:14px;
  text-decoration:none;
  color:var(--muted);
}
.legal-backtop:hover{color:var(--primary-hover);}

/* Responsive */
@media (min-width:980px){
  .legal-sidebar{display:block;}
}

@media (min-width:640px){
  .legal-article{padding:22px 24px;}
}

@media (max-width:960px){
  .legal-shell{grid-template-columns:1fr;gap:14px;}
  .legal-sidebar{position:relative;top:auto;}
  .legal-toc__list{
    flex-direction:row;
    overflow:auto;
    scrollbar-width:thin;
    padding-bottom:6px;
  }
  .legal-toc__link{white-space:nowrap;}
}

/* Motion */
@keyframes legalFadeUp{
  from{opacity:0;transform:translateY(8px)}
  to{opacity:1;transform:translateY(0)}
}

@media (prefers-reduced-motion:no-preference){
  .legal-article,
  .legal-hero__inner{animation:legalFadeUp .5s ease both;}
}
