/* ═══════════════════════════════════════════════════════════════════
   BeeZ landing page — WHITE variant ("Editorial Almanac")
   ───────────────────────────────────────────────────────────────────
   Loaded for the .white-home page at /home-white. Overrides the
   shared .beez-* visual primitives defined in public-homepage-beez.css
   under a high-specificity `.white-home` parent, plus introduces a
   `wh-*` accent class system for white-specific decoration.

   Design direction: paper-cream surface, deep ink type, electric
   cobalt primary, magenta CTA punch, hairline paper rules, restrained
   shadow. No glassmorphism, no dark glows. Editorial composure.
   ═══════════════════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Fraunces:opsz,wght@9..144,300;9..144,500;9..144,700;9..144,900&family=Bricolage+Grotesque:opsz,wght@12..96,300;12..96,500;12..96,700;12..96,800&family=Manrope:wght@400;500;600;700&family=JetBrains+Mono:wght@500;600;700&display=swap');

.white-home {
  /* Palette tokens — editorial paper-cream */
  --wh-paper:        #FAF8F2;      /* warm off-white page surface */
  --wh-paper-warm:   #F3EFE4;      /* deeper cream pull */
  --wh-paper-cool:   #F0EFEA;      /* cool drift */
  --wh-card:         #FFFFFF;      /* pure paper card */
  --wh-card-soft:    #FCFAF4;      /* soft tinted card */

  --wh-ink:          #0B0F1A;      /* deepest ink */
  --wh-ink-1:        #18203B;      /* secondary ink */
  --wh-ink-soft:     #3A4055;      /* muted text */
  --wh-ink-mute:     #6B7286;      /* meta text */
  --wh-ink-faint:    #95A0B5;      /* hairline text */

  --wh-rule:         #E7E1D2;      /* paper hairline */
  --wh-rule-soft:    #EFEADA;      /* softer hairline */
  --wh-rule-strong:  #CFC8B4;      /* underline / divider */

  --wh-cobalt:       #1E2BFF;      /* electric primary */
  --wh-cobalt-deep:  #0E18C2;      /* hover */
  --wh-cobalt-tint:  rgba(30, 43, 255, 0.08);

  --wh-magenta:      #D6017A;      /* magenta accent */
  --wh-magenta-deep: #A0005A;
  --wh-magenta-tint: rgba(214, 1, 122, 0.08);

  --wh-violet:       #4F1FE3;
  --wh-violet-tint:  rgba(79, 31, 227, 0.10);

  --wh-green:        #0C7A47;
  --wh-green-tint:   rgba(12, 122, 71, 0.10);

  --wh-amber:        #B7691A;
  --wh-amber-tint:   rgba(183, 105, 26, 0.12);

  --wh-red:          #C7333E;
  --wh-red-tint:     rgba(199, 51, 62, 0.10);

  /* Typography */
  --wh-display: 'Fraunces', 'Bricolage Grotesque', 'Times New Roman', serif;
  --wh-headline: 'Bricolage Grotesque', 'Inter Tight', system-ui, sans-serif;
  --wh-body: 'Manrope', system-ui, sans-serif;
  --wh-mono: 'JetBrains Mono', ui-monospace, monospace;

  /* Shadows — refined, almost imperceptible */
  --wh-shadow-xs: 0 1px 2px rgba(15, 18, 32, 0.04);
  --wh-shadow-sm: 0 4px 14px -8px rgba(15, 18, 32, 0.10), 0 1px 2px rgba(15, 18, 32, 0.04);
  --wh-shadow-md: 0 16px 38px -22px rgba(15, 18, 32, 0.18), 0 4px 10px -6px rgba(15, 18, 32, 0.06);
  --wh-shadow-lg: 0 36px 70px -34px rgba(15, 18, 32, 0.22), 0 12px 28px -16px rgba(15, 18, 32, 0.08);

  /* Surface */
  background: var(--wh-paper);
  color: var(--wh-ink);
  font-family: var(--wh-body);
  position: relative;
  min-height: 100vh;
  isolation: isolate;
}

/* The site's spinning conic gradient is added by .blur-background in the
   dark page. The white page never renders it — defensively hide it. */
.white-home .blur-background { display: none !important; }

/* Bootstrap's html background is dark for the rest of the site; force
   the document surface to paper while this page is mounted. */
html[data-theme="light"] body:has(.white-home),
html body:has(.white-home) {
  background: var(--wh-paper) !important;
}

/* ───────────────────────────────────────────────────────────────────
   PAPER BACKDROP — warm linen texture + two slow-drifting washes
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-backdrop {
  position: fixed;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}

.white-home .wh-backdrop-noise {
  position: absolute;
  inset: 0;
  opacity: 0.45;
  mix-blend-mode: multiply;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='320' height='320'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.92' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.05  0 0 0 0 0.06  0 0 0 0 0.10  0 0 0 0.6 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.32'/></svg>");
}

.white-home .wh-backdrop-wash {
  position: absolute;
  border-radius: 50%;
  filter: blur(120px);
  opacity: 0.55;
  pointer-events: none;
}

.white-home .wh-backdrop-wash--a {
  width: 720px; height: 720px;
  top: -180px; right: -140px;
  background: radial-gradient(circle, rgba(214, 1, 122, 0.18) 0%, transparent 60%);
  animation: wh-drift-a 38s ease-in-out infinite alternate;
}

.white-home .wh-backdrop-wash--b {
  width: 880px; height: 880px;
  bottom: -260px; left: -200px;
  background: radial-gradient(circle, rgba(30, 43, 255, 0.13) 0%, transparent 65%);
  animation: wh-drift-b 46s ease-in-out infinite alternate;
}

@keyframes wh-drift-a {
  0%   { transform: translate3d(0, 0, 0) scale(1); }
  100% { transform: translate3d(-80px, 50px, 0) scale(1.10); }
}
@keyframes wh-drift-b {
  0%   { transform: translate3d(0, 0, 0) scale(1); }
  100% { transform: translate3d(70px, -60px, 0) scale(1.08); }
}

/* Everything above the backdrop sits on z-index 1+ */
.white-home > *:not(.wh-backdrop) { position: relative; z-index: 1; }

