/* ===== vd-hero-polish:START ===== */
/* Cline — hero polish. Layout & content unchanged; styling only.
   Appended to Additional CSS so it wins on cascade and is easy to remove. */

/* Richer, layered background: violet key-light, mint counter-glow, deep base */
.elementor-section.vd-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(900px 480px at 82% 12%, rgba(108, 77, 246, .38), transparent 60%),
    radial-gradient(680px 420px at 8% 92%, rgba(0, 184, 148, .18), transparent 62%),
    radial-gradient(1200px 700px at 50% 120%, rgba(75, 50, 195, .30), transparent 65%),
    linear-gradient(180deg, #0B0D12 0%, #11151f 42%, #161A26 100%);
}

/* Decorative animated aurora orbs (purely cosmetic, non-interactive) */
.vd-hero::before,
.vd-hero::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
  z-index: 0;
  will-change: transform, opacity;
}
.vd-hero::before {
  width: 360px; height: 360px;
  top: -120px; right: -100px;
  background: radial-gradient(circle at 32% 30%, rgba(108, 77, 246, .55), rgba(108, 77, 246, 0) 70%);
  animation: vdFloat 15s ease-in-out infinite;
}
.vd-hero::after {
  width: 300px; height: 300px;
  bottom: -120px; left: -100px;
  background: radial-gradient(circle at 60% 40%, rgba(0, 184, 148, .42), rgba(0, 184, 148, 0) 70%);
  animation: vdFloat 19s ease-in-out infinite reverse;
}
@keyframes vdFloat {
  0%, 100% { transform: translate3d(0, 0, 0) scale(1); opacity: .85; }
  50%      { transform: translate3d(-20px, 24px, 0) scale(1.07); opacity: 1; }
}

/* Lift hero content above the glow orbs */
.vd-hero .elementor-container { position: relative; z-index: 1; }

/* Headline — a touch more presence & depth */
.elementor-section.vd-hero h1 {
  letter-spacing: -0.025em;
  text-shadow: 0 8px 42px rgba(0, 0, 0, .45);
}

/* Animated gradient shimmer on the highlighted phrase */
.vd-hero h1 em {
  background: linear-gradient(92deg, var(--vd-violet), var(--vd-mint), var(--vd-violet));
  background-size: 200% 100%;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: vdShimmer 6.5s ease-in-out infinite;
}
@keyframes vdShimmer {
  0%, 100% { background-position: 0% 50%; }
  50%      { background-position: 100% 50%; }
}

/* Eyebrow pill — live pulse dot + gentle glow */
.vd-hero .vd-eyebrow { animation: vdPulseRing 3s ease-in-out infinite; }
.vd-hero .vd-eyebrow .elementor-heading-title::before {
  content: "";
  display: inline-block;
  width: 7px; height: 7px;
  margin-right: 9px;
  border-radius: 50%;
  background: var(--vd-mint);
  vertical-align: middle;
  animation: vdDot 2s ease-out infinite;
}
@keyframes vdDot {
  0%   { box-shadow: 0 0 0 0 rgba(0, 184, 148, .55); }
  70%  { box-shadow: 0 0 0 8px rgba(0, 184, 148, 0); }
  100% { box-shadow: 0 0 0 0 rgba(0, 184, 148, 0); }
}
@keyframes vdPulseRing {
  0%, 100% { box-shadow: 0 6px 20px rgba(0, 184, 148, .10); }
  50%      { box-shadow: 0 6px 28px rgba(0, 184, 148, .28); }
}

/* Buttons — lift + glow on hover (backgrounds/colours untouched) */
.vd-hero .elementor-button {
  transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease, color .2s ease;
  will-change: transform;
}
.vd-hero .elementor-button:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(108, 77, 246, .42);
}

/* Trust card — lift + brighten border/glow on hover */
.vd-hero-card {
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease, background-color .25s ease;
}
.vd-hero-card:hover {
  transform: translateY(-4px);
  border-color: rgba(108, 77, 246, .45);
  background: rgba(255, 255, 255, .07);
  box-shadow: 0 24px 60px rgba(11, 13, 18, .5);
}

/* Trust rows — subtle highlight + icon tile glow on hover */
.vd-hero-row { transition: background-color .2s ease; border-radius: 10px; }
.vd-hero-row:hover { background: rgba(255, 255, 255, .04); }
.vd-hero-row .elementor-icon-box-icon {
  transition: transform .2s ease, box-shadow .2s ease;
}
.vd-hero-row:hover .elementor-icon-box-icon {
  transform: translateY(-1px) scale(1.06);
  box-shadow: 0 8px 18px rgba(108, 77, 246, .35);
}

/* Respect reduced-motion preferences */
@media (prefers-reduced-motion: reduce) {
  .vd-hero::before, .vd-hero::after,
  .vd-hero h1 em,
  .vd-hero .vd-eyebrow,
  .vd-hero .vd-eyebrow .elementor-heading-title::before { animation: none !important; }
  .vd-hero .elementor-button:hover,
  .vd-hero-card:hover { transform: none; }
}
/* ===== vd-hero-polish:END ===== */
