main {
  scroll-margin-top: calc(var(--notice-bar-height) + var(--header-height-mobile));
}

@media (min-width: 768px) {
  main {
    scroll-margin-top: calc(var(--notice-bar-height) + var(--header-height-desktop));
  }
}

.section--hero.section--muted {
  position: relative;
}

.section--hero.section--muted::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at bottom, rgba(5, 6, 8, 0.9), transparent 55%);
  pointer-events: none;
}

.section--hero .section-header {
  position: relative;
  z-index: 1;
}

.section--hero .lead {
  text-wrap: pretty;
}

.kpi-row {
  margin-top: var(--space-lg);
}

.card.content-legal {
  position: relative;
  overflow: hidden;
}

.card.content-legal::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top left, rgba(245, 196, 107, 0.16), transparent 55%);
  opacity: 0.9;
  pointer-events: none;
}

.card.content-legal > * {
  position: relative;
  z-index: 1;
}

.content-legal h2 {
  scroll-margin-top: calc(var(--notice-bar-height) + var(--header-height-mobile) + 32px);
}

@media (min-width: 768px) {
  .content-legal h2 {
    scroll-margin-top: calc(var(--notice-bar-height) + var(--header-height-desktop) + 40px);
  }
}

.content-legal p {
  text-wrap: pretty;
}

.content-legal a {
  word-break: break-word;
}

.terms-cta {
  margin-top: var(--space-2xl);
  padding-top: var(--space-xl);
  border-top: 1px solid var(--color-border-subtle);
}

.terms-cta__inner {
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
  align-items: flex-start;
}

.terms-cta__text {
  font-size: var(--font-size-sm);
  color: var(--color-text-soft);
  max-width: 32rem;
}

.terms-cta .btn-group {
  flex-wrap: wrap;
}

.terms-cta .btn {
  max-width: 100%;
}

@media (max-width: 479.98px) {
  .terms-cta__inner {
    align-items: stretch;
  }
}

.notice-bar {
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.8);
}

.notice-bar__text {
  text-wrap: balance;
}

@media (max-width: 767.98px) {
  .page-main-inner {
    padding-top: calc(var(--notice-bar-height) + var(--header-height-mobile) + var(--space-lg));
  }
}

@media (min-width: 768px) {
  .page-main-inner {
    padding-top: calc(var(--notice-bar-height) + var(--header-height-desktop) + var(--space-xl));
  }
}