/* ───────────────────────────────────────────────────────────────────
   HEADER — paper bar, hairline border, ink links
   ─────────────────────────────────────────────────────────────────── */

.white-home .public-header,
.white-home .wh-header {
  background: rgba(250, 248, 242, 0.84) !important;
  -webkit-backdrop-filter: saturate(140%) blur(14px);
  backdrop-filter: saturate(140%) blur(14px);
  border-bottom: 1px solid transparent !important;
  transition: border-color 200ms ease, background 200ms ease;
}

.white-home .public-header.scrolled,
.white-home .wh-header.scrolled {
  background: rgba(250, 248, 242, 0.96) !important;
  border-bottom: 1px solid var(--wh-rule) !important;
}

.white-home .wh-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.white-home .wh-header-logo img { filter: none; }

.white-home .wh-header-nav {
  display: flex;
  align-items: center;
  gap: 4px;
}

.white-home .wh-header-nav a {
  padding: 8px 14px;
  border-radius: 999px;
  color: var(--wh-ink-soft);
  text-decoration: none;
  font-family: var(--wh-body);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -0.005em;
  transition: background 180ms ease, color 180ms ease;
  white-space: nowrap;
}

.white-home .wh-header-nav a:hover {
  background: var(--wh-paper-warm);
  color: var(--wh-ink);
}

@media (max-width: 820px) {
  .white-home .wh-header-nav { display: none; }
}

.white-home .wh-header-cta {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.white-home .wh-header-signin {
  padding: 9px 16px;
  border-radius: 999px;
  border: 1px solid var(--wh-rule);
  background: var(--wh-card);
  color: var(--wh-ink);
  font-family: var(--wh-body);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: -0.005em;
  text-decoration: none;
  transition: border-color 200ms ease, color 200ms ease, transform 200ms ease;
}

.white-home .wh-header-signin:hover {
  border-color: var(--wh-ink);
  transform: translateY(-1px);
}

.white-home .wh-header-start {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 17px 10px 18px;
  border-radius: 999px;
  background: var(--wh-ink);
  color: var(--wh-paper);
  text-decoration: none;
  font-family: var(--wh-body);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: -0.005em;
  border: 1px solid var(--wh-ink);
  box-shadow: 0 8px 22px -10px rgba(15, 18, 32, 0.35);
  transition: transform 200ms ease, box-shadow 200ms ease, background 200ms ease;
}

.white-home .wh-header-start:hover {
  transform: translateY(-1px);
  background: var(--wh-cobalt);
  border-color: var(--wh-cobalt);
  box-shadow: 0 14px 30px -10px rgba(30, 43, 255, 0.55);
}

.white-home .wh-header-start svg { transition: transform 200ms ease; }
.white-home .wh-header-start:hover svg { transform: translateX(2px); }

/* ───────────────────────────────────────────────────────────────────
   HERO — replace dark + cyan with paper + cobalt
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-hero {
  padding: 150px 0 60px;
  background: transparent;
  color: var(--wh-ink);
  overflow: visible;
  isolation: isolate;
}

@media (max-width: 980px) {
  .white-home .wh-hero { padding: 130px 0 40px; }
}

/* Hide all the dark hero atmospherics defensively. */
.white-home .beez-hero-atmos,
.white-home .beez-hero-glow,
.white-home .beez-hero-grain,
.white-home .beez-hero-grid,
.white-home .beez-hero-spotlight,
.white-home .beez-hero-figure { display: none !important; }

/* Eyebrow tag above the headline */
.white-home .wh-hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 16px 8px 13px;
  margin: 0 0 26px;
  border-radius: 999px;
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  font-family: var(--wh-mono);
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--wh-ink-soft);
  box-shadow: var(--wh-shadow-xs);
  animation: wh-fade-up 0.8s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.white-home .wh-hero-eyebrow-mark {
  display: inline-block;
  color: var(--wh-magenta);
  font-size: 12px;
  transform: translateY(-1px);
}

/* Headline */
.white-home .wh-hero-title {
  font-family: var(--wh-headline);
  color: var(--wh-ink) !important;
  font-weight: 800;
  font-variation-settings: 'opsz' 96;
  letter-spacing: -0.038em;
}

/* The cyan IMPROVE word becomes a deep cobalt with a paper-amber underline.
   Override the dark gradient on .beez-hero-word--succeed. */
