/*
 * Site-level CSS that WordPress/Elementor printed inline and the Laravel renderer needs.
 * Keep this file tiny — the design itself comes from the published Elementor CSS in /wp-content.
 */
.elementor-message[hidden] { display: none; }
.venda-hp { position: absolute !important; left: -9999px !important; }
.e-loop-item[hidden] { display: none !important; }
.ti-widget .ti-review-content.ti-show-all { -webkit-line-clamp: unset !important; max-height: none !important; }

/* Loop grid items must not grow past their 1fr column because of a large featured image
   (e.g. the 1920px "custom" image size in loop template 6711 used by related/blog posts). */
.elementor-loop-container.elementor-grid > .e-loop-item { min-width: 0; }

/* Safety net for header site logo & nav SVGs */
.elementor-widget-theme-site-logo img,
.elementor-widget-theme-site-logo svg,
.elementor-element-7734af8 img {
  max-width: 130px !important;
  height: auto !important;
  display: block;
}

.elementor-widget-nav-menu svg,
.elementor-widget-mega-menu svg,
.elementor-widget-icon-box svg,
.elementor-widget-icon-list svg {
  max-width: 100%;
}

/* Inline SVG icons (Elementor "Inline Font Icons"): zero-specificity defaults, Elementor's own rules win. */
:where(.e-font-icon-svg) { display: inline-block; width: 1em; height: 1em; fill: currentColor; }

/* ---- Standardized article bodies (blog posts / services / case studies) ---- */
.venda-article > :first-child { margin-top: 0; }
.venda-article figure { margin: 1.75em 0; }
.venda-article figure img { display: block; max-width: 100%; height: auto; border-radius: var(--venda-radius-sm, 10px); }
.venda-article figcaption { margin-top: .5em; font-size: .875em; opacity: .7; }
.venda-article .venda-embed { position: relative; aspect-ratio: 16 / 9; }
.venda-article .venda-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: var(--venda-radius-sm, 10px); }
.venda-article .venda-button-row { margin: 1.5em 0; }
.venda-article .venda-button {
  display: inline-flex; align-items: center; gap: .5em; padding: 16px 24px; border-radius: var(--venda-radius-pill, 999px);
  background: var(--e-global-color-vamtam_accent_3, #171D2E); color: #fff; text-decoration: none; font-weight: 500;
  transition: transform .2s ease, opacity .2s ease;
}
.venda-article .venda-button:hover { transform: translateY(-1px); opacity: .92; color: #fff; }
.venda-article table { width: 100%; border-collapse: collapse; margin: 1.5em 0; font-size: .95em; }
.venda-article th, .venda-article td { border: 1px solid rgba(23, 29, 46, .12); padding: .65em .8em; text-align: left; vertical-align: top; }
.venda-article th { background: rgba(23, 29, 46, .04); font-weight: 600; }
.venda-article blockquote { margin: 1.5em 0; padding: .25em 0 .25em 1.25em; border-left: 3px solid var(--e-global-color-vamtam_accent_1, #0052FF); }
.venda-article .has-text-align-center { text-align: center; }
.venda-article .has-text-align-right { text-align: right; }
.venda-article .has-text-align-justify { text-align: justify; }

/* Smooth scrolling & overflow safety */
html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
}

/* Remove background & border on Read More / View Project buttons across all loop cards and portfolio grids */
.e-loop-item .elementor-button,
.venda-card--loop .elementor-button,
.elementor-element-51c1714c .elementor-button,
.elementor-element-2cf91eb .elementor-button,
.elementor-element-429e9ea .elementor-button,
.elementor-987959 .elementor-element-429e9ea .elementor-button,
.elementor-widget-loop-grid .e-loop-item .elementor-button,
.e-loop-item .elementor-widget-button .elementor-button {
  background-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
  border-style: none !important;
  border-width: 0 !important;
  border-color: transparent !important;
  outline: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  color: #0F172A !important;
  font-weight: 600 !important;
}

.e-loop-item .elementor-button:hover,
.e-loop-item .elementor-button:focus,
.venda-card--loop .elementor-button:hover,
.venda-card--loop .elementor-button:focus,
.elementor-element-51c1714c .elementor-button:hover,
.elementor-element-51c1714c .elementor-button:focus,
.elementor-element-2cf91eb .elementor-button:hover,
.elementor-element-2cf91eb .elementor-button:focus,
.elementor-element-429e9ea .elementor-button:hover,
.elementor-987959 .elementor-element-429e9ea .elementor-button:hover,
.elementor-widget-loop-grid .e-loop-item .elementor-button:hover,
.e-loop-item .elementor-widget-button .elementor-button:hover {
  background-color: transparent !important;
  background: transparent !important;
  border: none !important;
  border-style: none !important;
  border-width: 0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
  color: #0052FF !important;
}

.e-loop-item .elementor-button:hover .elementor-button-icon,
.venda-card--loop .elementor-button:hover .elementor-button-icon,
.elementor-element-51c1714c .elementor-button:hover .elementor-button-icon,
.elementor-element-2cf91eb .elementor-button:hover .elementor-button-icon,
.elementor-element-429e9ea .elementor-button:hover .elementor-button-icon {
  transform: translateX(4px) !important;
  color: #0052FF !important;
  transition: transform 0.2s ease, color 0.2s ease !important;
}

/* Prominent dark pill Load More button across loop grids (e.g. /our-work/) */
.elementor-load-more-button,
.e-loop__load-more,
.elementor-widget-loop-grid a.elementor-button:not(.e-loop-item .elementor-button),
.elementor-widget-loop-grid button.elementor-button:not(.e-loop-item .elementor-button) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #0A0D14 !important;
  background-color: #0A0D14 !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 9999px !important;
  padding: 14px 38px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
  text-decoration: none !important;
  box-shadow: 0 4px 16px rgba(10, 13, 20, 0.18) !important;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
  cursor: pointer !important;
}

.elementor-load-more-button:hover,
.e-loop__load-more:hover,
.elementor-widget-loop-grid a.elementor-button:not(.e-loop-item .elementor-button):hover,
.elementor-widget-loop-grid button.elementor-button:not(.e-loop-item .elementor-button):hover {
  background: #0052FF !important;
  background-color: #0052FF !important;
  color: #FFFFFF !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 8px 24px rgba(0, 82, 255, 0.35) !important;
}

/* Google Calendar Appointment Button - Venda Brand Blue */
.calendar-scheduling-button,
button.calendar-scheduling-button,
.qxCTlb,
button.qxCTlb,
button[class*="qxCTlb"],
[data-elementor-type="header"] .calendar-scheduling-button,
.elementor-element-36d87d7 .calendar-scheduling-button,
.elementor-element-36d87d7 button,
.elementor-element-6341da4 button,
.elementor-element-01dd2f7 button,
.elementor-element-31e6748 button,
.elementor-element-2dee6ac button {
  background-color: #0052FF !important;
  background: #0052FF !important;
  color: #FFFFFF !important;
  border-radius: 999px !important;
  border: none !important;
  font-weight: 600 !important;
  transition: all 0.25s ease !important;
}

.calendar-scheduling-button:hover,
button.calendar-scheduling-button:hover,
.qxCTlb:hover,
button.qxCTlb:hover,
button[class*="qxCTlb"]:hover,
[data-elementor-type="header"] .calendar-scheduling-button:hover,
.elementor-element-36d87d7 .calendar-scheduling-button:hover,
.elementor-element-36d87d7 button:hover,
.elementor-element-6341da4 button:hover,
.elementor-element-01dd2f7 button:hover,
.elementor-element-31e6748 button:hover,
.elementor-element-2dee6ac button:hover {
  background-color: #0040CC !important;
  background: #0040CC !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 16px rgba(0, 82, 255, 0.4) !important;
  transform: translateY(-1px);
}

/* Book a discovery call in mega menu */
.elementor-element-95c7414 .elementor-button {
  background-color: #0052FF !important;
  color: #FFFFFF !important;
  border-radius: 999px !important;
}
.elementor-element-95c7414 .elementor-button:hover {
  background-color: #0040CC !important;
  box-shadow: 0 4px 16px rgba(0, 82, 255, 0.35) !important;
}

/* ==========================================================================
   Header Mega Menu & Dropdown Panels (Strictly Hidden on First Load)
   ========================================================================== */
.elementor-widget-n-menu,
.elementor-widget-n-menu .elementor-widget-container,
.e-n-menu,
.e-n-menu-wrapper,
.e-n-menu-heading,
.e-n-menu-item {
  overflow: visible !important;
}

.elementor-widget-n-menu {
  position: static !important;
}

.e-n-menu {
  position: static !important;
}

.e-n-menu-wrapper {
  position: static !important;
}

.e-n-menu-heading {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  position: relative !important;
  overflow: visible !important;
}

.e-n-menu-item {
  position: relative !important;
  list-style: none !important;
  overflow: visible !important;
}

/* Header container stack and overflow: position relative activates z-index above body */
header,
header.elementor-element,
header.elementor-location-header,
.elementor-location-header,
.elementor-element-d8737ed,
.elementor-element-337c04f,
.elementor-element-693adcc {
  position: relative;
  z-index: 999999 !important;
  overflow: visible !important;
}

/* Ensure sticky header remains fixed with top-level z-index and clean background */
.elementor-sticky--active {
  position: fixed !important;
  z-index: 1000000 !important;
  background-color: rgba(255, 255, 255, 0.98) !important;
  backdrop-filter: blur(12px) !important;
  -webkit-backdrop-filter: blur(12px) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06) !important;
}

[data-theme="dark"] .elementor-sticky--active {
  background-color: rgba(10, 13, 20, 0.98) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4) !important;
}

/* Base state: Dropdown / Mega Menu panels are strictly HIDDEN on load */
.e-n-menu-content {
  display: none !important;
  position: absolute !important;
  top: 100% !important;
  left: 0;
  width: max-content !important;
  max-width: calc(100vw - 32px) !important;
  z-index: 1000001 !important;
  pointer-events: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  margin-top: 8px !important;
  border-radius: 16px !important;
  background: transparent !important;
  box-sizing: border-box !important;
  transform: translateY(6px) !important;
  transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1), transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.2s ease !important;
}

/* Right-align dropdowns for items near the right edge (About, Resources) */
.e-n-menu-item:nth-child(5) > .e-n-menu-content,
.e-n-menu-item:nth-child(6) > .e-n-menu-content {
  left: auto !important;
  right: 0 !important;
}

/* Invisible bridge between menu title and dropdown so cursor doesn't drop hover */
.e-n-menu-content::before {
  content: "" !important;
  position: absolute !important;
  top: -24px !important;
  left: 0 !important;
  right: 0 !important;
  height: 24px !important;
  background: transparent !important;
  pointer-events: auto !important;
}

/* ACTIVE / HOVER STATE: Only the active or hovered item shows its dropdown */
.e-n-menu-content.e-active,
.e-n-menu-item.e-active > .e-n-menu-content,
.e-n-menu-item:hover > .e-n-menu-content,
.e-n-menu-item:focus-within > .e-n-menu-content {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) !important;
}

/* Ensure the child container inside is displayed as flex */
.e-n-menu-content.e-active > .e-con,
.e-n-menu-content.e-active > .e-con-full,
.e-n-menu-item.e-active > .e-n-menu-content > .e-con,
.e-n-menu-item.e-active > .e-n-menu-content > .e-con-full,
.e-n-menu-item:hover > .e-n-menu-content > .e-con,
.e-n-menu-item:hover > .e-n-menu-content > .e-con-full,
.e-n-menu-item:focus-within > .e-n-menu-content > .e-con,
.e-n-menu-item:focus-within > .e-n-menu-content > .e-con-full {
  display: flex !important;
}

/* Dropdown arrow toggle icon state */
.e-n-menu-dropdown-icon-opened {
  display: none !important;
}
.e-n-menu-dropdown-icon-closed {
  display: inline-flex !important;
}

