main {
  background: radial-gradient(circle at top, rgba(216, 183, 107, 0.14), transparent 55%), linear-gradient(to bottom, #f7f3ec, #f0ebe2);
}
.hero-privacy {
  color: var(--color-text-on-dark);
}
.hero-bg-overlay-warm {
  background: linear-gradient(to bottom, rgba(24, 16, 10, 0.4), rgba(24, 16, 10, 0.88)), radial-gradient(circle at top, rgba(255, 240, 214, 0.4), transparent 55%);
}
.hero-panel-privacy {
  background: radial-gradient(circle at top left, rgba(216, 183, 107, 0.24) 0, transparent 60%), radial-gradient(circle at bottom right, rgba(176, 58, 58, 0.18) 0, transparent 60%), var(--color-bg-glass-strong);
}
.section-legal-intro {
  padding-top: var(--space-3xl);
}
.section-legal,
.section-legal-alt {
  position: relative;
}
.section-legal-alt {
  background: linear-gradient(to bottom, #f3ece2, #f7f3ec);
}
.card-legal {
  max-width: 960px;
  margin-inline: auto;
}
.card-legal-note {
  max-width: 440px;
}
.legal-grid {
  align-items: flex-start;
}
.legal-grid-main,
.legal-grid-side {
  min-width: 0;
}
.legal-grid-side {
  position: relative;
}
.legal-grid-bottom {
  row-gap: var(--grid-gap-xl);
}
.legal-list {
  margin: 0 0 1em;
  padding-left: 1.2em;
  list-style: disc;
}
.legal-list li {
  margin-bottom: 0.4em;
}
.legal-list li::marker {
  color: var(--color-accent-bordeaux);
}
.section-legal .card-legal,
.section-legal-alt .card-legal {
  transition: transform var(--transition-slow), box-shadow var(--transition-slow), border-color var(--transition-slow), background var(--transition-slow);
}
.section-legal .card-legal:hover,
.section-legal-alt .card-legal:hover {
  transform: translateY(-2px);
}
.hero-panel-privacy,
.card-legal,
.card-legal-note {
  animation: privacy-fade-in 0.7s var(--transition-base) both;
}
.hero-panel-privacy {
  animation-delay: 0.05s;
}
.section-legal-intro .card-legal {
  animation-delay: 0.12s;
}
.section-legal .card-legal {
  animation-delay: 0.16s;
}
.section-legal-alt .card-legal {
  animation-delay: 0.18s;
}
.card-legal-note {
  animation-delay: 0.22s;
}
@keyframes privacy-fade-in {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (max-width: 767.98px) {
  .section-legal-intro {
    padding-top: var(--space-2xl);
  }
  .card-legal,
  .card-legal-note {
    max-width: 100%;
  }
}
@media (min-width: 992px) {
  .section-legal-intro {
    padding-top: var(--space-4xl);
  }
}
