/**
 * Unified content column for the three main marketing homepages.
 * Full-bleed section backgrounds stay edge-to-edge; inner content aligns
 * with .container (launch) or .wp-wrap (USD funnels).
 *
 * Pricing sections (.pricing-premium, .wp-pro-pricing) keep their own card width.
 */

body.afh-premium,
body.wp-home {
  --funnel-site-max: 1160px;
  --funnel-site-gutter: 32px;
  --funnel-site-pad-inline: 0px;
}

body.wp-home {
  --funnel-site-max: 76rem;
  --funnel-site-gutter: 0px;
  --funnel-site-pad-inline: 1.25rem;
}

/* Shared shell for custom partial wraps (bonus, growth stack, founders, etc.) */
body.afh-premium .bb-premium__wrap,
body.afh-premium .fgrowth__wrap,
body.afh-premium .founders-offer__wrap,
body.wp-home .bb-premium__wrap,
body.wp-home .fgrowth__wrap,
body.wp-home .founders-offer__wrap {
  width: 100%;
  max-width: var(--funnel-site-max);
  margin-inline: auto;
  padding-inline: var(--funnel-site-pad-inline);
  box-sizing: border-box;
}

body.afh-premium .bb-premium__wrap,
body.afh-premium .fgrowth__wrap,
body.afh-premium .founders-offer__wrap {
  width: min(var(--funnel-site-max), calc(100% - var(--funnel-site-gutter)));
  padding-inline: 0;
}

/* Launch homepage: keep .container aligned with the same column */
body.afh-premium .container {
  width: min(var(--funnel-site-max), calc(100% - var(--funnel-site-gutter)));
}

/* USD homepage: wp-wrap is the canonical shell — match testimonials + FAQ padding */
body.wp-home .wp-testimonials-section__inner {
  width: 100%;
  max-width: var(--funnel-site-max);
  margin-inline: auto;
  padding-inline: var(--funnel-site-pad-inline);
  box-sizing: border-box;
}

/* FAQ + footer shells use .faq-accordion-premium-inner / .af-saas-footer__* rules below */

/* Nested grids must not exceed the site column */
body.afh-premium .af-usp-sell-grid-wrap,
body.wp-home .af-usp-sell-grid-wrap {
  max-width: 100%;
  width: 100%;
}

body.afh-premium .af-feature-parity__audiences {
  max-width: 100%;
}

body.afh-premium .container .oto-marketing-mockup,
body.afh-premium .afh-hero-mockup-wrap .oto-marketing-mockup {
  max-width: 100%;
}

/* Testimonials: header stays in site column (carousel may bleed within the band) */
body.afh-premium .al-lp-testimonials-sec > .container {
  width: min(var(--funnel-site-max), calc(100% - var(--funnel-site-gutter)));
  max-width: none;
  margin-inline: auto;
  overflow: hidden;
}

/* Post-testimonial sections — FAQ, footer CTA, footer grid */
body.afh-premium .funnel-fe-faq .faq-accordion-premium-inner,
body.wp-home .funnel-fe-faq .faq-accordion-premium-inner {
  width: min(var(--funnel-site-max), calc(100% - var(--funnel-site-gutter)));
  max-width: var(--funnel-site-max);
  margin-inline: auto;
  padding-inline: var(--funnel-site-pad-inline);
  box-sizing: border-box;
}

body.afh-premium .funnel-fe-faq .faq-accordion-premium-inner {
  width: min(var(--funnel-site-max), calc(100% - var(--funnel-site-gutter)));
  padding-inline: calc(var(--funnel-site-gutter) / 2);
}

body.afh-premium .af-saas-footer__cta-wrap,
body.afh-premium .af-saas-footer__main,
body.wp-home .af-saas-footer__cta-wrap,
body.wp-home .af-saas-footer__main {
  width: min(var(--funnel-site-max), calc(100% - var(--funnel-site-gutter)));
  max-width: var(--funnel-site-max);
  margin-inline: auto;
  padding-inline: var(--funnel-site-pad-inline);
  box-sizing: border-box;
}

body.afh-premium .af-saas-footer__cta-wrap,
body.afh-premium .af-saas-footer__main {
  padding-inline: calc(var(--funnel-site-gutter) / 2);
}

/* Mobile sticky bar — inner content aligns with site column */
body.afh-premium .mobile-sticky-cta {
  padding-inline: calc(var(--funnel-site-gutter) / 2);
  box-sizing: border-box;
}

body.afh-premium .mobile-sticky-cta-wrap {
  width: min(var(--funnel-site-max), 100%);
  max-width: var(--funnel-site-max);
  margin-inline: auto;
}

body.wp-home .wp-mobile-sticky-cta {
  padding-inline: var(--funnel-site-pad-inline);
  box-sizing: border-box;
}

body.wp-home .wp-mobile-sticky-cta__wrap {
  width: min(var(--funnel-site-max), 100%);
  max-width: var(--funnel-site-max);
  margin-inline: auto;
}

@media (max-width: 768px) {
  body.wp-home {
    --funnel-site-pad-inline: 1rem;
  }

  body.afh-premium {
    --funnel-site-gutter: 24px;
  }
}

@media (max-width: 480px) {
  body.wp-home {
    --funnel-site-pad-inline: 0.875rem;
  }

  body.afh-premium {
    --funnel-site-gutter: 20px;
  }
}