.white-home .wh-hero-word--succeed,
.white-home .beez-hero-word--succeed {
  background: linear-gradient(180deg, #2233ff 0%, var(--wh-cobalt) 55%, #0C18B8 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: none;
  position: relative;
}

/* Underline accent for IMPROVE — switch from cyan glow to magenta ink */
.white-home .wh-hero-underline,
.white-home .beez-hero-underline {
  background: linear-gradient(90deg,
    transparent 0%,
    var(--wh-magenta) 18%,
    var(--wh-magenta) 82%,
    transparent 100%);
  filter: none;
  height: 5px;
  bottom: -0.05em;
}

/* Subtitle + lede */
.white-home .wh-hero-subtitle {
  font-family: var(--wh-body);
  color: var(--wh-ink-soft);
  border-bottom: 1px solid var(--wh-rule);
}

.white-home .wh-hero-lede {
  color: var(--wh-ink-mute);
}

.white-home .wh-hero-lede em {
  color: var(--wh-ink);
  font-style: normal;
  font-weight: 700;
  background: linear-gradient(180deg, transparent 60%, rgba(214, 1, 122, 0.16) 60%);
  padding: 0 2px;
}

/* ───────────────────────────────────────────────────────────────────
   JOURNEY STRIP — paper tiles
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-journey {
  border-top: 1px solid var(--wh-rule);
}

.white-home .beez-journey-icon {
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  color: var(--step-accent, var(--wh-cobalt));
  box-shadow: var(--wh-shadow-xs);
}

.white-home .beez-journey-step:hover .beez-journey-icon {
  border-color: color-mix(in srgb, var(--step-accent) 50%, var(--wh-rule));
  box-shadow:
    0 0 0 3px color-mix(in srgb, var(--step-accent) 12%, transparent),
    var(--wh-shadow-sm);
}

.white-home .beez-journey-label {
  font-family: var(--wh-headline);
  color: var(--wh-ink);
}

.white-home .beez-journey-sub {
  color: var(--wh-ink-mute);
}

/* ───────────────────────────────────────────────────────────────────
   HERO CTAs — magenta primary, paper secondary
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-hero-cta .beez-cta-primary {
  background: var(--wh-ink);
  color: var(--wh-paper);
  border: 1px solid var(--wh-ink);
  box-shadow: 0 14px 36px -16px rgba(15, 18, 32, 0.40);
}

.white-home .wh-hero-cta .beez-cta-primary:hover {
  background: var(--wh-cobalt);
  border-color: var(--wh-cobalt);
  box-shadow: 0 22px 44px -16px rgba(30, 43, 255, 0.55);
  filter: none;
  transform: translateY(-1px);
}

.white-home .wh-hero-cta .beez-cta-secondary {
  background: var(--wh-card);
  color: var(--wh-ink);
  border: 1px solid var(--wh-rule);
  box-shadow: var(--wh-shadow-xs);
}

.white-home .wh-hero-cta .beez-cta-secondary:hover {
  background: var(--wh-card);
  border-color: var(--wh-ink);
}

/* Trustline */
.white-home .wh-trustline { color: var(--wh-ink-mute); }
.white-home .wh-trustline li { color: var(--wh-ink-soft); }

/* ───────────────────────────────────────────────────────────────────
   PATHS CARD — paper version of the dark glass aside
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-hero-stage { min-height: clamp(540px, 60vw, 660px); }

@media (max-width: 1100px) {
  .white-home .wh-hero-stage { align-self: auto; min-height: 0; height: auto; margin-top: 16px; }
}

.white-home .wh-paths-card {
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  border-radius: 24px;
  padding: clamp(20px, 2.4vw, 28px) clamp(20px, 2.4vw, 28px) clamp(16px, 1.8vw, 22px);
  box-shadow: var(--wh-shadow-lg);
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.white-home .wh-paths-card::before {
  /* Decorative ring — soft gradient stroke replacing dark gradient ring */
  background: linear-gradient(135deg,
    rgba(30, 43, 255, 0.30) 0%,
    transparent 45%,
    rgba(214, 1, 122, 0.22) 100%);
  opacity: 0.50;
}

.white-home .wh-paths-head {
  border-bottom: 1px solid var(--wh-rule);
}

.white-home .beez-paths-eyebrow-dot {
  background: var(--wh-cobalt);
  box-shadow: 0 0 0 4px rgba(30, 43, 255, 0.12);
}

@keyframes wh-paths-pulse {
  0%, 100% { box-shadow: 0 0 0 4px rgba(30, 43, 255, 0.12); }
  50%      { box-shadow: 0 0 0 6px rgba(30, 43, 255, 0.20); }
}
.white-home .beez-paths-eyebrow-dot {
  animation: wh-paths-pulse 2.4s cubic-bezier(0.4, 0, 0.6, 1) infinite;
}

.white-home .beez-paths-tag {
  color: var(--wh-ink);
  font-family: var(--wh-mono);
}

.white-home .beez-paths-tag-sep { color: var(--wh-magenta); }

.white-home .beez-paths-count {
  background: var(--wh-paper-warm);
  border: 1px solid var(--wh-rule-strong);
  color: var(--wh-ink-soft);
}

.white-home .beez-paths-count strong { color: var(--wh-ink); }

.white-home .beez-paths-list {
  scrollbar-color: var(--wh-rule-strong) transparent;
}
.white-home .beez-paths-list::-webkit-scrollbar-thumb {
  background: var(--wh-rule-strong);
}
.white-home .beez-paths-list::-webkit-scrollbar-thumb:hover {
  background: var(--wh-ink-mute);
}

.white-home .beez-paths-section + .beez-paths-section {
  border-top: 1px solid var(--wh-rule-soft);
}

.white-home .beez-paths-section-label {
  color: var(--wh-ink-mute);
  font-family: var(--wh-mono);
}

.white-home .beez-paths-section-rule {
  background: linear-gradient(90deg, var(--wh-rule), transparent);
}

/* Path row — paper card with a vivid left edge accent on hover */
.white-home .beez-paths-row {
  background: var(--wh-paper);
  border: 1px solid var(--wh-rule);
  box-shadow: none;
  transition: background 200ms ease, border-color 220ms ease, box-shadow 220ms ease, transform 200ms ease;
}

.white-home .beez-paths-row::before {
  background: var(--row-accent, var(--wh-cobalt));
  border-radius: 2px;
  opacity: 0;
}

.white-home .beez-paths-row:hover {
  background: var(--wh-card);
  border-color: var(--wh-ink);
  box-shadow: var(--wh-shadow-sm);
  transform: translateY(-1px);
}

.white-home .beez-paths-row:hover::before { height: 60%; opacity: 1; }

.white-home .beez-paths-row-num {
  color: var(--wh-ink-faint);
}

.white-home .beez-paths-row:hover .beez-paths-row-num {
  color: var(--row-accent, var(--wh-cobalt));
}

