/**
 * Unified landing section rhythm + shared surfaces (transparent sections, consistent cards).
 */

html:has(body.page-landing) {
  --landing-section-py: clamp(2.75rem, 5.5vw, 4.5rem);
  --landing-surface: rgba(255, 255, 255, 0.03);
  --landing-surface-elevated: linear-gradient(165deg, rgba(28, 28, 34, 0.72) 0%, rgba(14, 14, 18, 0.85) 100%);
  --landing-surface-border: var(--landing-border);
}
html[data-mantine-color-scheme="light"]:has(body.page-landing) {
  --landing-surface: rgba(255, 255, 255, 0.85);
  --landing-surface-elevated: linear-gradient(165deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.98) 100%);
}

.landing-page > section,
.landing-page__flow > section,
.landing-page > div.landing-engage {
  background: transparent !important;
}

.landing-page > section.landing-paths--bento,
.landing-page__flow > section.landing-paths--bento {
  padding-top: clamp(2rem, 4vw, 3rem);
}

.landing-page > section.landing-paths--bento::before,
.landing-page__flow > section.landing-paths--bento::before {
  display: none;
}

.landing-page > section:not(.landing-hero),
.landing-page__flow > section:not(.landing-hero) {
  position: relative;
  padding-top: var(--landing-section-py) !important;
  padding-bottom: var(--landing-section-py) !important;
}

.landing-page > section:not(.landing-hero):not(:first-of-type)::before,
.landing-page__flow > section:not(.landing-hero):not(:first-of-type)::before {
  content: '';
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: min(72rem, calc(100% - 2rem));
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--landing-border-soft) 20%, var(--landing-border-soft) 80%, transparent);
  pointer-events: none;
}

.landing-stats__grid,
.landing-paths-bento__cell,
.landing-paths-bento__stat,
.landing-bento__cell,
.landing-showcase__card,
.landing-paths__card,
.landing-trust__item,
.landing-compare__table-wrap,
.landing-features__card,
.landing-market__card,
.landing-explore__card,
.landing-how__step,
.landing-testimonials__card,
.landing-globe__map-wrap,
.landing-free-spotlight__inner,
.landing-faq__card,
.landing-docs__card,
.landing-demo__card,
.landing-cta__card,
.landing-contact__card {
  background: var(--landing-surface-elevated) !important;
  border-color: var(--landing-surface-border) !important;
}

[data-mantine-color-scheme="light"] .landing-stats__grid,
[data-mantine-color-scheme="light"] .landing-paths-bento__cell,
[data-mantine-color-scheme="light"] .landing-paths-bento__stat,
[data-mantine-color-scheme="light"] .landing-bento__cell,
[data-mantine-color-scheme="light"] .landing-showcase__card,
[data-mantine-color-scheme="light"] .landing-paths__card,
[data-mantine-color-scheme="light"] .landing-trust__item,
[data-mantine-color-scheme="light"] .landing-compare__table-wrap,
[data-mantine-color-scheme="light"] .landing-features__card,
[data-mantine-color-scheme="light"] .landing-market__card,
[data-mantine-color-scheme="light"] .landing-explore__card,
[data-mantine-color-scheme="light"] .landing-how__step,
[data-mantine-color-scheme="light"] .landing-testimonials__card,
[data-mantine-color-scheme="light"] .landing-globe__map-wrap,
[data-mantine-color-scheme="light"] .landing-free-spotlight__inner,
[data-mantine-color-scheme="light"] .landing-faq__card,
[data-mantine-color-scheme="light"] .landing-docs__card,
[data-mantine-color-scheme="light"] .landing-demo__card,
[data-mantine-color-scheme="light"] .landing-cta__card,
[data-mantine-color-scheme="light"] .landing-contact__card {
  box-shadow: 0 4px 24px -8px rgba(15, 23, 42, 0.08);
}

.landing-bento__shader,
.landing-globe__shader--lines,
.landing-ecosystem__veil,
.landing-free-spotlight__shader,
.landing-cta-band__shader {
  display: none;
}

/* Per-section padding resets - vertical rhythm comes from .landing-page__flow > section */
.landing-stats,
.landing-bento,
.landing-funnel-bento,
.landing-showcase,
.landing-paths,
.landing-trust,
.landing-compare,
.landing-globe,
.landing-cta-band,
.landing-free-spotlight,
.landing-ecosystem,
.landing-testimonials,
.landing-how,
.landing-features,
.landing-market,
.landing-pricing,
.landing-faq,
.landing-discord,
.landing-engage,
.landing-partners {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.landing-hero--parallax,
.landing-hero {
  padding-bottom: clamp(2rem, 4vh, 3rem);
  background: transparent !important;
}

.landing-hero--parallax.landing-hero--max,
.landing-hero--parallax.landing-hero--ultra,
.landing-hero--showcase {
  overflow: visible !important;
}

.landing-hero--parallax .landing-hero__ambient {
  overflow: visible;
}

/* Hero effects - Aceternity grid (page uses same tokens in landing.css) */
.landing-hero--parallax .landing-hero__dots {
  display: none !important;
}

.landing-hero--parallax::after {
  background: linear-gradient(to top, var(--landing-fade-hero) 0%, transparent 100%) !important;
}

.landing-hero--showcase.landing-hero--parallax::after {
  display: none !important;
}

.landing-hero--parallax:not(.landing-hero--showcase) .landing-hero__spotlight {
  background: radial-gradient(ellipse 72% 48% at 58% 38%, var(--landing-mesh-1) 0%, transparent 58%);
}

.landing-engage {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.landing-testimonials__marquee {
  background: var(--landing-surface) !important;
  border-color: var(--landing-border-soft) !important;
}

/* ----- Unified section rhythm (overrides scattered per-section padding) ----- */
html:has(body.page-landing) {
  --landing-header-mb: clamp(1.1rem, 2.2vw, 1.65rem);
  --landing-block-gap: clamp(1.15rem, 2.5vw, 1.85rem);
  --landing-container-max: 72rem;
}

.landing-page__flow > section.landing-paths--bento {
  padding-top: clamp(2rem, 4vw, 3rem);
  padding-bottom: var(--landing-section-py);
}

/* CTAs at section bottoms - keep glow from overlapping the next block */
.landing-how__footer,
.landing-globe__copy .landing-hero__btn--primary {
  margin-top: 0.25rem;
}

.landing-how__footer {
  margin-bottom: 0.15rem;
  padding-bottom: 0.35rem;
}

.landing-globe__copy .landing-hero__btn--primary {
  margin-bottom: 0.35rem;
}

.landing-capabilities {
  gap: var(--landing-block-gap);
}

.landing-how__steps,
.landing-market__grid,
.landing-explore__grid,
.landing-showcase__grid,
.landing-bento__grid,
.landing-funnel-bento__grid,
.landing-engage__grid {
  gap: var(--landing-block-gap);
}

.landing-how__footer,
.landing-market__actions,
.landing-pricing__footer {
  margin-top: var(--landing-block-gap);
}

.landing-engage__grid {
  margin-top: 0;
}

.landing-page .authguards_container {
  max-width: var(--landing-container-max);
}