.e-n-menu-item.e-active .e-n-menu-dropdown-icon-opened,
.e-n-menu-item:hover .e-n-menu-dropdown-icon-opened,
button.e-n-menu-dropdown-icon[aria-expanded="true"] .e-n-menu-dropdown-icon-opened {
  display: inline-flex !important;
}

.e-n-menu-item.e-active .e-n-menu-dropdown-icon-closed,
.e-n-menu-item:hover .e-n-menu-dropdown-icon-closed,
button.e-n-menu-dropdown-icon[aria-expanded="true"] .e-n-menu-dropdown-icon-closed {
  display: none !important;
}

.e-n-menu-item .e-n-menu-title,
.e-n-menu-item .e-n-menu-title a,
.e-n-menu-item .e-n-menu-dropdown-icon {
  cursor: pointer !important;
}

/* Dropdown Container Card Styling */
.e-n-menu-content > .e-con {
  background: #FFFFFF !important;
  border-radius: 16px !important;
  box-shadow: 0 16px 48px rgba(10, 13, 20, 0.12), 0 4px 16px rgba(10, 13, 20, 0.06) !important;
  border: 1px solid rgba(10, 13, 20, 0.06) !important;
  overflow: hidden !important;
  padding: 24px !important;
  box-sizing: border-box !important;
}

[data-theme="dark"] .e-n-menu-content > .e-con {
  background: #111622 !important;
  border: 1px solid rgba(255, 255, 255, 0.08) !important;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.4), 0 4px 16px rgba(0, 0, 0, 0.2) !important;
}

/* Specific mega menu container for Capabilities / Services (54d6858 & 6e6330b) */
.elementor-element-54d6858,
.elementor-element-6e6330b {
  width: clamp(740px, 66vw, 980px) !important;
  max-width: calc(100vw - 32px) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
}

.elementor-element-029ef91,
.elementor-element-8161d9f {
  display: flex !important;
  flex-direction: row !important;
  gap: 24px !important;
  width: 100% !important;
}

.elementor-element-ecbd9aa,
.elementor-element-ef9e3eb {
  flex: 1 1 70% !important;
}

.elementor-element-4f68efc,
.elementor-element-28dd16b {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px 16px !important;
}

.elementor-element-e375595,
.elementor-element-5e2a017 {
  flex: 0 0 240px !important;
  border-left: 1px solid rgba(0, 0, 0, 0.06) !important;
  padding-left: 20px !important;
}

[data-theme="dark"] .elementor-element-e375595,
[data-theme="dark"] .elementor-element-5e2a017 {
  border-left-color: rgba(255, 255, 255, 0.08) !important;
}

.elementor-element-3f60f93,
.elementor-element-96e2c7f {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding-top: 16px !important;
  border-top: 1px solid rgba(0, 0, 0, 0.06) !important;
}

[data-theme="dark"] .elementor-element-3f60f93,
[data-theme="dark"] .elementor-element-96e2c7f {
  border-top-color: rgba(255, 255, 255, 0.08) !important;
}

/* Dropdown containers for Industries, About, Resources */
.elementor-element-2c06a62,
.elementor-element-5679e33,
.elementor-element-310ade7,
.elementor-element-12d6c43,
.elementor-element-e2bcb35,
.elementor-element-080c4ab {
  min-width: 260px !important;
  max-width: 320px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
}

/* Mobile / Tablet layout when in dropdown mode */
.e-n-menu[data-layout="dropdown"] .e-n-menu-wrapper {
  display: none !important;
  position: absolute !important;
  top: 100% !important;
  left: 0 !important;
  width: 100% !important;
  background: #FFFFFF !important;
  box-shadow: 0 16px 40px rgba(0,0,0,0.1) !important;
  z-index: 99998 !important;
}

[data-theme="dark"] .e-n-menu[data-layout="dropdown"] .e-n-menu-wrapper {
  background: #0A0D14 !important;
}

.elementor-widget-n-menu.e-n-menu-open .e-n-menu[data-layout="dropdown"] .e-n-menu-wrapper {
  display: block !important;
}

.e-n-menu[data-layout="dropdown"] .e-n-menu-heading {
  flex-direction: column !important;
  align-items: stretch !important;
}

.e-n-menu[data-layout="dropdown"] .e-n-menu-content {
  position: static !important;
  width: 100% !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  transform: none !important;
}

/* Footer: Remove Galaxy background image & restore Footer Logo */
.elementor-element-869252c,
[data-id="869252c"],
footer [data-id="869252c"] {
  background-image: none !important;
  background-color: transparent !important;
}

.elementor-element-1b1f9fe,
footer .elementor-element-1b1f9fe {
  display: block !important;
}

/* Mega Menu Icon Boxes - Flat Normal Size Icons, NO Backgrounds */
.e-n-menu-content .elementor-widget-icon-box .elementor-icon-box-wrapper,
.elementor-widget-n-menu .elementor-widget-icon-box .elementor-icon-box-wrapper {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  background: transparent !important;
  box-shadow: none !important;
}

.e-n-menu-content .elementor-widget-icon-box .elementor-icon-box-icon,
.elementor-widget-n-menu .elementor-widget-icon-box .elementor-icon-box-icon {
  margin: 0 !important;
  flex-shrink: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.e-n-menu-content .elementor-widget-icon-box .elementor-icon,
.elementor-widget-n-menu .elementor-widget-icon-box .elementor-icon,
.elementor-widget-icon-box.elementor-view-stacked .elementor-icon {
  width: auto !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  color: #171D2E !important;
  fill: #171D2E !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.e-n-menu-content .elementor-widget-icon-box .elementor-icon svg,
.elementor-widget-n-menu .elementor-widget-icon-box .elementor-icon svg,
.elementor-widget-icon-box.elementor-view-stacked .elementor-icon svg {
  width: 18px !important;
  height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  fill: #171D2E !important;
  color: #171D2E !important;
  transition: transform 0.2s ease, color 0.2s ease, fill 0.2s ease !important;
}

.e-n-menu-content .elementor-widget-icon-box:hover .elementor-icon svg,
.elementor-widget-n-menu .elementor-widget-icon-box:hover .elementor-icon svg,
.elementor-widget-mega-menu .elementor-widget-icon-box:hover .elementor-icon svg {
  transform: scale(1.15) !important;
  fill: #0052FF !important;
  color: #0052FF !important;
}

.e-n-menu-content .elementor-widget-icon-box .elementor-icon-box-title,
.elementor-widget-n-menu .elementor-widget-icon-box .elementor-icon-box-title {
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.3 !important;
  margin: 0 !important;
  padding: 0 !important;
}

.e-n-menu-content .elementor-widget-icon-box .elementor-icon-box-title a,
.elementor-widget-n-menu .elementor-widget-icon-box .elementor-icon-box-title a {
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #0F172A !important;
  transition: color 0.2s ease !important;
  text-decoration: none !important;
}

.e-n-menu-content .elementor-widget-icon-box:hover .elementor-icon-box-title a,
.elementor-widget-n-menu .elementor-widget-icon-box:hover .elementor-icon-box-title a,
.elementor-widget-mega-menu .elementor-widget-icon-box:hover .elementor-icon-box-title a {
  color: #0052FF !important;
}

.elementor-widget-mega-menu .elementor-widget-icon-box .elementor-icon-box-title a {
  font-weight: 500 !important;
  color: #0F172A !important;
  transition: color 0.2s ease !important;
}

/* Flat icons for dropdown navigation menus (Industries, About, Resources) */
.e-n-menu-content .elementor-nav-menu .menu-item a,
.e-n-menu-content .sub-menu a {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 12px !important;
  border-radius: 8px !important;
  transition: all 0.2s ease !important;
  font-weight: 500 !important;
}

.e-n-menu-content .elementor-nav-menu .menu-item a:hover,
.e-n-menu-content .sub-menu a:hover {
  background: rgba(0, 82, 255, 0.06) !important;
  color: #0052FF !important;
}

/* Dedicated dropdown menu icon elements - always visible before hover in primary dark color */
.venda-menu-item-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 18px !important;
  height: 18px !important;
  margin-right: 10px !important;
  flex-shrink: 0 !important;
  color: #171D2E !important;
  opacity: 0.9 !important;
  transition: color 0.2s ease, transform 0.2s ease, opacity 0.2s ease !important;
}

.venda-menu-item-icon svg {
  width: 18px !important;
  height: 18px !important;
  stroke: currentColor !important;
  fill: none !important;
  display: block !important;
}

.e-n-menu-content a:hover .venda-menu-item-icon,
.elementor-nav-menu .menu-item a:hover .venda-menu-item-icon {
  color: #0052FF !important;
  opacity: 1 !important;
  transform: scale(1.15) !important;
}

[data-theme="dark"] .e-n-menu-content .elementor-widget-icon-box .elementor-icon,
[data-theme="dark"] .elementor-widget-n-menu .elementor-widget-icon-box .elementor-icon,
[data-theme="dark"] .venda-menu-item-icon {
  color: #E2E8F0 !important;
  fill: #E2E8F0 !important;
}

[data-theme="dark"] .e-n-menu-content .elementor-widget-icon-box:hover .elementor-icon svg,
[data-theme="dark"] .elementor-widget-n-menu .elementor-widget-icon-box:hover .elementor-icon svg,
[data-theme="dark"] .e-n-menu-content a:hover .venda-menu-item-icon,
[data-theme="dark"] .elementor-nav-menu .menu-item a:hover .venda-menu-item-icon {
  color: #38BDF8 !important;
  fill: #38BDF8 !important;
}

/* Fallback ::before pseudo-icons in case JS hasn't run yet */
.e-n-menu-content .elementor-nav-menu .menu-item a:not(:has(.venda-menu-item-icon))::before {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  flex-shrink: 0;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  opacity: 0.9;
  transition: opacity 0.2s ease, transform 0.2s ease;
}

.e-n-menu-content .elementor-nav-menu .menu-item a:not(:has(.venda-menu-item-icon)):hover::before {
  opacity: 1;
  transform: scale(1.15);
}

/* Industries flat icons (fallback) */
.e-n-menu-content a[href*="e-commerce"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2L3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4z'%3E%3C/path%3E%3Cline x1='3' y1='6' x2='21' y2='6'%3E%3C/line%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'%3E%3C/path%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="education"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 10v6M2 10l10-5 10 5-10 5z'%3E%3C/path%3E%3Cpath d='M6 12v5c3 3 9 3 12 0v-5'%3E%3C/path%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="events"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4' width='18' height='18' rx='2' ry='2'%3E%3C/rect%3E%3Cline x1='16' y1='2' x2='16' y2='6'%3E%3C/line%3E%3Cline x1='8' y1='2' x2='8' y2='6'%3E%3C/line%3E%3Cline x1='3' y1='10' x2='21' y2='10'%3E%3C/line%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="finance"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' y1='1' x2='12' y2='23'%3E%3C/line%3E%3Cpath d='M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6'%3E%3C/path%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="healthcare"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 12h-4l-3 9L9 3l-3 9H2'%3E%3C/path%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="logistics"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='1' y='3' width='15' height='13'%3E%3C/rect%3E%3Cpolygon points='16 8 20 8 23 11 23 16 16 16 16 8'%3E%3C/polygon%3E%3Ccircle cx='5.5' cy='18.5' r='2.5'%3E%3C/circle%3E%3Ccircle cx='18.5' cy='18.5' r='2.5'%3E%3C/circle%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="ngos"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.84 4.61a5.5 5.5 0 0 0-7.78 0L12 5.67l-1.06-1.06a5.5 5.5 0 0 0-7.78 7.78l1.06 1.06L12 21.23l7.78-7.78 1.06-1.06a5.5 5.5 0 0 0 0-7.78z'%3E%3C/path%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="real-estate"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z'%3E%3C/path%3E%3Cpolyline points='9 22 9 12 15 12 15 22'%3E%3C/polyline%3E%3C/svg%3E");
}

/* About flat icons (fallback) */
.e-n-menu-content a[href*="web-designers-in-nairobi"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2'%3E%3C/path%3E%3Ccircle cx='9' cy='7' r='4'%3E%3C/circle%3E%3Cpath d='M23 21v-2a4 4 0 0 0-3-3.87'%3E%3C/path%3E%3Cpath d='M16 3.13a4 4 0 0 1 0 7.75'%3E%3C/path%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="our-process"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='16 18 22 12 16 6'%3E%3C/polyline%3E%3Cpolyline points='8 6 2 12 8 18'%3E%3C/polyline%3E%3C/svg%3E");
}

/* Resources flat icons (fallback) */
.e-n-menu-content a[href*="backend-access"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z'%3E%3C/path%3E%3Cpath d='M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z'%3E%3C/path%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="guide"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpolygon points='16.24 7.76 14.12 14.12 7.76 16.24 9.88 9.88 16.24 7.76'%3E%3C/polygon%3E%3C/svg%3E");
}
.e-n-menu-content a[href*="faq"]:not(:has(.venda-menu-item-icon))::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23171D2E' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='10'%3E%3C/circle%3E%3Cpath d='M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3'%3E%3C/path%3E%3Cline x1='12' y1='17' x2='12.01' y2='17'%3E%3C/line%3E%3C/svg%3E");
}