.white-home .beez-paths-row-title {
  color: var(--wh-ink);
  font-family: var(--wh-headline);
}

.white-home .beez-paths-row-sub {
  color: var(--wh-ink-mute);
}

/* Try-now pill — outline default, ink fill on hover */
.white-home .beez-paths-row-cta {
  border: 1px solid var(--wh-rule-strong);
  background: var(--wh-card);
  color: var(--wh-ink);
  font-family: var(--wh-body);
  font-weight: 600;
  box-shadow: var(--wh-shadow-xs);
}

.white-home .beez-paths-row-cta:hover,
.white-home .beez-paths-row:hover .beez-paths-row-cta {
  background: var(--wh-ink);
  border-color: var(--wh-ink);
  color: var(--wh-paper);
  box-shadow: 0 8px 18px -10px rgba(15, 18, 32, 0.40);
}

.white-home .beez-paths-row-cta:focus-visible {
  outline: 2px solid var(--wh-cobalt);
  outline-offset: 3px;
}

/* ───────────────────────────────────────────────────────────────────
   IQ PITCH — editorial centered headline
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-iq-pitch {
  padding: 110px 0 110px;
  background: transparent;
  color: var(--wh-ink);
  overflow: visible;
  border-top: 1px solid var(--wh-rule);
  border-bottom: 1px solid var(--wh-rule);
  position: relative;
}

.white-home .wh-iq-pitch::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(70% 60% at 50% -10%, rgba(30, 43, 255, 0.07), transparent 60%),
    radial-gradient(60% 50% at 50% 110%, rgba(214, 1, 122, 0.06), transparent 65%);
  pointer-events: none;
  z-index: -1;
}

@media (max-width: 980px) {
  .white-home .wh-iq-pitch { padding: 72px 0; }
}

.white-home .wh-iq-pitch-eyebrow {
  display: inline-block;
  font-family: var(--wh-mono);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--wh-magenta);
  padding: 5px 12px;
  border: 1px solid var(--wh-magenta);
  border-radius: 999px;
  margin-bottom: 24px;
}

.white-home .wh-iq-pitch-title {
  font-family: var(--wh-display) !important;
  color: var(--wh-ink) !important;
  font-weight: 500;
  font-variation-settings: 'opsz' 144, 'SOFT' 60, 'WONK' 1;
  letter-spacing: -0.03em;
  line-height: 1.02;
}

.white-home .wh-iq-pitch-accent--ink {
  background: none !important;
  -webkit-text-fill-color: var(--wh-ink) !important;
  color: var(--wh-ink) !important;
  font-style: italic;
  font-weight: 500;
  font-variation-settings: 'opsz' 144, 'WONK' 1;
}

.white-home .wh-iq-pitch-accent--violet {
  background-image: linear-gradient(135deg, var(--wh-violet) 0%, var(--wh-magenta) 100%) !important;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  font-style: italic;
  font-weight: 700;
  font-variation-settings: 'opsz' 144, 'WONK' 1;
}

.white-home .wh-iq-pitch-sub {
  color: var(--wh-ink-mute);
}

/* IQ feature cards — paper with hairline border, magenta corner mark */
.white-home .wh-iq-feature {
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  border-radius: 18px;
  box-shadow: var(--wh-shadow-sm);
  padding: 32px 28px 30px;
}

.white-home .wh-iq-feature::before {
  background: linear-gradient(135deg,
    rgba(30, 43, 255, 0.18) 0%,
    transparent 50%,
    rgba(214, 1, 122, 0.10) 100%);
  opacity: 0.55;
}

.white-home .wh-iq-feature:hover {
  border-color: var(--wh-ink);
  box-shadow: var(--wh-shadow-md);
  transform: translateY(-3px);
}

.white-home .beez-iq-feature-icon {
  background: var(--wh-cobalt-tint);
  border: 1px solid rgba(30, 43, 255, 0.30);
  color: var(--wh-cobalt);
  box-shadow: none;
}

.white-home .beez-iq-feature-title {
  font-family: var(--wh-headline);
  color: var(--wh-ink);
}

.white-home .beez-iq-feature-desc {
  color: var(--wh-ink-soft);
}

/* IQ pitch CTA */
.white-home .wh-iq-pitch-cta {
  background: var(--wh-ink);
  color: var(--wh-paper);
  border: 1px solid var(--wh-ink);
  font-family: var(--wh-body);
  font-weight: 700;
  box-shadow: 0 22px 50px -20px rgba(15, 18, 32, 0.40);
}

.white-home .wh-iq-pitch-cta::before {
  background: none;
}

.white-home .wh-iq-pitch-cta:hover {
  background: var(--wh-cobalt);
  border-color: var(--wh-cobalt);
  box-shadow: 0 28px 60px -16px rgba(30, 43, 255, 0.60);
  filter: none;
}

.white-home .wh-iq-pitch-cta:focus-visible {
  outline: 2px solid var(--wh-magenta);
  outline-offset: 4px;
}

