.legal-page {
  min-height:100svh;
  overflow:auto;
  background:
    radial-gradient(circle at 76% 14%, rgba(116,62,230,.16), transparent 30%),
    radial-gradient(circle at 15% 90%, rgba(90,63,155,.12), transparent 28%),
    var(--bg);
}
.legal-page .ambient,
.legal-page .grain,
.legal-page .pointer-light { position:fixed; }
.legal-page .site-shell {
  min-height:100svh;
  height:auto;
  overflow:visible;
}
.legal-topbar {
  position:sticky;
  top:0;
  z-index:20;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  min-height:88px;
  padding:16px 34px;
  border-bottom:1px solid rgba(255,255,255,.055);
  background:rgba(4,4,7,.78);
  backdrop-filter:blur(18px);
}
.legal-back {
  color:#a29dad;
  font:8px/1.2 Consolas,monospace;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.legal-back:hover { color:#f1edf4; }
.legal-brand { display:flex; align-items:center; gap:11px; }
.legal-brand .brand-logo { width:38px; height:38px; }
.legal-brand .brand-wordmark strong { font-size:16px; }
.legal-brand .brand-wordmark b { font-size:10px; }
.legal-brand .brand-wordmark small { font-size:7px; }
.legal-main {
  width:min(980px, calc(100% - 36px));
  margin:0 auto;
  padding:70px 0 100px;
}
.legal-kicker { margin:0 0 12px; }
.legal-title {
  margin:0;
  max-width:850px;
  font-size:clamp(42px, 6vw, 76px);
  line-height:.94;
  letter-spacing:-.055em;
}
.legal-lead {
  max-width:760px;
  margin:20px 0 46px;
  color:#b9b1c0;
  font-size:14px;
  line-height:1.75;
}
.legal-card {
  padding:28px 30px;
  margin-bottom:16px;
  border:1px solid rgba(255,255,255,.08);
  background:linear-gradient(145deg,rgba(17,15,23,.82),rgba(5,5,8,.72));
  box-shadow:0 24px 80px rgba(0,0,0,.20);
}
.legal-card h2 {
  margin:0 0 14px;
  font-size:21px;
  letter-spacing:-.025em;
}
.legal-card h3 {
  margin:20px 0 9px;
  font-size:14px;
  color:#e5e0e7;
}
.legal-card p, .legal-card li {
  color:#bcb5c1;
  font-size:13px;
  line-height:1.72;
}
.legal-card p { margin:0 0 12px; }
.legal-card p:last-child { margin-bottom:0; }
.legal-card ul { margin:8px 0 0; padding-left:21px; }
.legal-card li { margin:6px 0; }
.legal-note {
  color:#827a89 !important;
  font-size:11px !important;
}
.legal-accent { color:#d6c0ff; }
.legal-footer {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding-top:16px;
  color:#746d7c;
  font:7px/1.5 Consolas,monospace;
  letter-spacing:.10em;
  text-transform:uppercase;
}
.legal-footer a:hover { color:#d8d0e0; }
@media (max-width: 820px), (orientation: landscape) and (max-height: 500px) and (max-width: 1100px) {
  .legal-topbar { min-height:76px; padding:12px 16px; }
  .legal-brand .brand-logo { width:34px; height:34px; }
  .legal-brand .brand-wordmark strong { font-size:14px; }
  .legal-back { font-size:7px; }
  .legal-main { width:min(100% - 24px, 680px); padding:44px 0 76px; }
  .legal-title { font-size:clamp(36px, 11vw, 58px); }
  .legal-lead { font-size:12px; margin:16px 0 26px; line-height:1.65; }
  .legal-card { padding:20px 18px; }
  .legal-card h2 { font-size:18px; }
  .legal-card p, .legal-card li { font-size:12px; line-height:1.65; }
  .legal-footer { flex-direction:column; }
}

/* V19 fixed legal header */
@media (max-width: 1100px) {
  .legal-topbar {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 50 !important;
  }

  .legal-main {
    padding-top: 120px !important;
  }
}

@media (max-width: 820px), (orientation: landscape) and (max-height: 500px) and (max-width: 1100px) {
  .legal-main {
    padding-top: 108px !important;
  }
}
