:root {
  --White: #ffffff;
  --Light_purple: #7c5af0;
  --accent_purple: #a67cff;
  --dark_purple: #2A1454;
  --purple_bg: #0d0b14;
  --black_bg: #050709;
}

/* ── GLOBAL ── */
body {
  background-color: var(--purple_bg) !important;
  color: var(--White) !important;
}

a:hover, a:active, a:focus {
  outline: 0 !important;
}

/* ── HIDE PAGE TITLE ── */
.page-header,
.entry-header,
.elementor-page-title {
  display: none !important;
}

/* ── HIDE FOOTER BRANDING ── */
.site-footer,
.site-info,
footer.elementor-location-footer,
#colophon {
  display: none !important;
}

/* ── GRADIENT TEXT ── */
.grad {
  background: linear-gradient(to right, var(--Light_purple) 0%, var(--White) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* ── GRADIENT ORBS ── */
.gradient_bg_right {
  position: relative;
  overflow: hidden;
}
.gradient_bg_right::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 322px;
  height: 308px;
  border-radius: 50%;
  filter: blur(150px);
  margin-right: -5%;
  margin-top: -5%;
  background: var(--Light_purple);
  opacity: 0.25;
  pointer-events: none;
}

.gradient_bg_center {
  position: relative;
  overflow: hidden;
}
.gradient_bg_center::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 45%;
  width: 322px;
  height: 308px;
  border-radius: 50%;
  filter: blur(150px);
  background: var(--Light_purple);
  opacity: 0.25;
  pointer-events: none;
}

.gradient_bg_img {
  position: relative;
}
.gradient_bg_img img {
  z-index: 1;
  position: relative;
}
.gradient_bg_img::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 322px;
  height: 308px;
  border-radius: 50%;
  filter: blur(150px);
  background: var(--Light_purple);
  opacity: 0.25;
  pointer-events: none;
}

/* ── SERVICE CARDS HOVER ── */
.service_hover:hover .elementor-heading-title {
  color: var(--White) !important;
}
.service_hover:hover .e-font-icon-svg {
  transform: rotate(-90deg);
  fill: var(--White) !important;
}
.service_hover {
  transition: all 0.3s ease;
}

/* ── SKILLS HOVER ── */
.skill_hover:hover .elementor-image-box-title {
  color: var(--Light_purple) !important;
}

/* Remove ALL filters from image box images globally */
.elementor-image-box-img img {
  filter: none !important;
  opacity: 1 !important;
}

/* Only apply greyscale if skill_hover class is explicitly set */


/* ── ELEMENTOR HEADINGS ── */
.elementor-heading-title {
  color: var(--White);
}

/* ── HELLO ELEMENTOR OVERRIDES ── */
.elementor-section,
.elementor-container {
  position: relative;
}

/* ── MOBILE NAV ── */
.elementor-nav-menu--dropdown,
.elementor-nav-menu__container.elementor-nav-menu--dropdown {
  background-color: var(--purple_bg) !important;
}
.elementor-nav-menu--dropdown a {
  text-align: center !important;
}

.site-header {
  display: none !important;
}
