/**
 * Casan enterprise accents — indigo atmosphere + sunset-orange CTA accent.
 * Page/theme swatch (indigo): #432ed9
 * CTA / chip swatch (sampled vivid sunset orange, UL gradient): #ef7331
 *
 * Indigo ladder (atmosphere — not buttons):
 *   mist   #eeedfc  soft washes
 *   soft   #6358f0  secondary indigo
 *   accent #432ed9  focus / theme
 *   deep   #3226b0  pressed indigo
 *   ink    #c9c4ff  text on dark / outlines
 *
 * Orange ladder (CTAs + advantage chips + stat-card warmth):
 *   cta        #ef7331  primary fill / chip circle
 *   cta-hover  #f4884a  lighter hover
 *   cta-active #cd632a  deeper pressed
 *   cta-on     #ffffff  label on orange
 */
:root,
:host {
  --casan-accent-mist: #eeedfc;
  --casan-accent-soft: #6358f0;
  --casan-accent: #432ed9;
  --casan-accent-deep: #3226b0;
  --casan-accent-ink: #c9c4ff;
  --casan-accent-on: #ffffff;

  --casan-cta: #ef7331;
  --casan-cta-hover: #f4884a;
  --casan-cta-active: #cd632a;
  --casan-cta-on: #ffffff;
  --casan-cta-mist: #fff4eb;
  --casan-cta-soft: #ffe4d0;

  /* Casan semantic tokens that painted lime — CTAs use orange */
  --color-badge-light: var(--casan-accent);
  --color-button-dark-primary-bg: var(--casan-cta);
  --color-button-dark-primary-bg-hover: var(--casan-cta-hover);
  --color-button-dark-primary-bg-focus: var(--casan-cta);
  --color-button-dark-primary-bg-active: var(--casan-cta-active);
  --color-button-dark-primary-text: var(--casan-cta-on);
  --color-button-dark-primary-text-hover: var(--casan-cta-on);
  --color-button-dark-primary-text-focus: var(--casan-cta-on);
  --color-button-dark-primary-text-active: var(--casan-cta-on);
  --color-button-dark-secondary-border-active: var(--casan-cta-active);
  /* Header / “Start for free” solid CTAs resolve through theme CTA tokens */
  --color-theme-bg-cta: var(--casan-cta);
  --color-theme-bg-cta-hover: var(--casan-cta-hover);
  --color-theme-bg-cta-active: var(--casan-cta-active);
  --color-theme-bg-cta-focus: var(--casan-cta);
  --color-theme-content-cta-inverse: var(--casan-cta-on);
  --color-theme-content-cta-inverse-hover: var(--casan-cta-on);
  --color-theme-content-cta-inverse-active: var(--casan-cta-on);
  --color-theme-content-cta-inverse-focus: var(--casan-cta-on);
  --color-theme-border-cta: var(--casan-cta);
  --color-theme-border-cta-hover: var(--casan-cta-hover);
  --color-theme-border-cta-active: var(--casan-cta-active);
  --color-theme-border-cta-focus: var(--casan-cta);
  /* Advantages chips: bright orange circle + dark glyph (lime-contrast pattern) */
  --color-icon-dark-bg: var(--casan-cta);
  --color-icon-dark-symbol: #0b0a14;
  --color-icon-light-symbol: var(--casan-cta);
  --color-radio-dark-active-border: var(--casan-accent);
  --color-radio-dark-checked-border: var(--casan-accent);
  --color-radio-dark-checked-hover-border: var(--casan-accent-soft);
  --color-radio-dark-checked-active-border: var(--casan-accent-deep);

  /* Bundle palette tokens still referenced by enterprise CSS */
  --color-lime-10: var(--casan-accent-mist);
  --color-lime-100: var(--casan-accent-mist);
  --color-lime-30: var(--casan-accent-ink);
  --color-lime-70: var(--casan-accent-deep);
  --color-casan-brand-green-10: var(--casan-accent-mist);
  --color-casan-brand-green-50: var(--casan-accent);
  --color-casan-brand-green-90: var(--casan-accent-deep);
  --color-pistachio-10: var(--casan-accent-mist);
  --color-aloe-10: var(--casan-accent-mist);
  --color-aloe-30: var(--casan-accent-soft);
  --color-aloe-50: var(--casan-accent);
  --color-avocado-10: var(--casan-accent-mist);
  --color-jalapeno-30: var(--casan-accent-soft);
  --color-kale-30: var(--casan-accent-soft);
  --color-kale-90: var(--casan-accent-deep);

  /* Cream / olive section + card surfaces → cool indigo paper / stage */
  --color-section-light-bg: #f5f4ff;
  --color-section-card-light-bg: #f5f4ff;
  --color-section-dark-bg: #0b0a14;
  --color-section-secondary-bg: #0b0a14;
  --color-card-base-bg: #eeedfc;
  --color-card-yellow-green-bg: #eeedfc;
  --color-control-button-bg: #eeedfc;
  --color-eyebrow-dark-text: var(--casan-accent-ink);

  /* Light-mode pine button leftovers → orange CTA; links stay indigo */
  --color-button-light-primary-bg: var(--casan-cta);
  --color-button-light-primary-bg-hover: var(--casan-cta-hover);
  --color-button-light-primary-bg-focus: var(--casan-cta);
  --color-button-light-primary-bg-active: var(--casan-cta-active);
  --color-button-light-primary-text: var(--casan-cta-on);
  --color-link-light-hover: #3226b0;
  --color-link-light-focus: #3226b0;
  --color-link-light-active: #3226b0;
  --color-button-dark-primary-bg-disabled: #8a5538;
}

