:root {
  --lw-legal-bg: #f4f7fd;
  --lw-legal-surface: #ffffff;
  --lw-legal-line: #dce5f5;
  --lw-legal-text: #10213f;
  --lw-legal-muted: #5c6f91;
  --lw-legal-accent: #0d83fd;
  --lw-legal-accent-soft: #e8f3ff;
  --lw-legal-shadow: 0 16px 38px rgba(15, 23, 42, 0.08);
}

body.legal-page {
  color: var(--lw-legal-text);
  background:
    radial-gradient(1200px 550px at 0% -15%, #e1ecff 0%, transparent 62%),
    radial-gradient(1000px 470px at 100% 0%, #eaf0fb 0%, transparent 66%),
    var(--lw-legal-bg);
}

.legal-main {
  padding-top: 86px;
}

.legal-main .container {
  width: min(1060px, calc(100% - 2rem));
}

.legal-policy {
  padding: 2rem 0 2.5rem;
}

.legal-subnav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.95rem 1.08rem;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid var(--lw-legal-line);
  border-radius: 14px;
  backdrop-filter: blur(8px);
}

.legal-subnav-title {
  margin: 0;
  color: #1f2d4b;
  font-weight: 700;
  font-size: 0.96rem;
  letter-spacing: 0.01em;
}

.legal-links {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.legal-links a {
  text-decoration: none;
  font-size: 0.88rem;
  font-weight: 700;
  color: #194086;
  border: 1px solid #c8d9f8;
  background: var(--lw-legal-accent-soft);
  border-radius: 999px;
  padding: 0.38rem 0.72rem;
  line-height: 1;
}

.legal-links a[aria-current="page"] {
  color: #fff;
  border-color: transparent;
  background: linear-gradient(135deg, #0b72de, var(--lw-legal-accent));
}

.legal-policy-card {
  margin-top: 0.95rem;
  border: 1px solid var(--lw-legal-line);
  border-radius: 20px;
  background: var(--lw-legal-surface);
  box-shadow: var(--lw-legal-shadow);
  overflow: hidden;
}

.legal-policy-head {
  padding: 1.42rem 1.24rem 0.96rem;
  border-bottom: 1px solid var(--lw-legal-line);
  background: linear-gradient(180deg, #f9fbff 0%, #fff 100%);
}

.legal-eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  background: #dbeafe;
  color: #1e40af;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  padding: 0.26rem 0.62rem;
}

.legal-title {
  margin: 0.84rem 0 0.34rem;
  font-size: clamp(1.72rem, 3.2vw, 2.34rem);
  line-height: 1.22;
}

.legal-meta {
  margin: 0;
  color: var(--lw-legal-muted);
  font-size: 0.92rem;
}

.legal-policy-content {
  padding: 1.24rem 1.24rem 1.42rem;
}

.legal-policy-content h2 {
  margin: 1.14rem 0 0.4rem;
  font-size: 1.1rem;
  line-height: 1.36;
}

.legal-policy-content p,
.legal-policy-content ul {
  margin: 0.42rem 0;
}

.legal-policy-content ul {
  padding-left: 1.1rem;
}

.legal-policy-content li + li {
  margin-top: 0.24rem;
}

.legal-policy-content a {
  color: #0a63c8;
}

.legal-note {
  margin-top: 1.1rem;
  border: 1px solid var(--lw-legal-line);
  border-radius: 12px;
  background: #f8fafd;
  color: var(--lw-legal-muted);
  padding: 0.78rem 0.86rem;
  font-size: 0.92rem;
}

.legal-page .footer {
  margin-top: 1.2rem;
}

.legal-page .footer .footer-top {
  padding-top: 66px;
}

.legal-page .header .header-container {
  padding-inline: 0.9rem;
}

.legal-page .lw-header-cta .btn-login {
  background: transparent;
  border: 1px solid color-mix(in srgb, var(--default-color), transparent 72%);
  color: var(--default-color);
}

.legal-page .lw-header-cta .btn-login:hover {
  background: color-mix(in srgb, var(--accent-color), transparent 90%);
  color: var(--accent-color);
}

@media (max-width: 1199px) {
  .legal-page .lw-header-cta {
    display: none !important;
  }

  .legal-main {
    padding-top: 82px;
  }
}

@media (max-width: 700px) {
  .legal-main .container {
    width: calc(100% - 1rem);
  }

  .legal-policy {
    padding-top: 1.15rem;
    padding-bottom: 1.2rem;
  }

  .legal-subnav {
    flex-direction: column;
    align-items: flex-start;
    padding: 0.84rem 0.9rem;
  }

  .legal-policy-head,
  .legal-policy-content {
    padding: 1rem;
  }
}