/* ───────────────────────────────────────────────────────────────────
   3 PILLARS — paper cards, ink type, vivid accent header
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-pillars {
  padding: 80px 0 24px;
  background: transparent;
  color: var(--wh-ink);
  overflow: visible;
}

.white-home .beez-pillars-atmos { display: none; }

.white-home .wh-pillar {
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  border-radius: 22px;
  color: var(--wh-ink);
  box-shadow: var(--wh-shadow-sm);
  padding: 32px 26px 22px;
}

.white-home .wh-pillar::before {
  background: linear-gradient(150deg,
    color-mix(in srgb, var(--pillar-accent) 40%, transparent) 0%,
    transparent 45%,
    color-mix(in srgb, var(--pillar-accent) 14%, transparent) 100%);
  opacity: 0.70;
}

.white-home .wh-pillar:hover {
  transform: translateY(-4px);
  border-color: color-mix(in srgb, var(--pillar-accent) 55%, var(--wh-rule));
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--pillar-accent) 30%, transparent),
    var(--wh-shadow-lg);
}

.white-home .beez-pillar2-title {
  font-family: var(--wh-headline);
  color: var(--pillar-accent);
  letter-spacing: 0.10em;
}

.white-home .beez-pillar2-sub {
  color: var(--wh-ink-soft);
}

.white-home .beez-pillar2-icon {
  color: var(--pillar-accent);
  filter: drop-shadow(0 6px 18px color-mix(in srgb, var(--pillar-accent) 30%, transparent));
}

.white-home .beez-chip {
  color: var(--wh-ink-soft);
  background: var(--wh-paper);
  border: 1px solid var(--wh-rule);
  font-family: var(--wh-body);
}

.white-home .beez-chip-dot {
  background: var(--pillar-accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--pillar-accent) 16%, transparent);
}

.white-home .beez-chip--muted {
  background: var(--wh-paper-warm);
  border-style: dashed;
  color: var(--wh-ink-mute);
}

.white-home .beez-chip--muted .beez-chip-dot {
  background: var(--wh-rule-strong);
  box-shadow: none;
}

/* ───────────────────────────────────────────────────────────────────
   ADVANCED TOOLS
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-advanced {
  padding: 24px 0 88px;
  background: transparent;
  color: var(--wh-ink);
  overflow: visible;
}

.white-home .wh-advanced-head {
  background: var(--wh-paper-warm);
  border: 1px solid var(--wh-rule);
  border-radius: 18px;
  box-shadow: var(--wh-shadow-xs);
}

.white-home .beez-advanced-head--banner .beez-advanced-title {
  font-family: var(--wh-display);
  color: var(--wh-ink);
  letter-spacing: -0.02em;
  font-weight: 500;
  font-style: italic;
  font-size: 26px;
  text-transform: none;
}

.white-home .beez-advanced-head--banner .beez-advanced-sub {
  color: var(--wh-ink-mute);
}

.white-home .wh-tool {
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  border-radius: 16px;
  box-shadow: var(--wh-shadow-xs);
  padding: 20px 18px 22px;
  transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
}

.white-home .wh-tool:hover {
  transform: translateY(-3px);
  border-color: var(--tool-accent);
  background: var(--wh-card);
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--tool-accent) 25%, transparent),
    var(--wh-shadow-md);
}

.white-home .beez-tool2-tag {
  background: color-mix(in srgb, var(--tool-accent) 10%, var(--wh-paper));
  border: 1px solid color-mix(in srgb, var(--tool-accent) 28%, transparent);
  color: var(--tool-accent);
  font-family: var(--wh-mono);
}

.white-home .beez-tool2-title {
  font-family: var(--wh-headline);
  color: var(--wh-ink);
}

.white-home .beez-tool2-desc {
  color: var(--wh-ink-soft);
}

.white-home .beez-advanced-footnote {
  color: var(--wh-ink-mute);
}

/* ───────────────────────────────────────────────────────────────────
   GENERAL SECTIONS — fix `public-section` global rules from
   public-homepage.css that would render dark
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-section {
  position: relative;
  background: transparent;
  color: var(--wh-ink);
  padding: 90px 0;
  z-index: 1;
}

@media (max-width: 720px) {
  .white-home .wh-section { padding: 64px 0; }
}

.white-home .wh-section h2,
.white-home .public-section h2 {
  font-family: var(--wh-display) !important;
  font-style: italic;
  font-weight: 500;
  font-variation-settings: 'opsz' 144, 'WONK' 1, 'SOFT' 50;
  color: var(--wh-ink) !important;
  font-size: clamp(30px, 3.4vw, 46px);
  letter-spacing: -0.025em;
  line-height: 1.06;
  margin-bottom: 16px;
}

.white-home .public-section p,
.white-home .wh-section p {
  color: var(--wh-ink-mute);
}

.white-home .wh-section-title { text-align: center; max-width: 760px; margin: 0 auto 44px; }

.white-home .wh-section-eyebrow {
  display: inline-block;
  font-family: var(--wh-mono);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.24em;
  text-transform: uppercase;
  color: var(--wh-cobalt);
  margin-bottom: 18px;
}

.white-home .wh-overline {
  font-family: var(--wh-mono);
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
}

/* Tier chips above features grid */
.white-home .wh-tier-row {
  display: flex;
  justify-content: center;
  gap: 14px;
  margin-bottom: 40px;
  flex-wrap: wrap;
}

.white-home .wh-tier-chip {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 9px 18px;
  border-radius: 999px;
  font-family: var(--wh-body);
  font-size: 12.5px;
  font-weight: 600;
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  box-shadow: var(--wh-shadow-xs);
}

.white-home .wh-tier-chip--free { color: var(--wh-green); border-color: rgba(12, 122, 71, 0.35); }
.white-home .wh-tier-chip--premium { color: var(--wh-amber); border-color: rgba(183, 105, 26, 0.35); }

.white-home .wh-tier-dot {
  width: 7px; height: 7px;
  border-radius: 999px;
  background: currentColor;
}

/* Feature cards (PLATFORM_FEATURES / PREMIUM / TRUST) */
.white-home .wh-features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(290px, 1fr));
  gap: 22px;
}

.white-home .wh-feature-card {
  position: relative;
  display: block;
  text-decoration: none;
  padding: 30px 28px 28px;
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  border-radius: 18px;
  box-shadow: var(--wh-shadow-sm);
  color: var(--wh-ink);
  overflow: hidden;
  transition: transform 220ms ease, border-color 220ms ease, box-shadow 220ms ease;
  opacity: 0;
  animation: wh-fade-up 0.8s cubic-bezier(0.22, 1, 0.36, 1) both;
}

