@charset "UTF-8";
/*:root {
  --inter-font:   "Inter", sans-serif;
  --manrope-font: "Manrope", sans-serif;
  --grey-color: #e2e2e2;
  --dark-gray:  #444;
  --white-color:#FFF;
  --black-color:#000;
  --green-color:#109D58;
  --orange-color:#F4B400;
  --blue-color:#4285F4;
}*/
html {
  scroll-behavior: auto !important;
}

html.lenis,
html.lenis body {
  height: auto;
}

.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}

html, body {
  margin: 0;
  overflow-x: hidden; /* GSAP controls scrolling */
}

body {
  background: #000;
  color: #e2e2e2;
  font-family: "Inter", sans-serif;
  overflow-x: hidden;
}

a {
  text-decoration: none;
  transition: all 0.3s ease;
}

a:hover {
  color: #779FFF; /* change hover color */
  text-decoration: none;
}

a:focus, a:active {
  outline: none !important;
  box-shadow: none !important;
}

h1, h2, h3, h4, h5, h6 {
  font-family: "Manrope", sans-serif;
}

ul li {
  color: #242424;
  font-family: "Manrope", sans-serif;
}

.faq-section ul li {
  color: #FFF;
}

.page-itsac-contract ul li,
.page-itsac-contract p {
  color: #FFF;
  font-size: 16px;
}

p {
  font-size: 0.85rem;
}

.green {
  color: #00FF5B;
}

.orange {
  color: #F4B400;
}

.blue {
  color: #4285F4;
}

.yellow {
  color: #FFDE15;
}

.w-100vw {
  width: 100vw !important;
  max-width: 100vw !important;
}

.rounded-12 {
  border-radius: 12px !important;
}