/* ==========================================================================
   Our Services Accordion Section (Harmonized with Venda Design System)
   ========================================================================== */
/* Align Services container identically to Portfolio (250c1c6) and header */
.elementor-22 .elementor-element.elementor-element-v7s0c01,
.elementor-element.elementor-element-v7s0c01 {
  --display: flex;
  --flex-direction: column;
  --container-widget-width: 100%;
  --margin-top: 0%;
  --margin-bottom: 5%;
  --margin-left: 0%;
  --margin-right: 0%;
  --padding-top: 3%;
  --padding-bottom: 3%;
  --padding-left: 0%;
  --padding-right: 0%;
  width: 100% !important;
  box-sizing: border-box !important;
}

.elementor-element-v7s0c01 > .e-con-inner {
  max-width: var(--container-max-width, 1400px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.elementor-element-v7s0c01,
.elementor-element-v7s0w01,
.elementor-element-v7s0w01 > .elementor-widget-container,
.venda-services-section {
  position: relative;
  background-color: transparent;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
  font-family: inherit;
  padding: 0 !important;
  margin: 0 !important;
  overflow: visible !important;
}

.venda-services-container {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid;
  grid-template-columns: minmax(280px, 34%) 1fr;
  gap: clamp(40px, 5vw, 80px);
  align-items: start !important;
  box-sizing: border-box;
  position: relative !important;
}

/* Left Column: Fixed / Sticky strictly on desktop (>1024px); strictly static / unfixed on mobile and tablet */
.venda-services-left {
  position: static !important;
  top: auto !important;
  align-self: auto !important;
  height: auto !important;
  padding-right: 0 !important;
  z-index: auto !important;
}

@media (min-width: 1025px) {
  .venda-services-left {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 120px !important;
    align-self: start !important;
    height: fit-content !important;
    padding-right: 12px !important;
    z-index: 10 !important;
  }
}

.venda-services-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #64748B !important;
  margin-bottom: 12px !important;
}

.venda-services-eyebrow svg {
  color: #0052FF;
  flex-shrink: 0;
}

.venda-services-heading {
  font-family: var(--e-global-typography-vamtam_h2-font-family, inherit) !important;
  font-size: var(--e-global-typography-vamtam_h2-font-size, 46px) !important;
  font-weight: var(--e-global-typography-vamtam_h2-font-weight, 400) !important;
  line-height: var(--e-global-typography-vamtam_h2-line-height, 1em) !important;
  letter-spacing: -0.5px !important;
  color: var(--e-global-color-vamtam_accent_6, #000000) !important;
  text-transform: none !important;
  margin: 0 0 16px 0 !important;
}

@media (max-width: 1024px) {
  .venda-services-heading {
    font-size: 30px !important;
  }
}
@media (max-width: 767px) {
  .venda-services-heading {
    font-size: 23px !important;
  }
}

.venda-services-intro {
  font-size: 16px !important;
  line-height: 1.6 !important;
  color: #64748B !important;
  margin: 0 !important;
  max-width: 380px !important;
  font-weight: 400 !important;
}

/* Right Column */
.venda-services-right {
  display: flex;
  flex-direction: column;
}

.venda-service-item {
  border-top: 1px solid #E2E8F0;
  background: transparent !important;
  transition: border-color 0.25s ease;
}

.venda-service-item:last-child {
  border-bottom: 1px solid #E2E8F0;
}

/* Header row - strictly transparent, NO blue button styling */
.venda-services-section button.venda-service-header,
.venda-service-header {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  padding: 22px 0 !important;
  background: transparent !important;
  background-color: transparent !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
  cursor: pointer !important;
  text-align: left !important;
  outline: none !important;
  transition: all 0.2s ease !important;
}

.venda-service-title-group {
  display: flex;
  align-items: baseline;
  gap: clamp(16px, 3vw, 32px);
}

.venda-service-num {
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #94A3B8 !important;
  letter-spacing: 0.04em !important;
  min-width: 24px !important;
  transition: color 0.2s ease;
}

.venda-service-item.is-active .venda-service-num {
  color: #0052FF !important;
}

.venda-service-title {
  font-family: var(--e-global-typography-vamtam_h4-font-family, inherit) !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  letter-spacing: -0.2px !important;
  color: var(--e-global-color-vamtam_accent_6, #000000) !important;
  text-transform: none !important;
  transition: color 0.2s ease !important;
}

.venda-service-header:hover .venda-service-title {
  color: #0052FF !important;
}

.venda-service-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  font-size: 20px !important;
  font-weight: 300 !important;
  line-height: 1;
  color: #64748B;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1), color 0.2s ease;
  user-select: none;
}

.venda-service-header:hover .venda-service-toggle {
  color: #0052FF;
}

.venda-service-item.is-active .venda-service-toggle {
  transform: rotate(45deg);
  color: #0F172A;
}

/* Expandable content using grid template rows */
.venda-service-collapse {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.35s cubic-bezier(0.4, 0, 0.2, 1), opacity 0.3s ease;
  opacity: 0;
  overflow: hidden;
}

.venda-service-item.is-active .venda-service-collapse {
  grid-template-rows: 1fr;
  opacity: 1;
}

.venda-service-content {
  overflow: hidden;
  padding-bottom: 32px;
  padding-left: clamp(44px, 5.5vw, 64px);
}

.venda-service-desc {
  font-size: 0.95rem;
  line-height: 1.68;
  color: #64748B;
  max-width: 660px;
  margin: 0 0 20px 0;
  font-weight: 400;
}

/* Badges / Pill tags */
.venda-service-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 24px;
}

.venda-tag-pill {
  display: inline-flex;
  align-items: center;
  padding: 6px 14px;
  border-radius: 999px;
  border: 1px solid #E2E8F0;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  color: #334155 !important;
  background: #F8FAFC;
  text-decoration: none !important;
  transition: all 0.2s ease;
  cursor: pointer;
}

.venda-tag-pill:hover {
  border-color: #0052FF !important;
  color: #0052FF !important;
  background: #EFF6FF !important;
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(0, 82, 255, 0.12);
}

/* CTA Learn More Button */
.venda-service-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #0F172A;
  color: #FFFFFF !important;
  padding: 9px 20px;
  border-radius: 999px;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
  text-decoration: none !important;
  transition: all 0.22s ease;
  width: fit-content;
}

.venda-service-btn svg {
  transition: transform 0.22s ease;
}

.venda-service-btn:hover {
  background: #0052FF !important;
  color: #FFFFFF !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(0, 82, 255, 0.25);
}

.venda-service-btn:hover svg {
  transform: translateX(4px);
}

/* Responsive: Services on Mobile & Tablet */
@media (max-width: 1024px) {
  .elementor-element-v7s0c01 > .e-con-inner {
    padding-inline-start: max(var(--venda-gutter, 24px), 24px) !important;
    padding-inline-end: max(var(--venda-gutter, 24px), 24px) !important;
  }
  .venda-services-container {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    padding: 0 !important;
  }
  .venda-services-left {
    position: static !important;
    top: auto !important;
    height: auto !important;
    align-self: stretch !important;
    padding-right: 0 !important;
    margin-bottom: 8px !important;
    z-index: auto !important;
  }
  .venda-services-intro {
    max-width: 100% !important;
  }
}

@media (max-width: 900px) {
  .venda-services-container {
    display: flex !important;
    flex-direction: column !important;
    grid-template-columns: 1fr !important;
    gap: 28px !important;
    padding: 0 !important;
  }
  .venda-services-left {
    position: static !important;
    top: auto !important;
    height: auto !important;
    align-self: stretch !important;
    padding-right: 0 !important;
    margin-bottom: 8px !important;
    z-index: auto !important;
  }
  .venda-service-content {
    padding-left: 0 !important;
  }
  .venda-service-title-group {
    gap: 16px !important;
  }
}

@media (max-width: 767px) {
  .elementor-22 .elementor-element.elementor-element-v7s0c01,
  .elementor-element.elementor-element-v7s0c01 {
    --padding-top: 0%;
    --padding-bottom: 0%;
    --padding-left: 4%;
    --padding-right: 4%;
  }
  .elementor-element-v7s0c01 > .e-con-inner {
    padding-inline-start: 16px !important;
    padding-inline-end: 16px !important;
  }
}

@media (max-width: 640px) {
  .venda-services-section {
    padding: 10px 0 50px 0;
  }
  .venda-service-header {
    padding: 20px 0 !important;
  }
  .venda-service-num {
    font-size: 0.9rem;
    min-width: 20px;
  }
  .venda-service-title {
    font-size: 1.3rem !important;
  }
  .venda-service-toggle {
    font-size: 1.5rem;
  }
}

/* ==========================================================================
   Trustindex Testimonials Carousel - One Card at a Time on Mobile + Google Icon
   ========================================================================== */
.ti-widget .ti-footer .ti-profile-img img {
  content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 48 48'%3E%3Cpath fill='%23EA4335' d='M24 9.5c3.54 0 6.71 1.22 9.21 3.6l6.85-6.85C35.9 2.38 30.47 0 24 0 14.62 0 6.51 5.38 2.56 13.22l7.98 6.19C12.43 13.72 17.74 9.5 24 9.5z'/%3E%3Cpath fill='%234285F4' d='M46.98 24.55c0-1.57-.15-3.09-.38-4.55H24v9.02h12.94c-.58 2.96-2.26 5.48-4.78 7.18l7.73 6c4.51-4.18 7.09-10.36 7.09-17.65z'/%3E%3Cpath fill='%23FBBC05' d='M10.53 28.59c-.48-1.45-.76-2.99-.76-4.59s.27-3.14.76-4.59l-7.98-6.19C.92 16.46 0 20.12 0 24c0 3.88.92 7.54 2.56 10.78l7.97-6.19z'/%3E%3Cpath fill='%2334A853' d='M24 48c6.48 0 11.93-2.13 15.89-5.81l-7.73-6c-2.15 1.45-4.92 2.3-8.16 2.3-6.26 0-11.57-4.22-13.47-9.91l-7.98 6.19C6.51 42.62 14.62 48 24 48z'/%3E%3C/svg%3E") !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 50% !important;
  background: #ffffff !important;
  padding: 4px !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15) !important;
  display: block !important;
}