/*
 * Conversion band glow — Casan PNG is baked pale green.
 * Replace with indigo radials (same soft left-edge wash).
 */
[class*="87587f0ce348ec1c458c446004481281"] {
  background-image:
    radial-gradient(
      75% 95% at 0% 42%,
      rgba(99, 88, 240, 0.58) 0%,
      rgba(67, 46, 217, 0.28) 38%,
      rgba(67, 46, 217, 0.08) 58%,
      transparent 72%
    ),
    radial-gradient(
      55% 70% at 12% 68%,
      rgba(123, 114, 245, 0.32) 0%,
      transparent 62%
    ) !important;
  background-color: transparent !important;
  filter: none !important;
}

/*
 * Section ambient glows (Casan: blue→mint→lime radials on :before/:after).
 * Force the whole ladder into the indigo focus band.
 *
 * Exclude .bk-header — mega-menu belt classes contain `linear-gradient` /
 * `bg-gradient` substrings; remapping their ::before/::after painted a purple
 * glow under the open Products menu (homepage does not load this file).
 */
:where(body.casan-enterprise) :not(.bk-header):not(.bk-header *)[class*="-gradient"]:before,
:where(body.casan-enterprise) :not(.bk-header):not(.bk-header *)[class*="-gradient"]:after,
:where(body.casan-enterprise) :not(.bk-header):not(.bk-header *)[class*="gradient-mobile"]:before,
:where(body.casan-enterprise) :not(.bk-header):not(.bk-header *)[class*="gradient-mobile"]:after,
:where(body.casan-enterprise) :not(.bk-header):not(.bk-header *)[class*="gradient-desktop"]:before,
:where(body.casan-enterprise) :not(.bk-header):not(.bk-header *)[class*="gradient-desktop"]:after,
:where(body.casan-enterprise) :not(.bk-header):not(.bk-header *)[class*="radial-gradient"]:before,
:where(body.casan-enterprise) :not(.bk-header):not(.bk-header *)[class*="radial-gradient"]:after {
  background: radial-gradient(
    50% 50% at 50% 50%,
    #6358f0 0%,
    #432ed9 24%,
    #7b72f5 58%,
    #c9c4ff 82%,
    transparent 100%
  ) !important;
}

/* Belt / header lips — solid black, never accent radial */
body.casan-enterprise .bk-header::before,
body.casan-enterprise .bk-header::after,
body.casan-enterprise .bk-header [class*="-gradient"]::before,
body.casan-enterprise .bk-header [class*="-gradient"]::after,
body.casan-enterprise .bk-header [class*="linear-gradient"]::before,
body.casan-enterprise .bk-header [class*="linear-gradient"]::after {
  background-image: none !important;
}

body.casan-enterprise .bk-header::after,
body.casan-enterprise .bk-header [class*="after:bg-[#02090A"]::after,
body.casan-enterprise .bk-header [class*="after:bg-[#02090a"]::after,
body.casan-enterprise .bk-header [class*="after:bg-[#121C1E"]::after,
body.casan-enterprise .bk-header [class*="after:bg-[#121c1e"]::after {
  background-color: #000000 !important;
}