.white-home .wh-feature-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  height: 3px; width: 56px;
  background: var(--feature-color, var(--wh-cobalt));
  border-radius: 0 0 3px 0;
}

.white-home .wh-feature-card:hover {
  transform: translateY(-4px);
  border-color: var(--feature-color, var(--wh-ink));
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--feature-color) 25%, transparent),
    var(--wh-shadow-lg);
}

.white-home .wh-feature-card .feature-tier {
  position: absolute;
  top: 24px;
  right: 26px;
  font-family: var(--wh-mono);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
}

.white-home .wh-feature-card .feature-head {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
  margin-top: 10px;
}

.white-home .wh-feature-card .feature-icon-wrap {
  width: 48px; height: 48px;
  display: grid; place-items: center;
  border-radius: 12px;
  background: color-mix(in srgb, var(--feature-color) 10%, var(--wh-paper));
  border: 1px solid color-mix(in srgb, var(--feature-color) 28%, transparent);
}

.white-home .wh-feature-card .feature-icon-img,
.white-home .wh-feature-card .feature-icon-wrap img {
  width: 26px;
  height: 26px;
}

.white-home .wh-feature-card h3 {
  font-family: var(--wh-headline);
  font-size: 22px;
  font-weight: 700;
  letter-spacing: -0.012em;
  margin: 0;
  color: var(--wh-ink);
}

.white-home .wh-feature-card p {
  font-family: var(--wh-body);
  font-size: 14.5px;
  line-height: 1.6;
  color: var(--wh-ink-soft);
  margin: 0 0 8px;
}

.white-home .wh-feature-card .feature-meta {
  display: block;
  margin-top: 12px;
  font-family: var(--wh-mono);
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: var(--wh-ink-mute);
}

.white-home .wh-feature-card .feature-arrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  bottom: 24px;
  right: 26px;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: var(--wh-paper-warm);
  color: var(--wh-ink);
  transition: background 200ms ease, transform 200ms ease, color 200ms ease;
}

.white-home .wh-feature-card:hover .feature-arrow {
  background: var(--feature-color, var(--wh-ink));
  color: var(--wh-paper);
  transform: translateX(4px) translateY(-1px);
}

/* ───────────────────────────────────────────────────────────────────
   Academy / Finance Lab spotlight visual cards
   ─────────────────────────────────────────────────────────────────── */

.white-home .ai-spotlight-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: center;
}

@media (max-width: 980px) {
  .white-home .ai-spotlight-layout { grid-template-columns: 1fr !important; gap: 36px; }
  .white-home .ai-spotlight-layout[style*="rtl"] { direction: ltr !important; }
}

.white-home .ai-features-list,
.white-home .wh-features-list {
  list-style: none;
  padding: 0;
  margin: 22px 0 24px;
  display: grid;
  gap: 12px;
}

.white-home .wh-features-list li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  color: var(--wh-ink-soft);
  font-family: var(--wh-body);
  font-size: 15px;
  line-height: 1.55;
}

.white-home .wh-features-list b { color: var(--wh-ink); font-weight: 700; }

.white-home .ai-check {
  display: inline-grid;
  place-items: center;
  width: 22px; height: 22px;
  border-radius: 999px;
  background: var(--wh-green-tint);
  color: var(--wh-green);
  font-weight: 700;
  font-size: 12px;
  flex-shrink: 0;
  margin-top: 3px;
}

.white-home .wh-visual-card {
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  border-radius: 18px;
  box-shadow: var(--wh-shadow-md);
  overflow: hidden;
}

.white-home .wh-visual-card .ai-visual-header {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: var(--wh-paper-warm);
  border-bottom: 1px solid var(--wh-rule);
}

.white-home .wh-visual-card .ai-visual-dots {
  display: inline-flex;
  gap: 6px;
}

.white-home .wh-visual-card .ai-visual-dots span {
  width: 10px;
  height: 10px;
  border-radius: 999px;
  background: var(--wh-rule-strong);
}