@media (max-width: 767px) {
  .ti-widget .ti-widget-container {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 16px !important;
  }

  .ti-widget .ti-footer {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 10px 0 !important;
    display: flex !important;
    justify-content: flex-start !important;
  }

  .ti-widget .ti-footer .ti-row {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    width: 100% !important;
  }

  .ti-widget .ti-reviews-container {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    position: relative !important;
  }

  .ti-widget .ti-reviews-container-wrapper {
    display: flex !important;
    width: 100% !important;
    gap: 0 !important;
  }

  .ti-widget .ti-review-item {
    flex: 0 0 100% !important;
    width: 100% !important;
    min-width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .ti-widget .ti-inner {
    border-radius: 16px !important;
    padding: 22px !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }

  .ti-widget .ti-controls {
    display: flex !important;
    justify-content: space-between !important;
    position: absolute !important;
    top: 50% !important;
    left: -4px !important;
    right: -4px !important;
    transform: translateY(-50%) !important;
    pointer-events: none !important;
    z-index: 10 !important;
  }

  .ti-widget .ti-next,
  .ti-widget .ti-prev {
    pointer-events: auto !important;
    background: rgba(255, 255, 255, 0.15) !important;
    border-radius: 50% !important;
    width: 36px !important;
    height: 36px !important;
    backdrop-filter: blur(4px) !important;
  }
}

/* Loop template 987959 styles */
.elementor-987959 .elementor-element.elementor-element-f135336 {
  --display: flex;
  --background-transition: 0.3s;
  border-style: solid;
  --border-style: solid;
  border-width: 1px 1px 1px 1px;
  --border-top-width: 1px;
  --border-right-width: 1px;
  --border-bottom-width: 1px;
  --border-left-width: 1px;
  border-color: #DBDBDBCC;
  --border-color: #DBDBDBCC;
  border-radius: 4px 4px 4px 4px;
  --padding-top: 20px;
  --padding-bottom: 20px;
  --padding-left: 20px;
  --padding-right: 20px;
}
.elementor-987959 .elementor-element.elementor-element-f135336:hover {
  background-color: var(--e-global-color-vamtam_accent_4);
}
.elementor-987959 .elementor-element.elementor-element-f135336.e-con:hover {
  --e-con-transform-scale: 1.01;
}
.elementor-987959 .elementor-element.elementor-element-ba633a7 .elementor-heading-title {
  font-size: 20px;
}
.elementor-987959 .elementor-element.elementor-element-429e9ea .elementor-button {
  background-color: transparent;
  fill: var(--e-global-color-vamtam_accent_3);
  color: var(--e-global-color-vamtam_accent_3);
  border-style: none;
}
.elementor-987959 .elementor-element.elementor-element-429e9ea > .elementor-widget-container {
  border-style: none;
}
.elementor-987959 .elementor-element.elementor-element-429e9ea .elementor-button-content-wrapper {
  flex-direction: row;
}

/* ==========================================================================
   Industry Pages - Dark Hero Section
   Uses Venda's signature dark navy (#171D2E) for the hero section background
   ========================================================================== */

/* Subpages Hero Containers */
.elementor-40 .elementor-element.elementor-element-5e563f66,
.elementor-42 .elementor-element.elementor-element-379909a,
.elementor-44 .elementor-element.elementor-element-31d1f0ae,
.elementor-46 .elementor-element.elementor-element-73ec2561,
.elementor-48 .elementor-element.elementor-element-30452460,
.elementor-50 .elementor-element.elementor-element-53222038,
.elementor-52 .elementor-element.elementor-element-1060094b,
.elementor-54 .elementor-element.elementor-element-5407f399,
body.parent-pageid-38 .elementor > .e-parent > .e-child:nth-child(2),
body.parent-pageid-3 .elementor > .e-parent > .e-child:nth-child(2),
body.elementor-page-5989 .elementor > .e-parent > .e-child:nth-child(2) {
  background-color: var(--e-global-color-vamtam_accent_3, #171D2E) !important;
  background-image: none !important;
  border-radius: 0 0 24px 24px !important;
  overflow: visible !important;
}

/* Remove the washed-out black/grey overlay on industry subpage heroes */
.elementor-40 .elementor-element.elementor-element-5e563f66::before,
.elementor-42 .elementor-element.elementor-element-379909a::before,
.elementor-44 .elementor-element.elementor-element-31d1f0ae::before,
.elementor-46 .elementor-element.elementor-element-73ec2561::before,
.elementor-48 .elementor-element.elementor-element-30452460::before,
.elementor-50 .elementor-element.elementor-element-53222038::before,
.elementor-52 .elementor-element.elementor-element-1060094b::before,
.elementor-54 .elementor-element.elementor-element-5407f399::before,
body.parent-pageid-38 .elementor > .e-parent > .e-child:nth-child(2)::before,
body.parent-pageid-3 .elementor > .e-parent > .e-child:nth-child(2)::before,
body.elementor-page-5989 .elementor > .e-parent > .e-child:nth-child(2)::before,
body.parent-pageid-38 .elementor > .e-parent > .e-child:nth-child(2) > .elementor-motion-effects-container > .elementor-motion-effects-layer::before,
body.parent-pageid-3 .elementor > .e-parent > .e-child:nth-child(2) > .elementor-motion-effects-container > .elementor-motion-effects-layer::before,
body.elementor-page-5989 .elementor > .e-parent > .e-child:nth-child(2) > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
  display: none !important;
  background: transparent !important;
  opacity: 0 !important;
}

/* Typography & Content inside Industry subpage heroes */
.elementor-40 .elementor-element.elementor-element-5e563f66 .elementor-heading-title,
.elementor-42 .elementor-element.elementor-element-379909a .elementor-heading-title,
.elementor-44 .elementor-element.elementor-element-31d1f0ae .elementor-heading-title,
.elementor-46 .elementor-element.elementor-element-73ec2561 .elementor-heading-title,
.elementor-48 .elementor-element.elementor-element-30452460 .elementor-heading-title,
.elementor-50 .elementor-element.elementor-element-53222038 .elementor-heading-title,
.elementor-52 .elementor-element.elementor-element-1060094b .elementor-heading-title,
.elementor-54 .elementor-element.elementor-element-5407f399 .elementor-heading-title,
body.parent-pageid-38 .elementor > .e-parent > .e-child:nth-child(2) .elementor-heading-title,
body.parent-pageid-3 .elementor > .e-parent > .e-child:nth-child(2) .elementor-heading-title,
body.elementor-page-5989 .elementor > .e-parent > .e-child:nth-child(2) .elementor-heading-title {
  color: #FFFFFF !important;
}

.elementor-40 .elementor-element.elementor-element-5e563f66 .elementor-widget-theme-post-excerpt,
.elementor-42 .elementor-element.elementor-element-379909a .elementor-widget-theme-post-excerpt,
.elementor-44 .elementor-element.elementor-element-31d1f0ae .elementor-widget-theme-post-excerpt,
.elementor-46 .elementor-element.elementor-element-73ec2561 .elementor-widget-theme-post-excerpt,
.elementor-48 .elementor-element.elementor-element-30452460 .elementor-widget-theme-post-excerpt,
.elementor-50 .elementor-element.elementor-element-53222038 .elementor-widget-theme-post-excerpt,
.elementor-52 .elementor-element.elementor-element-1060094b .elementor-widget-theme-post-excerpt,
.elementor-54 .elementor-element.elementor-element-5407f399 .elementor-widget-theme-post-excerpt,
body.parent-pageid-38 .elementor > .e-parent > .e-child:nth-child(2) .elementor-widget-theme-post-excerpt,
body.parent-pageid-3 .elementor > .e-parent > .e-child:nth-child(2) .elementor-widget-theme-post-excerpt,
body.elementor-page-5989 .elementor > .e-parent > .e-child:nth-child(2) .elementor-widget-theme-post-excerpt {
  color: rgba(255, 255, 255, 0.88) !important;
}

/* Industries Hub Page (/web-design-for-industries) Hero */
.elementor-38 .elementor-element.elementor-element-6eae162 {
  background-color: var(--e-global-color-vamtam_accent_3, #171D2E) !important;
  border-radius: 0 0 24px 24px !important;
}

.elementor-38 .elementor-element.elementor-element-6eae162 .elementor-heading-title,
.elementor-38 .elementor-element.elementor-element-6eae162 h2,
.elementor-38 .elementor-element.elementor-element-6eae162 h3 {
  color: #FFFFFF !important;
}

.elementor-38 .elementor-element.elementor-element-6eae162 .elementor-icon-box-title span {
  color: var(--e-global-color-vamtam_accent_2, #C6FF00) !important;
}

.elementor-38 .elementor-element.elementor-element-6eae162 p {
  color: rgba(255, 255, 255, 0.88) !important;
}

/* ==========================================================================
   Industries Hub Page (/web-design-for-industries) Cards Redesign
   Light Backgrounds, Modern Structured Hierarchy, Premium Aesthetics
   ========================================================================== */

/* Grid container alignment and spacing */
.elementor-38 .elementor-element.elementor-element-2ffb700,
.elementor-38 .elementor-widget-loop-grid {
  margin-top: 20px !important;
  margin-bottom: 40px !important;
}

.elementor-38 .elementor-element.elementor-element-2ffb700 .elementor-grid,
.elementor-38 .elementor-element-2ffb700 .elementor-loop-container,
.elementor-38 .elementor-loop-container {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 28px !important;
  align-items: stretch !important;
}

@media (max-width: 1024px) {
  .elementor-38 .elementor-element.elementor-element-2ffb700 .elementor-grid,
  .elementor-38 .elementor-element-2ffb700 .elementor-loop-container,
  .elementor-38 .elementor-loop-container {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px !important;
  }
}

@media (max-width: 640px) {
  .elementor-38 .elementor-element.elementor-element-2ffb700 .elementor-grid,
  .elementor-38 .elementor-element-2ffb700 .elementor-loop-container,
  .elementor-38 .elementor-loop-container {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
}

/* Loop Item Outer Container */
.elementor-38 .e-loop-item,
.elementor-38 .elementor-element-2ffb700 .e-loop-item,
.elementor-682 {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: transparent !important;
  border: none !important;
}

/* Inner Card Container (id 961e959) */
.elementor-38 .e-loop-item .elementor-element.elementor-element-961e959,
.elementor-682 .elementor-element.elementor-element-961e959,
.elementor-38 .elementor-element-2ffb700 .elementor-element-961e959 {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
  flex: 1 1 auto !important;
  height: 100% !important;
  min-height: 350px !important;
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
  border: 1px solid #E2E8F0 !important;
  border-radius: 18px !important;
  padding: 36px 32px 32px 32px !important;
  box-shadow: 0 4px 6px -1px rgba(15, 23, 42, 0.03), 0 10px 24px -4px rgba(15, 23, 42, 0.05) !important;
  position: relative !important;
  overflow: hidden !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
  z-index: 1 !important;
}

/* Top subtle brand accent line */
.elementor-38 .e-loop-item .elementor-element.elementor-element-961e959::before,
.elementor-682 .elementor-element.elementor-element-961e959::before,
.elementor-38 .elementor-element-2ffb700 .elementor-element-961e959::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 4px !important;
  background: linear-gradient(90deg, #0052FF 0%, #3B82F6 100%) !important;
  opacity: 0 !important;
  transition: opacity 0.3s ease !important;
  z-index: 2 !important;
}

/* Remove all dark video/slideshow/background overlays */
.elementor-682 .elementor-element.elementor-element-961e959 > .elementor-background-video-container::before,
.elementor-682 .elementor-element.elementor-element-961e959 > .e-con-inner > .elementor-background-video-container::before,
.elementor-682 .elementor-element.elementor-element-961e959 > .elementor-background-slideshow::before,
.elementor-682 .elementor-element.elementor-element-961e959 > .e-con-inner > .elementor-background-slideshow::before,
.elementor-682 .elementor-element.elementor-element-961e959 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before,
.elementor-682 .elementor-background-overlay {
  display: none !important;
  background: none !important;
  opacity: 0 !important;
}

/* Card Hover State: physical lift, radiant border, top accent highlight */
.elementor-38 .e-loop-item:hover .elementor-element.elementor-element-961e959,
.elementor-682 .elementor-element.elementor-element-961e959:hover,
.elementor-38 .elementor-element-2ffb700 .e-loop-item:hover .elementor-element-961e959 {
  transform: translateY(-6px) !important;
  border-color: rgba(0, 82, 255, 0.32) !important;
  box-shadow: 0 20px 35px -8px rgba(0, 82, 255, 0.12), 0 8px 16px -4px rgba(15, 23, 42, 0.05), 0 0 0 1px rgba(0, 82, 255, 0.15) !important;
  background-color: #FFFFFF !important;
}

.elementor-38 .e-loop-item:hover .elementor-element.elementor-element-961e959::before,
.elementor-682 .elementor-element.elementor-element-961e959:hover::before,
.elementor-38 .elementor-element-2ffb700 .e-loop-item:hover .elementor-element-961e959::before {
  opacity: 1 !important;
}

/* Remove 50px blank spacer widget so title sits cleanly at top */
.elementor-682 .elementor-element.elementor-element-d256d19,
.elementor-38 .elementor-element-d256d19 {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Card Industry Title */
.elementor-682 .elementor-element.elementor-element-d1484e6,
.elementor-38 .elementor-element-d1484e6 {
  margin: 0 0 14px 0 !important;
  padding: 0 !important;
}

.elementor-682 .elementor-element.elementor-element-d1484e6 .elementor-heading-title,
.elementor-682 .elementor-element.elementor-element-d1484e6 h4,
.elementor-682 .elementor-element.elementor-element-d1484e6 h3,
.elementor-682 .elementor-element.elementor-element-d1484e6 a,
.elementor-38 .elementor-element-d1484e6 .elementor-heading-title,
.elementor-38 .elementor-element-d1484e6 a {
  font-family: inherit !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.02em !important;
  color: #0F172A !important;
  text-decoration: none !important;
  transition: color 0.2s ease !important;
}

.elementor-38 .e-loop-item:hover .elementor-element-d1484e6 .elementor-heading-title,
.elementor-38 .e-loop-item:hover .elementor-element-d1484e6 a,
.elementor-682 .elementor-element-d1484e6 .elementor-heading-title:hover {
  color: #0052FF !important;
}

/* Card Excerpt / Description */
.elementor-682 .elementor-element.elementor-element-f080ffa,
.elementor-38 .elementor-element-f080ffa {
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  flex: 1 1 auto !important;
  margin: 0 0 28px 0 !important;
  transform: none !important;
}

.elementor-682 .elementor-element.elementor-element-f080ffa .elementor-widget-container,
.elementor-682 .elementor-element.elementor-element-f080ffa p,
.elementor-38 .elementor-element-f080ffa .elementor-widget-container,
.elementor-38 .elementor-element-f080ffa p {
  font-family: inherit !important;
  font-size: 14.5px !important;
  line-height: 1.65 !important;
  color: #475569 !important;
  font-weight: 400 !important;
  margin: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Card CTA Button ("See how we can help") */
.elementor-682 .elementor-element.elementor-element-0b99a5a,
.elementor-38 .elementor-element-0b99a5a {
  margin-top: auto !important;
  align-self: flex-start !important;
  padding: 0 !important;
}

.elementor-682 .elementor-element.elementor-element-0b99a5a .elementor-button,
.elementor-38 .elementor-element-0b99a5a .elementor-button {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  background-color: #F1F5F9 !important;
  color: #0052FF !important;
  border: none !important;
  border-width: 0 !important;
  border-color: transparent !important;
  border-radius: 9999px !important;
  padding: 10px 20px !important;
  font-size: 13.5px !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.elementor-682 .elementor-element.elementor-element-0b99a5a .elementor-button-content-wrapper,
.elementor-38 .elementor-element-0b99a5a .elementor-button-content-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  flex-direction: row !important;
}

.elementor-682 .elementor-element.elementor-element-0b99a5a .elementor-button-icon,
.elementor-38 .elementor-element-0b99a5a .elementor-button-icon {
  display: inline-flex !important;
  align-items: center !important;
  font-size: 11px !important;
  color: #0052FF !important;
  transition: transform 0.25s ease, color 0.25s ease !important;
}

.elementor-682 .elementor-element.elementor-element-0b99a5a .elementor-button-icon i,
.elementor-682 .elementor-element.elementor-element-0b99a5a .elementor-button-icon svg,
.elementor-38 .elementor-element-0b99a5a .elementor-button-icon i,
.elementor-38 .elementor-element-0b99a5a .elementor-button-icon svg {
  fill: currentColor !important;
  color: currentColor !important;
}

/* Button on Card Hover or Button Hover */
.elementor-38 .e-loop-item:hover .elementor-element-0b99a5a .elementor-button,
.elementor-682 .elementor-element.elementor-element-0b99a5a .elementor-button:hover,
.elementor-38 .elementor-element-0b99a5a .elementor-button:hover {
  background-color: #0052FF !important;
  color: #FFFFFF !important;
  border: none !important;
  border-color: transparent !important;
  box-shadow: 0 4px 14px rgba(0, 82, 255, 0.3) !important;
}

.elementor-38 .e-loop-item:hover .elementor-element-0b99a5a .elementor-button-icon,
.elementor-682 .elementor-element.elementor-element-0b99a5a .elementor-button:hover .elementor-button-icon,
.elementor-38 .elementor-element-0b99a5a .elementor-button:hover .elementor-button-icon {
  color: #FFFFFF !important;
  transform: translateX(4px) !important;
}

@media (max-width: 1024px) {
  .elementor-38 .e-loop-item .elementor-element.elementor-element-961e959,
  .elementor-682 .elementor-element.elementor-element-961e959 {
    padding: 30px 26px 26px 26px !important;
    min-height: 320px !important;
  }
}

@media (max-width: 640px) {
  .elementor-38 .e-loop-item .elementor-element.elementor-element-961e959,
  .elementor-682 .elementor-element.elementor-element-961e959 {
    padding: 26px 22px 22px 22px !important;
    min-height: auto !important;
  }
}

/* Primary "Book a discovery call" button in industry heroes */
.elementor-40 .elementor-element.elementor-element-5e563f66 a[href*="book-a-discovery-call"].elementor-button,
.elementor-42 .elementor-element.elementor-element-379909a a[href*="book-a-discovery-call"].elementor-button,
.elementor-44 .elementor-element.elementor-element-31d1f0ae a[href*="book-a-discovery-call"].elementor-button,
.elementor-46 .elementor-element.elementor-element-73ec2561 a[href*="book-a-discovery-call"].elementor-button,
.elementor-48 .elementor-element.elementor-element-30452460 a[href*="book-a-discovery-call"].elementor-button,
.elementor-50 .elementor-element.elementor-element-53222038 a[href*="book-a-discovery-call"].elementor-button,
.elementor-52 .elementor-element.elementor-element-1060094b a[href*="book-a-discovery-call"].elementor-button,
.elementor-54 .elementor-element.elementor-element-5407f399 a[href*="book-a-discovery-call"].elementor-button,
body.parent-pageid-38 .elementor > .e-parent > .e-child:nth-child(2) a[href*="book-a-discovery-call"].elementor-button {
  background-color: var(--e-global-color-vamtam_accent_1, #0052FF) !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 14px rgba(0, 82, 255, 0.35) !important;
  transition: all 0.25s ease !important;
}

.elementor-40 .elementor-element.elementor-element-5e563f66 a[href*="book-a-discovery-call"].elementor-button:hover,
.elementor-42 .elementor-element.elementor-element-379909a a[href*="book-a-discovery-call"].elementor-button:hover,
.elementor-44 .elementor-element.elementor-element-31d1f0ae a[href*="book-a-discovery-call"].elementor-button:hover,
.elementor-46 .elementor-element.elementor-element-73ec2561 a[href*="book-a-discovery-call"].elementor-button:hover,
.elementor-48 .elementor-element.elementor-element-30452460 a[href*="book-a-discovery-call"].elementor-button:hover,
.elementor-50 .elementor-element.elementor-element-53222038 a[href*="book-a-discovery-call"].elementor-button:hover,
.elementor-52 .elementor-element.elementor-element-1060094b a[href*="book-a-discovery-call"].elementor-button:hover,
.elementor-54 .elementor-element.elementor-element-5407f399 a[href*="book-a-discovery-call"].elementor-button:hover,
body.parent-pageid-38 .elementor > .e-parent > .e-child:nth-child(2) a[href*="book-a-discovery-call"].elementor-button:hover {
  background-color: #0040cc !important;
  transform: translateY(-2px);
}

/* ==========================================================================
   Book An Appointment Native CTA Button & Lead Collection Modal
   ========================================================================== */
/* ==========================================================================
   Book An Appointment Native CTA Button & Lead Collection Modal
   ========================================================================== */
.venda-book-cta-wrapper {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  vertical-align: middle !important;
  line-height: 1 !important;
}

.venda-book-cta-btn,
header .venda-book-cta-btn,
[data-elementor-type="header"] .venda-book-cta-btn,
.elementor-location-header .venda-book-cta-btn {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 4px 48px 4px 22px !important;
  background: #0A0D14 !important;
  background-color: #0A0D14 !important;
  color: #FFFFFF !important;
  font-family: inherit !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  border-radius: 9999px !important;
  text-decoration: none !important;
  box-shadow: 0 4px 16px rgba(10, 13, 20, 0.15) !important;
  cursor: pointer !important;
  overflow: hidden !important;
  border: none !important;
  outline: none !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  vertical-align: middle !important;
  transition: padding 0.45s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease !important;
}

.venda-book-cta-btn:hover,
header .venda-book-cta-btn:hover,
[data-elementor-type="header"] .venda-book-cta-btn:hover,
.elementor-location-header .venda-book-cta-btn:hover {
  background: #0052FF !important;
  background-color: #0052FF !important;
  color: #FFFFFF !important;
  padding: 4px 22px 4px 48px !important;
  box-shadow: 0 8px 24px rgba(0, 82, 255, 0.35) !important;
}

.venda-book-cta-btn .venda-btn-text,
.venda-book-cta-btn > span:not(.venda-btn-arrow-bubble) {
  position: relative !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  color: #FFFFFF !important;
  transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.venda-book-cta-btn .venda-btn-arrow-bubble {
  position: absolute !important;
  right: 5px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 34px !important;
  height: 34px !important;
  background: #FFFFFF !important;
  color: #0A0D14 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: right 0.45s cubic-bezier(0.4, 0, 0.2, 1), transform 0.45s cubic-bezier(0.4, 0, 0.2, 1), color 0.3s ease !important;
  z-index: 3 !important;
  pointer-events: none !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12) !important;
}

.venda-book-cta-btn:hover .venda-btn-arrow-bubble {
  right: calc(100% - 39px) !important;
  transform: translateY(-50%) rotate(45deg) !important;
  color: #0052FF !important;
}

.venda-book-cta-btn .venda-btn-arrow-icon {
  width: 14px !important;
  height: 14px !important;
  display: block !important;
  stroke: currentColor !important;
}

/* Modal styling */
.venda-modal-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(10, 15, 30, 0.75);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  z-index: 99999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease;
}

.venda-modal-backdrop.is-active {
  opacity: 1;
  visibility: visible;
}

.venda-modal-card {
  background: #FFFFFF;
  color: #171D2E;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 20px;
  max-width: 580px;
  width: 100%;
  max-height: 92vh;
  overflow-y: auto;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.25), 0 0 40px rgba(0, 0, 0, 0.06);
  transform: scale(0.95) translateY(10px);
  transition: transform 0.25s ease;
  position: relative;
  padding: 36px 32px;
  box-sizing: border-box;
}

.venda-modal-backdrop.is-active .venda-modal-card {
  transform: scale(1) translateY(0);
}

.venda-modal-close {
  position: absolute;
  top: 18px;
  right: 18px;
  background: rgba(0, 0, 0, 0.05);
  border: none;
  color: #171D2E;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  line-height: 1;
  transition: all 0.2s ease;
}

.venda-modal-close:hover {
  background: rgba(0, 0, 0, 0.12);
  transform: rotate(90deg);
}

.venda-modal-header {
  text-align: center;
  margin-bottom: 24px;
}

.venda-modal-phone-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  color: #171D2E;
  margin-bottom: 10px;
}

.venda-modal-phone-icon svg {
  width: 38px;
  height: 38px;
  stroke: #171D2E;
  fill: none;
}

.venda-modal-title {
  font-size: 26px;
  font-weight: 600;
  margin: 0 0 8px 0;
  color: #171D2E;
  letter-spacing: -0.01em;
}

.venda-modal-sub {
  font-size: 14.5px;
  color: #667085;
  margin: 0 auto;
  max-width: 460px;
  line-height: 1.5;
}

.venda-modal-row {
  display: flex;
  gap: 16px;
  margin-bottom: 14px;
}

.venda-modal-col-50 {
  flex: 1;
  min-width: 0;
}

.venda-modal-col-100 {
  width: 100%;
  margin-bottom: 14px;
}

.venda-modal-label {
  display: block;
  font-size: 11px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #475467;
  margin-bottom: 6px;
}

.venda-modal-input,
.venda-modal-select,
.venda-modal-textarea {
  width: 100%;
  background: #FFFFFF;
  border: 1px solid #D0D5DD;
  border-radius: 8px;
  padding: 11px 14px;
  color: #171D2E;
  font-family: inherit;
  font-size: 14px;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  box-sizing: border-box;
}

.venda-modal-select {
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23475569' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");
  background-position: right 14px center;
  background-repeat: no-repeat;
  background-size: 16px 16px;
  padding-right: 36px;
  cursor: pointer;
}

.venda-modal-input:focus,
.venda-modal-select:focus,
.venda-modal-textarea:focus {
  border-color: #0052FF;
  box-shadow: 0 0 0 3px rgba(0, 82, 255, 0.12);
}

.venda-modal-disclaimer {
  font-size: 12.5px;
  color: #667085;
  line-height: 1.5;
  margin: 12px 0 20px 0;
}

.venda-modal-disclaimer a {
  color: #0052FF;
  text-decoration: underline;
}

.venda-modal-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background-color: #171D2E;
  color: #FFFFFF;
  border: none;
  padding: 14px 28px;
  border-radius: 50px;
  font-size: 15px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 4px 14px rgba(23, 29, 46, 0.15);
}

.venda-modal-btn:hover {
  background-color: #0052FF;
  box-shadow: 0 6px 20px rgba(0, 82, 255, 0.35);
  transform: translateY(-1px);
}

.venda-modal-btn svg {
  margin-left: 4px;
}

.venda-modal-success {
  padding: 24px;
  text-align: center;
  background: rgba(0, 200, 83, 0.08);
  border: 1px solid rgba(0, 200, 83, 0.3);
  border-radius: 14px;
  margin-top: 14px;
}

@media (max-width: 600px) {
  .venda-modal-row {
    flex-direction: column;
    gap: 14px;
  }
  .venda-modal-card {
    padding: 28px 20px;
  }
}

/* ==========================================================================
   Exact Contact Page Form Card for Book a Discovery Call Page (Document 215)
   ========================================================================== */
.elementor-215 .elementor-element-22ebf3f,
.elementor-215 .elementor-element-f1d589c,
.elementor-215 [data-id="22ebf3f"],
.elementor-215 [data-id="f1d589c"] {
  background-color: #FFFFFF !important;
  background: #FFFFFF !important;
  border-radius: 20px !important;
  padding: 40px !important;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12) !important;
  box-sizing: border-box !important;
  position: relative !important;
  z-index: 5 !important;
}

.elementor-215 .elementor-element-eb39eed,
.elementor-215 .elementor-element-eb39eed .elementor-icon-wrapper,
.elementor-215 [data-id="eb39eed"] {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  margin-bottom: 6px !important;
}

.elementor-215 .elementor-element-eb39eed .elementor-icon,
.elementor-215 [data-id="eb39eed"] .elementor-icon {
  font-size: 38px !important;
  color: #171D2E !important;
}

.elementor-215 .elementor-element-eb39eed .elementor-icon svg,
.elementor-215 [data-id="eb39eed"] .elementor-icon svg {
  width: 38px !important;
  height: 38px !important;
  fill: #171D2E !important;
  stroke: #171D2E !important;
}

.elementor-215 .elementor-element-20a5cea,
.elementor-215 .elementor-element-20a5cea .elementor-heading-title,
.elementor-215 [data-id="20a5cea"],
.elementor-215 [data-id="20a5cea"] .elementor-heading-title {
  text-align: center !important;
  font-size: 26px !important;
  font-weight: 600 !important;
  color: #171D2E !important;
  margin: 0 0 8px 0 !important;
}

.elementor-215 .elementor-element-88b5fa7,
.elementor-215 .elementor-element-88b5fa7 p,
.elementor-215 [data-id="88b5fa7"],
.elementor-215 [data-id="88b5fa7"] p {
  text-align: center !important;
  font-size: 15px !important;
  color: #64748B !important;
  line-height: 1.5 !important;
  margin: 0 auto 24px auto !important;
  max-width: 440px !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-form-fields-wrapper,
.elementor-215 [data-id="0334f32"] .elementor-form-fields-wrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  margin-left: -7.5px !important;
  margin-right: -7.5px !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-field-group,
.elementor-215 [data-id="0334f32"] .elementor-field-group {
  padding-right: 7.5px !important;
  padding-left: 7.5px !important;
  margin-bottom: 16px !important;
  box-sizing: border-box !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-field-group.elementor-column-width-100,
.elementor-215 [data-id="0334f32"] .elementor-field-group.elementor-column-width-100 {
  width: 100% !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-field-group.elementor-column-width-50,
.elementor-215 [data-id="0334f32"] .elementor-field-group.elementor-column-width-50 {
  width: 50% !important;
}

@media (max-width: 640px) {
  .elementor-215 .elementor-element-0334f32 .elementor-field-group.elementor-column-width-50,
  .elementor-215 [data-id="0334f32"] .elementor-field-group.elementor-column-width-50 {
    width: 100% !important;
  }
}

.elementor-215 .elementor-element-0334f32 .elementor-field-group > label,
.elementor-215 [data-id="0334f32"] .elementor-field-group > label {
  display: block !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #475467 !important;
  margin-bottom: 6px !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-field-group .elementor-field:not(.elementor-select-wrapper),
.elementor-215 .elementor-element-0334f32 .elementor-field-group .elementor-select-wrapper select,
.elementor-215 [data-id="0334f32"] .elementor-field-group .elementor-field:not(.elementor-select-wrapper),
.elementor-215 [data-id="0334f32"] .elementor-field-group .elementor-select-wrapper select {
  background-color: #FFFFFF !important;
  border: 1px solid #D0D5DD !important;
  border-radius: 8px !important;
  padding: 11px 14px !important;
  font-size: 14px !important;
  color: #171D2E !important;
  box-sizing: border-box !important;
  outline: none !important;
  width: 100% !important;
  box-shadow: none !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-field-group .elementor-select-wrapper select,
.elementor-215 [data-id="0334f32"] .elementor-field-group .elementor-select-wrapper select {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%23475569' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E") !important;
  background-position: right 14px center !important;
  background-repeat: no-repeat !important;
  background-size: 16px 16px !important;
  padding-right: 36px !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-field-group .elementor-field:focus,
.elementor-215 .elementor-element-0334f32 .elementor-field-group .elementor-select-wrapper select:focus,
.elementor-215 [data-id="0334f32"] .elementor-field-group .elementor-field:focus,
.elementor-215 [data-id="0334f32"] .elementor-field-group .elementor-select-wrapper select:focus {
  border-color: #0052FF !important;
  box-shadow: 0 0 0 3px rgba(0, 82, 255, 0.12) !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-button[type="submit"],
.elementor-215 [data-id="0334f32"] .elementor-button[type="submit"] {
  background-color: #171D2E !important;
  color: #FFFFFF !important;
  border-radius: 999px !important;
  padding: 14px 28px !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  border: none !important;
  cursor: pointer !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 4px 14px rgba(23, 29, 46, 0.15) !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-button[type="submit"]:hover,
.elementor-215 [data-id="0334f32"] .elementor-button[type="submit"]:hover {
  background-color: #0052FF !important;
  box-shadow: 0 6px 20px rgba(0, 82, 255, 0.35) !important;
  transform: translateY(-1px) !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-button-content-wrapper,
.elementor-215 [data-id="0334f32"] .elementor-button-content-wrapper {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 8px !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-button-icon,
.elementor-215 [data-id="0334f32"] .elementor-button-icon {
  order: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
}

.elementor-215 .elementor-element-0334f32 .elementor-button-text,
.elementor-215 [data-id="0334f32"] .elementor-button-text {
  order: 1 !important;
}

/* ==========================================================================
   Hero 01 & Brand Slider Architecture (21st.dev Agency Hero)
   ========================================================================== */

/* Google Font: Instrument Serif */
@import url('https://fonts.googleapis.com/css2?family=Instrument+Serif:ital@1&display=swap');

/* Reset and ensure container full width */
.elementor-22 .elementor-element.elementor-element-6c3a20a,
.elementor-element-6c3a20a {
  margin: 0 !important;
  padding: 0 !important;
  min-height: auto !important;
  width: 100% !important;
  position: relative !important;
  background: transparent !important;
}

.elementor-22 .elementor-element.elementor-element-6c3a20a > .e-con-inner,
.elementor-element-6c3a20a > .e-con-inner {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.elementor-22 .elementor-element.elementor-element-0da311a,
.elementor-element-0da311a {
  margin: 0 !important;
  padding: 0 !important;
  min-height: auto !important;
  width: 100% !important;
  position: relative !important;
  background: transparent !important;
}

.elementor-22 .elementor-element.elementor-element-0da311a > .e-con-inner,
.elementor-element-0da311a > .e-con-inner {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Hero Section Wrapper */
.venda-hero-01-wrap {
  position: relative;
  width: 100%;
  padding: clamp(48px, 6vw, 76px) 20px clamp(24px, 4vw, 40px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  overflow: visible;
  box-sizing: border-box;
}

/* Ambient Glow Backdrop */
.venda-hero-backdrop-glow {
  position: absolute;
  top: 6%;
  left: 50%;
  transform: translateX(-50%);
  width: min(100%, 960px);
  height: 380px;
  background: radial-gradient(ellipse at 50% 35%, rgba(56, 189, 248, 0.20) 0%, rgba(254, 240, 138, 0.14) 45%, transparent 70%);
  border-radius: 9999px;
  filter: blur(72px);
  pointer-events: none;
  z-index: 0;
}

[data-theme="dark"] .venda-hero-backdrop-glow {
  background: radial-gradient(ellipse at 50% 35%, rgba(30, 41, 59, 0.5) 0%, rgba(15, 23, 42, 0.3) 45%, transparent 70%);
  filter: blur(80px);
}

.venda-hero-container {
  position: relative;
  z-index: 2;
  max-width: 1080px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: clamp(20px, 3vw, 28px);
}

/* 1. Top Pill Badge */
.venda-hero-pill-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 18px;
  border-radius: 9999px;
  background: rgba(255, 255, 255, 0.92);
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  transition: transform 0.2s ease, border-color 0.2s ease;
  cursor: default;
}

.venda-hero-pill-badge:hover {
  transform: translateY(-1px);
  border-color: rgba(0, 82, 255, 0.3);
}

.venda-pill-dot {
  color: #0052FF;
  font-size: 13px;
  line-height: 1;
}

.venda-pill-text {
  font-size: 13.5px;
  font-weight: 500;
  color: #334155;
  letter-spacing: 0.01em;
}

/* 2. Hero Headline */
.venda-hero-title {
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  font-size: clamp(38px, 6vw, 76px) !important;
  font-weight: 500 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.03em !important;
  color: #0A0D14 !important;
  max-width: 980px;
  margin: 0 auto !important;
  text-wrap: balance;
}

[data-theme="dark"] .venda-hero-title {
  color: #F8FAFC !important;
}

.venda-hero-serif {
  font-family: 'Instrument Serif', Georgia, 'Times New Roman', serif !important;
  font-style: italic !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  color: inherit !important;
}

/* 3. Hero Subtitle */
.venda-hero-desc {
  font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: clamp(15px, 1.6vw, 18px) !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  color: #64748B !important;
  max-width: 660px;
  margin: 0 auto !important;
}

[data-theme="dark"] .venda-hero-desc {
  color: #94A3B8 !important;
}

/* 4. Action & Social Proof Row */
.venda-hero-action-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 3.5vw, 36px);
  margin-top: 10px;
  flex-wrap: wrap;
}

/* Interactive Pill Button with moving bubble (Hero & Site-wide) */
.venda-btn-get-started,
.venda-btn-animated {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 48px;
  height: 48px;
  padding: 4px 54px 4px 24px !important;
  background: #0A0D14 !important;
  color: #FFFFFF !important;
  border-radius: 9999px !important;
  text-decoration: none !important;
  font-family: inherit !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  box-shadow: 0 4px 16px rgba(10, 13, 20, 0.15) !important;
  cursor: pointer !important;
  overflow: hidden !important;
  border: none !important;
  outline: none !important;
  line-height: 1 !important;
  transition: padding 0.45s cubic-bezier(0.4, 0, 0.2, 1), background 0.3s ease, color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease !important;
  user-select: none;
  -webkit-user-select: none;
  vertical-align: middle;
  box-sizing: border-box !important;
}

.venda-btn-get-started {
  height: 50px;
  min-height: 50px;
  padding: 4px 58px 4px 26px !important;
}

.venda-btn-get-started:hover {
  padding: 4px 26px 4px 58px !important;
  background: #0052FF !important;
  color: #FFFFFF !important;
  box-shadow: 0 8px 24px rgba(0, 82, 255, 0.35) !important;
}

.venda-btn-animated:hover {
  padding: 4px 24px 4px 54px !important;
  background: #0052FF !important;
  color: #FFFFFF !important;
  box-shadow: 0 8px 24px rgba(0, 82, 255, 0.35) !important;
}

.venda-btn-text,
.venda-btn-animated .venda-btn-text,
.venda-btn-animated .elementor-button-text,
.venda-btn-animated .elementor-button-content-wrapper,
.venda-btn-animated > span:not(.venda-btn-arrow-bubble) {
  position: relative !important;
  z-index: 2 !important;
  transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1) !important;
  white-space: nowrap !important;
  display: inline-flex !important;
  align-items: center !important;
  color: inherit !important;
}

.venda-btn-arrow-bubble {
  position: absolute !important;
  right: 5px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 38px !important;
  height: 38px !important;
  background: #FFFFFF !important;
  color: #0A0D14 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: right 0.45s cubic-bezier(0.4, 0, 0.2, 1), transform 0.45s cubic-bezier(0.4, 0, 0.2, 1), background 0.3s ease, color 0.3s ease !important;
  z-index: 3 !important;
  pointer-events: none !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12) !important;
}

.venda-btn-get-started .venda-btn-arrow-bubble {
  width: 40px !important;
  height: 40px !important;
}

.venda-btn-get-started:hover .venda-btn-arrow-bubble {
  right: calc(100% - 45px) !important;
  transform: translateY(-50%) rotate(45deg) !important;
  background: #FFFFFF !important;
  color: #0052FF !important;
}

.venda-btn-animated:hover .venda-btn-arrow-bubble {
  right: calc(100% - 43px) !important;
  transform: translateY(-50%) rotate(45deg) !important;
  background: #FFFFFF !important;
  color: #0052FF !important;
}

.venda-btn-arrow-icon {
  display: block !important;
  transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Secondary Blue button variant (e.g. calendar-scheduling-button) */
.venda-btn-animated.calendar-scheduling-button {
  background: #0052FF !important;
  color: #FFFFFF !important;
  box-shadow: 0 4px 16px rgba(0, 82, 255, 0.35) !important;
}
.venda-btn-animated.calendar-scheduling-button .venda-btn-arrow-bubble {
  background: #FFFFFF !important;
  color: #0052FF !important;
}
.venda-btn-animated.calendar-scheduling-button:hover {
  background: #0040CC !important;
  box-shadow: 0 8px 24px rgba(0, 64, 204, 0.5) !important;
}
.venda-btn-animated.calendar-scheduling-button:hover .venda-btn-arrow-bubble {
  color: #0040CC !important;
}

/* Service Accordion CTA (compact 38px) */
.venda-btn-animated.venda-service-btn {
  height: 38px !important;
  min-height: 38px !important;
  padding: 4px 44px 4px 18px !important;
  font-size: 13.5px !important;
  background: #0F172A !important;
}
.venda-btn-animated.venda-service-btn:hover {
  padding: 4px 18px 4px 44px !important;
  background: #0052FF !important;
}
.venda-btn-animated.venda-service-btn .venda-btn-arrow-bubble {
  width: 30px !important;
  height: 30px !important;
  right: 4px !important;
}
.venda-btn-animated.venda-service-btn:hover .venda-btn-arrow-bubble {
  right: calc(100% - 34px) !important;
}
.venda-btn-animated.venda-service-btn .venda-btn-arrow-icon {
  width: 13px !important;
  height: 13px !important;
}

/* Guard exclusions: other header elements and portfolio loop cards stay intact */
header .venda-btn-animated:not(.venda-book-cta-btn),
[data-elementor-type="header"] .venda-btn-animated:not(.venda-book-cta-btn),
.elementor-location-header .venda-btn-animated:not(.venda-book-cta-btn),
.e-loop-item .venda-btn-animated {
  all: revert !important;
}

/* Header Alignment: Ensure Header Flex Rows, Nav, and Button Align on Same Vertical Axis (exclude menu panels) */
header > .elementor-container,
[data-elementor-type="header"] > .elementor-container,
.elementor-location-header > .elementor-container,
header .e-con:not(.e-n-menu-content):not(.e-n-menu-content *),
[data-elementor-type="header"] .e-con:not(.e-n-menu-content):not(.e-n-menu-content *) {
  display: flex !important;
  align-items: center !important;
}

header .elementor-widget-wrap,
[data-elementor-type="header"] .elementor-widget-wrap,
.elementor-location-header .elementor-widget-wrap {
  display: flex !important;
  align-items: center !important;
}

.elementor-element-36d87d7,
header .elementor-widget-html,
[data-elementor-type="header"] .elementor-widget-html,
.elementor-location-header .elementor-widget-html {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  align-self: center !important;
  margin: 0 !important;
  padding: 0 !important;
}

.elementor-element-36d87d7 .elementor-widget-container,
header .elementor-widget-html .elementor-widget-container {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
}

/* Header Start a Project CTA Button - Exactly matching Hero Button design & behavior */
header .venda-book-cta-btn,
header .venda-book-cta-btn.venda-btn-animated,
[data-elementor-type="header"] .venda-book-cta-btn,
[data-elementor-type="header"] .venda-book-cta-btn.venda-btn-animated,
.elementor-location-header .venda-book-cta-btn,
.elementor-location-header .venda-book-cta-btn.venda-btn-animated,
.venda-book-cta-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 4px 48px 4px 22px !important;
  font-family: inherit !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  letter-spacing: 0.01em !important;
  line-height: 1 !important;
  background: #0A0D14 !important;
  background-color: #0A0D14 !important;
  color: #FFFFFF !important;
  border-radius: 9999px !important;
  box-shadow: 0 4px 16px rgba(10, 13, 20, 0.15) !important;
  text-decoration: none !important;
  cursor: pointer !important;
  position: relative !important;
  overflow: hidden !important;
  border: none !important;
  outline: none !important;
  vertical-align: middle !important;
  white-space: nowrap !important;
  box-sizing: border-box !important;
  transition: padding 0.45s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease !important;
}

header .venda-book-cta-btn:hover,
header .venda-book-cta-btn.venda-btn-animated:hover,
[data-elementor-type="header"] .venda-book-cta-btn:hover,
[data-elementor-type="header"] .venda-book-cta-btn.venda-btn-animated:hover,
.elementor-location-header .venda-book-cta-btn:hover,
.elementor-location-header .venda-book-cta-btn.venda-btn-animated:hover,
.venda-book-cta-btn:hover {
  background: #0052FF !important;
  background-color: #0052FF !important;
  color: #FFFFFF !important;
  padding: 4px 22px 4px 48px !important;
  box-shadow: 0 8px 24px rgba(0, 82, 255, 0.35) !important;
}

header .venda-book-cta-btn .venda-btn-text,
header .venda-book-cta-btn > span:not(.venda-btn-arrow-bubble),
.venda-book-cta-btn .venda-btn-text,
.venda-book-cta-btn > span:not(.venda-btn-arrow-bubble) {
  position: relative !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  color: #FFFFFF !important;
  transition: transform 0.45s cubic-bezier(0.4, 0, 0.2, 1) !important;
  white-space: nowrap !important;
}

header .venda-book-cta-btn .venda-btn-arrow-bubble,
header .venda-book-cta-btn.venda-btn-animated .venda-btn-arrow-bubble,
[data-elementor-type="header"] .venda-book-cta-btn .venda-btn-arrow-bubble,
[data-elementor-type="header"] .venda-book-cta-btn.venda-btn-animated .venda-btn-arrow-bubble,
.elementor-location-header .venda-book-cta-btn .venda-btn-arrow-bubble,
.elementor-location-header .venda-book-cta-btn.venda-btn-animated .venda-btn-arrow-bubble,
.venda-book-cta-btn .venda-btn-arrow-bubble {
  width: 34px !important;
  height: 34px !important;
  right: 5px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  color: #0A0D14 !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: absolute !important;
  z-index: 3 !important;
  pointer-events: none !important;
  flex-shrink: 0 !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12) !important;
  transition: right 0.45s cubic-bezier(0.4, 0, 0.2, 1), transform 0.45s cubic-bezier(0.4, 0, 0.2, 1), background-color 0.3s ease, color 0.3s ease !important;
}

header .venda-book-cta-btn:hover .venda-btn-arrow-bubble,
header .venda-book-cta-btn.venda-btn-animated:hover .venda-btn-arrow-bubble,
[data-elementor-type="header"] .venda-book-cta-btn:hover .venda-btn-arrow-bubble,
[data-elementor-type="header"] .venda-book-cta-btn.venda-btn-animated:hover .venda-btn-arrow-bubble,
.elementor-location-header .venda-book-cta-btn:hover .venda-btn-arrow-bubble,
.elementor-location-header .venda-book-cta-btn.venda-btn-animated:hover .venda-btn-arrow-bubble,
.venda-book-cta-btn:hover .venda-btn-arrow-bubble {
  right: calc(100% - 39px) !important;
  transform: translateY(-50%) rotate(45deg) !important;
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  color: #0052FF !important;
}

header .venda-book-cta-btn .venda-btn-arrow-icon,
header .venda-book-cta-btn.venda-btn-animated .venda-btn-arrow-icon,
[data-elementor-type="header"] .venda-book-cta-btn.venda-btn-animated .venda-btn-arrow-icon,
.venda-book-cta-btn .venda-btn-arrow-icon {
  width: 14px !important;
  height: 14px !important;
  display: block !important;
  stroke: currentColor !important;
}

/* Hide Start a Project CTA Button in header on mobile portrait */
@media (max-width: 767.98px), (max-width: 820px) and (orientation: portrait) {
  header .elementor-element-36d87d7,
  header .venda-book-cta-wrapper,
  header .venda-book-cta-btn,
  header .venda-book-cta-btn.venda-btn-animated,
  header [class*="venda-book-cta"],
  [data-elementor-type="header"] .elementor-element-36d87d7,
  [data-elementor-type="header"] .venda-book-cta-wrapper,
  [data-elementor-type="header"] .venda-book-cta-btn,
  [data-elementor-type="header"] .venda-book-cta-btn.venda-btn-animated,
  [data-elementor-type="header"] [class*="venda-book-cta"],
  .elementor-location-header .elementor-element-36d87d7,
  .elementor-location-header .venda-book-cta-wrapper,
  .elementor-location-header .venda-book-cta-btn,
  .elementor-location-header .venda-book-cta-btn.venda-btn-animated,
  .elementor-location-header [class*="venda-book-cta"],
  header .elementor-hidden-mobile,
  [data-elementor-type="header"] .elementor-hidden-mobile,
  .elementor-location-header .elementor-hidden-mobile {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
  }
}

/* Avatar Stack & Social Proof */
.venda-hero-proof {
  display: flex;
  align-items: center;
  gap: 14px;
}

.venda-avatar-stack {
  display: flex;
  align-items: center;
  padding: 0;
  margin: 0;
  list-style: none;
}

.venda-avatar-item {
  position: relative;
  margin-right: -10px;
  transition: transform 0.2s ease, z-index 0.2s ease;
}

.venda-avatar-item:hover {
  transform: translateY(-3px) scale(1.08);
  z-index: 10;
}

.venda-avatar-item img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2.5px solid #FFFFFF;
  object-fit: cover;
  display: block;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}

[data-theme="dark"] .venda-avatar-item img {
  border-color: #0F172A;
}

.venda-proof-details {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3px;
  text-align: left;
}

.venda-stars-row {
  display: flex;
  align-items: center;
  gap: 2px;
}

.venda-star-icon {
  display: block;
}

.venda-proof-caption {
  font-size: 13.5px;
  font-weight: 500;
  color: #64748B;
  line-height: 1.2;
}

[data-theme="dark"] .venda-proof-caption {
  color: #94A3B8;
}

/* ==========================================================================
   Brand Slider (Marquee & Gradient Divider)
   ========================================================================== */
.venda-brand-slider-section {
  width: 100%;
  padding: clamp(24px, 4vw, 44px) 0 clamp(32px, 5vw, 60px);
  position: relative;
}

.venda-brand-slider-container {
  max-width: 1140px;
  width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.venda-brand-slider-divider {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 0 20px;
  position: relative;
}

.venda-divider-line {
  height: 1px;
  flex: 1;
  max-width: 160px;
}

.venda-divider-line.left {
  background: linear-gradient(to left, rgba(148, 163, 184, 0.4), transparent);
}

.venda-divider-line.right {
  background: linear-gradient(to right, rgba(148, 163, 184, 0.4), transparent);
}

.venda-divider-text {
  font-size: 13.5px;
  font-weight: 400;
  color: #94A3B8;
  margin: 0;
  text-align: center;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

@media (max-width: 640px) {
  .venda-divider-line {
    display: none;
  }
  .venda-divider-text {
    white-space: normal;
  }
}

/* Marquee Infinite Ticker */
.venda-marquee-wrap {
  width: 100%;
  overflow: hidden;
  position: relative;
  padding: 10px 0;
  mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
  -webkit-mask-image: linear-gradient(to right, transparent 0%, black 8%, black 92%, transparent 100%);
}

.venda-marquee-track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: venda-marquee-scroll 28s linear infinite;
  will-change: transform;
}

.venda-marquee-wrap:hover .venda-marquee-track {
  animation-play-state: paused;
}

@keyframes venda-marquee-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-33.333333%);
  }
}

.venda-marquee-group {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  gap: clamp(28px, 4.5vw, 60px) !important;
  padding-right: clamp(28px, 4.5vw, 60px) !important;
}

.venda-brand-logo-item {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex-shrink: 0 !important;
  height: 44px !important;
  min-height: 44px !important;
  max-height: 44px !important;
  width: 140px !important;
  max-width: 140px !important;
  overflow: hidden !important;
}

.venda-brand-logo,
.venda-brand-logo-item img,
.venda-brand-slider-section img,
.venda-marquee-track img {
  height: 32px !important;
  max-height: 32px !important;
  min-height: 0 !important;
  width: auto !important;
  max-width: 125px !important;
  object-fit: contain !important;
  opacity: 0.82 !important;
  filter: grayscale(100%) contrast(1.15) brightness(0.85) !important;
  display: block !important;
  margin: 0 auto !important;
  transition: opacity 0.25s ease, transform 0.25s ease, filter 0.25s ease !important;
}

.venda-brand-logo:hover,
.venda-brand-logo-item:hover img,
.venda-brand-slider-section img:hover,
.venda-marquee-track img:hover {
  opacity: 1 !important;
  filter: grayscale(0%) contrast(1) brightness(1) !important;
  transform: scale(1.08) !important;
}

[data-theme="dark"] .venda-brand-logo,
[data-theme="dark"] .venda-brand-logo-item img,
[data-theme="dark"] .venda-brand-slider-section img {
  filter: grayscale(100%) invert(0.92) brightness(1.3) contrast(1.1) !important;
  opacity: 0.85 !important;
}

[data-theme="dark"] .venda-brand-logo:hover,
[data-theme="dark"] .venda-brand-logo-item:hover img,
[data-theme="dark"] .venda-brand-slider-section img:hover {
  filter: grayscale(0%) invert(0) brightness(1) !important;
  opacity: 1 !important;
}

.venda-brand-logo.is-light-version {
  display: none !important;
}
.venda-brand-logo.is-dark-version {
  display: block !important;
}

[data-theme="dark"] .venda-brand-logo.is-light-version {
  display: block !important;
}
[data-theme="dark"] .venda-brand-logo.is-dark-version {
  display: none !important;
}

/* ==========================================================================
   Global Header & Section Spacing Harmony
   ========================================================================== */
/* Header container safety: ensure header never gets bloated with unexpected margins/paddings */
header,
[data-elementor-type="header"],
.elementor-location-header,
header .e-con,
[data-elementor-type="header"] .e-con,
.elementor-location-header .e-con {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* First section below header sits flush without unnatural gap */
.elementor > .e-con.e-parent:first-of-type,
.elementor > .elementor-section.elementor-top-section:first-of-type,
.elementor-26 .elementor-element-feada59 {
  margin-top: 0 !important;
}

/* Hero section balance with header */
.venda-hero-01-wrap,
.elementor-element-6c3a20a {
  padding-top: clamp(24px, 3.5vw, 44px);
  padding-bottom: clamp(16px, 2vw, 28px);
  margin-bottom: 0;
}

/* Brand slider section spacing */
.venda-brand-slider-section,
.elementor-element-0da311a {
  padding-top: clamp(20px, 2.5vw, 36px);
  padding-bottom: clamp(28px, 3.5vw, 48px);
}

/* Mobile responsive refinements */
@media (max-width: 768px) {
  .venda-hero-01-wrap {
    padding-top: 36px;
    padding-bottom: 20px;
  }
  .venda-hero-title {
    font-size: 36px !important;
    line-height: 1.16 !important;
  }
  .venda-hero-action-row {
    flex-direction: column;
    gap: 20px;
  }
}

/* ==========================================================================
   21st.dev Clean Newsletter Card (Inspired by 21st.dev Component)
   ========================================================================== */
.venda-newsletter {
  position: relative;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
}

.venda-newsletter--page {
  padding: clamp(64px, 8vw, 120px) 20px !important;
  min-height: 65vh;
  background: radial-gradient(circle at 50% 35%, rgba(241, 245, 249, 0.9) 0%, rgba(255, 255, 255, 1) 100%) !important;
}

[data-theme="dark"] .venda-newsletter--page {
  background: radial-gradient(circle at 50% 35%, rgba(30, 41, 59, 0.4) 0%, rgba(15, 23, 42, 1) 100%) !important;
}

.venda-newsletter--band {
  padding: clamp(48px, 6vw, 80px) 20px !important;
  background: transparent !important;
}

.venda-newsletter-card {
  width: 100%;
  max-width: 440px;
  margin: 0 auto;
  background: #FFFFFF;
  border-radius: 20px;
  padding: 40px 32px 34px;
  box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.08), 0 0 0 1px rgba(0, 0, 0, 0.06);
  text-align: center;
  box-sizing: border-box;
  position: relative;
  z-index: 10;
}

[data-theme="dark"] .venda-newsletter-card {
  background: #111827;
  border: 1px solid rgba(255, 255, 255, 0.08);
  box-shadow: 0 20px 40px -15px rgba(0, 0, 0, 0.5), 0 0 0 1px rgba(255, 255, 255, 0.05);
}

.venda-newsletter-avatars {
  display: flex;
  justify-content: center;
  margin-bottom: 22px;
}

.venda-newsletter-avatar-stack {
  display: flex;
  align-items: center;
  justify-content: center;
}

.venda-newsletter-avatar-stack img {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 2.5px solid #FFFFFF;
  object-fit: cover;
  margin-left: -10px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
  display: block;
  transition: transform 0.2s ease, z-index 0.2s ease;
  background: #e2e8f0;
}

[data-theme="dark"] .venda-newsletter-avatar-stack img {
  border-color: #111827;
}

.venda-newsletter-avatar-stack img:first-child {
  margin-left: 0;
}

.venda-newsletter-avatar-stack img:hover {
  transform: translateY(-3px) scale(1.08);
  z-index: 10;
}

.venda-newsletter-title {
  margin: 0 0 12px 0 !important;
  font-family: inherit;
  font-size: 24px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
  color: #0f172a !important;
  letter-spacing: -0.02em;
}

[data-theme="dark"] .venda-newsletter-title {
  color: #f8fafc !important;
}

.venda-newsletter-desc {
  margin: 0 auto 26px auto !important;
  max-width: 360px;
  font-size: 14px !important;
  line-height: 1.55 !important;
  color: #64748b !important;
  font-weight: 400;
}

[data-theme="dark"] .venda-newsletter-desc {
  color: #94a3b8 !important;
}

.venda-newsletter-form {
  width: 100%;
  margin: 0;
  padding: 0;
}

.venda-newsletter-input-group {
  display: flex;
  flex-direction: column;
  gap: 12px;
  width: 100%;
}

.venda-newsletter-input-wrap {
  position: relative;
  width: 100%;
}

.venda-newsletter-icon {
  position: absolute;
  left: 18px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  color: #64748b;
  pointer-events: none;
}

.venda-newsletter-input {
  width: 100% !important;
  box-sizing: border-box !important;
  height: 48px !important;
  padding: 0 20px 0 48px !important;
  border-radius: 9999px !important;
  border: 1px solid #e2e8f0 !important;
  background: #FFFFFF !important;
  color: #0f172a !important;
  font-size: 15px !important;
  outline: none !important;
  transition: all 0.2s ease !important;
}

.venda-newsletter-input::placeholder {
  color: #94a3b8 !important;
  font-size: 14px !important;
}

.venda-newsletter-input:focus {
  border-color: #0f172a !important;
  box-shadow: 0 0 0 3px rgba(15, 23, 42, 0.08) !important;
}

[data-theme="dark"] .venda-newsletter-input {
  background: #1e293b !important;
  border-color: #334155 !important;
  color: #f8fafc !important;
}

[data-theme="dark"] .venda-newsletter-input:focus {
  border-color: #f8fafc !important;
  box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.1) !important;
}

.venda-newsletter-submit {
  width: 100% !important;
  height: 48px !important;
  box-sizing: border-box !important;
  border-radius: 10px !important;
  border: none !important;
  background: #000000 !important;
  color: #FFFFFF !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  transition: background-color 0.2s ease, transform 0.15s ease, box-shadow 0.2s ease !important;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06) !important;
}

.venda-newsletter-submit:hover {
  background: #18181b !important;
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15) !important;
}

.venda-newsletter-submit:active {
  transform: translateY(0);
}

.venda-newsletter-submit:disabled {
  opacity: 0.6 !important;
  cursor: wait !important;
  transform: none !important;
}

[data-theme="dark"] .venda-newsletter-submit {
  background: #FFFFFF !important;
  color: #0f172a !important;
}

[data-theme="dark"] .venda-newsletter-submit:hover {
  background: #f1f5f9 !important;
  box-shadow: 0 4px 12px rgba(255, 255, 255, 0.15) !important;
}

.venda-newsletter .venda-recaptcha-note {
  font-size: 12px !important;
  color: #94a3b8 !important;
  margin: 12px 0 0 0 !important;
  line-height: 1.4 !important;
  text-align: center !important;
}

.venda-newsletter .venda-recaptcha-note a {
  color: inherit !important;
  text-decoration: underline !important;
}

.venda-newsletter .venda-newsletter__message {
  margin: 14px 0 0 0;
  font-size: 14px;
  font-weight: 500;
  padding: 10px 14px;
  border-radius: 8px;
  text-align: center;
  background: #ecfdf5;
  color: #047857;
  border: 1px solid #a7f3d0;
}

.venda-newsletter .venda-newsletter__message.is-error {
  background: #fef2f2;
  color: #b91c1c;
  border-color: #fecaca;
}