.primary-btn {
  /*background: linear-gradient(90deg, #013927, #09173c);
  border: 1px solid #03a852;*/
  background: linear-gradient(90deg, #013927, #09173c) padding-box, linear-gradient(to right, #3646FC, #00FF5B) border-box;
  border: 1px solid transparent;
  padding: 8px 25px;
  font-size: 14px;
  margin-top: 5px;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.primary-btn:hover {
  transform: translateY(-3px) scale(1.02);
  box-shadow: 0 8px 20px rgba(0, 255, 91, 0.2);
}

.btn-dark {
  background: #242424 !important;
  color: #FFF;
  font-family: "Lato", sans-serif;
  font-weight: bold;
}

.btn-dark:hover {
  background: #2B6BDB;
  color: #ffffff;
  box-shadow: 0 8px 24px rgba(43, 107, 219, 0.35);
  transform: translateY(-2px);
}

/* Circle btn Styles */
.expand-btn, .inner-hero .expand-btn, .cta-content .expand-btn,
.tech-accelerate .expand-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  width: 35px;
  height: 35px;
  border-radius: 50px;
  background: #FFF;
  text-decoration: none;
  transition: width 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.cta-content .expand-btn,
.tech-accelerate .expand-btn {
  background: #000;
}

/* circle */
.circle, .inner-hero .circle, .cta-content .circle,
.tech-accelerate .circle {
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  top: 0;
  width: 35px;
  height: 35px;
}

/* arrow container */
.arrow-wrap, .inner-hero .arrow-wrap, .cta-content .arrow-wrap,
.tech-accelerate .arrow-wrap {
  padding: 2px;
  position: relative;
  width: 11px;
  height: 11px;
  overflow: hidden;
}

/* arrow */
.arrows, .inner-hero .arrows, .cta-content .arrows,
.tech-accelerate .arrows {
  position: absolute;
  transition: transform 0.45s cubic-bezier(0.165, 0.84, 0.44, 1);
  width: 9px;
  height: auto;
}

/* first arrow visible */
.arrows-1, .inner-hero .arrows-1, .cta-content .arrows-1,
.tech-accelerate .arrow-1 {
  transform: translate(0, 0);
}

/* second arrow hidden bottom-left */
.arrows-2, .inner-hero .arrows-2, .cta-content .arrows-2,
.tech-accelerate .arrow-2 {
  transform: translate(-140%, 140%);
}

/* hover animation */
.expand-btn:hover .arrows-1,
.inner-hero .expand-btn:hover .arrows-1,
.cta-content .expand-btn:hover .arrows-1,
.tech-accelerate .expand-btn:hover .arrows-1 {
  transform: translate(140%, -140%);
}

.expand-btn:hover .arrows-2,
.inner-hero .expand-btn:hover .arrows-2,
.cta-content .expand-btn:hover .arrows-2,
.tech-accelerate .expand-btn:hover .arrows-2 {
  transform: translate(0, 0);
}

/* text */
.btn-text, .inner-hero .btn-text, .cta-content .btn-text {
  color: #FFF;
  white-space: nowrap;
  margin-left: 45px;
}

.tech-accelerate .btn-text {
  color: #000;
}

/* expand button */
.expand-btn:hover, .inner-hero .expand-btn:hover,
.cta-content .expand-btn:hover, .tech-accelerate .expand-btn:hover {
  padding-right: 15px;
  width: 100%;
}

/* text reveal */
.expand-btn:hover .btn-text,
.inner-hero .expand-btn:hover .btn-text {
  color: #000;
}

.cta-content .expand-btn:hover .btn-text,
.tech-accelerate .expand-btn:hover .btn-text {
  color: #FFF;
}

/* inner-pages banner btn styles */
.inner-hero .expand-btn, .inner-hero .circle,
.cta-content .expand-btn, .cta-content .circle,
.tech-accelerate .expand-btn, .tech-accelerate .circle {
  width: 50px;
  height: 50px;
}

.inner-hero .expand-btn:hover {
  padding-right: 20px;
}

.cta-content .expand-btn:hover,
.tech-accelerate .expand-btn:hover {
  padding-right: 30px;
}

.inner-hero .btn-text,
.tech-accelerate .btn-text {
  margin-left: 60px;
}

.cta-content .btn-text {
  color: #000;
  margin-left: 60px;
}

.cta-content .cta-btn-wrap {
  display: inline-flex;
}

.generic h2 {
  font-family: "Lato", sans-serif;
  font-size: 45px;
  line-height: 60px;
}

h2 {
  color: #FFF;
  font-family: "Lato", sans-serif;
  font-size: 45px;
  font-weight: 700;
  line-height: 60px;
}

.border-t {
  border-top: 1px solid #4B4B4B !important;
}

.border-b {
  border-bottom: 1px solid #4B4B4B !important;
}

/* arro-link styles */
.arrow-link1 {
  position: absolute;
  top: 20px;
  right: 20px;
  transform: translate(-10px, 10px);
  transition: all 0.3s ease;
}

/* Arrow initial state */
.arrow-icon {
  display: inline-block;
  opacity: 1;
  transform: translate(-10px, 10px);
  transition: all 0.3s ease;
}

.arrow-icon img {
  width: 13px;
}

.w-button {
  background: #ffffff;
  border-radius: 5px;
  transition: all 0.3s ease;
}

.w-button:hover {
  background: #2B6BDB;
  color: #ffffff;
  box-shadow: 0 8px 24px rgba(43, 107, 219, 0.35);
  transform: translateY(-2px);
}

.section {
  height: 100vh;
}

.hero-section {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.hero-caption {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding-top: 250px;
  z-index: 10;
}

.hero-bg img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}

.section-2 {
  min-height: 100vh;
  padding: 80px 0;
}

.section-5, .section-6, .section-8 {
  min-height: 100vh;
  height: auto !important;
}

.section:not(.section-5) {
  height: 100vh;
}

/* 🔥 Disable full height on mobile */
@media (max-width: 767px) {
  .section, .hero-section, .section-2, .section-5, .section-6, .section-8,
  .section:not(.section-5) {
    min-height: auto;
    height: auto;
  }
  .tech-featured-title {
    padding: 50px 0;
  }
  .section-4 .row {
    padding-bottom: 0 !important;
    padding-top: 0 !important;
  }
}
.section-dark {
  padding: 60px 0;
}
.section-dark p {
  color: #C5C5C5;
  font-family: "Manrope", sans-serif;
  font-size: 20px;
  line-height: 32px;
  /*max-width:740px;*/
}

.light-section {
  background: #E1E7EC;
}

.paragraph-pt {
  padding-top: 60px;
}

.paragraph-pb {
  padding-bottom: 60px;
}

.station-pulse {
  position: absolute;
  left: 60px; /* adjust based on track position */
  top: 98.4vh; /* adjust where station appears */
  width: 22px;
  height: 22px;
  background: radial-gradient(circle, #FF2F4A 0%, #CC001E 60%, #990016 100%);
  border-radius: 50%;
  z-index: 20;
}
.station-pulse ::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 20px;
  height: 20px;
  background: rgba(255, 255, 255, 0.3); /* white glow */
  border-radius: 50%;
  transform: translate(-50%, -50%);
  animation: pulseStation 3s ease-out infinite;
}

@keyframes pulseStation {
  0% {
    transform: translate(-50%, -50%) scale(1);
    opacity: 0.8;
  }
  70% {
    transform: translate(-50%, -50%) scale(2.4);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@media screen and (max-width: 991px) {
  .section-dark {
    padding: 0 0 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .generic h2 {
    font-size: 40px;
    line-height: 57px;
  }
}
/* Keep header & mega menu above blur */
header {
  /*background:var(--black-color);
  border-bottom:1px solid #444;*/
  position: fixed;
  top: 0; /* always 0 */
  left: 0;
  width: 100%;
  transform: translateY(20px); /* default offset */
  opacity: 1;
  transition: transform 0.35s ease;
  z-index: 1050;
}
header .main-menu {
  background: rgba(0, 0, 0, 0.7);
  width: 84%;
}
header .border {
  border: 0.5px solid #B8B8B8 !important;
}
header .bg-black {
  --bs-bg-opacity: 0.7 !important;
}
header .vsoft-logo img {
  width: 134px;
  height: auto;
}
header .navbar-nav .nav-link {
  color: #ABABAB !important;
  font-family: "Lato", sans-serif;
  font-size: 14px;
  margin: 0 5px;
  padding: 30px 10px !important;
  position: relative;
  display: inline-block;
  color: inherit;
  text-decoration: none;
}
header .navbar-nav .nav-link:hover {
  color: #FFF !important;
}
header .menu-row {
  margin-bottom: 11px !important;
}
header {
  /* Underline hidden by default */
}
header .navbar-nav .nav-link::after {
  content: "";
  position: absolute;
  left: 8px;
  bottom: 12px; /* space below text */
  width: 85%;
  height: 3px;
  background: #fff;
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.35s ease;
}
header {
  /* Show underline on hover */
}
header .navbar-nav .nav-link:hover::after {
  transform: scaleX(1);
}
header {
  /* New Mega Menu Styles */
}
header .button-cta {
  color: #FFF;
  border: 0.5px solid #B8B8B8 !important;
  border-radius: 5px;
  font-family: "Lato", sans-serif;
  font-size: 14px !important;
  margin-top: 13px;
  padding: 16px 20px;
  position: relative;
  z-index: 0;
}
header .button-cta:hover {
  background: linear-gradient(90deg, #013927, #09173c) padding-box, linear-gradient(0deg, #3646FC, #00FF5B) border-box;
}
header {
  /* ===============================
     BASE MEGA MENU
  =================================*/
}
header .mega-container {
  width: 1320px !important;
}
header {
  /* Parent must allow overflow */
}
header .mega-menu-col,
header .container1,
header .navbar {
  position: relative;
  overflow: visible !important;
}
header {
  /* Make dropdown parent static */
}
header .navbar .dropdown {
  position: static !important;
}
header {
  /* Mega menu */
}
header .mega-menu {
  background: #242424;
  position: absolute;
  top: 100%;
  /* TRUE viewport alignment */
  left: 0;
  right: 0;
  width: 100vw;
  /*margin-left: calc(3% - 50vw);*/
  /* Vertical animation only */
  transform: translateY(15px);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
  border: 0;
  border-radius: 0;
  display: block !important;
}
header .navbar .dropdown-menu.mega-menu {
  display: block !important;
}
header .has-megamenu:hover > .nav-link {
  color: #FFF !important;
}
header .mega-box-wrap .btn-light img,
header .mega-cta .btn-light img {
  margin-right: 10px !important;
  width: 15px;
  height: auto;
}
@media (min-width: 1440px) {
  header .mega-menu {
    margin-left: calc(-11% - 50vw);
  }
}
@media (max-width: 1440px) {
  header .mega-menu {
    margin-left: calc(5% - 50vw);
  }
}
@media (max-width: 1200px) {
  header .mega-menu {
    margin-left: calc(20% - 50vw);
  }
}
header {
  /* Show state */
}
header .navbar .dropdown.show > .mega-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
header .navbar .dropdown:hover > .mega-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
header {
  /* Smooth section hover */
}
header .mega-section {
  padding: 10px 25% 10px 20px;
  border-radius: 10px;
  transition: all 0.3s ease;
}
header .mega-section ul {
  width: 205px;
}
header .mega-section:hover,
header .column-links ul li a:hover,
header .mega-submenu-links ul li a:hover {
  background: linear-gradient(90deg, #000000 0%, #242424 100%);
  /*background: rgba(0,0,0,0.65);*/
}
header .column-links ul li a,
header .mega-submenu-links ul li a {
  padding: 5px 10px;
}
header .mega-heading,
header .dropdown-menu p {
  color: #FFF;
  font-family: "Manrope", sans-serif;
}
header .mega-heading {
  font-family: "Lato", sans-serif !important;
}
header .mega-container a,
header .mega-section a,
header .mega-box a,
header .column-links a {
  color: #DEDEDE;
}
header .mega-container a:hover,
header .mega-section a:hover,
header .mega-box a:hover,
header .column-links a:hover {
  color: #4285F4;
}
header .mega-container ul li a {
  border-radius: 10px;
  display: block;
  font-size: 15px;
  transition: all 0.3s ease;
}
header .mega-box-wrap {
  background: rgba(0, 0, 0, 0.65);
}
header .mega-box {
  float: left;
  width: 100%;
}
header .industries-box ul li {
  margin-bottom: 3px;
}
header .box-quote {
  background: rgba(0, 0, 0, 0.65);
  height: 265px;
}
header .box-quote p,
header .mega-cta p,
header .career-box p {
  color: #FFF;
  font-family: "Manrope", sans-serif;
  font-weight: 300;
  font-size: 16px;
}
header .mega-cta p {
  font-size: 18px;
  letter-spacing: 1px;
}
@media (min-width: 1440px) {
  header .has-megamenu:nth-of-type(1) .mega-cta p {
    width: 83%;
  }
  header .has-megamenu:nth-of-type(2) .mega-cta p {
    width: 86%;
  }
  header .has-megamenu:nth-of-type(3) .mega-cta p {
    width: 87%;
  }
  header .has-megamenu:nth-of-type(4) .mega-cta p {
    width: 80%;
  }
  header .career-box p {
    width: 81%;
  }
}
@media (max-width: 1440px) {
  header .has-megamenu:nth-of-type(1) .mega-cta p {
    width: 81%;
  }
  header .has-megamenu:nth-of-type(2) .mega-cta p {
    width: 84%;
  }
  header .has-megamenu:nth-of-type(3) .mega-cta p {
    width: 85%;
  }
  header .has-megamenu:nth-of-type(4) .mega-cta p {
    width: 77%;
  }
  header .career-box p {
    width: 78%;
  }
}
@media (max-width: 1200px) {
  header .mega-cta p {
    font-size: 16px;
  }
  header .has-megamenu:nth-of-type(1) .mega-cta p {
    width: 77%;
  }
  header .has-megamenu:nth-of-type(2) .mega-cta p {
    width: 80%;
  }
  header .has-megamenu:nth-of-type(3) .mega-cta p {
    width: 81%;
  }
  header .has-megamenu:nth-of-type(4) .mega-cta p {
    width: 73%;
  }
  header .career-box p {
    width: 74%;
  }
}
header .mega-cta img,
header .career-box img {
  margin-right: 5px;
}
header .mega-cta a,
header .career-box a {
  color: #000;
  font-family: "Lato", sans-serif;
  font-size: 16px;
  font-weight: bold;
}
header .career-box .mega-box-wrap {
  width: 97%;
  margin-left: 1.5%;
}
header .box-quote p {
  font-family: "Lato", sans-serif;
  font-size: 18px;
  line-height: 30px;
}
header .box-quote small {
  color: #FFF;
  font-family: "Sorts Mill Goudy", serif;
  font-size: 18px;
}
header .mega-top-resource {
  padding-right: 5%;
}
header .mega-box-title {
  position: relative;
  display: inline-block; /* important */
  color: #FFF;
  font-family: "Lato", sans-serif !important;
  text-decoration: none;
  padding-bottom: 5px; /* gap between text & border */
}
header .mega-box-title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px; /* border thickness */
  background: #D4D4D4;
}
header .mega-cta {
  background: black;
  padding-left: 30px !important;
  width: 101.5%;
}
header .column-links p {
  color: #FFF;
  font-family: "Lato", sans-serif;
  font-size: 16px;
}
header .column-links p,
header .mega-submenu-links p {
  padding-left: 10px;
}
header .is-sticky + .dropdown-menu.mega-menu {
  margin-top: 2px;
}
header .desktop-menu {
  display: block;
}
header .mobile-menu {
  display: none;
}
header .has-megamenu:nth-child(4) .mega-top-resource a,
header .has-megamenu:nth-child(4) .mega-submenu-links ul li:nth-child(2) a,
header .has-megamenu:nth-child(4) .mega-submenu-links ul li:nth-child(3) a,
header .has-megamenu:nth-child(4) .mega-submenu-links ul li:nth-child(4) a,
header .has-megamenu:nth-child(4) .mega-submenu-links ul li:nth-child(5) a,
header .has-megamenu:nth-child(4) .mega-submenu-links ul li:nth-child(6) a,
header .has-megamenu:nth-child(4) .mega-submenu-links ul li:nth-child(7) a {
  pointer-events: none;
  cursor: default;
}
header {
  /* ======================================
     MOBILE MENU (NEW STRUCTURE)
  ====================================== */
}
@media (max-width: 991px) {
  header {
    /* Hide desktop */
  }
  header .desktop-menu {
    display: none !important;
  }
  header {
    /* Wrapper */
  }
  header .mobile-menu {
    display: block;
    position: relative;
    z-index: 9999;
  }
  header {
    /* ======================
       BURGER BUTTON
    ====================== */
  }
  header .mobile-menu-toggle {
    background: none;
    border: none;
    display: flex;
    flex-direction: column;
    gap: 5px;
    padding: 10px;
    cursor: pointer;
  }
  header .mobile-menu-toggle span {
    width: 26px;
    height: 2px;
    background: #fff;
    display: block;
    transition: 0.3s ease;
  }
  header {
    /* ======================
       SLIDE PANEL
    ====================== */
  }
  header .mobile-menu-panel {
    position: fixed;
    top: -20px;
    right: -100%;
    width: 100%;
    height: 100vh;
    background: #000;
    transition: right 0.4s ease;
    overflow-y: auto;
    padding: 25px 20px 40px;
  }
  header {
    /* Active state (JS should add .active) */
  }
  header .mobile-menu-panel.active {
    right: 0;
  }
  header {
    /* ======================
       CLOSE BUTTON
    ====================== */
  }
  header .mobile-menu-close {
    background: none;
    border: none;
    color: #fff;
    font-size: 22px;
    position: absolute;
    top: 15px;
    right: 15px;
    cursor: pointer;
  }
  header {
    /* ======================
       MAIN MENU LIST
    ====================== */
  }
  header .mobile-main-menu {
    list-style: none;
    padding: 0;
    margin-top: 50px;
  }
  header .mobile-menu-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding: 12px 0;
  }
  header {
    /* Main top link */
  }
  header .mobile-menu-link {
    width: 100%;
    background: none;
    border: none;
    color: #fff;
    font-size: 18px;
    text-align: left;
    cursor: pointer;
    padding: 0;
  }
  header {
    /* ======================
       SUB WRAPPER
    ====================== */
  }
  header .mobile-sub-wrapper {
    display: none;
    padding: 15px 0 0 10px;
  }
  header {
    /* Accordion active */
  }
  header .mobile-menu-item.active .mobile-sub-wrapper {
    display: block;
  }
  header {
    /* Section */
  }
  header .mobile-section {
    margin-bottom: 18px;
  }
  header {
    /* Section title */
  }
  header .mobile-section-title {
    color: #aaa;
    font-size: 13px;
    text-transform: uppercase;
    margin-bottom: 8px;
  }
  header {
    /* Sub menu */
  }
  header .mobile-sub-menu {
    list-style: none;
    padding: 0;
    margin: 0;
  }
  header .mobile-sub-menu li {
    margin-bottom: 6px;
  }
  header .mobile-sub-menu a {
    color: #ddd;
    text-decoration: none;
    font-size: 15px;
    display: block;
    padding: 4px 0;
    transition: 0.2s ease;
  }
  header .mobile-sub-menu a:hover {
    color: #4285F4;
  }
}

.what-we-do .row:nth-child(1) {
  background: linear-gradient(180deg, rgba(6, 12, 28, 0.85) 0%, rgba(5, 6, 10, 0.85) 100%);
  border: 1px solid #2D63E3;
  border-radius: 5px;
  margin-top: 20px;
}

.who-we-are .row:nth-child(1),
.technologies .row:nth-child(1),
.more-menu .row:nth-child(1) {
  margin-top: 20px;
}

.submenu-width {
  width: 85% !important;
}

.submenu-vw {
  width: 95% !important;
}

.section-spotlight,
.section-cta_box .cta-card:nth-child(2) {
  background: rgba(59, 60, 116, 0.35); /* #3B3C74 with opacity */
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid #3B3C74;
  border-radius: 5px;
}

.section-menu_links {
  background: transparent;
}

.section-menu_links.\35  {
  background: linear-gradient(180deg, rgba(26, 23, 4, 0.85) 0%, rgba(15, 13, 9, 0.85) 100%);
  border: 1px solid #FFDE15;
  border-radius: 5px;
  margin-right: 10px;
  width: 24.3%;
}

.section-menu_links.\36  {
  background: linear-gradient(180deg, rgba(17, 17, 17, 0.85) 0%, rgba(44, 44, 44, 0.85) 100%);
  border: 1px solid #444444;
  border-radius: 5px;
  margin-right: 10px;
  width: 24.4%;
}

.section-menu_links.\31  {
  border-bottom-left-radius: 5px;
}

.section-menu_links.\34  {
  border-bottom-right-radius: 5px;
}

.section-menu_links h6::after {
  content: "";
  display: block;
  width: 41px;
  height: 2px;
  background-color: #2D63E3;
  margin-top: 6px;
}

.section-menu_links a,
.section-spotlight a,
.news-item a,
.cta-card a {
  color: #DEDEDE !important;
  text-decoration: none;
  font-size: 14px;
}

.section-menu_links a:hover,
.section-spotlight a:hover,
.news-item a:hover,
.cta-card a:hover {
  color: #779FFF !important;
}

.section-news_or_events {
  background: rgba(26, 26, 26, 0.85);
  border: 1px solid #00ff55;
  border-radius: 5px;
  margin-left: 10px;
  margin-right: 10px;
  width: 48.3% !important;
}

.section-menu_quotes {
  background: linear-gradient(rgba(62, 62, 62, 0.85), rgba(62, 62, 62, 0.85)), url("../img/quote_bg.png");
  background-size: contain;
  background-position: right;
  background-repeat: no-repeat;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 5px;
  margin-right: 10px;
  padding: 50px 100px !important;
  width: 65.8%;
  height: 257px;
}

.section-menu_quotes p {
  color: #FFF;
  font-family: "Manrope", sans-serif;
}

.section-menu_quotes h6 {
  font-family: "Inter", sans-serif;
}

.cta-card {
  background: #E9F0FF;
}

.section-cta_box {
  padding: 0 !important;
}

.dropdown-menu.technologies {
  overflow-y: hidden;
}

.who-we-are .section-menu_links.\31 ,
.who-we-are .section-menu_links.\33 ,
.technologies .section-menu_links.\32  {
  background: linear-gradient(180deg, rgba(26, 23, 4, 0.85) 0%, rgba(15, 13, 9, 0.85) 100%);
  border: 1px solid #FFDE15;
  border-radius: 5px;
}

.who-we-are .section-menu_links.\31 ,
.section-cta_box .cta-card:nth-child(1),
.technologies .section-menu_links.\31 ,
.more-menu .section-menu_links.\31  {
  background: linear-gradient(180deg, rgba(6, 12, 28, 0.85) 0%, rgba(5, 6, 10, 0.85) 100%);
  border: 1px solid #2D63E3;
}

.section-technology_logos {
  background: rgba(26, 26, 26, 0.85);
  border: 1px solid #00ff55;
  border-radius: 5px;
  margin-top: -115px;
  width: 54.8%;
  height: 233px !important;
}
.section-technology_logos .technology-logos img {
  width: 170px;
  height: auto;
}

.technologies .section-menu_links.\31  {
  border-radius: 5px;
  width: 27%;
  height: 350px;
}

.technologies .section-menu_links.\32 ,
.more-menu .section-menu_links.\32  {
  border-radius: 5px;
  margin-left: 10px;
  margin-right: 10px;
  width: 27%;
  height: 350px;
}

.technologies .section-news_or_events,
.more-menu .section-news_or_events {
  width: 44.2% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.more-menu .section-news_or_events {
  width: 46.2% !important;
}

.technologies .section-news_or_events {
  height: 465px;
}

.technologies .section-cta_box {
  width: 44%;
  margin-top: 0 !important;
  margin-left: 10px;
}

.technologies .cta-card {
  height: 119px !important;
}

.technologies .news-events h6 {
  margin-bottom: 20px;
}

.more-menu .section-menu_links.\31  {
  border-radius: 5px;
  height: 415px;
}

.more-menu .section-menu_links.\32 ,
.more-menu .section-news_or_events {
  height: 280px;
}

.what-we-do .section-menu_links.\32  ul li:nth-child(1) a,
.what-we-do .section-menu_links.\32  ul li:nth-child(5) a {
  font-weight: bold;
}

.more-menu .section-menu_links.\32  {
  background: rgba(26, 26, 26, 0.85);
  border: 1px solid #00ff55;
}

.technologies .section-news_or_events,
.more-menu .section-news_or_events {
  background: rgba(59, 60, 116, 0.35);
  backdrop-filter: blur(12px);
  border: 1px solid #3b3c74;
}

.more-menu .news-events h6 {
  margin-bottom: 20px;
}

.more-menu .news-item img {
  width: 200px;
  height: 92px;
}

.more-menu .news-item p {
  padding-right: 0;
}

.more-menu .cta-card {
  float: left;
  margin-top: -135px;
  width: 48.5%;
  height: 124px;
}

.section-cta_box .cta-card:nth-child(2) {
  float: right;
  margin-right: 16px;
}

.who-we-are .cta-card:nth-child(1) {
  margin-bottom: 10px !important;
  height: 127px;
}

.who-we-are .section-cta_box .cta-card:nth-child(2) {
  margin-right: 0;
}

.cta-card a {
  color: #000;
  text-decoration: none;
}

.cta-card a:hover {
  color: #2D63E3;
}

.more-menu .section-cta_box {
  margin-left: 25.8%;
  width: 75.2%;
}

/* Optional: tighter height when sticky */
header.is-sticky {
  transform: translateY(0); /* slides into view */
  top: 20px;
}
header.is-sticky .mega-dropdown .dropdown-menu {
  background: none;
  border: 0;
  top: 48px;
}
header.is-sticky .navbar-nav .nav-link {
  padding: 13px 10px !important;
}
header.is-sticky .navbar-nav .nav-link::after {
  bottom: 8px;
}
header.is-sticky section {
  padding-top: 0;
  padding-bottom: 0;
}
header.is-sticky section .main-menu {
  background: rgba(0, 0, 0, 0.7);
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  height: auto;
}
header.is-sticky section .button-cta {
  margin-top: 0 !important;
  padding-top: 12px !important;
  padding-bottom: 12px !important;
}
header.is-sticky .vsoft-logo img {
  width: 125px;
}

/* Hover dropdown (desktop) */
@media (min-width: 992px) {
  .mega-dropdown {
    position: relative;
  }
  /* Parent item */
  .has-mega {
    position: relative;
  }
  /* Mega menu hidden */
  .has-mega > .dropdown-menu {
    border: 0;
    display: block;
    opacity: 0;
    visibility: hidden;
    transform: translateY(25px) scale(0.98);
    pointer-events: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1060;
    transition: opacity 0.35s ease, transform 0.35s ease, visibility 0.35s ease;
  }
  /* Show on hover */
  .has-mega:hover > .dropdown-menu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scale(1);
    pointer-events: auto;
  }
  .navbar-expand-lg .navbar-collapse {
    justify-content: left;
  }
}
@media (max-width: 1600px) {
  .section-menu_links.\35 ,
  .section-menu_links.\36  {
    width: 24.2%;
  }
  .section-news_or_events {
    width: 48.2% !important;
  }
  .section-menu_quotes {
    width: 65.7%;
  }
  .more-menu .section-cta_box {
    margin-left: 25.9%;
    width: 75.6%;
  }
  .technologies .news-item p {
    padding-right: 0 !important;
  }
}
/* Mobile Version */
.desktop-menu {
  display: block;
}

/*.mobile-menu { display: none; }*/
@media (max-width: 1200px) {
  header .button-cta,
  header.is-sticky section .button-cta {
    margin-left: 9px;
  }
}
@media (max-width: 991px) {
  .desktop-menu {
    display: none !important;
  }
  /*.mobile-menu { display: block !important; }*/
  header .button-cta {
    display: none !important;
  }
  header .border {
    border: 0 !important;
  }
  header.is-sticky {
    background: rgba(0, 0, 0, 0.7);
    padding: 5px;
  }
  header.is-sticky section .button-cta {
    margin-top: 5px !important;
  }
}
@media screen and (max-width: 767px) {
  header .main-menu {
    width: 100%;
  }
}
.hero, .inner-hero {
  background-repeat: no-repeat;
  background-size: contain;
  background-position: right 100px;
  padding-top: 230px;
  padding-bottom: 150px;
}
.hero .sub-heading,
.hero .generic .sub-heading, .inner-hero .sub-heading,
.inner-hero .generic .sub-heading {
  font-family: "Manrope", sans-serif;
  font-size: 15px !important;
  font-weight: 300;
  line-height: 15px !important;
  letter-spacing: 1.5px;
}
.hero h1, .hero h2, .inner-hero h1, .inner-hero h2 {
  color: #FFF;
  font-family: "Inter", sans-serif;
  font-size: 60px;
  line-height: 70px;
  margin-bottom: 35px;
}
.hero p, .inner-hero p {
  font-family: "Manrope", sans-serif;
  font-size: 18px !important;
  line-height: 26px;
  /*padding-right:42%;*/
}
.hero .hero-caption .sub-heading, .inner-hero .hero-caption .sub-heading {
  background: linear-gradient(to bottom, #202020, #111111);
  padding: 10px;
}
.hero, .inner-hero {
  /*.hero-bg {
      position: relative;

      img {
          display:block;
      }
  }*/
}
.hero .about-hero p, .inner-hero .about-hero p {
  color: #C5C5C5;
  padding: 0;
}
.hero .locations-hero, .inner-hero .locations-hero {
  margin: 0 auto;
  max-width: 770px;
  z-index: 11;
}
.hero .locations-hero p, .inner-hero .locations-hero p {
  font-size: 16px !important;
}
.hero .cta-btn-wrap, .inner-hero .cta-btn-wrap {
  float: left;
  width: auto;
}
.hero a, .inner-hero a {
  font-family: "Manrope", sans-serif;
  font-size: 14px !important;
}
.hero .hero-video, .inner-hero .hero-video {
  position: absolute;
  top: 70px;
  right: 0;
  z-index: -1;
}

.page-louisville .inner-hero, .page-denver .inner-hero, .page-chicago .inner-hero, .page-madison .inner-hero, .page-atlanta .inner-hero, .page-cincinnati .inner-hero, .page-raritan .inner-hero, .page-toronto .inner-hero, .page-hyderabad .inner-hero, .page-noida .inner-hero {
  background-size: cover;
}

.page-louisville .inner-hero .circle, .page-denver .inner-hero .circle, .page-chicago .inner-hero .circle, .page-madison .inner-hero .circle, .page-atlanta .inner-hero .circle, .page-cincinnati .inner-hero .circle, .page-raritan .inner-hero .circle, .page-toronto .inner-hero .circle, .page-hyderabad .inner-hero .circle, .page-noida .inner-hero .circle {
  text-align: justify;
}

.page-louisville .inner-hero .cta-btn-wrap, .page-denver .inner-hero .cta-btn-wrap, .page-chicago .inner-hero .cta-btn-wrap, .page-madison .inner-hero .cta-btn-wrap, .page-atlanta .inner-hero .cta-btn-wrap, .page-cincinnati .inner-hero .cta-btn-wrap, .page-raritan .inner-hero .cta-btn-wrap, .page-toronto .inner-hero .cta-btn-wrap, .page-hyderabad .inner-hero .cta-btn-wrap, .page-noida .inner-hero .cta-btn-wrap {
  width: 300px;
}

.page-noida .inner-hero .cta-btn-wrap {
  width: 230px;
}

.page-technologies .hero,
.page-itam .hero, .page-itsm .hero, .page-spm .hero, .page-itom .hero, .page-irm .hero, .page-csm .hero, .page-lsd .hero, .page-hrsd .hero, .page-fsm .hero, .page-grc .hero {
  background-size: cover;
  background-position: right 0px;
}
.page-technologies .hero p,
.page-itam .hero p, .page-itsm .hero p, .page-spm .hero p, .page-itom .hero p, .page-irm .hero p, .page-csm .hero p, .page-lsd .hero p, .page-hrsd .hero p, .page-fsm .hero p, .page-grc .hero p {
  font-size: 16px !important;
  line-height: 24px;
  padding-right: 25%;
}
.page-technologies .hero-metrics,
.page-itam .hero-metrics, .page-itsm .hero-metrics, .page-spm .hero-metrics, .page-itom .hero-metrics, .page-irm .hero-metrics, .page-csm .hero-metrics, .page-lsd .hero-metrics, .page-hrsd .hero-metrics, .page-fsm .hero-metrics, .page-grc .hero-metrics {
  display: flex;
  gap: 22px;
  margin-top: 30px;
  margin-bottom: 30px;
}
.page-technologies .hero-metrics strong,
.page-itam .hero-metrics strong, .page-itsm .hero-metrics strong, .page-spm .hero-metrics strong, .page-itom .hero-metrics strong, .page-irm .hero-metrics strong, .page-csm .hero-metrics strong, .page-lsd .hero-metrics strong, .page-hrsd .hero-metrics strong, .page-fsm .hero-metrics strong, .page-grc .hero-metrics strong {
  text-align: left;
  font: normal normal bold 16px/21px Manrope;
  letter-spacing: 0.37px;
  color: #00FF5B;
}
.page-technologies .hero-metrics span,
.page-itam .hero-metrics span, .page-itsm .hero-metrics span, .page-spm .hero-metrics span, .page-itom .hero-metrics span, .page-irm .hero-metrics span, .page-csm .hero-metrics span, .page-lsd .hero-metrics span, .page-hrsd .hero-metrics span, .page-fsm .hero-metrics span, .page-grc .hero-metrics span {
  display: block;
  font-size: 13px;
  color: #DEDEDE;
}

.hero-bg {
  margin-top: -165px;
}

.page-technologies .hero,
.page-data-analytics .hero,
.page-salesforce .hero,
.page-application-engineering .hero,
.page-enterprise-connectivity .hero,
.page-electronic-security-av .hero,
.page-managed-it-systems .hero,
.page-managed-talent-pods .hero,
.page-specialized-tech-staffing .hero,
.page-servicenow .hero,
.page-workforce-advisory .hero,
.page-ai-process-intelligence .hero,
.page-enterprise-integrations .hero {
  background-size: 400px auto;
  background-position: 95% 50%;
}

.page-technologies .inner-hero h1,
.page-data-analytics .inner-hero h1,
.page-salesforce .inner-hero h1,
.page-application-engineering .inner-hero h1,
.page-enterprise-connectivity .inner-hero h1,
.page-electronic-security-av .inner-hero h1,
.page-managed-it-systems .inner-hero h1,
.page-managed-talent-pods .inner-hero h1,
.page-specialized-tech-staffing .inner-hero h1,
.page-workforce-advisory .inner-hero h1,
.page-ai-process-intelligence .inner-hero h1,
.page-enterprise-integrations .inner-hero h1,
.page-servicenow .inner-hero h1,
.inner-hero h1 {
  background: linear-gradient(to top, #202020, #111111);
  color: rgba(255, 255, 255, 0.8);
  font-family: "Lato", sans-serif;
  padding: 10px;
}

.page-technologies .inner-hero h2,
.page-data-analytics .inner-hero h2,
.page-salesforce .inner-hero h2,
.page-application-engineering .inner-hero h2,
.page-enterprise-connectivity .inner-hero h2,
.page-electronic-security-av .inner-hero h2,
.page-managed-it-systems .inner-hero h2,
.page-managed-talent-pods .inner-hero h2,
.page-specialized-tech-staffing .inner-hero h2,
.page-workforce-advisory .inner-hero h2,
.page-ai-process-intelligence .inner-hero h2,
.page-enterprise-integrations .inner-hero h2,
.page-servicenow .inner-hero h2,
.inner-hero h2 {
  font-family: "Lato", sans-serif;
  font-size: 50px;
  line-height: 69px;
  font-weight: bold;
}

.page-technologies .hero p,
.page-data-analytics .hero p,
.page-salesforce .hero p,
.page-application-engineering .hero p,
.page-enterprise-connectivity .hero p,
.page-electronic-security-av .hero p,
.page-managed-it-systems .hero p,
.page-managed-talent-pods .hero p,
.page-specialized-tech-staffing .hero p,
.page-workforce-advisory .hero p,
.page-ai-process-intelligence .hero p,
.page-enterprise-integrations .hero p,
.page-servicenow .hero p,
.page-test .hero p {
  padding-right: 30%;
}

.page-technologies .hero-btn img,
.page-data-analytics .hero-btn img,
.page-salesforce .hero-btn img,
.page-application-engineering .hero-btn img,
.page-enterprise-connectivity .hero-btn img,
.page-electronic-security-av .hero-btn img,
.page-managed-it-systems .hero-btn img,
.page-managed-talent-pods .hero-btn img,
.page-specialized-tech-staffing .hero-btn img,
.page-workforce-advisory .hero-btn img,
.page-ai-process-intelligence .hero-btn img,
.page-enterprise-integrations .hero-btn img,
.page-servicenow .hero-btn img,
.inner-hero .hero-btn img {
  margin-right: 10px;
}

/* Smooth rounded banner */
.partnership-banner {
  background: #e2e2e2;
  padding: 120px;
}

.banner-wrapper {
  position: relative;
  border-radius: 22px;
  overflow: hidden;
  z-index: 1;
}

/* What We Do Styles */
.page-what-we-do .hero p {
  line-height: 24px;
  padding-right: 0;
}

/* Technologies Styles */
.tech-hero {
  padding: 120px 0;
  background: radial-gradient(circle at right, #0b3b2e, #000);
  background: url("../images/technology_banner.png") right center/cover no-repeat;
}

.hero-text {
  color: #cfcfcf;
  margin-top: 20px;
  max-width: auto;
}

.hero-metrics {
  display: flex;
  gap: 22px;
  margin-top: 30px;
}

.hero-metrics strong {
  text-align: left;
  font: normal normal bold 16px/21px Manrope;
  letter-spacing: 0.37px;
  color: #00FF5B;
}

.hero-metrics span {
  display: block;
  font-size: 13px;
  color: #DEDEDE;
}

.hero-art {
  max-width: 420px;
}

/* Diversity page styles */
.page-diversity .inner-hero {
  background-size: 40%;
  padding-bottom: 120px;
}

.page-diversity .inner-hero h2 {
  margin-bottom: 20px !important;
}

.page-diversity .inner-hero p {
  font-size: 16px !important;
  color: #C5C5C5;
  padding-right: 22%;
}

/****************************
 Responsive Styles
****************************/
@media screen and (max-width: 991px) {
  .hero .col-md-8, .inner-hero .col-md-8 {
    width: 100%;
  }
  .hero .col-md-8 h1, .inner-hero .col-md-8 h1 {
    font-size: 40px;
    line-height: 50px;
  }
  .hero .col-md-8 p, .inner-hero .col-md-8 p {
    padding-right: 0;
  }
}
@media screen and (max-width: 680px) {
  .hero h1, .inner-hero h1 {
    font-size: 40px;
    line-height: 50px;
  }
  .page-technologies .hero p {
    padding-right: 0;
  }
}
/*.partners {
  border-top:1px solid #5e5e5e;
  border-bottom:1px solid #5e5e5e;
}

.track-left {
  animation: marqueeLeft 15s linear infinite;
}

.marquee img {
  width:120px;
  height:auto;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.6;
  transition: 0.3s;

    :hover {
      filter: grayscale(0);
      opacity: 1;
      transform: scale(1.1);
  }
}*/
/* → Right to Left */
/*@keyframes marqueeLeft {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}*/
/* OUTER WRAPPER */
.marquee {
  overflow: hidden;
  width: 100%;
}

/* INNER SCROLLING TRACK */
.marquee-inner {
  display: flex;
  gap: 80px;
  width: max-content;
  animation: marqueeLeft 20s linear infinite;
}

/* LOGOS */
.marquee-inner img {
  width: 120px;
  height: auto;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.6;
  transition: 0.3s;
}

.marquee-inner img:hover {
  filter: grayscale(0);
  opacity: 1;
  transform: scale(1.1);
}

/* LEFT → RIGHT INFINITE */
@keyframes marqueeLeft {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
.intro {
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  padding: 100px 0 !important;
  position: relative;
  /*overflow-x:hidden;*/
  min-height: 100vh;
}
.intro ::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
}
.intro h2, .intro .platforms {
  color: #B8B8B8;
  font-family: "Inter", sans-serif;
  /*font-size:50px;*/
  font-weight: 300;
  /*line-height:70px;*/
}
.intro .gradient {
  background: linear-gradient(to left, #00FF5B, #3646FC);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}
.intro .intro-content1 {
  /*padding-right:245px !important;*/
  padding-top: 100px;
}
.intro .intro-content1 h2, .intro .intro-content1 .platforms {
  font-size: 30px !important;
  line-height: 43px !important;
}
.intro .intro-content1 p {
  margin-bottom: 0;
}
.intro .intro-content1 .text-white {
  font-size: 51px;
  line-height: 61px;
}
.intro .intro-content1 .execution {
  color: #FFF;
  font-family: "Lato", sans-serif;
  font-size: 127px;
  font-weight: 900 !important;
  line-height: 154px;
}
.intro .intro-content2 .intro-glow {
  position: relative;
  border-radius: 150px;
  padding: 45px 30px;
  text-align: center;
  overflow: hidden;
  background: linear-gradient(90deg, rgba(29, 117, 255, 0.32), rgba(30, 233, 212, 0.32));
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  margin: 0 50px;
}
.intro .intro-content2 {
  padding-top: 200px !important;
}
.intro .intro-content2 h2, .intro .intro-content2 p {
  font-size: 26px;
  line-height: 36px;
}
.intro .intro-content2 h2 {
  color: #FFF;
  font-family: "Lato", sans-serif;
  font-size: 110px;
  font-weight: 900 !important;
  line-height: 130px;
}
.intro .fade-item {
  opacity: 0;
  transform: translateY(30px);
}

@media (max-width: 1440px) {
  .intro-content2 {
    padding-top: 100px !important;
  }
}
@media screen and (max-width: 1200px) {
  .intro .intro-content1 .execution,
  .intro .intro-content2 .green {
    font-size: 107px !important;
    line-height: 134px !important;
  }
  .intro .intro-content2 h2 {
    font-size: 100px;
    line-height: 120px;
  }
  .intro .intro-content2 .intro-glow {
    margin: 0;
  }
}
@media (max-width: 991px) {
  .intro .intro-content1 .execution, .intro .intro-content2 .green {
    font-size: 87px !important;
    line-height: 114px !important;
  }
  .intro .intro-content2 {
    padding-left: 0;
  }
  .intro .intro-content2 .text {
    padding-left: 0;
  }
  .intro .intro-content2 h2 {
    font-size: 80px;
    line-height: 100px;
  }
  .intro .intro-content2 p {
    font-size: 22px;
    line-height: 32px;
  }
}
@media screen and (max-width: 767px) {
  .intro .intro-content1 .execution, .intro .intro-content2 .green {
    font-size: 67px !important;
    line-height: 94px !important;
  }
  .intro .intro-content1 .platforms {
    font-size: 24px !important;
    line-height: 32px !important;
  }
  .intro .intro-content2 h2 {
    font-size: 50px;
    line-height: 65px;
  }
}
@media screen and (max-width: 680px) {
  .intro .intro-content1 .execution, .intro .intro-content2 .green {
    font-size: 50px !important;
    line-height: 75px !important;
  }
  .intro .intro-content1 .text-white {
    font-size: 40px;
    line-height: 50px;
  }
  .intro .intro-content2 h2 {
    font-size: 40px !important;
    line-height: 45px !important;
  }
  .intro .intro-content2 .intro-glow {
    padding: 30px;
  }
  .intro .intro-content2 p {
    font-size: 18px;
    line-height: 24px;
  }
}
.scroll-card-title p {
  padding-right: 145px;
}

.scroll-card-title .orange {
  font-size: 16px !important;
}

.scroll-card-wrap {
  padding-left: 94px;
  transition: padding 0.4s ease;
}

.page-data-engineering-services .scroll-cards {
  display: none;
}

/* Full width state */
.scroll-card-wrap.is-full {
  padding-left: 0;
}

.scroll-card-wrap.is-full .category-tabs {
  padding-left: 106px;
}

.category-tabs .nav-link {
  color: #aaa;
  border-radius: 6px;
}
.category-tabs .nav-link.active {
  background: #111;
  border: 1px solid #f4b400;
  color: #fff;
}

.scroll-card .arrow-link1 {
  top: auto;
  bottom: 35px;
}

/* Hover animation */
.scroll-card:hover .arrow-icon {
  opacity: 1;
  transform: translate(0, 0);
}

/* Horizontal Scroll */
.scroll-container {
  overflow: hidden;
  scroll-behavior: smooth;
  padding-bottom: 1rem;
  /* Hide scrollbar */
}
.scroll-container ::-webkit-scrollbar {
  display: none;
}
.scroll-container .scroll-card {
  background: #111;
  border-radius: 12px;
  /*transition: transform 0.5s ease;*/
  min-width: 300px;
  max-width: 300px;
  /* smoother motion */
  transition: transform 0.45s cubic-bezier(0.22, 1, 0.36, 1);
  will-change: transform;
  overflow: hidden;
}
.scroll-container .scroll-card img {
  transition: transform 0.5s ease;
  width: 100%;
}
.scroll-container .scroll-card h3 {
  font-family: "Inter", sans-serif;
  margin-bottom: 0.5rem;
  top: 38%;
  left: 0;
  padding: 0 15px;
}
.scroll-container .scroll-card p {
  top: 60%;
  left: 30px;
  right: 30px;
  font-size: 14px;
  line-height: 20px;
}
.scroll-container .scroll-card:hover img {
  transform: scale(1.1);
  transition: transform 0.5s ease;
}

/* Arrows */
.scroll-btn {
  top: 45%;
  z-index: 10;
  width: 40px;
  height: 40px;
  border-radius: 10%;
}

.scroll-btn.left {
  right: 80px;
  top: -67px;
}

.scroll-btn.right {
  right: 20px;
  top: -67px;
}

@media screen and (max-width: 991px) {
  .scroll-card-wrap .category-tabs {
    margin-top: 20px;
  }
  .scroll-card-wrap.is-full .category-tabs {
    padding-left: 40px;
    margin-top: 20px;
  }
  .scroll-btn.left, .scroll-btn.right {
    top: -125px;
  }
}
@media screen and (max-width: 680px) {
  .scroll-card-wrap {
    padding-left: 55px;
  }
  .scroll-btn.left, .scroll-btn.right {
    top: -155px;
  }
}
/* Section background */
.dark-grid {
  background: #000;
  color: #fff;
}

.dark-grid .border-top {
  border-top: 1px solid #464847 !important;
}

/* Card container with grid borders */
.grid-card {
  border-left: 1px solid #464847;
  border-bottom: 1px solid #464847;
  position: relative;
}

.icon-img {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: 10px;
  padding-bottom: 9px;
  position: relative;
  width: 36px;
  height: 36px;
  z-index: 1;
}

.grid-card::before {
  background: #FFF;
  position: absolute;
  height: 0;
  content: "";
  left: -2.5px;
  width: 4px;
  top: 38%;
  background: currentColor;
  transition: all 0.4s ease;
  transform: translateY(-50%);
}

.grid-card:hover::before {
  height: 50px;
}

/* Remove right border on last column */
.grid-card:nth-child(3n) {
  border-right: 1px solid #464847;
}

.grid-card:nth-child(2n):before {
  background: #FFF;
}

/* Card content */
.grid-card-inner {
  /*position: relative;*/
  min-height: 353px;
  padding: 3rem 2.5rem;
  background: radial-gradient(circle at top left, rgba(255, 255, 255, 0.08), rgba(0, 0, 0, 0.95));
  transition: 0.4s ease;
}
.grid-card-inner h4 {
  font-size: 1.4rem;
  margin-bottom: 1rem;
}
.grid-card-inner p {
  color: #ABABAB;
  max-width: 90%;
  position: relative;
  z-index: 10;
}

.page-about .grid-card-inner {
  min-height: 388px;
}

.grid-card-inner:hover,
.page-about .grid-card:nth-child(2) .grid-card-inner:hover {
  background: radial-gradient(circle at top left, rgba(255, 255, 255, 0.14), rgba(54, 70, 252, 0.14));
}

/* Green gradient ONLY for 3rd card */
.grid-card:nth-child(2) .grid-card-inner:hover,
.grid-card:nth-child(6) .grid-card-inner:hover,
.page-about .grid-card:nth-child(1) .grid-card-inner:hover,
.page-about .grid-card:nth-child(6) .grid-card-inner:hover {
  background: radial-gradient(circle at top left, rgba(0, 255, 91, 0.35), rgba(0, 255, 91, 0.08));
}

/* Yellow gradient ONLY for 2nd & 3rd card */
.grid-card:nth-child(3) .grid-card-inner:hover,
.grid-card:nth-child(5) .grid-card-inner:hover {
  background: radial-gradient(circle at top left, rgba(244, 180, 0, 0.35), rgba(244, 180, 0, 0.08));
}

.info-card {
  background: #111;
  color: #fff;
  padding: 2rem;
  border-radius: 12px;
  height: 100%;
  position: relative;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.info-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.35);
}

.card-title {
  font-family: "Inter", sans-serif;
  margin-bottom: 0.75rem;
  position: relative;
  z-index: 10;
}

.card-text {
  color: #ABABAB;
  margin-bottom: 2.5rem;
}

.grid-card .arrow-link {
  left: 2rem;
  z-index: 10;
}

/* Technologies Page Styles */
.execution-gaps-section {
  background: #000;
  padding: 100px 0;
  color: #fff;
}

/* LEFT */
.execution-title {
  font-family: "Lato", sans-serif;
  font-size: 44px;
  font-weight: 700;
  line-height: 60px;
  margin-bottom: 24px;
}

.execution-text {
  font-size: 15px;
  line-height: 1.8;
  color: #cfcfcf;
  max-width: 420px;
}

/* RIGHT GRID */
.execution-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  position: relative;
}

/* Divider lines */
.execution-grid::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  width: 1px;
  height: 100%;
  background: rgba(255, 255, 255, 0.25);
}

.execution-grid::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.25);
}

/* GRID ITEM */
.execution-item {
  padding: 40px 36px;
}

.execution-item h3 {
  font-family: "Lato", sans-serif;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.3;
  margin-bottom: 10px;
}

.execution-item p {
  font-size: 14px;
  line-height: 1.6;
  color: #cfcfcf;
}

/* ICON */
.exec-icon {
  font-size: 22px;
  margin-bottom: 14px;
  opacity: 0.9;
}

/* RESPONSIVE */
@media (max-width: 1200px) {
  .grid-card-inner {
    min-height: 377px;
  }
  .page-about .grid-card-inner {
    min-height: 436px;
  }
}
@media (max-width: 991px) {
  .grid-card-inner {
    padding: 3rem 1.5rem;
    min-height: 434px;
  }
  .execution-grid {
    grid-template-columns: 1fr;
  }
  .execution-grid::before,
  .execution-grid::after {
    display: none;
  }
  .execution-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .page-about .grid-card-inner {
    min-height: 485px;
  }
  .page-technologies .execution-item {
    border: 0;
  }
  .page-technologies .execution-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .page-technologies .execution-item:nth-child(1),
  .page-technologies .execution-item:nth-child(2) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .page-technologies .execution-item:nth-child(1),
  .page-technologies .execution-item:nth-child(3) {
    border-right: 1px solid rgba(255, 255, 255, 0.2);
  }
}
@media (max-width: 767px) {
  .grid-card:nth-child(2),
  .grid-card:nth-child(4) {
    border-right: 1px solid #464847;
  }
}
@media (max-width: 600px) {
  .grid-card-inner,
  .page-about .grid-card-inner {
    min-height: 0;
  }
  .page-technologies .execution-grid {
    grid-template-columns: 1fr;
  }
  .page-technologies .execution-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .page-technologies .execution-item:nth-child(1),
  .page-technologies .execution-item:nth-child(3) {
    border-right: 0;
  }
}
/* =========================================================
   FEATURE / AI CARDS
   ========================================================= */
.header-text-center {
  font-size: 50px;
  line-height: 67px;
  letter-spacing: 1.15px;
}

.ai-card {
  background: #0b0d10;
  border: 1px solid #1f2937;
  border-radius: 14px;
  padding: 28px 24px;
  transition: all 0.3s ease;
}
.ai-card .ai-card-title {
  font-weight: normal;
  font-size: 24px;
  line-height: 30px;
}
.ai-card .ai-card-text {
  font-size: 16px;
  line-height: 24px;
  color: #ABABAB;
}

.ai-card:hover {
  border-color: #22c55e;
  transform: translateY(-4px);
  box-shadow: 0 10px 30px rgba(34, 197, 94, 0.15);
}

/****************************
 Responsive Styles
****************************/
@media screen and (max-width: 991px) {
  .featured-col {
    width: 50%;
  }
}
@media screen and (max-width: 480px) {
  .featured-col {
    width: 100%;
  }
}
.ai-accordion .accordion-item {
  background: linear-gradient(90deg, #0b0d10, #12151b);
  border: 1px solid #707070;
}
.ai-accordion .accordion-item p {
  padding-left: 120px;
  padding-right: 100px;
}

.ai-accordion .accordion-item:last-child {
  border-top: 0;
}

/* Accordion Header */
.ai-accordion .accordion-button {
  min-height: 110px; /* Lock row height */
  padding: 0 32px;
  background: transparent;
  color: #ffffff;
  font-size: 22px;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 20px;
  box-shadow: none;
}

.ai-accordion .accordion-button::after {
  filter: invert(1);
  transform: scale(1.2);
}

.ai-accordion .accordion-button:not(.collapsed)::after {
  transform: rotate(180deg) scale(1.2);
}

.ai-accordion .accordion-button:focus {
  box-shadow: none;
}

/* Accordion Body */
.ai-accordion .accordion-body {
  background: transparent linear-gradient(180deg, #000000 0%, #3A3A3A 100%) 0% 0% no-repeat padding-box;
  opacity: 1;
  padding: 40px 32px;
  font-size: 15px;
  line-height: 1.7;
  color: #cbd5e1;
}

/* =========================================================
   ACCORDION ICON (IMAGE BASED)
   ========================================================= */
.ai-icon-img {
  width: 36px;
  height: 36px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Accordion Title */
.ai-title {
  font-size: 22px;
  font-weight: 500;
  line-height: 1.2;
}

/* Smooth accordion expand/collapse */
.ai-accordion .accordion-collapse {
  transition: height 0.6s ease;
}

/* Fade + slide content */
.ai-accordion .accordion-body {
  opacity: 0;
  /*transform: translateY(5px);*/
  transition: opacity 0.1s ease 0.1s, transform 0.1s ease 0.1s;
}

/* When open */
.ai-accordion .accordion-collapse.show .accordion-body {
  opacity: 1;
  transform: translateY(0);
}

/* Anchor-based accordion trigger */
.accordion-trigger {
  min-height: 80px;
  padding: 0 80px;
  display: flex;
  align-items: center;
  gap: 40px;
  text-decoration: none;
  color: #ffffff;
  font-size: 22px;
  font-weight: 500;
  background: transparent;
  border: none;
}

/* Chevron (Bootstrap style replacement) */
.accordion-trigger::after {
  content: "";
  margin-left: auto;
  width: 1.25rem;
  height: 1.25rem;
  background-image: var(--bs-accordion-btn-icon);
  background-size: contain;
  filter: invert(1);
  transition: transform 0.3s ease;
}

/* Rotate when open */
.accordion-trigger[aria-expanded=true]::after {
  transform: rotate(180deg);
}

/* Hover */
.accordion-trigger:hover {
  background: rgba(255, 255, 255, 0.02);
}

/****************************
 Responsive Styles
****************************/
@media screen and (max-width: 767px) {
  .section-dark p {
    font-size: 16px;
    line-height: 24px;
  }
  .ai-accordion .accordion-item p {
    padding-left: 0;
  }
  .accordion-trigger {
    padding: 0 40px;
    gap: 35px;
  }
}
@media screen and (max-width: 660px) {
  .accordion-button::after {
    display: none !important;
  }
}
@media screen and (max-width: 575px) {
  .ai-accordion .accordion-item p {
    padding-right: 0;
  }
  .ai-title {
    font-size: 20px;
  }
  .accordion-trigger {
    padding: 0 25px;
    gap: 30px;
    font-size: 20px;
  }
  .ai-icon-img {
    display: none;
  }
}
/* ======================================================
   V-SOFT ADVANTAGE SECTION
   ====================================================== */
.vsoft-advantage-section {
  background: #000000;
  padding: 100px 0;
  color: #ffffff;
}

/* LEFT SIDE */
.advantage-left {
  padding-left: 80px;
}

.advantage-title {
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 30px;
}

.advantage-desc {
  max-width: 420px;
  font-size: 15px;
  line-height: 1.7;
  color: #c5c5c5;
}

/* CENTER TIMELINE */
.timeline {
  position: relative;
  width: 24px;
  min-height: 100%;
  border-radius: 20px;
  background: linear-gradient(180deg, #0b1a3a 0%, #173d8f 50%, #1f4fd8 100%);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  gap: 125px;
  padding-bottom: 100px;
}

.timeline-dot {
  width: 38px;
  height: 38px;
  background: #ffffff;
  color: #000000;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* RIGHT SIDE STEPS */
.advantage-right {
  padding-right: 80px;
}

.step {
  height: 168px;
}

.step h4 {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 10px;
}

.step p {
  font-size: 15px;
  line-height: 1.7;
  color: #c5c5c5;
  max-width: 520px;
}

/****************************
 Responsive Styles
****************************/
@media screen and (max-width: 767px) {
  .advantage-title {
    font-size: 40px;
    text-align: center;
  }
  .advantage-left, .advantage-right {
    padding-left: 15px;
  }
  .advantage-left {
    margin-bottom: 40px;
  }
  .advantage-desc {
    text-align: center;
    max-width: 100%;
  }
}
@media screen and (max-width: 575px) {
  .time-line {
    justify-content: left !important;
    padding-left: 15px;
    width: 45px;
  }
  .advantage-right {
    padding-right: 15px;
    width: 90%;
  }
}
.partner {
  padding: 20px;
  border: 1px solid #1f2937;
  border-radius: 10px;
  opacity: 0.7;
  transition: all 0.3s ease;
}

.partner:hover {
  opacity: 1;
  border-color: var(--accent);
}

/* Title */
.partners-title {
  font-size: 40px;
  font-weight: 400;
  margin-bottom: 60px;
}

.page-about .partners-title {
  font-family: "Lato", sans-serif;
  font-size: 45px;
  line-height: 60px;
  font-weight: bold;
}

.partners-subtitle {
  font-size: 18px !important;
  line-height: 26px !important;
}

/* Grid Layout */
.partners-grid {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  border: 1px solid rgba(255, 255, 255, 0.25);
}

/* Grid Cell */
.partner-cell {
  height: 160px;
  border-right: 1px solid rgba(255, 255, 255, 0.25);
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Remove right border on last column */
.partner-cell:nth-child(6n) {
  border-right: none;
}

/* Remove bottom border on last row */
.partner-cell:nth-last-child(-n+6) {
  border-bottom: none;
}

/* Logo Styling */
.partner-cell img {
  max-width: 140px;
  max-height: 60px;
  object-fit: contain;
  opacity: 0.95;
}

/* =====================================================
   RESPONSIVE
   ===================================================== */
@media (max-width: 1200px) {
  .partners-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .partner-cell:nth-child(3n) {
    border-right: none;
  }
  .partner-cell:nth-child(6n) {
    border-right: none;
  }
  .partner-cell:nth-last-child(-n+3) {
    border-bottom: none;
  }
  .partner-cell:nth-last-child(-n+6) {
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  }
}
@media (max-width: 575px) {
  .partners-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .partner-cell {
    height: 120px;
  }
  .partner-cell:nth-child(3n) {
    border-right: 1px solid rgba(255, 255, 255, 0.25);
  }
}
/* =====================================================
   FLUID CTA SECTION
   ===================================================== */
.cta-fluid {
  width: 100%;
  background: linear-gradient(90deg, rgba(240, 245, 248, 0.95) 0%, rgba(240, 245, 248, 0.9) 45%, rgba(240, 245, 248, 0.6) 65%, rgba(240, 245, 248, 0.3) 100%);
  background-repeat: no-repeat;
  background-size: cover;
}

/* Inner spacing */
.cta-inner {
  max-width: 1400px;
  padding: 60px 60px;
}

/* LEFT CONTENT */
.cta-content {
  max-width: 520px;
}

/* Heading */
.cta-content h2 {
  font-size: 42px;
  font-weight: 400;
  line-height: 1.25;
  color: #111111;
  margin-bottom: 24px;
}

/* Subtext */
.cta-subtext {
  color: #444444 !important;
  margin-bottom: 32px;
}

/* CTA Button */
.cta-btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding: 14px 22px;
  border: 1px solid #111111;
  border-radius: 6px;
  font-size: 14px;
  color: #111111;
  text-decoration: none;
  transition: all 0.3s ease;
}

/* Arrow */
.cta-arrow {
  font-size: 18px;
  transition: transform 0.3s ease;
}

/* Hover */
.cta-btn:hover {
  background: #111111;
  color: #ffffff;
}

.cta-btn:hover .cta-arrow {
  transform: translateX(6px);
}

/* =====================================================
   LINE BUTTON (OUTLINE CTA)
   ===================================================== */
.line-btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border: 1px solid #111111;
  border-radius: 6px;
  background: transparent;
  color: #111111;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  transition: background-color 0.3s ease, color 0.3s ease, transform 0.2s ease;
}

/* Arrow inside button */
.line-btn .arrow {
  font-size: 18px;
  transition: transform 0.3s ease;
}

/* Hover */
.line-btn:hover {
  background: #111111;
  color: #ffffff;
}

.line-btn:hover .arrow {
  transform: translateX(6px);
}

/* Focus (accessibility) */
.line-btn:focus-visible {
  outline: none;
  box-shadow: 0 0 0 3px rgba(17, 17, 17, 0.3);
}

@media screen and (max-width: 680px) {
  .cta-content h2 {
    font-size: 35px;
  }
  .cta-inner {
    padding: 60px 40px;
    max-width: 100%;
  }
}
/* =====================================================
   FAQ SECTION
   ===================================================== */
.faq-section {
  background: #000000;
  padding: 80px 0;
  color: #ffffff;
}
.faq-section h2 {
  font-size: 50px;
  line-height: 67px;
}

.tech-faq p {
  color: #C5C5C5;
  font-family: "Manrope", sans-serif;
  font-size: 16px;
}

/* Wrapper */
.faq-accordion {
  max-width: 900px;
  margin: auto;
}

/* Item */
.faq-item {
  border-top: 1px solid rgba(255, 255, 255, 0.4);
}

.faq-item:last-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.4);
}

/* Question */
.faq-question {
  width: 100%;
  background: transparent;
  border: none;
  padding: 26px 0;
  color: #ffffff;
  font-size: 20px;
  font-weight: 400;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
}

/* Plus / Minus */
.faq-icon {
  font-size: 26px;
  line-height: 1;
  transition: transform 0.3s ease;
}

/* Answer */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}

.faq-answer p {
  padding-bottom: 26px;
  font-size: 15px;
  line-height: 1.7;
  color: #c5c5c5;
}

/* Active State */
.faq-item.active .faq-answer {
  max-height: 300px;
}

.faq-item.active .faq-icon {
  transform: rotate(45deg); /* + becomes × */
}

/* FAQ accordion animation */
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}

.faq-item.active .faq-answer {
  max-height: 300px; /* enough for content */
}

/* Rotate + to × */
.faq-item.active .faq-icon {
  transform: rotate(45deg);
}

@media screen and (max-width: 680px) {
  .faq-question span:first-child {
    text-align: left;
  }
}
/* SPOTLIGHT */
.spotlight-bg {
  background: transparent linear-gradient(180deg, #020D26 0%, #01200C 100%) 0% 0% no-repeat padding-box;
}

.spotlight-card {
  border-radius: 5px;
  opacity: 1;
  padding: 40px;
}
.spotlight-card h3 {
  font-family: "Inter", sans-serif;
}

.green-bg {
  background: linear-gradient(180deg, #062d1a 0%, #02150c 40%, #000000 100%);
}

.green-bg .spotlight-card .w-button {
  text-align: left;
  padding-left: 20px;
  padding-right: 20px;
}

.green-bg .spotlight-card .w-button:hover {
  background: #FFF;
  color: #000;
}

.blue-bg {
  background: linear-gradient(180deg, #020D26 0%, #01200C 40%, #000000 100%);
}

.page-manufacturing .spotlight-card p,
.page-insurance .spotlight-card p,
.page-government .spotlight-card p,
.page-energy-utilities .spotlight-card p,
.page-real-estate .spotlight-card p,
.page-technology-services .spotlight-card p,
.page-media-communications .spotlight-card p,
.page-education .spotlight-card p,
.page-retail-ecommerce .spotlight-card p {
  color: #FFF;
}

.momentum-section {
  background: #000;
}
.momentum-section h2 {
  color: #C5C5C5;
  font-family: "Manrope", sans-serif;
  font-size: 20px;
  line-height: 32px;
}

/* Title */
.momentum-title {
  font-size: 44px;
  font-weight: 500;
  line-height: 1.15;
}

.page-about .momentum-title {
  font-family: "Lato", sans-serif;
  font-size: 45px;
  font-weight: bold;
  line-height: 60px;
}

/* Intro text */
.momentum-intro {
  font-size: 18px !important;
  line-height: 26px !important;
  color: #c5c5c5;
  max-width: 520px;
}

/* IMAGE CARDS */
.image-card {
  position: relative;
  border-radius: 5px;
  overflow: hidden;
  height: 360px;
}

.image-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.image-card-content {
  position: absolute;
  left: 24px;
  right: 24px;
  bottom: 24px;
  background: #ffffff;
  color: #111;
  padding: 22px 24px;
  border-radius: 5px;
  height: 160px;
}

.image-card-content h4 {
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 10px;
}

.image-card-content p {
  color: #1A1A1A;
  font-size: 16px;
  line-height: 1.6;
  margin: 0;
}

.row-border {
  background: #1A1A1A 0% 0% no-repeat padding-box;
  border-radius: 20px;
  opacity: 1;
  padding: 10px;
  padding-top: 20px;
  padding-bottom: 20px;
}

/* Base tile */
.momentum-tile {
  background: #0b0b0b;
  border-radius: 22px;
  padding: 28px;
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Metric tiles */
.metric-tile h2, .metric-title {
  font-size: 64px !important;
  font-weight: 600;
  line-height: 1 !important;
  margin-bottom: 12px;
}

.metric-tile p {
  font-size: 14px;
  line-height: 1.6;
  color: #cfcfcf;
}

/* Text tile */
.text-tile {
  font-size: 15px;
  line-height: 1.7;
  color: #d1d1d1;
}

/* Image tiles */
.image-tile,
.center-image {
  padding: 0;
  overflow: hidden;
}

.image-tile img,
.center-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Center large image */
.center-image {
  background: #cfd2d4;
  min-height: auto;
}

.h-45 {
  height: 47.5% !important;
}

/* Responsive fixes */
@media (max-width: 991px) {
  .metric-tile h2, .metric-title {
    font-size: 48px !important;
  }
  .center-image {
    min-height: 320px;
  }
  .momentum-section {
    padding-top: 60px;
  }
}
.leadership-section {
  background: #000;
  padding: 60px 0;
}
.leadership-section p {
  font-size: 18px;
  line-height: 26px;
  max-width: 100%;
}
.leadership-section h2 {
  color: #FFF;
  font-family: "Lato", sans-serif;
  font-size: 45px;
  font-weight: 900;
  line-height: 60px;
}

.page-about .leadership-section h2 {
  font-weight: bold;
}

/* Header */
.leadership-header h3 {
  font-size: 46px;
  font-weight: 500;
  margin-bottom: 20px;
}

.page-about .leadership-header h3 {
  color: #FFF;
  font-family: "Lato", sans-serif;
  font-size: 45px;
  font-weight: bold;
  line-height: 60px;
}

.leadership-subtext {
  font-size: 15px;
  line-height: 1.7;
  color: #c5c5c5;
}

/* Card */
.leader-card {
  background: linear-gradient(180deg, #0b0d10, #12151b);
  border-radius: 5px;
  padding: 24px;
  height: 100%;
  color: #ffffff;
  display: flex;
  flex-direction: column;
}

.leader-card:hover {
  background: linear-gradient(180deg, #0b0d10, #12151b);
  border-radius: 5px;
  padding: 24px;
  height: 100%;
  color: #ffffff;
  display: flex;
  flex-direction: column;
}

/* Image */
.leader-card img {
  width: 100%;
  object-fit: cover;
  border-radius: 14px;
  margin-bottom: 20px;
}

/* Name */
.leader-card h4 {
  font-size: 18px;
  font-weight: 500;
  margin-bottom: 4px;
}

/* Role */
.leader-role {
  font-size: 14px;
  font-style: italic;
  color: #60a5fa;
  margin-bottom: 14px;
}

.leader-role.blue {
  color: #3b82f6;
}

/* Bio */
.leader-card p {
  font-size: 14px;
  line-height: 1.6;
  color: #c5c5c5;
  margin-bottom: 20px;
}

/* LinkedIn */
.linkedin-icon {
  color: #FFF;
  font-size: 30px;
}

/* Hover */
.leader-card:hover {
  transform: translateY(-6px);
  transition: transform 0.3s ease;
}

/* Locations Leadership Styles */
.team-header p {
  max-width: 740px;
  margin: 0 auto;
}

.page-technologies .leadership-header {
  text-align: left !important;
}

/* Responsive */
@media (max-width: 992px) {
  .leader-card img {
    height: 240px;
  }
  .leadership-header h3 {
    font-size: 36px;
  }
}
@media screen and (max-width: 575px) {
  .leader-card img {
    height: auto;
  }
}
.global-title {
  font-family: "Lato", sans-serif;
  font-size: 45px;
  font-weight: bold;
  line-height: 60px;
}

/* MAIN CONTAINER */
.global-wrapper {
  background: #1A1A1A 0% 0% no-repeat padding-box;
  border-radius: 5px;
  opacity: 1;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 5px;
  padding: 24px;
  display: grid;
  grid-template-columns: 260px 1fr 420px;
  gap: 20px;
}

/* LEFT LIST */
.global-locations {
  border-radius: 14px;
  padding: 16px;
  overflow-y: auto;
  height: 550px;
}

.location-item {
  display: flex;
  gap: 12px;
  padding: 14px;
  border-radius: 10px;
  margin-bottom: 12px;
  background: #000;
  min-height: 72px;
  /* ADD THESE */
  cursor: pointer;
  position: relative;
  z-index: 5;
}

.location-item img {
  width: 32px;
  height: 20px;
}

.location-item h5 {
  font-size: 15px;
  margin: 0;
}

.location-item p {
  font-size: 12px;
  color: #aaa;
  margin: 0;
}

.location-item.active {
  background: #242424;
}

/* CENTER IMAGE */
.global-image {
  border-radius: 14px;
  overflow: hidden;
  height: 550px;
}

.global-image img {
  width: 100%;
  height: auto;
}

/* RIGHT INFO */
.global-info {
  background: #0b0b0b;
  border-radius: 14px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

/* MAP */
.map-box iframe {
  width: 100%;
  height: 220px;
  border: none;
  border-radius: 12px;
}

/* INFO BLOCK */
.info-block {
  border-top: 1px solid #222;
  padding-top: 16px;
}

.info-row {
  display: flex;
  gap: 12px;
}

.info-row h6 {
  font-size: 12px;
  color: #aaa;
  margin-bottom: 6px;
}

.info-row p {
  font-size: 14px;
  color: #fff;
}

/* ICON */
.icon {
  font-size: 20px;
  margin-top: 4px;
}

/* CTA */
.direction-btn {
  margin-top: auto;
  color: #000;
  padding: 10px 18px;
  border-radius: 6px;
  font-size: 14px;
  text-decoration: none;
  display: inline-block;
  width: fit-content;
}

/* SCROLLBAR */
.global-locations::-webkit-scrollbar {
  width: 6px;
}

.global-locations::-webkit-scrollbar-thumb {
  background: #555;
  border-radius: 10px;
}

/* RESPONSIVE */
@media (max-width: 992px) {
  .global-wrapper {
    grid-template-columns: 1fr;
  }
  .global-image {
    display: none;
  }
}
/* GRID */
.careers-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.9fr;
  align-items: start;
  gap: 80px;
}

/* LEFT CONTENT */
.careers-content h2 {
  font-size: 42px;
  font-weight: 500;
  line-height: 1.2;
  margin-bottom: 24px;
}

.careers-content p {
  font-size: 15px;
  line-height: 1.75;
  color: #c5c5c5;
  margin-bottom: 18px;
  max-width: 560px;
}

/* BUTTON */
.btn-careers {
  display: inline-block;
  margin-top: 24px;
  padding: 10px 18px;
  background: #ffffff;
  color: #000000;
  font-size: 14px;
  font-weight: 500;
  border-radius: 6px;
  text-decoration: none;
  transition: all 0.3s ease;
}

.btn-careers:hover {
  background: #e5e5e5;
  transform: translateY(-2px);
}

/* RIGHT IMAGE */
.careers-image {
  border-radius: 5px;
  overflow: hidden;
  display: flex;
  align-items: flex-start; /* align content to top */
}

.careers-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top; /* 👈 THIS is the key */
}

/* RESPONSIVE */
@media (max-width: 992px) {
  .careers-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
  .careers-content h2 {
    font-size: 34px;
  }
}
.client-delivery h2 {
  font-family: "Inter", sans-serif;
}

.client-delivery p {
  max-width: 100%;
}

.stats-strip {
  background: #000;
  padding: 80px 0;
}

.stats-row {
  align-items: center;
}

.stats-item {
  position: relative;
  padding: 20px 30px;
  color: #fff;
}

.stats-item.text-left {
  text-align: left;
}

.stats-item.text-left:hover {
  color: #00FF5B;
}

/* Divider INSIDE column */
.stats-item.with-divider::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 80px;
  background: rgba(255, 255, 255, 0.25);
  transform: translateY(-50%);
}

/* Numbers */
.stats-item h3 {
  font-size: 52px;
  font-weight: 600;
  margin-bottom: 10px;
}

/* Text */
.stats-item p {
  font-size: 14px;
  color: #cfcfcf;
  line-height: 1.6;
}

/* Highlight card */
.stats-highlight,
.stats-item:hover {
  background: radial-gradient(circle at top, rgba(59, 130, 246, 0.35), rgba(0, 0, 0, 0.95) 70%);
  border-radius: 8px;
}

/* Mobile */
@media (max-width: 991px) {
  .stats-item {
    text-align: center;
    width: 25%;
  }
  .stats-item::after {
    display: none;
  }
}
@media (max-width: 991px) {
  .stats-item {
    width: 50%;
  }
}
.security-title {
  font-size: 34px;
  font-weight: 500;
  line-height: 1.25;
  color: #ffffff;
  margin-bottom: 40px;
}

/* LEFT GRID */
.security-compliance {
  height: 402px;
}

.security-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 22px;
  max-width: 360px;
}

.security-box {
  border-radius: 5px;
  background: linear-gradient(180deg, #1a1a1a, #111);
  padding: 20px 0;
  width: 169px;
}

/* RIGHT CARD */
.contact-card {
  background: linear-gradient(180deg, #1c1f2a, #161923);
  border-radius: 18px;
  padding: 36px;
  color: #fff;
}

/* ITEM */
.contact-item {
  display: flex;
  gap: 18px;
  margin-bottom: 28px;
}

.contact-item:last-child {
  margin-bottom: 0;
}

/* ICON */
.contact-icon {
  width: 34px;
  height: 34px;
  flex-shrink: 0;
}

.contact-icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: #cfd2ff;
  stroke-width: 1.6;
}

/* TEXT */
.contact-item h5 {
  font-size: 16px;
  font-weight: 500;
  margin-bottom: 4px;
}

.contact-item p {
  font-size: 13px;
  color: #b5b5b5;
  margin-bottom: 4px;
}

.contact-item span {
  font-size: 14px;
  color: #ffffff;
}

.align-items-middle {
  align-items: flex-start !important;
  width: 960px;
  margin: auto;
}

/* RESPONSIVE */
@media (max-width: 991px) {
  .security-grid {
    max-width: 100%;
  }
  .contact-card {
    margin-top: 40px;
  }
  .security-compliance {
    height: auto;
  }
}
@media screen and (max-width: 575px) {
  .security-wrap .row {
    padding: 0 !important;
  }
  .security-grid {
    grid-template-columns: 1fr;
  }
}
@media screen and (max-width: 400px) {
  .security-compliance {
    width: 100%;
    height: auto;
  }
  .security-box {
    padding: 0;
  }
  .chat-to-us {
    padding: 0;
    width: 100% !important;
  }
  .contact-card {
    margin-top: 0;
  }
}
.outcomes-section {
  background: url("../img/TabbedPanel_Bg.png") right center/cover no-repeat;
  border-radius: 5px;
  padding: 80px 60px;
}
.outcomes-section p {
  color: #1a1a1a;
}

.outcomes-title {
  font-size: 42px;
  font-weight: 500;
  color: #111;
  text-align: center;
}

.outcomes-subtext {
  text-align: center;
  color: #444;
  margin-top: 12px;
  max-width: 760px;
  margin-inline: auto;
}

/* TABS */
.outcomes-tabs {
  background: #111;
  border-radius: 5px;
  padding: 6px;
  margin: 50px auto 60px;
  max-width: 1000px;
}

.outcomes-tabs .nav-link {
  color: #bbb;
  border-radius: 5px;
  padding: 10px 22px;
  font-weight: 500;
  transition: all 0.25s ease;
}

.outcomes-tabs .nav-link.active {
  background: #fff;
  color: #000;
}

.outcomes-tabs .nav-link:not(.active):hover {
  transform: translateY(-1px);
}

/* CONTENT */
.outcome-list {
  display: flex;
  gap: 24px;
  margin-bottom: 28px;
}

.outcome-icon-tb {
  height: 18px;
  margin-top: 8px;
}

.icon-blue {
  border-color: #2563eb;
}

.icon-red {
  border-color: #ef4444;
}

.icon-green {
  border-color: #22c55e;
}

.outcome-list h5 {
  font-size: 18px;
  margin-bottom: 4px;
  color: #111;
}

.outcome-list p {
  margin: 0;
  color: #444;
  font-size: 14px;
  max-width: 360px;
}

/* IMAGE */
.outcomes-image {
  border-radius: 5px;
  overflow: hidden;
}

.outcomes-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* RESPONSIVE */
@media (max-width: 992px) {
  .outcomes-section {
    padding: 60px 30px;
  }
  .outcomes-title {
    font-size: 34px;
  }
}
.outcome-wrapper {
  padding: 30px 40px;
  max-width: 520px;
}

.outcome-item {
  display: flex;
  align-items: flex-start;
  gap: 22px;
  margin-bottom: 28px;
}
.outcome-item img {
  width: 24px;
  height: auto;
}

.outcome-item:last-child {
  margin-bottom: 0;
}

/* ICON */
.outcome-icon {
  width: 24px;
  display: flex;
  justify-content: center;
  margin-top: 6px;
}

.outcome-icon span {
  width: 16px;
  height: 16px;
  border-radius: 50%;
}

/* ICON COLORS */
.outcome-icon.blue span {
  background: #2563eb;
}

.outcome-icon.red span {
  background: #ef4444;
}

.outcome-icon.green span {
  background: #22c55e;
}

/* DIVIDER */
.outcome-divider {
  width: 4px;
  background: #111;
  height: 24px;
  margin-top: 4px;
}

/* CONTENT */
.outcome-content h4 {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 4px;
  color: #111;
}

.outcome-content p {
  font-size: 14px;
  color: #333;
  margin: 0;
  line-height: 1.6;
}

/* Homepage styles */
.home-outcomes-wrap, .home-outcomes {
  background: #E1E7EC !important;
  padding-bottom: 20px;
}

.home-outcomes {
  padding: 80px 11px;
}

.home-outcomes .outcomes-tabs {
  max-width: 100%;
}

.home-outcomes .outcomes-title {
  font-size: 45px;
  font-weight: bold;
  line-height: 60px;
}

.home-outcomes .blue {
  font-size: 16px !important;
}

.home-outcomes .tab-content {
  border: 1px solid #687178;
  border-radius: 5px;
}

.home-outcomes .outcomes-tabs {
  margin-top: 20px;
  margin-bottom: 20px;
}

.home-tablist .outcome-wrapper {
  max-width: 100%;
}

.home-tablist h3,
.home-tablist a {
  color: #000;
  font-family: "Lato", sans-serif;
  font-weight: bold;
}

.home-tablist a:hover {
  color: #4285F4;
}

.home-tablist p {
  font-size: 16px;
  line-height: 24px;
}

.home-tablist .ai-lead {
  float: left;
  padding-right: 15px;
  transition: all 0.3s ease;
  width: 33.3%;
}

.home-tablist .ai-lead:hover {
  transform: translateY(-6px);
}

.ai-lead span {
  float: left;
  padding-right: 10px;
}

.ai-lead strong {
  font-size: 20px;
  float: left;
  font-family: "Lato";
  line-height: 26px;
  margin-bottom: 10px;
  width: 100%;
}

.ai-lead p {
  float: left;
  width: 100%;
}

.ai-lead .ai-divider {
  background: #779FFF !important;
  float: left;
  width: 91%;
  height: 2px;
}

.ai-lead a {
  font-weight: normal;
}

.ai-lead a:hover {
  color: none;
}

.help-section {
  background: #000;
  padding: 100px 0;
  color: #fff;
}

.help-title {
  font-size: 44px;
  font-weight: 500;
  margin-bottom: 12px;
}

.help-subtitle {
  font-size: 15px;
  color: #b5b5b5;
}

/* GRID */
.help-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  border-top: 1px solid rgba(255, 255, 255, 0.25);
  border-left: 1px solid rgba(255, 255, 255, 0.25);
}

/* CARD */
.help-card {
  padding: 40px 32px;
  min-height: 220px;
  border-right: 1px solid rgba(255, 255, 255, 0.25);
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.help-card h4 {
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 12px;
}

.help-card p {
  font-size: 14px;
  line-height: 1.6;
  color: #c5c5c5;
}

/* CENTER IMAGE */
.help-center {
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.help-center img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* RESPONSIVE */
@media (max-width: 992px) {
  .help-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 576px) {
  .help-grid {
    grid-template-columns: 1fr;
  }
}
/* Header */
.diff-title {
  font-size: 44px;
  font-weight: 500;
  margin-bottom: 14px;
}

.diff-subtitle {
  font-size: 15px;
  color: #b5b5b5;
  max-width: 820px;
  margin: 0 auto;
}

/* Accordion */
.diff-accordion .accordion-item {
  background: transparent;
  border: none;
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}

.diff-accordion .accordion-item:last-child {
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

.diff-accordion .accordion-button {
  background: transparent;
  color: #ffffff;
  font-size: 22px;
  font-weight: 500;
  padding: 26px 0;
  box-shadow: none;
}

.diff-accordion .accordion-button::after {
  filter: invert(1);
}

.diff-accordion .accordion-button:not(.collapsed) {
  background: transparent;
  color: #ffffff;
}

.diff-accordion .accordion-body {
  padding: 0 0 24px 0;
  font-size: 14px;
  color: #c5c5c5;
  line-height: 1.7;
}

/* List */
.diff-list {
  padding-left: 18px;
  margin: 0;
}

.diff-list li {
  margin-bottom: 8px;
}

/* Image */
.diff-image {
  display: flex;
  justify-content: center; /* horizontal center */
  align-items: flex-start; /* vertical TOP */
}

.diff-image img {
  max-width: 420px;
  width: 100%;
}

/* Responsive */
@media (max-width: 992px) {
  .diff-title {
    font-size: 36px;
  }
  .diff-image img {
    max-width: 320px;
  }
}
/* SECTION */
.retail-consultants {
  background: #000;
  padding: 80px 0;
}

/* TITLE */
.retail-title {
  font-size: 42px;
  font-weight: 400;
  color: #fff;
}

/* CARD */
.consultant-card {
  background: linear-gradient(180deg, #0b0d10, #12151b);
  border-radius: 14px;
  padding: 18px;
  gap: 18px;
  transition: all 0.3s ease;
}

.consultant-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.6);
}

/* IMAGE */
.consultant-img {
  width: 120px;
  height: 120px;
  border-radius: 12px;
  overflow: hidden;
  flex-shrink: 0;
}

.consultant-img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* TEXT */
.consultant-info h5 {
  font-size: 18px;
  margin-bottom: 4px;
  color: #ffffff;
}

.consultant-info .role {
  display: block;
  font-size: 14px;
  color: #facc15;
  margin-bottom: 6px;
  font-style: italic;
}

.consultant-info p {
  font-size: 14px;
  color: #c5c5c5;
  margin: 0;
}

/* RESPONSIVE */
@media (max-width: 576px) {
  .consultant-card {
    flex-direction: column;
    text-align: center;
  }
}
.process-steps {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}

/* STEP */
.process-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 120px;
  text-align: center;
}

.process-step p {
  margin-top: 12px;
  font-size: 15px;
  color: #ffffff;
  line-height: 1.3;
}

/* ICON CIRCLE */
.step-icon {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* COLOR VARIANTS */
.step-icon.green {
  border: 2px solid #22c55e;
}

.step-icon.blue {
  border: 2px solid #3b82f6;
}

/* CONNECTOR LINE */
.step-line {
  margin-bottom: 45px;
}

.green-line {
  background: linear-gradient(90deg, #22c55e, #16a34a);
}

.blue-line {
  background: linear-gradient(90deg, #3b82f6, #2563eb);
}

/* RESPONSIVE */
@media (max-width: 768px) {
  .process-steps {
    flex-direction: column;
  }
  .step-line {
    margin-bottom: 45px;
  }
}
/* CARD BASE */
.strategy-card {
  border: 1px solid rgba(34, 197, 94, 0.35);
  border-radius: 5px;
  padding: 32px;
  height: 100%;
  color: #ffffff;
  background: transparent url("../images/Blue.png") 0% 0% no-repeat padding-box;
}

/* LEFT LARGE CARD */
.strategy-card-lg {
  padding-bottom: 24px;
}

/* TITLE */
.strategy-card h3 {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 12px;
}

/* GREEN TAG */
.strategy-tag {
  display: inline-block;
  font-size: 14px;
  color: #22c55e;
  font-weight: 500;
  margin-bottom: 14px;
}

/* TEXT */
.strategy-card p {
  font-size: 15px;
  line-height: 1.7;
  color: #cfcfcf;
  margin-bottom: 24px;
}

/* IMAGE */
.strategy-image {
  border-radius: 5px;
  overflow: hidden;
}

.strategy-image img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

/* HOVER */
.strategy-card:hover {
  border-color: #22c55e;
  box-shadow: 0 0 20px rgba(34, 197, 94, 0.15);
  transition: all 0.3s ease;
}

/* RESPONSIVE */
@media (max-width: 991px) {
  .strategy-card h3 {
    font-size: 22px;
  }
}
/* AI HEADER */
.ai-header {
  max-width: 760px;
  margin: 0 auto 40px;
}

.ai-header h2 {
  font-size: 42px;
  font-weight: 400;
  line-height: 1.25;
  margin-bottom: 18px;
}

.ai-header p {
  font-size: 15px;
  line-height: 1.7;
  color: #c5c5c5;
}

/* FEATURES GRID */
.ai-features {
  row-gap: 50px;
}

/* FEATURE ITEM */
.ai-feature {
  background: linear-gradient(90deg, #000000, #242424);
  border: 1px solid #707070;
  padding-top: 10px;
  min-height: 255px;
  height: auto;
}

/* TOP DIVIDER LINE */
.ai-divider {
  width: 100%;
  height: 1px;
  background: rgba(255, 255, 255, 0.15) !important;
  margin-bottom: 24px;
}

.tech-featured-inner {
  transition: all 0.3s ease;
}
.tech-featured-inner .ai-divider {
  background: #2D63E3 !important;
  margin-top: 15px;
  margin-bottom: 15px;
}
.tech-featured-inner p {
  color: #ABABAB;
  font-family: "Manrope", sans-serif;
  line-height: 24px;
}

.tech-featured-inner:hover {
  transform: translateY(-6px);
}

.tech-featured-title {
  padding: 150px 0;
}
.tech-featured-title h2 {
  max-width: 768px;
}

.tech-featured-title .orange {
  font-size: 16px !important;
}

/* TITLE */
.ai-feature h4 {
  font-family: "Lato", sans-serif;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
}

/* TEXT */
.ai-feature p {
  color: #ABABAB;
  font-family: "Manrope", sans-serif;
  font-size: 14px;
  line-height: 20px;
}

/* RESPONSIVE */
@media (max-width: 991px) {
  .ai-header h2 {
    font-size: 34px;
  }
}
@media (max-width: 576px) {
  .ai-header h2 {
    font-size: 28px;
  }
}
/* Scroll Cards */
/* Full Width Section */
.card-slider-section {
  width: 100%;
  /*background: #031a14;*/
  padding: 60px 0;
  overflow: hidden;
}

/* Swiper Full Width */
.cardSwiper {
  width: 100%;
  padding-left: 60px;
}

/* Card Design */
.slider-card {
  height: 260px;
  border-radius: 12px;
  padding: 35px;
  position: relative;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.35);
}

/* Title */
.slider-card h4 {
  font-size: 22px;
  font-weight: 600;
  margin-top: 25px;
}

/* Paragraph */
.slider-card p {
  font-size: 15px;
  line-height: 1.6;
  margin-top: 15px;
  max-width: 90%;
}

/* Arrow Icon */
.slider-card .arrow {
  position: absolute;
  bottom: 25px;
  right: 30px;
  font-size: 22px;
}

/* Top Small Bar */
.top-bar {
  position: absolute;
  top: 14px;
  left: 20px;
  width: 90px;
  height: 6px;
  border-radius: 10px;
  background: white;
}

.top-bar.yellow {
  background: gold;
}

/* Pagination Progress Bars */
.progress-pagination {
  position: relative !important;
  margin-top: 40px;
  text-align: center;
}

/* Each Indicator */
.progress-pagination .swiper-pagination-bullet {
  width: 55px;
  height: 4px;
  background: rgba(255, 255, 255, 0.4);
  border-radius: 10px;
  margin: 0 8px !important;
  opacity: 1;
}

/* Active Indicator */
.progress-pagination .swiper-pagination-bullet-active {
  background: #0d6efd;
}

/* FAQ section */
.faq-section h2 {
  font-size: 45px;
  font-family: "Lato", sans-serif;
  font-weight: bold;
  line-height: 60px;
  padding-right: 30%;
}

/* Responsive */
@media (max-width: 991px) {
  .cardSwiper {
    padding-left: 20px;
  }
  .tech-featured {
    padding-top: 60px;
  }
  .tech-partners {
    padding: 60px 0 0 0;
  }
  .partners-card {
    display: flex;
    margin-bottom: 40px;
    justify-content: center;
  }
  .faq-section h2 {
    padding-right: 35%;
  }
}
.terms-privacy-content {
  max-width: 700px;
}
.terms-privacy-content h3 {
  font-size: 24px;
  line-height: 32px;
}
.terms-privacy-content p {
  color: #DEDEDE;
  font-family: "Manrope", sans-serif;
  font-size: 16px;
  line-height: 24px;
  margin-bottom: 22px;
}

.locations-hero {
  margin-bottom: 300px;
  max-width: 770px;
  margin: 200px auto 300px auto;
}

.locations-hero h1 {
  font-family: "Inter", sans-serif;
  font-weight: bold;
  font-size: 60px;
  line-height: 70px;
}

.locations-hero p {
  font-family: "Manrope", sans-serif;
  font-size: 16px !important;
  line-height: 24px;
}

.locations-card {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50% -30px;
  height: auto;
  /*margin-top: -510px;*/
  position: relative;
  z-index: 1;
}

.locations-card.location-bottom {
  background-position: 50% 85px;
}

.loc-container-col .location-cards-col {
  margin-bottom: 65px;
}

.location-cards {
  background: rgba(26, 26, 26, 0.7); /* #1A1A1A with opacity */
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 5px;
  width: 312px;
  height: 420px;
  position: relative;
  transition: all 0.4s ease;
  cursor: pointer;
}

.loc-img {
  margin-bottom: 40px;
  padding-top: 60px;
  position: relative;
  height: 200px;
}

.location-cards img {
  width: 212px;
  height: auto;
}

/* Icon layering */
.icon-default,
.icon-hover {
  width: 212px;
  transition: opacity 0.3s ease, transform 0.4s ease;
}

.icon-hover {
  position: absolute;
  left: 50%;
  top: 60px;
  transform: translateX(-50%);
  opacity: 0;
}

/* Hover effects */
.location-cards:hover .icon-default {
  opacity: 0;
}

.location-cards:hover .icon-hover {
  opacity: 1;
  transform: translateX(-50%) scale(1.05);
}

.arrow-diagonal {
  position: absolute;
  top: 20px;
  right: 20px;
  opacity: 0;
  transform: translate(-10px, 10px);
  transition: all 0.3s ease;
}

.arrow-diagonal img {
  width: 13px;
}

/* Arrow appears on hover */
.location-cards:hover .arrow-diagonal {
  opacity: 1;
  transform: translate(0, 0);
}

.location-cards p {
  color: #DEDEDE;
  font-family: "Manrope", sans-serif;
}

.partnerships-hero {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top center;
  padding-top: 100px;
  height: 650px;
}
.partnerships-hero h1 {
  font-family: "Inter", sans-serif;
  font-size: 50px;
  line-height: 67px;
}
.partnerships-hero .para {
  margin: 0 auto;
  width: 550px;
}
.partnerships-hero .para p {
  font-family: "Manrope", sans-serif;
}

.partnership-heading h2 {
  font-family: "Inter", sans-serif;
  font-size: 50px;
  line-height: 67px;
}

.partnership-title h3 {
  font-family: "Inter", sans-serif;
  font-size: 30px;
  line-height: 36px;
}

.partnership-section {
  padding: 80px 0;
  background: #000;
}

.partner-card {
  position: relative;
  border-radius: 18px;
  padding: 30px;
  min-height: 300px;
  /*background-size: cover;
  background-position: center;*/
  overflow: hidden;
  /*display: flex;
  flex-direction: column;
  justify-content: space-between;*/
  transition: transform 0.4s ease;
}

.partner-card:hover .arrow-icon {
  opacity: 1;
  transform: translate(0, 0);
}

.partner-card.overlay_content {
  background: #042d41;
  background-repeat: no-repeat;
  background-position: right bottom;
  background-size: 198px auto;
}

/* Overlay for content cards */
.partner-card.overlay_content::before {
  content: "";
  position: absolute;
  inset: 0;
  /*background: rgba(0, 0, 0, 0.35);*/
  transition: background 0.3s ease;
}

.partnership-title {
  margin-top: 100px;
  margin-bottom: 20px;
}

/* Keep inner content above overlay */
.partner-card.overlay_content > * {
  position: relative;
  z-index: 2;
}

.partner-card.full_image {
  background-repeat: no-repeat;
  height: 300px;
}

/* Logo */
.partner-logo img {
  max-width: 115px;
  height: auto;
}

/* Hover Content Hidden Initially */
.partner-hover-content {
  margin-top: auto;
  opacity: 1;
  transform: translateY(0);
  transition: all 0.4s ease;
}

/* Show on Hover */
.partner-card:hover .partner-hover-content,
.partner-card:hover .arrow-link {
  opacity: 1;
  transform: translateY(0);
}

.partner-card .arrow-link1 {
  float: right;
  margin-top: -30px;
  position: relative;
  width: 35px;
  z-index: 10 !important;
}

/* Arrow */
.partner-card .arrow-link {
  border-radius: 0;
  display: inline-block;
  font-size: 20px;
  color: #fff;
  text-decoration: none;
  margin-bottom: 15px;
  opacity: 0;
  padding: 15px 0 0 15px;
  position: absolute;
  transition: transform 0.3s ease;
  top: 10px;
  right: 10px;
}
.partner-card small {
  float: left;
  margin-top: 10px;
  width: 100%;
}

.partner-card:hover .arrow-link {
  transform: translateX(6px);
}

.partner-content {
  padding-right: 40%;
  padding-top: 60px;
}
.partner-content p {
  color: #fff;
  margin: 0;
  font-size: 16px;
  line-height: 1.6;
}

.partnership-col {
  height: 300px;
}
.partnership-col .partner-content {
  padding-right: 0;
  padding-top: 45px;
}

/* Mobile overlay */
@media (max-width: 767px) {
  .partnerships-hero::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    z-index: 1;
  }
  /* Make sure content stays above overlay */
  .partnerships-hero > * {
    position: relative;
    z-index: 2;
  }
  .partnerships-hero .para {
    margin: 0 auto;
    width: 100%;
  }
}
@media (max-width: 680px) {
  .partnerships-hero {
    height: auto;
  }
}
.diversity-tagline {
  background-repeat: no-repeat;
  background: url("http://localhost/vsoftstaging.com/wp-content/themes/vsoftstage/assets/img/quotation-mark.png") no-repeat center;
  background-size: contain;
  background-position: top left;
}

.diversity-tagline p {
  font-family: "Sorts Mill Goudy", serif;
  font-size: 30px;
  line-height: 41px;
}

.diversity-tagline .tagline-quotes {
  font-size: 24px;
  line-height: 40px;
}

.legacy-diversity h2 {
  font-family: "Inter", sans-serif;
  font-size: 50px;
  line-height: 67px;
}

.legacy-diversity {
  background: linear-gradient(180deg, rgba(255, 222, 21, 0.2) 0%, rgba(26, 26, 26, 0.2) 100%);
  border: 1px solid #51470a;
  border-radius: 5px;
}

.legacy-diversity p {
  color: #ABABAB;
}

.legacy-img {
  width: 250px;
  border-radius: 5px;
}

/* Diversity Certificates */
.certifications-section {
  background: #DEDEDE;
}

.certifications-section h2,
.certified-impact h2 {
  color: #1a1a1a;
  font-family: "Inter", sans-serif;
  font-size: 50px;
  line-height: 67px;
}

.logo-card {
  background: #f3f3f3;
  border-radius: 5px;
  padding: 30px;
  overflow: hidden;
  transition: 0.3s ease;
}

.logo-card img {
  object-fit: contain;
  transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.logo-card:hover img {
  transform: scale(1.1);
}

/* Certified Impact */
.certified-impact {
  padding: 100px 0 !important;
}

/* Gallery Section */
.gallery-section {
  margin-bottom: 60px;
}

.masonry-grid {
  column-count: 3;
  column-gap: 1.5rem;
}

.masonry-item {
  break-inside: avoid;
  margin-bottom: 1.5rem;
  border-radius: 5px;
  overflow: hidden;
}

.gallery-item, .gallery-item img {
  border-radius: 5px;
}

.gallery-item {
  width: 75%;
  margin: 0 auto;
}

.masonry-item img,
.gallery-item img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.4s ease;
}

.masonry-item:hover img,
.gallery-item:hover img {
  transform: scale(1.05);
}

@media (max-width: 991px) {
  .masonry-grid {
    column-count: 2;
  }
}
@media (max-width: 575px) {
  .masonry-grid {
    column-count: 1;
  }
}
/* Values Carousel */
.carousel-item {
  transition: transform 0.6s ease-in-out !important;
}

.values-section {
  background-color: #000;
}

.values-section h2 {
  font-size: 40px;
  font-weight: 600;
}

.value-card {
  background: linear-gradient(145deg, #1a1a1a, #111);
  border-radius: 12px;
  transition: all 0.3s ease;
}

.value-card:hover {
  transform: translateY(-5px);
  background: linear-gradient(145deg, #222, #1a1a1a);
}

.value-card h5 {
  font-weight: 600;
  width: 80%;
}

.value-card p {
  font-size: 14px;
  line-height: 1.6;
}

.carousel-indicators button {
  width: 40px;
  height: 3px;
  background-color: #666;
  border: none;
  margin: 0 5px;
}

.carousel-indicators .active {
  background-color: #0d6efd; /* blue */
}

.data-intro h2 {
  color: #1a1a1a;
  font-weight: 900 !important;
}
.data-intro .intro-para {
  max-width: 700px;
}
.data-intro p {
  color: #242424;
  font-family: "Manrope", sans-serif;
  font-size: 16px;
  line-height: 24px;
  margin-top: 16px;
}

.data-metrics .bi-tag, .data-metrics .bi-desc, .data-metrics .bi-green, .data-metrics .bi-text {
  font-family: "Manrope", sans-serif;
}

/* Data Metrics Styles */
.exec-header {
  background: #000;
  padding: 80px 0 40px;
}

/* LEFT BIG TITLE */
.exec-title {
  font-size: 36px;
  font-weight: 700;
  color: #fff;
  line-height: 1.2;
  margin: 0;
}

/* RIGHT SMALL TEXT */
.exec-sub {
  color: #ddd;
  font-size: 20px;
  max-width: 420px;
  margin-left: auto;
}

/* RESPONSIVE */
@media (max-width: 992px) {
  .exec-title {
    font-size: 24px;
    margin-bottom: 20px;
  }
  .exec-sub {
    text-align: left;
    margin-left: 0;
  }
}
.bi-impact-section {
  background: #000;
  padding: 80px 0;
  color: #fff;
  font-family: Inter, sans-serif;
}

/* COLUMN */
.bi-col {
  padding-right: 30px;
  padding-right: 30px;
  border-right: 5px solid #fff;
  height: 150px;
}

/* VERTICAL DIVIDER */
.bi-col:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 10px;
  top: 0;
  height: 120px;
  width: 4px;
  background: #fff;
  opacity: 0.9;
}

/* SMALL YELLOW TITLE */
.bi-tag {
  font-size: 12px;
  letter-spacing: 1px;
  color: #ffc400;
  display: block;
  margin-bottom: 10px;
}

/* BIG NUMBER */
.bi-percent {
  font-size: 64px;
  font-weight: 700;
  margin: 0;
}

/* WHITE DESCRIPTION */
.bi-desc {
  font-size: 14px;
  color: #cfcfcf;
  margin-bottom: 18px;
}

/* GREEN HIGHLIGHT TEXT */
.bi-green {
  color: #00ff9c;
  font-weight: 600;
  margin-bottom: 12px;
}

/* NORMAL PARAGRAPH */
.bi-text {
  font-size: 14px;
  color: #aaa;
  line-height: 1.6;
}

/* RESPONSIVE */
@media (max-width: 992px) {
  .bi-col::after {
    display: none;
  }
  .bi-percent {
    font-size: 42px;
  }
}
.border-code {
  border-right: 1px solid #fff;
  margin-top: 180px;
  padding: 0px 0px 10px 20px;
}

.border-none {
  border-right: 1px solid #fff;
  padding: 0px 0px 10px 20px;
}

@media (max-width: 1920px) {
  .border-code {
    height: 45vh;
  }
  .border-none {
    height: 65vh;
  }
}
@media (max-width: 1440px) {
  .border-code {
    height: 68vh;
  }
  .border-none {
    height: 90vh;
  }
}
/* Data Pillars Styles */
.piller-icon {
  width: 32px;
  margin-bottom: 20px;
}

.piller-p50 {
  padding-top: 50px;
}

/* HEADER */
.pillar-heading {
  font-size: 45px;
  font-weight: 700;
  line-height: 60px;
}

.tech .pillar-heading,
.tech .pillar-sub {
  color: #1a1a1a;
}

.pillar-sub {
  font-size: 16px;
  opacity: 0.85;
  max-width: 420px;
  margin-left: auto;
}

/* CARD BASE */
.pillar-card {
  border-radius: 18px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  transition: 0.3s ease;
}

.pillar-card:hover {
  transform: translateY(-6px);
}

/* ⭐ HEIGHT CONTROL (THIS MATCHES YOUR DESIGN) */
.pillar-card.tall {
  min-height: 360px;
}

.pillar-card.short {
  min-height: 300px;
}

/* TEXT */
.pillar-card h5 {
  font-family: "Lato", sans-serif;
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 12px;
}

.pillar-card p {
  font-size: 14px;
  opacity: 0.85;
}

.pillar-card a {
  margin-top: 18px;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
}

/* COLORS */
.gold-bg {
  background: linear-gradient(to bottom, #3b2a00, #000);
}

.blue-bg {
  background: linear-gradient(to bottom, #06132b, #000);
}

.green-bg {
  background: linear-gradient(to bottom, #004d2a, #000);
}

.navy-bg {
  background: linear-gradient(to bottom, #0c1630, #000);
}

/* MOBILE */
@media (max-width: 992px) {
  .pillar-card.tall,
  .pillar-card.short {
    height: auto;
  }
}
/* Data Stack Styles */
/* SECTION */
.decision-section {
  padding: 100px 0;
  position: relative;
}

/* TEXT BLOCK */
.info-block {
  position: relative;
  margin-bottom: 80px;
}

.stack-section .info-block {
  border: 0;
  float: left;
}

.stack-section .right-content .info-block {
  float: right;
}

.info-block h4 {
  font-family: "Lato", sans-serif;
  font-size: 22px;
  font-weight: 600;
  margin-bottom: 10px;
}

.info-block p {
  color: #C5C5C5;
  font-size: 16px;
  line-height: 24px;
  max-width: 360px;
}

/* CONNECTOR LINES */
.left-content .info-block::after {
  content: "";
  position: absolute;
  top: 18px;
  right: -100px;
  width: 160px;
  height: 1px;
  background-image: url("../img/line.png");
  opacity: 0.6;
}

.right-content .info-block::before {
  content: "";
  position: absolute;
  top: 10px;
  left: -120px;
  width: 160px;
  height: 1px;
  background-image: url("../img/line.png");
  opacity: 0.6;
}

/* CENTER IMAGE */
.center-stack {
  position: relative;
}

.stack-img {
  max-width: 260px;
  filter: drop-shadow(0 0 30px rgba(0, 255, 200, 0.25));
}

/* RESPONSIVE */
@media (max-width: 992px) {
  .left-content .info-block::after,
  .right-content .info-block::before {
    display: none;
  }
  .right-content {
    text-align: left !important;
  }
  .info-block {
    margin-bottom: 40px;
  }
}
/* Data Tech Styles */
/* TOP NAV */
.tech-nav .nav-link {
  background: none;
  border: none;
  color: #4b4b4b;
  font-weight: 600;
  padding: 15px 30px;
  position: relative;
}

.tab-logo {
  height: 26px;
  margin-right: 8px;
}

/* ACTIVE TAB BLUE LINE */
.tech-nav .nav-link.active {
  color: #1e6eff;
}

.tech-nav .nav-link.active::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -10px;
  width: 100%;
  height: 3px;
  background: #1e6eff;
  border-radius: 10px;
}

/* PANEL BOX */
.tech-panel {
  background: #fff;
  border-radius: 5px;
  display: flex;
  justify-content: center;
  padding: 40px;
}

/* ICONS */
.tech-icon {
  height: 60px;
  margin-bottom: 15px;
}

.tech-panel p {
  font-size: 14px;
  color: #333;
  font-weight: 500;
  line-height: 24px;
}

/* Data Advantage Timeline Styles */
.page-data-analytics .timeline {
  gap: 73px;
}

.page-data-analytics .step {
  height: 114px;
}

/* Hide stack-section for below pages */
.page-ai-adoption-advisory .stack-section,
.page-artificial-intelligence .stack-section,
.page-robotic-process-automation .stack-section,
.page-machine-learning .stack-section {
  display: none;
}

footer {
  background: linear-gradient(to top, #041522, #384550);
  color: #e2e2e2;
  padding: 40px 0 0 0;
}
footer p {
  color: #e2e2e2;
  font-size: 14px;
}
footer .quick-links ul {
  float: left;
  padding: 0;
}
footer .quick-links ul li {
  list-style: none;
}
footer .quick-links ul li a {
  color: #B8B8B8;
  font-size: 14px;
  text-decoration: none;
}
footer .links {
  float: left;
  width: 25%;
}
footer .links h4 {
  font-family: "Inter", sans-serif;
}
footer .footer-logo img {
  margin-bottom: 40px;
  width: 132px;
  height: auto;
}
footer .ask-ai p {
  font-family: "Manrope", sans-serif;
}
footer .ai-tools {
  padding-right: 83px;
}
footer .ai-tools li {
  float: left;
  list-style: none;
  margin: 0 15px 0 0;
}
footer .ai-tools li img {
  width: 30px;
  height: auto;
}
footer .copyright {
  border-top: 1px solid #e2e2e2;
}
footer .copyright p {
  font-size: 14px;
  font-weight: 300;
}
footer .copyright p a {
  color: #e2e2e2;
  text-decoration: none;
}
footer .copyright ul li {
  float: left;
  list-style: none;
  margin-left: 8px;
}
footer .copyright ul li a {
  color: #e2e2e2;
  font-size: 14px;
  font-weight: 300;
  text-decoration: none;
}
footer .copyright ul li ::after {
  content: "|";
  padding-left: 8px;
}
footer .copyright ul li:last-child a::after {
  content: none; /* Remove last separator */
}

.marquee {
  width: 100vw;
  overflow: hidden;
}

.marquee-track {
  display: flex;
  width: max-content;
  white-space: nowrap;
  animation: marquee 30s linear infinite;
}

.marquee-track span {
  color: #26343f;
  display: inline-block;
  font-family: "Manrope", sans-serif;
  font-size: 176px;
  font-weight: 900;
}

.social-icons img {
  width: 180px;
}

@keyframes marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}
.momentum-matter h2 {
  font-size: 90px;
  font-weight: 700;
  line-height: 90px;
}

@media screen and (max-width: 991px) {
  .quick-links {
    padding-right: 15px !important;
    width: 100%;
  }
  footer .float-start, footer .float-end {
    display: flex;
    justify-content: center;
    width: 100%;
  }
}
@media screen and (max-width: 680px) {
  footer .ai-tools {
    padding-right: 0;
  }
  .social-links {
    justify-content: left !important;
  }
}
@media screen and (max-width: 575px) {
  .quick-links {
    padding-right: 30px !important;
    padding-left: 30px;
  }
  footer .links {
    float: left;
    width: 50%;
  }
  footer .links:nth-child(1),
  footer .links:nth-child(2) {
    height: 260px;
  }
}
@media screen and (max-width: 320px) {
  footer .links:nth-child(1), footer .links:nth-child(2) {
    height: 280px;
  }
}/*# sourceMappingURL=style.css.map */