body {
  background-attachment: fixed;
}

.policy-hero {
  padding-block: var(--space-10);
}

.policy-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr);
  gap: var(--space-8);
  align-items: flex-start;
}

@media (max-width: 960px) {
  .policy-hero-inner {
    grid-template-columns: 1fr;
  }
}

.policy-hero-meta {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.policy-hero-lead {
  max-width: 42rem;
}

.policy-hero-aside {
  position: relative;
}

.policy-nav-card {
  position: sticky;
  top: 96px;
}

.policy-nav-title {
  font-size: var(--fs-lg);
  margin-bottom: var(--space-3);
}

.policy-nav-list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: var(--space-4);
  padding-left: 0;
}

.policy-nav-list li {
  font-size: var(--fs-sm);
}

.policy-nav-cta {
  display: flex;
  justify-content: flex-start;
}

.policy-content {
  padding-block: var(--space-8);
}

.policy-content-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.9fr) minmax(0, 1.1fr);
  gap: var(--space-8);
  align-items: flex-start;
}

@media (max-width: 1040px) {
  .policy-content-inner {
    grid-template-columns: 1fr;
  }
}

.policy-article {
  display: flex;
  flex-direction: column;
  gap: var(--space-8);
}

.policy-section {
  padding: var(--space-6);
  border-radius: var(--radius-lg);
  background: radial-gradient(circle at 0 0, rgba(124, 58, 237, 0.32), transparent 55%), radial-gradient(circle at 100% 100%, rgba(6, 182, 212, 0.28), transparent 55%), rgba(15, 23, 42, 0.96);
  border: 1px solid rgba(148, 163, 184, 0.45);
  box-shadow: var(--shadow-card);
}

@media (max-width: 640px) {
  .policy-section {
    padding: var(--space-5);
  }
}

.policy-section h2 {
  margin-bottom: var(--space-3);
}

.policy-list {
  padding-left: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin-bottom: var(--space-3);
}

.policy-list li {
  position: relative;
  padding-left: 18px;
  font-size: var(--fs-md);
  color: var(--color-text-muted);
}

.policy-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.72em;
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: radial-gradient(circle at 30% 0, var(--color-gold), transparent 60%);
  box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.7);
}

.policy-side-cta {
  display: flex;
  flex-direction: column;
  gap: var(--space-5);
}

.policy-download-card {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

.policy-download-title {
  font-size: var(--fs-xl);
}

.policy-download-fineprint {
  font-size: var(--fs-xs);
  color: rgba(184, 178, 209, 0.82);
}

.policy-support-links {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.link-arrow-icon {
  display: inline-flex;
}

.link-arrow svg {
  stroke: var(--color-cyan-strong);
}

.btn-arrow svg {
  stroke: var(--color-text);
}

@media (max-width: 960px) {
  .policy-nav-card {
    position: static;
  }
}

ul { list-style: none !important; }
.nav-toggle { flex-direction: column; }
.btn-arrow svg, .link-arrow svg {
  display: inline-block;
  vertical-align: middle;
  transition: transform 0.3s ease, stroke 0.3s ease;
}
.btn:hover .btn-arrow svg, a:hover .link-arrow svg {
  transform: translate(3px, -3px);
}
