/* =====================================================================
   "Become a Wholesale Partner" page — styles
   Native Divi modules (Heading / Text / Blurb / Button / Accordion) in the
   Momentus purple system, CONSISTENT with the homepage, About and Affiliate
   pages (same hero glow, eyebrows, cards, numbered steps, FAQ, buttons).
   Scoped under body.vp-dark; colours from vp.css tokens. The application
   form + FAQ styling live in portal.css / affiliate.css respectively.
   ===================================================================== */

body.vp-dark .ws-hero.et_pb_section { padding: 6rem 2rem 4.5rem; position: relative; overflow: hidden; background: var(--vp-black); }
body.vp-dark .ws-benefits.et_pb_section { padding: 5rem 2rem; background: var(--vp-dark); border-top: 1px solid var(--vp-line); }
body.vp-dark .ws-how.et_pb_section { padding: 5rem 2rem; background: var(--vp-dark-2); border-top: 1px solid var(--vp-line); }
body.vp-dark .ws-apply.et_pb_section { padding: 5rem 2rem; background: var(--vp-dark); border-top: 1px solid var(--vp-line); }
body.vp-dark .ws-faq.et_pb_section { padding: 5rem 2rem; background: var(--vp-dark-2); border-top: 1px solid var(--vp-line); }

body.vp-dark .ws-hero .et_pb_row,
body.vp-dark .ws-benefits .et_pb_row,
body.vp-dark .ws-how .et_pb_row,
body.vp-dark .ws-apply .et_pb_row,
body.vp-dark .ws-faq .et_pb_row { padding-top: 0; padding-bottom: 0; }

/* ── HERO ─────────────────────────────────────────────────────────── */
body.vp-dark .ws-hero.et_pb_section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 70% 60% at 50% 0%, rgba(var(--vp-primary-rgb), 0.12) 0%, transparent 70%);
  pointer-events: none;
}
body.vp-dark .ws-hero .et_pb_row { position: relative; z-index: 1; }
body.vp-dark .ws-hero-inner .et_pb_column { text-align: center; }

body.vp-dark .ws-eyebrow.et_pb_text,
body.vp-dark .ws-eyebrow.et_pb_text p {
  font-family: var(--vp-font-display);
  font-size: 0.72rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase;
  color: var(--vp-primary-light);
}
body.vp-dark .ws-hero h1 span {
  background: var(--vp-grad-text);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
body.vp-dark .ws-hero-sub.et_pb_text,
body.vp-dark .ws-hero-sub.et_pb_text p {
  font-family: var(--vp-font-sans); font-size: 1rem; color: var(--vp-body);
  line-height: 1.75; max-width: 580px; margin: 0 auto;
}
body.vp-dark .ws-hero-cta { margin-top: 2rem; }
body.vp-dark .ws-hero-cta .et_pb_button_module_wrapper { text-align: center; }

/* Hero stat pair — two inline blocks, centred (mirrors the affiliate hero). */
body.vp-dark .ws-stat.et_pb_blurb {
  display: inline-block; vertical-align: top; text-align: center;
  padding: 0 1.75rem; margin: 1.75rem 0 0.5rem;
}
body.vp-dark .ws-stat .et_pb_main_blurb_image { display: none; }
body.vp-dark .ws-stat .et_pb_blurb_content { max-width: 100%; padding: 0; }
body.vp-dark .ws-stat .et_pb_module_header {
  font-family: var(--vp-font-display); font-size: 2rem; font-weight: 800;
  color: var(--vp-primary-light); letter-spacing: -0.02em; line-height: 1; margin-bottom: 0.3rem;
}
body.vp-dark .ws-stat .et_pb_blurb_description,
body.vp-dark .ws-stat .et_pb_blurb_description p {
  font-family: var(--vp-font-display); font-size: 0.66rem; font-weight: 700;
  letter-spacing: 0.08em; text-transform: uppercase; color: var(--vp-gray-500);
}

/* ── Section headers (benefits / how / apply / faq) ───────────────── */
body.vp-dark .ws-head { margin-bottom: 2.5rem; text-align: center; }
body.vp-dark .ws-head .ws-eyebrow.et_pb_text p { text-align: center; }
body.vp-dark .ws-sub.et_pb_text,
body.vp-dark .ws-sub.et_pb_text p {
  font-family: var(--vp-font-sans); color: var(--vp-body); line-height: 1.7; text-align: center;
  max-width: 560px; margin: 0 auto;
}

/* ── Benefit / step cards (shared blurb card look) ────────────────── */
body.vp-dark .ws-card.et_pb_blurb {
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid var(--vp-line);
  border-radius: var(--vp-radius-lg);
  padding: 2rem 1.5rem;
  height: 100%;
  text-align: center;
  transition: border-color var(--vp-transition), transform var(--vp-transition);
}
body.vp-dark .ws-card.et_pb_blurb:hover { border-color: rgba(var(--vp-primary-rgb), 0.32); transform: translateY(-2px); }
body.vp-dark .ws-card .et_pb_main_blurb_image { display: block; text-align: center; margin: 0 auto 1.1rem; line-height: 0; }
body.vp-dark .ws-card .et_pb_main_blurb_image .et_pb_image_wrap,
body.vp-dark .ws-card .et_pb_main_blurb_image img { width: 40px; height: 40px; display: inline-block; }
body.vp-dark .ws-card .et_pb_blurb_content { max-width: 100%; padding: 0; }
body.vp-dark .ws-card .et_pb_module_header {
  font-family: var(--vp-font-display); font-size: 1rem; font-weight: 700; color: var(--vp-white);
  margin-bottom: 0.6rem; letter-spacing: -0.01em;
}
body.vp-dark .ws-card .et_pb_blurb_description,
body.vp-dark .ws-card .et_pb_blurb_description p { font-size: 0.84rem; color: var(--vp-body); line-height: 1.7; }
body.vp-dark .ws-grid .et_pb_column { display: flex; }
body.vp-dark .ws-grid .et_pb_column > .et_pb_blurb { width: 100%; }

/* ── Apply section header ─────────────────────────────────────────── */
body.vp-dark .ws-apply-head { text-align: center; margin-bottom: 2.5rem; }

/* ── FAQ ──────────────────────────────────────────────────────────── */
body.vp-dark .ws-faq-header { text-align: center; margin-bottom: 2rem; }

/* ── Responsive ───────────────────────────────────────────────────── */
@media (max-width: 767px) {
  body.vp-dark .ws-hero.et_pb_section { padding: 5rem 1.25rem 3.5rem; }
  body.vp-dark .ws-benefits.et_pb_section,
  body.vp-dark .ws-how.et_pb_section,
  body.vp-dark .ws-apply.et_pb_section,
  body.vp-dark .ws-faq.et_pb_section { padding: 3.5rem 1.25rem; }
}
