/*
 * Sitewide spacing rhythm polish — 2026-08-08.
 *
 * This layer intentionally changes geometry only. It keeps the existing page
 * hierarchy, copy, SEO surfaces, audit semantics, and component styling intact
 * while removing stacked outer/section spacing that made several routes feel
 * disconnected. Keep route-specific exceptions scoped to the page family.
 */

/* BaseLayout owns the outer page breathing room. Page families should not
 * recreate another full page-height gutter inside it. This bottom padding is
 * also the full source of the gap between the last section (e.g. .home-closing)
 * and the footer — it is intentional sitewide rhythm, not a page-specific gap. */
main {
  padding-top: clamp(40px, 4vw, 56px);
  padding-bottom: clamp(72px, 7vw, 96px);
}

main > section + section {
  margin-top: clamp(56px, 5vw, 72px);
}

/* Homepage: the previous grid gap sat between sections that already carried
 * generous block padding, effectively counting the same whitespace twice. */
.home-product-page {
  gap: 0;
  padding-bottom: 0;
}

.home-product-page > .hero {
  padding-block: clamp(36px, 4vw, 56px);
}

.home-product-page > .report-proof,
.home-product-page > .capability-scope,
.home-product-page > .discovery-goals,
.home-product-page > .decision-section,
.home-product-page > .trust-proof,
.home-product-page > .home-closing {
  padding-block: clamp(36px, 4vw, 52px);
}

/* Give the opening message a deliberate inset without moving the shared page
 * container or the audit form. */
.home-product-page .hero__copy {
  padding-inline-start: clamp(16px, 1.6vw, 24px);
}

/* Editorial/static hubs already have their own visual grouping. Tighten only
 * the relationship between groups and the oversized hub header. */
.content-hub:not(.live-audit) {
  gap: clamp(28px, 3.5vw, 48px);
}

.content-hub:not(.live-audit) > .content-hub__header {
  padding: clamp(30px, 4.5vw, 56px);
}

/* Audit entry: preserve the two-column product layout while making the intro
 * and runner read as one task rather than two distant panels. */
.content-hub.live-audit {
  gap: clamp(32px, 4vw, 52px) clamp(40px, 5vw, 72px);
}

/* Focused acquisition tools inherit the BaseLayout outer gutter, so their hero
 * only needs local composition space. */
.focused-tool__hero {
  padding-top: clamp(24px, 3vw, 40px);
  padding-bottom: clamp(32px, 3.5vw, 48px);
}

.focused-tool__results {
  margin-top: var(--space-6);
  margin-bottom: var(--space-7);
}

/* Contact, feedback, and partnership pages previously stacked their own large
 * page gutter on top of BaseLayout's gutter. */
.contact-surface,
.partnership-page {
  padding-top: clamp(8px, 2vw, 24px);
  padding-bottom: clamp(24px, 3vw, 48px);
}

.partnership-hero {
  padding-bottom: var(--space-8);
}

.partnership-reassurance {
  margin-bottom: var(--space-8);
}

@media (max-width: 900px) {
  .home-product-page .hero__copy {
    padding-inline-start: 0;
  }

  .content-hub.live-audit {
    gap: var(--space-6);
  }
}

@media (max-width: 680px) {
  main {
    padding-top: var(--space-6);
    padding-bottom: var(--space-8);
  }

  main > section + section {
    margin-top: var(--space-7);
  }

  .home-product-page > .hero {
    padding-block: 28px 36px;
  }

  .home-product-page > .report-proof,
  .home-product-page > .capability-scope,
  .home-product-page > .discovery-goals,
  .home-product-page > .decision-section,
  .home-product-page > .trust-proof,
  .home-product-page > .home-closing {
    padding-block: var(--space-6);
  }

  .content-hub:not(.live-audit) {
    gap: var(--space-6);
  }

  .content-hub:not(.live-audit) > .content-hub__header {
    padding: 28px 22px;
  }

  .focused-tool__hero {
    padding-block: var(--space-5) var(--space-6);
  }

  .contact-surface,
  .partnership-page {
    padding-top: 0;
    padding-bottom: var(--space-6);
  }

  .partnership-hero {
    padding-bottom: var(--space-7);
  }

  .partnership-reassurance {
    margin-bottom: var(--space-7);
  }
}
