/* --- Legal Pages (Privacy, Terms) --- */

.legal {
  padding: calc(var(--space-4xl) + 60px) 0 var(--space-4xl);
  max-width: 720px;
}

.legal__title {
  font-family: var(--font-heading);
  font-size: var(--fs-3xl);
  color: var(--navy);
  margin-bottom: var(--space-xs);
}

.legal__updated {
  font-size: var(--fs-sm);
  color: var(--slate);
  opacity: 0.7;
  margin-bottom: var(--space-2xl);
}

.legal h2 {
  font-family: var(--font-heading);
  font-size: var(--fs-lg);
  color: var(--navy);
  margin-top: var(--space-xl);
  margin-bottom: var(--space-sm);
}

.legal p {
  font-size: var(--fs-md);
  line-height: 1.8;
  color: var(--slate);
  margin-bottom: var(--space-md);
}

.legal ul {
  list-style: disc;
  padding-left: var(--space-xl);
  margin-bottom: var(--space-md);
}

.legal li {
  font-size: var(--fs-md);
  line-height: 1.8;
  color: var(--slate);
  margin-bottom: var(--space-xs);
}

.legal a {
  color: var(--red);
  font-weight: 500;
}

.legal a:hover {
  opacity: 0.8;
}

.legal__contact {
  background-color: var(--sand);
  border-radius: 8px;
  padding: var(--space-lg);
  margin-top: var(--space-md);
}

.legal__contact p {
  margin-bottom: var(--space-xs);
  font-size: var(--fs-sm);
  line-height: 1.6;
}

@media (max-width: 768px) {
  .legal {
    padding-left: var(--space-md);
    padding-right: var(--space-md);
  }

  .legal__title {
    font-size: var(--fs-2xl);
  }
}