.bg-extensible-experience-gradient {
  background-image:
    radial-gradient(
      83% 50% at 6% 124%,
      rgba(99, 88, 240, 0.9) 27%,
      rgba(67, 46, 217, 0.7) 52%,
      rgba(67, 46, 217, 0.3) 62%,
      transparent 82%
    ),
    radial-gradient(
      117% 50% at 111% 122%,
      rgba(99, 88, 240, 0.9) 29%,
      rgba(67, 46, 217, 0.7) 52%,
      rgba(67, 46, 217, 0.3) 62%,
      transparent 83%
    ) !important;
}

/* Dark olive / mint cream surfaces on advantages + config bands.
 * Keep Casan hexes in HTML class names — only the painted color changes. */
.bg-\[\#171E16\],
.bg-\[\#171e16\],
[class*="bg-[#171E16]"],
[class*="bg-[#171e16]"],
[class*="from-bg-[#171E16]"],
[class*="from-bg-[#171e16]"] {
  background-color: #0b0a14 !important;
}

.bg-\[\#F8FBE9\],
.bg-\[\#f8fbe9\],
.hover\:bg-\[\#F8FBE9\]:hover,
.hover\:bg-\[\#f8fbe9\]:hover,
.md\:hover\:bg-\[\#F8FBE9\]:hover,
.md\:hover\:bg-\[\#f8fbe9\]:hover,
[class*="bg-[#F8FBE9]"],
[class*="bg-[#f8fbe9]"],
[class*="hover:bg-[#F8FBE9]"]:hover,
[class*="hover:bg-[#f8fbe9]"]:hover {
  background-color: #eeedfc !important;
}

.bg-\[\#FFFFF6\],
.bg-\[\#fffff6\],
[class*="bg-[#FFFFF6]"],
[class*="bg-[#fffff6]"] {
  background-color: #f5f4ff !important;
}

/* Cost-effective / config cream fade — HTML keeps Casan class tokens
 * (including spaced rgba) so compiled utilities still resolve. */
[class*="bg-[linear-gradient(180deg,_rgba(248,251,233"],
[class*="bg-[linear-gradient(180deg,_rgba(248, 251, 233"],
[class*="bg-[linear-gradient(180deg,rgba(248,251,233"],
[class*="bg-[linear-gradient(180deg,rgba(248, 251, 233"],
[class*="#f8fbe9_100%"],
[class*="#F8FBE9_100%"] {
  background-image: linear-gradient(
    180deg,
    rgba(238, 237, 252, 0) 0%,
    #eeedfc 100%
  ) !important;
}

/*
 * Hero ambient video (Casan CDN webm) is baked lime/green.
 * Hue-shift into the indigo focus band + keep a dark stage so motion reads.
 */
.hero-video-background {
  background-color: #02090a !important;
  isolation: isolate;
}

.hero-video-background video,
.hero-video-background .video-container video {
  opacity: 1 !important;
  /* Lime/green webm → indigo focus (hue ~green→violet) */
  filter: hue-rotate(158deg) saturate(1.55) brightness(1.05) contrast(1.1);
}

/* Soft indigo wash so movement still reads if the CDN video is slow/blocked.
 * Hero-only pseudo — Advantages clones `.hero-video-background` in HTML so it
 * picks this up via the same class (do not attach approximate glows to the
 * advantages wrapper itself). */
.hero-video-background::after {
  content: "";
  position: absolute;
  inset: -10%;
  pointer-events: none;
  z-index: 1;
  background:
    radial-gradient(
      55% 50% at 18% 42%,
      rgba(99, 88, 240, 0.45) 0%,
      rgba(67, 46, 217, 0.18) 42%,
      transparent 70%
    ),
    radial-gradient(
      45% 40% at 72% 58%,
      rgba(67, 46, 217, 0.28) 0%,
      transparent 65%
    );
  mix-blend-mode: screen;
  animation: casan-enterprise-ambient 14s ease-in-out infinite alternate;
}

@keyframes casan-enterprise-ambient {
  0% {
    transform: translate3d(-2%, 1%, 0) scale(1);
    opacity: 0.75;
  }
  100% {
    transform: translate3d(3%, -2%, 0) scale(1.08);
    opacity: 1;
  }
}

/*
 * Advantages dark stage: HTML clones the hero video node
 * (`.hero-video-background` + local hero webm). Kill Casan’s static
 * elliptical :before/:after on the wrapper so they don’t compete with video.
 * Force full-bleed stack — purge-mangled CSS previously collapsed this band
 * so the stats 3-up sat beside the feature grid instead of below it.
 */
[class*="homepage-advantages-section-gradient"] {
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  background-color: #02090a !important;
}

[class*="homepage-advantages-section-gradient"] > section {
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  clear: both !important;
}

[class*="homepage-advantages-section-gradient"]:before,
[class*="homepage-advantages-section-gradient"]:after {
  content: none !important;
  display: none !important;
  background: none !important;
  animation: none !important;
  filter: none !important;
}

body.v2-light .bg-section-dark-bg:has(.hero-video-background) {
  background-color: #02090a !important;
}

body.v2-light [class*="homepage-advantages-section-gradient"] {
  background-color: #02090a !important;
}

@media (prefers-reduced-motion: reduce) {
  .hero-video-background::after {
    animation: none;
  }
}

/* Hero flip word — white (same as surrounding headline; was lime/indigo fill) */
.word-fill {
  background-color: #ffffff !important;
  background-image: none !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  color: transparent !important;
}

.word-container,
.word-container-animated,
.text-flip-word,
.text-flip-word-animated {
  color: #ffffff !important;
}

/*
 * Light skin remaps .text-section-dark-text → ink. Restore white type only on
 * real dark stages (hero video + olive advantages / config bands) — never
 * globally on every heading (that painted white-on-pale stat cards).
 * Restrict heading-group paint to data-mode="dark" so light-mode cards stay ink.
 */
body.v2-light.casan-enterprise .bg-section-dark-bg:has(.hero-video-background) .text-section-dark-text,
body.v2-light.casan-enterprise .bg-section-dark-bg:has(.hero-video-background) .text-eyebrow-dark-text,
body.v2-light.casan-enterprise .bg-\[\#171E16\] .text-section-dark-text,
body.v2-light.casan-enterprise .bg-\[\#171e16\] .text-section-dark-text,
body.v2-light.casan-enterprise .bg-\[\#171E16\] .text-eyebrow-dark-text,
body.v2-light.casan-enterprise .bg-\[\#171e16\] .text-eyebrow-dark-text,
body.v2-light.casan-enterprise .bg-\[\#171E16\] .text-link-dark,
body.v2-light.casan-enterprise .bg-\[\#171e16\] .text-link-dark,
body.v2-light.casan-enterprise [class*="homepage-advantages-section"] .text-section-dark-text,
body.v2-light.casan-enterprise [class*="homepage-advantages-section"] .text-eyebrow-dark-text,
body.v2-light.casan-enterprise
  .bg-\[\#171E16\]
  [data-component-name="heading-group"][data-mode="dark"],
body.v2-light.casan-enterprise
  .bg-\[\#171e16\]
  [data-component-name="heading-group"][data-mode="dark"],
body.v2-light.casan-enterprise
  .bg-\[\#171E16\]
  [data-component-name="heading-group"][data-mode="dark"]
  .richtext,
body.v2-light.casan-enterprise
  .bg-\[\#171e16\]
  [data-component-name="heading-group"][data-mode="dark"]
  .richtext,
body.v2-light.casan-enterprise
  .bg-\[\#171E16\]
  [data-component-name="heading-group"][data-mode="dark"]
  h2,
body.v2-light.casan-enterprise
  .bg-\[\#171e16\]
  [data-component-name="heading-group"][data-mode="dark"]
  h2,
body.v2-light.casan-enterprise
  [class*="homepage-advantages-section"]
  [data-component-name="heading-group"][data-mode="dark"],
body.v2-light.casan-enterprise
  [class*="homepage-advantages-section"]
  [data-component-name="heading-group"][data-mode="dark"]
  .richtext,
body.v2-light.casan-enterprise
  [class*="homepage-advantages-section"]
  [data-component-name="heading-group"][data-mode="dark"]
  h2,
body.v2-light.casan-enterprise
  .bg-section-dark-bg:has(.hero-video-background)
  [data-component-name="heading-group"][data-mode="dark"],
body.v2-light.casan-enterprise
  .bg-section-dark-bg:has(.hero-video-background)
  [data-component-name="heading-group"][data-mode="dark"]
  .richtext,
body.v2-light.casan-enterprise
  .bg-section-dark-bg:has(.hero-video-background)
  [data-component-name="heading-group"][data-mode="dark"]
  h1,
body.v2-light.casan-enterprise
  .bg-section-dark-bg:has(.hero-video-background)
  [data-component-name="heading-group"][data-mode="dark"]
  h2,
body.v2-light.casan-enterprise
  .bg-section-dark-bg:has(.hero-video-background)
  [data-component-name="heading-group"][data-mode="dark"]
  span:not(.word-fill) {
  color: #ffffff !important;
}

body.v2-light.casan-enterprise
  .bg-\[\#171E16\]
  [data-component-name="heading-group"][data-mode="dark"]
  .richtext.text-body-lg,
body.v2-light.casan-enterprise
  .bg-\[\#171e16\]
  [data-component-name="heading-group"][data-mode="dark"]
  .richtext.text-body-lg,
body.v2-light.casan-enterprise
  [class*="homepage-advantages-section"]
  [data-component-name="heading-group"][data-mode="dark"]
  .richtext.text-body-lg,
body.v2-light.casan-enterprise
  .bg-section-dark-bg:has(.hero-video-background)
  [data-component-name="heading-group"][data-mode="dark"]
  .richtext.text-body-lg {
  color: rgba(255, 255, 255, 0.78) !important;
}

/*
 * Outcomes dark band — wave/bar mountain under the three cream cards.
 * Inline SVG was remapped lime→#432ed9 (too dim) and scraped with GSAP
 * translateY baked into path transforms (bars shoved below the clip).
 * Paint bright indigo ink + kill leftover transforms.
 */
svg[viewBox="0 0 1415 597"] path[fill]:not([fill="none"]):not([fill="white"]) {
  fill: #c9c4ff !important;
  transform: none !important;
  translate: none !important;
}

/*
 * Outcomes dark-band copy sits beside (not inside) `.bg-[#171e16]`, so the
 * generic light-skin `.text-white → ink` remap made body copy near-black.
 * Restore readable type + left rules on that section only.
 */
body.v2-light.casan-enterprise section:has(svg[viewBox="0 0 1415 597"]) .text-white,
body.casan-enterprise section:has(svg[viewBox="0 0 1415 597"]) .text-white {
  color: rgba(255, 255, 255, 0.92) !important;
}

body.v2-light.casan-enterprise section:has(svg[viewBox="0 0 1415 597"]) .text-white .opacity-60,
body.v2-light.casan-enterprise section:has(svg[viewBox="0 0 1415 597"]) .text-white .text-xs {
  color: rgba(255, 255, 255, 0.62) !important;
}

body.v2-light.casan-enterprise
  section:has(svg[viewBox="0 0 1415 597"])
  [class*="text-[#f0fbcc]"],
body.v2-light.casan-enterprise
  section:has(svg[viewBox="0 0 1415 597"])
  [class*="text-[#F0FBCC]"],
body.casan-enterprise section:has(svg[viewBox="0 0 1415 597"]) [class*="text-[#f0fbcc]"],
body.casan-enterprise section:has(svg[viewBox="0 0 1415 597"]) [class*="text-[#F0FBCC]"] {
  color: #c9c4ff !important;
}

body.v2-light.casan-enterprise
  section:has(svg[viewBox="0 0 1415 597"])
  [class*="border-[rgba(255,255,255,0.15)]"],
body.casan-enterprise
  section:has(svg[viewBox="0 0 1415 597"])
  [class*="border-[rgba(255,255,255,0.15)]"] {
  border-color: rgba(201, 196, 255, 0.42) !important;
}

/*
 * Advantages bottom stat cards — indigo mist surface + readable ink
 * (was lime card-base + white type from the dark-stage override above).
 */
.solution-stats-cards-gradient {
  /* Soft warm-orange → cool mist (readable dark ink; not white-on-peach) */
  background-color: var(--casan-cta-mist) !important;
  background-image: linear-gradient(
    145deg,
    #fff6ee 0%,
    var(--casan-cta-soft) 42%,
    #f5f4ff 78%,
    #eeedfc 100%
  ) !important;
  box-shadow: inset 0 0 0 1px rgba(239, 115, 49, 0.22);
}

.solution-stats-cards-gradient:after {
  background: radial-gradient(
    55% 50% at 18% 12%,
    rgba(239, 115, 49, 0.28) 0%,
    rgba(244, 136, 74, 0.12) 38%,
    transparent 70%
  ) !important;
  opacity: 0.85;
}

.solution-stats-cards-gradient,
.solution-stats-cards-gradient .text-section-light-text,
.solution-stats-cards-gradient [data-component-name="heading-group"],
.solution-stats-cards-gradient [data-component-name="heading-group"] .richtext,
.solution-stats-cards-gradient [data-component-name="heading-group"] h2,
.solution-stats-cards-gradient [data-component-name="heading-group"] span {
  color: #15122a !important;
}

.solution-stats-cards-gradient .richtext.text-body-base,
.solution-stats-cards-gradient .opacity-body {
  color: rgba(21, 18, 42, 0.72) !important;
  opacity: 1 !important;
}

.solution-stats-cards-gradient svg text {
  fill: #15122a !important;
}

/* Hardcoded lime utilities → indigo */
.\!bg-\[\#CDF986\],
.bg-\[\#CDF986\],
.bg-\[\#cdf986\],
.bg-\[\#caf389\],
.bg-\[\#eefab3\],
.bg-\[\#e7fdd2\],
.bg-\[\#2FDF4A\],
.bg-\[\#2fdf4a\],
.\!bg-\[\#2FDF4A\],
.\!bg-\[\#2fdf4a\] {
  background-color: var(--casan-accent) !important;
  background-image: none !important;
}

.hover\:\!bg-\[\#A9DB57\]:hover,
.hover\:bg-\[\#A9DB57\]:hover {
  background-color: var(--casan-accent-soft) !important;
  background-image: none !important;
}

.border-\[\#CDF986\],
.border-\[\#cdf986\] {
  border-color: var(--casan-accent) !important;
}

.text-\[\#36F4A4\],
.text-\[\#36f4a4\],
.text-\[\#2FDF4A\],
.text-\[\#2fdf4a\],
.text-\[\#CDF986\],
.text-\[\#cdf986\],
.text-\[\#F0FBCC\],
.text-\[\#f0fbcc\],
.text-\[\#EEFAB3\],
.text-\[\#eefab3\],
[class*="text-[#F0FBCC]"],
[class*="text-[#f0fbcc]"],
[class*="text-[#EEFAB3]"],
[class*="text-[#eefab3]"] {
  color: var(--casan-accent-ink) !important;
}

.hover\:after\:bg-\[\#36F4A4\]:hover:after,
.hover\:after\:bg-\[\#36f4a4\]:hover:after,
.hover\:after\:bg-\[\#008060\]:hover:after {
  background-color: var(--casan-accent) !important;
}

/* Tailwind gradient stops that ended in lime */
.to-\[\#2fdf4a\],
.to-\[\#2FDF4A\],
.to-\[\#cdf986\],
.to-\[\#CDF986\] {
  --tw-gradient-to: var(--casan-accent) !important;
}

.from-\[\#2fdf4a\],
.from-\[\#2FDF4A\],
.from-\[\#cdf986\],
.from-\[\#CDF986\] {
  --tw-gradient-from: var(--casan-accent-soft) !important;
  --tw-gradient-stops: var(
    --tw-gradient-via-stops,
    var(--tw-gradient-from),
    var(--tw-gradient-to, transparent)
  );
}

/* Secondary outline CTAs — keep cool outline; warm border on hover */
.border-button-dark-primary-bg,
.text-button-dark-primary-bg,
.text-button-dark-primary-bg\! {
  border-color: var(--casan-accent-soft);
  color: var(--casan-accent-ink);
}

.hover\:border-button-dark-primary-bg-hover:hover,
.hover\:text-button-dark-primary-bg-hover:hover,
.hover\:text-button-dark-primary-bg-hover\!:hover {
  border-color: var(--casan-cta-hover);
  color: #fff;
}

/*
 * Beat light-overrides header CTA indigo
 * (`body.v2-light .bk-header { --color-theme-bg-cta: #462de2 }`).
 */
body.v2-light.casan-enterprise .bk-header,
body.casan-enterprise .bk-header {
  --color-theme-bg-cta: var(--casan-cta);
  --color-theme-bg-cta-hover: var(--casan-cta-hover);
  --color-theme-bg-cta-active: var(--casan-cta-active);
  --color-theme-bg-cta-focus: var(--casan-cta);
  --color-theme-content-cta-inverse: var(--casan-cta-on);
  --color-theme-content-cta-inverse-hover: var(--casan-cta-on);
  --color-theme-content-cta-inverse-active: var(--casan-cta-on);
  --color-theme-content-cta-inverse-focus: var(--casan-cta-on);
  --color-theme-border-cta: var(--casan-cta);
  --color-theme-border-cta-hover: var(--casan-cta-hover);
  --color-theme-border-cta-active: var(--casan-cta-active);
  --color-theme-border-cta-focus: var(--casan-cta);
}

/* Primary filled CTAs (Contact sales, solid Start for free, etc.) */
.bg-button-dark-primary-bg,
.bg-button-light-primary-bg,
.bg-component-button-primary-bg,
a[data-component-name="button"].bg-button-dark-primary-bg,
a[data-component-name="contact-sales"].bg-button-dark-primary-bg,
a[data-component-name="start-free-trial"].bg-component-button-primary-bg,
a[data-component-name="start-free-trial"].bg-button-dark-primary-bg {
  background-color: var(--casan-cta) !important;
  background-image: none !important;
  border-color: transparent;
  color: var(--casan-cta-on) !important;
}

.hover\:bg-button-dark-primary-bg-hover:hover,
.hover\:bg-button-light-primary-bg-hover:hover,
.hover\:bg-component-button-primary-bg-hover:hover {
  background-color: var(--casan-cta-hover) !important;
  background-image: none !important;
  color: var(--casan-cta-on) !important;
}

.active\:bg-button-dark-primary-bg-active:active,
.active\:bg-button-light-primary-bg-active:active,
.active\:bg-component-button-primary-bg-active:active {
  background-color: var(--casan-cta-active) !important;
  background-image: none !important;
  color: var(--casan-cta-on) !important;
}

/* Badges */
.bg-badge-light,
[data-component-name="badge"].bg-badge-light,
body:has(.enterprise-redesign) [data-component-name="badge"].bg-badge-light {
  background-color: var(--casan-accent) !important;
  background-image: none !important;
  color: var(--casan-accent-on);
}

/* Catch remaining raw lime fills in markup (SVG / inline) */
[fill="#CDF986"],
[fill="#cdf986"],
[fill="#2FDF4A"],
[fill="#2fdf4a"],
[fill="#36F4A4"],
[fill="#36f4a4"],
[fill="#95BF47"],
[fill="#95bf47"],
[fill="#7CA355"],
[fill="#7ca355"],
[fill="#A9DB57"],
[fill="#a9db57"],
[fill="#63744F"],
[fill="#63744f"],
[fill="#F0FBCC"],
[fill="#f0fbcc"] {
  fill: var(--casan-accent) !important;
}

[stroke="#CDF986"],
[stroke="#cdf986"],
[stroke="#2FDF4A"],
[stroke="#2fdf4a"],
[stroke="#36F4A4"],
[stroke="#36f4a4"],
[stroke="#7CA355"],
[stroke="#7ca355"],
[stroke="#63744F"],
[stroke="#63744f"] {
  stroke: var(--casan-accent) !important;
}

/*
 * Beat homepage light-overrides pine remaps on enterprise
 * (`body.v2-light [class*="text-[#36F4A4]"] → #0b6b56`).
 */
body.v2-light.casan-enterprise [class*="text-[#36F4A4]"],
body.v2-light.casan-enterprise [class*="text-[#36f4a4]"],
body.casan-enterprise [class*="text-[#36F4A4]"],
body.casan-enterprise [class*="text-[#36f4a4]"] {
  color: var(--casan-accent-ink) !important;
}

body.v2-light.casan-enterprise [class*="after:bg-[#36F4A4]"]:after,
body.v2-light.casan-enterprise [class*="after:bg-[#36f4a4]"]:after,
body.casan-enterprise [class*="hover:after:bg-[#36F4A4]"]:hover:after,
body.casan-enterprise [class*="hover:after:bg-[#36f4a4]"]:hover:after {
  background-color: var(--casan-accent) !important;
}

/* enterprise-redesign leftovers */
body:has(.enterprise-redesign) {
  --color-icon-dark-bg: var(--casan-cta);
  --color-icon-dark-symbol: #0b0a14;
}

body:has(.enterprise-redesign) [data-component-name="contact-form-submit"]:not(:disabled),
body:has(.enterprise-redesign)
  [data-component-name="tco-webinar-modal"]
  [data-component-name="contact-form-submit"]:not(:disabled) {
  background-color: var(--casan-cta) !important;
  background-image: none !important;
  border-color: var(--casan-cta) !important;
  color: var(--casan-cta-on) !important;
}

body:has(.enterprise-redesign) [data-component-name="tco-webinar-modal"] [data-component-name="kicker"],
body:has(.enterprise-redesign) [data-component-name="ccs-contact-modal"] [data-component-name="kicker"] {
  color: var(--casan-accent-soft) !important;
}

body:has(.enterprise-redesign) [data-component-name="ccs-contact-modal"] input[type="radio"],
body:has(.enterprise-redesign) [data-component-name="tco-webinar-modal"] input[type="radio"] {
  accent-color: var(--casan-accent) !important;
}

body:has(.enterprise-redesign)
  [data-component-name="ccs-contact-modal"]
  :is(input, select, textarea, div):focus-visible:not(:disabled),
body:has(.enterprise-redesign)
  [data-component-name="tco-webinar-modal"]
  :is(input, select, textarea, div):focus-visible:not(:disabled) {
  outline-color: var(--casan-accent) !important;
}

body:has(.enterprise-redesign)
  [data-component-name="ccs-contact-modal"]
  :is(input, select, textarea, div):has(+ [id$="-error"]),
body:has(.enterprise-redesign)
  [data-component-name="tco-webinar-modal"]
  [id$="-error"] {
  box-shadow: 0 0 0 2px var(--casan-accent) !important;
}

body:has(.enterprise-redesign)
  [data-component-name="tco-webinar-modal"]
  [id$="-error"] {
  background-color: var(--casan-accent) !important;
  color: #151515 !important;
}

.\[\&_p\:first-of-type\]\:bg-\[\#2FDF4A\] p:first-of-type,
.\[\&_p\:first-of-type\]\:bg-\[\#2fdf4a\] p:first-of-type {
  background-color: var(--casan-accent) !important;
  background-image: none !important;
}

/* Soft green washes → indigo mist (cards / chips that used pale lime) */
.bg-\[\#e7fdd2\],
.bg-\[\#e5fbba\],
.bg-\[\#d4f9e0\],
.bg-\[\#c1fbd4\],
.bg-\[\#d5f2d8\],
.bg-\[\#ecfccb\],
.bg-\[\#f0fbcc\],
.bg-\[\#F0FBCC\],
.bg-\[\#f4fddc\],
.bg-\[\#F4FDDC\],
.bg-\[\#eefab3\],
.bg-\[\#EEFAB3\],
[class*="bg-[#f0fbcc]"],
[class*="bg-[#F0FBCC]"],
[class*="bg-[#f4fddc]"],
[class*="bg-[#F4FDDC]"] {
  background-color: var(--casan-accent-mist) !important;
}

/* Semantic cream/olive utilities that still resolve via CSS variables */
.bg-section-light-bg,
.md\:bg-section-light-bg {
  background-color: #f5f4ff !important;
}

.bg-card-base-bg,
.bg-card-yellow-green-bg {
  background-color: #eeedfc !important;
}

/* Hide feature-carousel prev / pause / next controls */
body.casan-enterprise [aria-label="Carousel controls"],
body.v2-light.casan-enterprise [aria-label="Carousel controls"] {
  display: none !important;
}

/* Nav: keep visited links white on dark enterprise chrome */
.bk-header a:link,
.bk-header a:visited,
.bk-header a:hover,
.bk-header a:active {
  color: inherit;
}

/* Shared footer wordmark — don't let enterprise img filters / boxes squeeze it */
footer[data-component-name="footer"] img[data-component-name="casan-logo"] {
  width: auto !important;
  height: 2rem !important;
  max-width: none !important;
  object-fit: contain !important;
  filter: none !important;
  aspect-ratio: auto !important;
}

/* Hide any leftover Casan cookie / consent chrome */
[data-component-name="cookie-notice-description"],
#dux-privacy {
  display: none !important;
}

/* Outcomes / capability 3-up — equal card + image heights */
body.casan-enterprise .outcomes-item picture,
body.casan-enterprise .outcomes-item [data-component-name="image"] {
  display: block;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

/* Capability row (213) and solutions row (256) — crop mixed stock ratios to one band */
body.casan-enterprise .outcomes-item img[height="213"] {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 455 / 213;
  object-fit: cover;
  object-position: center;
}

body.casan-enterprise .outcomes-item img[height="256"] {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 455 / 256;
  object-fit: cover;
  object-position: center;
}

@media (min-width: 768px) {
  body.casan-enterprise [class*="snap-x"].flex {
    align-items: stretch;
  }

  body.casan-enterprise .outcomes-item {
    display: flex;
    flex-direction: column;
    align-self: stretch;
  }

  body.casan-enterprise .outcomes-item > .flex.flex-col {
    flex: 1 1 auto;
    height: 100%;
    min-height: 100%;
  }

  body.casan-enterprise .outcomes-item [data-component-name="card"] {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    height: 100%;
  }

  /* Text block fills remaining cream area under the fixed image band */
  body.casan-enterprise .outcomes-item [data-component-name="card"] > div:last-child {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
  }

  body.casan-enterprise
    .outcomes-item
    [data-component-name="card"]
    [data-component-name="heading-group"] {
    flex: 1 1 auto;
  }
}