.white-home .wh-visual-card .ai-visual-dots span:nth-child(1) { background: #FF5F57; }
.white-home .wh-visual-card .ai-visual-dots span:nth-child(2) { background: #FEBC2E; }
.white-home .wh-visual-card .ai-visual-dots span:nth-child(3) { background: #28C840; }

.white-home .wh-visual-card .ai-visual-title {
  font-family: var(--wh-mono);
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: var(--wh-ink-mute);
  text-transform: uppercase;
}

.white-home .wh-visual-card .ai-visual-body {
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.white-home .wh-visual-card .ai-topic-row {
  display: grid;
  grid-template-columns: 40px 1fr auto;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  border-radius: 12px;
  background: var(--wh-paper);
  border: 1px solid var(--wh-rule);
}

.white-home .wh-visual-card .ai-topic-icon {
  width: 38px; height: 38px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  font-family: var(--wh-mono);
  font-weight: 700;
  font-size: 13px;
}

.white-home .wh-visual-card .ai-topic-name {
  display: block;
  font-family: var(--wh-headline);
  font-size: 14.5px;
  font-weight: 600;
  color: var(--wh-ink);
}

.white-home .wh-visual-card .ai-topic-sub {
  display: block;
  font-family: var(--wh-mono);
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--wh-ink-mute);
  margin-top: 2px;
}

.white-home .wh-visual-card .ai-topic-badge {
  font-family: var(--wh-body);
  font-size: 11.5px;
  font-weight: 700;
  padding: 5px 10px;
  border-radius: 999px;
  white-space: nowrap;
}

.white-home .wh-visual-card .ai-topic-badge.done {
  background: var(--wh-green-tint);
  color: var(--wh-green);
}

.white-home .wh-visual-card .ai-topic-badge.progress {
  background: var(--wh-amber-tint);
  color: var(--wh-amber);
}

.white-home .wh-visual-card .ai-topic-badge.new {
  background: var(--wh-paper-warm);
  color: var(--wh-ink-mute);
}

/* Finance Lab market grid */
.white-home .wh-market-note {
  padding: 14px 16px;
  margin-bottom: 16px;
  border: 1px solid rgba(30, 43, 255, 0.30);
  border-radius: 12px;
  background: rgba(30, 43, 255, 0.05);
  font-family: var(--wh-body);
  font-size: 13px;
  line-height: 1.55;
  color: var(--wh-ink-soft);
}

.white-home .wh-market-note-tag {
  display: inline-block;
  padding: 3px 8px;
  margin-right: 10px;
  background: rgba(30, 43, 255, 0.12);
  color: var(--wh-cobalt);
  font-family: var(--wh-mono);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: 0.06em;
  border-radius: 6px;
  text-transform: uppercase;
}

.white-home .wh-market-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}

.white-home .wh-market-tile {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding: 12px 14px;
  border-radius: 12px;
  background: var(--wh-paper);
  border: 1px solid var(--wh-rule);
}

.white-home .wh-market-tile-flag {
  align-self: flex-start;
  font-family: var(--wh-mono);
  font-size: 9.5px;
  font-weight: 700;
  letter-spacing: 0.08em;
  padding: 2px 7px;
  border-radius: 5px;
  color: var(--tile-accent);
  background: color-mix(in srgb, var(--tile-accent) 12%, transparent);
  margin-bottom: 4px;
}

.white-home .wh-market-tile-name {
  font-family: var(--wh-headline);
  font-size: 13.5px;
  font-weight: 700;
  color: var(--wh-ink);
  line-height: 1.25;
}

.white-home .wh-market-tile-desc {
  font-size: 11.5px;
  color: var(--wh-ink-mute);
}

/* ───────────────────────────────────────────────────────────────────
   SANDBOX section
   ─────────────────────────────────────────────────────────────────── */

.white-home .sandbox-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: center;
}

@media (max-width: 980px) {
  .white-home .sandbox-layout { grid-template-columns: 1fr; gap: 36px; }
}

.white-home .wh-sandbox-mock {
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  border-radius: 18px;
  box-shadow: var(--wh-shadow-md);
  overflow: hidden;
}

.white-home .wh-sandbox-mock .sandbox-mock-bar {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 12px 16px;
  background: var(--wh-paper-warm);
  border-bottom: 1px solid var(--wh-rule);
}

.white-home .wh-sandbox-mock .sandbox-mock-dot {
  width: 10px; height: 10px;
  border-radius: 999px;
}
.white-home .wh-sandbox-mock .sandbox-mock-dot.red    { background: #FF5F57; }
.white-home .wh-sandbox-mock .sandbox-mock-dot.yellow { background: #FEBC2E; }
.white-home .wh-sandbox-mock .sandbox-mock-dot.green  { background: #28C840; }

.white-home .wh-sandbox-mock-body {
  padding: 18px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.white-home .wh-sandbox-card {
  padding: 16px 18px;
  border-radius: 14px;
  background: var(--wh-paper);
  border: 1px solid var(--wh-rule);
}

.white-home .wh-sandbox-card--red    { border-color: rgba(199, 51, 62, 0.25); background: rgba(199, 51, 62, 0.04); }
.white-home .wh-sandbox-card--blue   { border-color: rgba(30, 43, 255, 0.22); background: rgba(30, 43, 255, 0.04); }

.white-home .wh-sandbox-card h5 {
  font-family: var(--wh-headline);
  font-size: 16px;
  font-weight: 700;
  color: var(--wh-ink);
  margin: 0;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.white-home .wh-sandbox-card p {
  font-family: var(--wh-body);
  font-size: 13px;
  line-height: 1.55;
  color: var(--wh-ink-soft);
  margin: 8px 0 0;
}

.white-home .wh-sandbox-pill {
  font-family: var(--wh-mono);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 0.06em;
  padding: 3px 9px;
  border-radius: 999px;
}
.white-home .wh-sandbox-pill--red  { color: var(--wh-red); background: var(--wh-red-tint); }
.white-home .wh-sandbox-pill--blue { color: var(--wh-cobalt); background: var(--wh-cobalt-tint); }

.white-home .wh-sandbox-note {
  padding: 11px 14px;
  border-radius: 12px;
  border: 1px solid rgba(183, 105, 26, 0.30);
  background: rgba(183, 105, 26, 0.06);
  color: var(--wh-amber);
  font-size: 11.5px;
  line-height: 1.5;
}

/* ───────────────────────────────────────────────────────────────────
   PRICING two-card grid
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-pricing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 22px;
  max-width: 960px;
  margin: 0 auto;
}

.white-home .wh-pricing-card {
  padding: 32px 30px 28px;
  border-radius: 22px;
  background: var(--wh-card);
  border: 1px solid var(--wh-rule);
  box-shadow: var(--wh-shadow-sm);
  position: relative;
  overflow: hidden;
}

.white-home .wh-pricing-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 4px;
}

.white-home .wh-pricing-card--free::before    { background: var(--wh-green); }
.white-home .wh-pricing-card--premium::before { background: var(--wh-amber); }

.white-home .wh-pricing-eyebrow {
  font-family: var(--wh-mono);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 14px;
}

.white-home .wh-pricing-card--free .wh-pricing-eyebrow    { color: var(--wh-green); }
.white-home .wh-pricing-card--premium .wh-pricing-eyebrow { color: var(--wh-amber); }

.white-home .wh-pricing-blurb {
  font-family: var(--wh-body);
  font-size: 14px;
  color: var(--wh-ink-soft);
  line-height: 1.55;
  margin: 0 0 18px;
}

.white-home .wh-pricing-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 10px;
}

.white-home .wh-pricing-list li {
  position: relative;
  padding-left: 26px;
  font-family: var(--wh-body);
  font-size: 14px;
  line-height: 1.55;
  color: var(--wh-ink-soft);
}

.white-home .wh-pricing-list li::before {
  content: "✓";
  position: absolute;
  left: 0; top: 0;
  font-weight: 700;
}

.white-home .wh-pricing-card--free .wh-pricing-list li::before    { color: var(--wh-green); }
.white-home .wh-pricing-card--premium .wh-pricing-list li::before { color: var(--wh-amber); }

.white-home .wh-pricing-list b { color: var(--wh-ink); }

/* ───────────────────────────────────────────────────────────────────
   FINAL CTA — ink slab with magenta highlight
   ─────────────────────────────────────────────────────────────────── */

.white-home .wh-final { padding: 80px 0 100px; }

.white-home .wh-cta-block {
  position: relative;
  text-align: center;
  padding: 64px 48px 56px;
  border-radius: 28px;
  background: var(--wh-ink);
  color: var(--wh-paper);
  overflow: hidden;
  isolation: isolate;
  box-shadow: var(--wh-shadow-lg);
}

.white-home .wh-cta-block::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(60% 80% at 100% 0%, rgba(214, 1, 122, 0.40), transparent 60%),
    radial-gradient(60% 80% at 0% 100%, rgba(30, 43, 255, 0.35), transparent 60%);
  opacity: 0.85;
  z-index: -1;
}

.white-home .wh-cta-block::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 1  0 0 0 0 1  0 0 0 0.5 0'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.5'/></svg>");
  opacity: 0.25;
  mix-blend-mode: overlay;
}

.white-home .wh-cta-block h2 {
  font-family: var(--wh-display) !important;
  font-style: italic;
  font-weight: 500;
  color: var(--wh-paper) !important;
  margin-bottom: 14px;
  font-size: clamp(34px, 4vw, 56px) !important;
  line-height: 1.05;
  letter-spacing: -0.025em;
}

.white-home .wh-cta-block p {
  color: rgba(250, 248, 242, 0.78);
  font-size: 15px;
  margin-bottom: 28px;
}

.white-home .wh-cta-block .hero-cta {
  justify-content: center;
  display: flex;
}

.white-home .wh-cta-foot {
  margin-top: 18px !important;
  font-family: var(--wh-mono);
  font-size: 12px !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(250, 248, 242, 0.55) !important;
}

/* Primary button used inside final CTA + section bodies */
.white-home .wh-btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 22px;
  border-radius: 12px;
  background: var(--wh-paper);
  color: var(--wh-ink);
  font-family: var(--wh-body);
  font-weight: 700;
  font-size: 14.5px;
  letter-spacing: -0.005em;
  text-decoration: none;
  border: 1px solid var(--wh-paper);
  box-shadow: 0 14px 36px -16px rgba(15, 18, 32, 0.40);
  transition: transform 200ms ease, box-shadow 200ms ease, background 200ms ease;
}

.white-home .wh-btn-primary:hover {
  transform: translateY(-1px);
  background: var(--wh-magenta);
  border-color: var(--wh-magenta);
  color: #fff;
  box-shadow: 0 18px 40px -14px rgba(214, 1, 122, 0.55);
}

.white-home .wh-btn-primary--lg {
  padding: 18px 28px;
  font-size: 16px;
}

/* Within non-CTA sections, the same class renders as ink */
.white-home .wh-section .wh-btn-primary,
.white-home .wh-section .btn-primary-hero.wh-btn-primary {
  background: var(--wh-ink);
  color: var(--wh-paper);
  border-color: var(--wh-ink);
}

.white-home .wh-section .wh-btn-primary:hover {
  background: var(--wh-cobalt);
  border-color: var(--wh-cobalt);
  color: var(--wh-paper);
}

/* ───────────────────────────────────────────────────────────────────
   ANIMATIONS
   ─────────────────────────────────────────────────────────────────── */

@keyframes wh-fade-up {
  0%   { opacity: 0; transform: translate3d(0, 18px, 0); }
  100% { opacity: 1; transform: translate3d(0, 0, 0); }
}

/* Override the dark hero word gradient drop-shadow — flatten on white */
.white-home .beez-hero-word--succeed {
  filter: none !important;
}

/* Reveal class — used on scroll-revealed sections */
.white-home .public-section { opacity: 1; transform: none; }
.white-home .public-section.revealed { opacity: 1; }

/* ───────────────────────────────────────────────────────────────────
   RESPONSIVE
   ─────────────────────────────────────────────────────────────────── */

@media (max-width: 1100px) {
  .white-home .beez-hero-grid-2col { grid-template-columns: 1fr; gap: 48px; }
}

@media (max-width: 720px) {
  .white-home .wh-hero { padding: 120px 0 36px; }
  .white-home .wh-hero-title { font-size: clamp(38px, 12vw, 56px); }
  .white-home .wh-cta-block { padding: 48px 28px 44px; border-radius: 22px; }
  .white-home .wh-hero-cta { flex-direction: column; align-items: stretch; }
  .white-home .wh-hero-cta .beez-cta-primary,
  .white-home .wh-hero-cta .beez-cta-secondary {
    width: 100%;
    justify-content: center;
  }
  .white-home .wh-market-grid { grid-template-columns: 1fr; }
}

@media (max-width: 540px) {
  .white-home .wh-header-inner { gap: 10px; }
  .white-home .wh-header-logo img { height: 38px !important; }
  .white-home .wh-header-signin,
  .white-home .wh-header-start {
    padding: 7px 12px !important;
    font-size: 12px !important;
    white-space: nowrap;
  }
}

@media (prefers-reduced-motion: reduce) {
  .white-home *,
  .white-home *::before,
  .white-home *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  .white-home .wh-backdrop-wash--a,
  .white-home .wh-backdrop-wash--b {
    animation: none !important;
    transform: none !important;
  }
}
