/* ========================================
   SELF-HOSTED POPPINS (was Google Fonts) — see /assets/fonts
   ======================================== */
@font-face{font-family:"Poppins";font-style:normal;font-weight:300;font-display:swap;src:url("/assets/fonts/poppins-300-latinext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:300;font-display:swap;src:url("/assets/fonts/poppins-300-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/poppins-400-latinext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:400;font-display:swap;src:url("/assets/fonts/poppins-400-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/poppins-500-latinext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:500;font-display:swap;src:url("/assets/fonts/poppins-500-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/poppins-600-latinext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:600;font-display:swap;src:url("/assets/fonts/poppins-600-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/poppins-700-latinext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:700;font-display:swap;src:url("/assets/fonts/poppins-700-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:800;font-display:swap;src:url("/assets/fonts/poppins-800-latinext.woff2") format("woff2");unicode-range:U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;}
@font-face{font-family:"Poppins";font-style:normal;font-weight:800;font-display:swap;src:url("/assets/fonts/poppins-800-latin.woff2") format("woff2");unicode-range:U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;}

/* ========================================
   GLOBAL STYLES & RESET
   ======================================== */

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

:root {
  /* Primary Colors - Symake Brand (from logo) */
  --primary-color: #5225E1;
  --primary-dark: #441BC5;
  --primary-light: #8B7AE8;

  /* Secondary Colors */
  --secondary-color: #5827F5;
  --tertiary-color: #8B7AE8;
  --salesforce-color: #5225E1;

  /* Odoo Colors */
  --odoo-color: #714b67;
  --odoo-secondary: #8a5c82;
  --odoo-tertiary: #c9b2c4;

  /* Neutral Colors */
  --text-dark: #1A1636;
  --text-medium: #64607D;
  --text-light: #9A95B0;
  --bg-light: #F7F5FF;
  --bg-white: #ffffff;
  --border-color: #E8E5F0;

  /* Accent Colors */
  --success-color: #10b981;
  --warning-color: #f59e0b;
  --error-color: #ef4444;

  /* Typography */
  --font-primary: "Poppins", -apple-system, BlinkMacSystemFont, "Segoe UI",
    sans-serif;

  /* Spacing */
  --spacing-xs: 0.5rem;
  --spacing-sm: 1rem;
  --spacing-md: 1.5rem;
  --spacing-lg: 2rem;
  --spacing-xl: 3rem;
  --spacing-2xl: 4rem;

  /* Border Radius */
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --radius-xl: 1.25rem;

  /* Shadows - Subtle & Elegant */
  --shadow-sm: 0 1px 3px 0 rgba(82, 37, 225, 0.06);
  --shadow-md: 0 4px 12px -2px rgba(82, 37, 225, 0.08);
  --shadow-lg: 0 12px 24px -4px rgba(82, 37, 225, 0.1);
  --shadow-xl: 0 24px 48px -8px rgba(82, 37, 225, 0.12);
}

body {
  font-family: var(--font-primary);
  color: var(--text-dark);
  line-height: 1.7;
  background: var(--bg-white);
  overflow-x: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body.no-scroll {
  overflow: hidden;
}

.container {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 var(--spacing-md);
}

img {
  max-width: 100%;
  height: auto;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--font-primary);
  font-weight: 600;
  line-height: 1.2;
  margin-bottom: var(--spacing-sm);
  letter-spacing: -0.02em;
}

h1 {
  font-size: 3rem;
}

h2 {
  font-size: 2.5rem;
}

h3 {
  font-size: 1.75rem;
}

h4 {
  font-size: 1.25rem;
}

.title {
  font-weight: 700 !important;
  font-size: 2.75em !important;
  letter-spacing: -0.03em;
}

@media (max-width: 1024px) {
  .title {
    font-size: 2.4em !important;
  }
}

@media (max-width: 768px) {
  .title {
    font-size: 2em !important;
  }
}

@media (max-width: 576px) {
  .title {
    font-size: 30px !important;
  }
}

.titleDesc {
  font-size: 17px !important;
  font-weight: 400 !important;
  color: var(--text-medium);
  line-height: 1.7 !important;
}

@media (max-width: 1024px) {
  .titleDesc {
    font-size: 15px !important;
  }
}

@media (max-width: 768px) {
  .titleDesc {
    font-size: 14px !important;
    line-height: 1.6;
  }
}

@media (max-width: 576px) {
  .titleDesc {
    font-size: 18.5px !important;
    line-height: 1.6;
  }
}

/* ========================================
   NAVIGATION BAR
   ======================================== */
/* NAVBAR */
.navbar {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-bottom: 1px solid rgba(82, 37, 225, 0.06);
  position: fixed;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 1000;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.navbar.scrolled {
  box-shadow: 0 4px 30px rgba(82, 37, 225, 0.06);
  border-bottom-color: transparent;
}

/* Wrapper */
.nav-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 80px;
}

/* Logo */
.logo-text {
  font-family: var(--font-primary);
  font-size: 1.75rem;
  font-weight: 800;
  background: linear-gradient(135deg,
      var(--primary-color),
      var(--primary-light));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.logo-img {
  height: 60px;
  width: auto;
  display: block;
}

/* Menu */
.nav-menu {
  display: flex;
  list-style: none;
  align-items: center;
  gap: 40px;
}
@media(max-width:1024px){
  .nav-menu{
    gap: 30px;
  }
}

.nav-menu li {
  position: relative;
}

.nav-menu>li>a {
  color: var(--text-dark);
  font-weight: 500;
  font-size: 14px;
  border-radius: var(--radius-sm);
  transition: all 0.3s ease;
  opacity: 0.75;
  letter-spacing: 0.01em;
}

.nav-menu>li>a:hover,
.nav-menu>li>a.active {
  color: var(--primary-color);
  font-weight: 600;
  opacity: 1;
  position: relative;
}

.nav-menu>li>a.active::after {
  content: "";
  position: absolute;
  bottom: -5px;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--primary-color);
  border-radius: 2px;
}

.btn-nav.active::after {
  display: none;
}

.nav-menu .arrow {
  font-size: 0.7rem;
  margin-left: 0.25rem;
  transition: transform 0.3s ease;
  display: inline-block;
  padding: 5px;
  /* Increase hit area */
}

@media (max-width: 768px) {
  .nav-menu .arrow {
    padding: 10px;
    /* Even larger on mobile */
    margin-left: 0;
  }
}

.dropdown:hover .arrow {
  transform: rotate(180deg);
}

/* Dropdown Menu */
.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  background: var(--bg-white);
  min-width: 220px;
  list-style: none;
  padding: var(--spacing-xs);
  border-radius: var(--radius-md);
  box-shadow: 0 0 15px #00000015;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all 0.3s ease;
}

.dropdown:hover .dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.dropdown-menu li {
  width: 100%;
}

.dropdown-menu a {
  display: block;
  padding: var(--spacing-xs) var(--spacing-sm);
  color: var(--text-medium);
  border-radius: var(--radius-sm);
  font-size: 0.9rem;
}

.dropdown-menu a:hover,
.dropdown-menu a.active {
  background: var(--bg-light);
  color: var(--primary-color);
  font-weight: 600;
}

/* CTA Button */
.btn-nav {
  background: var(--primary-color);
  color: white !important;
  padding: 12px 28px !important;
  border-radius: 50px !important;
  font-weight: 500;
  opacity: 1 !important;
  font-size: 14px;
  letter-spacing: 0.02em;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.btn-nav:hover {
  background: var(--primary-dark) !important;
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(82, 37, 225, 0.25);
}

/* Mobile Menu Toggle */
.mobile-menu-toggle {
  display: none;
  flex-direction: column;
  gap: 0.4rem;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0.5rem;
}

.mobile-menu-toggle span {
  width: 25px;
  height: 2px;
  background: var(--text-dark);
  border-radius: 2px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.mobile-menu-toggle.active span:nth-child(1) {
  transform: translateY(8px) rotate(45deg);
}

.mobile-menu-toggle.active span:nth-child(2) {
  opacity: 0;
}

.mobile-menu-toggle.active span:nth-child(3) {
  transform: translateY(-8px) rotate(-45deg);
}

/* ========================= */
/* RESPONSIVE BREAKPOINTS    */
/* ========================= */

/* Tablets */
@media (max-width: 992px) {
  .nav-menu {
    gap: 20px;
  }

  .logo-text {
    font-size: 1.2rem;
  }

  .mobile-menu-toggle {
    display: none;
  }

  .nav-menu>li>a {
    color: var(--text-dark);
    font-weight: 400;
    font-size: 12px;
    border-radius: var(--radius-sm);
    transition: all 0.3s ease;
    opacity: 0.7;
  }
}
@media(max-width:820px){
  .nav-menu{
    gap: 16px;
  }
  .nav-menu>li>a:hover, .nav-menu>li>a.active{
    padding: 14px 14px !important;
  }
}
/* Mobile Navigation */
@media (max-width: 768px) {
  .mobile-menu-toggle {
    display: flex;
  }

  .nav-menu {
    position: absolute;
    top: 80px;
    right: 0;
    width: 100%;
    flex-direction: column;
    gap: 18px;
    padding: 24px 0;
    background: var(--bg-white);
    box-shadow: 0 5px 10px #00000015;
    border-top: 1px solid #eee;
    transform: translateY(-120%);
    opacity: 0;
    visibility: hidden;
    transition: all 0.35s ease;
    z-index: 999;
  }

  .nav-menu.active {
    transform: translateY(0%);
    opacity: 1;
    visibility: visible;
  }

  .dropdown-menu {
    position: static;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none;
    box-shadow: none;
    padding-left: 18px;
  }

  .btn-nav {
    width: 90%;
    text-align: center;
  }
}

/* Small Mobiles */
@media (max-width: 480px) {
  .logo-text {
    font-size: 1.3rem;
  }

  .logo-img {
    height: 58px;
  }

  .btn-nav {
    padding: 12px 20px !important;
  }
}

/* ========================================
   HERO SECTION
   ======================================== */

.hero {
  color: white;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  background-image: url(/assets/images/banner/img22.webp);
  background-size: cover;
  background-position: center;
  z-index: 0;
  margin-top: 80px;
}

.hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgba(26, 22, 54, 0.65) 0%, rgba(82, 37, 225, 0.35) 100%);
  z-index: -1;
}

.hero-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  padding: 100px 0px 40px 0px;
  min-height: calc(100vh - 80px);
}

.hero-title {
  font-size: 3.75rem;
  font-weight: 700;
  margin-bottom: var(--spacing-md);
  line-height: 1.1;
  text-align: center;
  letter-spacing: -0.03em;
}

.hero-title .highlight {
  font-weight: 700;
}

.hero-subtitle {
  font-size: 17px;
  margin-bottom: var(--spacing-xl);
  opacity: 0.9;
  line-height: 1.7;
  width: 55%;
  text-align: center;
  font-weight: 300;
}

.hero-buttons {
  display: flex;
  gap: var(--spacing-md);
  justify-content: center;
  margin-bottom: var(--spacing-xl);

  a {
    min-width: 200px;
  }

  .btn-secondary {
    background: rgba(255, 255, 255, 0.12);
    backdrop-filter: blur(12px);
    border: 1px solid rgba(255, 255, 255, 0.3);
  }
}

.hero-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--spacing-lg);
  margin-top: var(--spacing-2xl);
  background: rgba(255, 255, 255, 0.1);
  padding: var(--spacing-lg) var(--spacing-xl);
  border-radius: 20px;
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.15);
  width: 70%;
}

/* inner herobanner */
.innerHero .hero-content {
  padding: 100px 0px;
  min-height: 65vh;
}

.innerHero .hero-content .badge-outline {
  font-weight: 500;
  /* background: rgba(255, 255, 255, 0.361); */
  backdrop-filter: blur(5px);
  border-color: rgba(255, 255, 255, 0.318);
  color: white;
  border-radius: 50px;
}

.innerHero .hero-content .hero-buttons {
  margin-bottom: 0;
}

.innerHero .hero-title {
  /* font-family: var(--font-heading); */
  margin-top: 20px;
  font-weight: 800;
}

.hero-title .highlight {
  /* font-family: var(--font-heading); */
  font-weight: 500;
  /* font-style: oblique; */
  /* font-size: 3.5rem; */
}

.hero-subtitle {
  font-size: 16px;
  margin-bottom: var(--spacing-xl);
  opacity: 0.95;
  line-height: 1.6;
  width: 60%;
  text-align: center;
  font-weight: 300;
}

.hero-buttons {
  display: flex;
  gap: var(--spacing-md);
  justify-content: center;
  margin-bottom: var(--spacing-xl);

  a {
    min-width: 200px;
  }

  .btn-secondary {
    background: rgba(255, 255, 255, 0.495);
    backdrop-filter: blur(6px);
    border: 1px solid #ffffff61;
  }
}

.stat {
  text-align: center;
}

.stat h3 {
  font-size: 2rem;
  font-weight: 500;
  margin-bottom: var(--spacing-xs);
}

.stat p {
  font-size: 0.9rem;
  font-weight: 300;
}

/* ========================================
   BUTTONS
   ======================================== */

.btn {
  display: inline-block;
  padding: 0.875rem 2rem;
  border-radius: 50px;
  font-weight: 500;
  font-size: 15px;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: pointer;
  border: 2px solid transparent;
  text-align: center;
  letter-spacing: 0.01em;
}

.btn-primary {
  background: var(--primary-color);
  border-color: var(--primary-color);
  color: white;
}

.btn-primary:hover {
  background: var(--primary-dark);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(82, 37, 225, 0.3);
}

.btn-secondary {
  background: transparent;
  color: white;
  border-color: white;
}

.btn-secondary:hover {
  background: white;
  color: var(--primary-color);
}

.btn-primary-white {
  background: white;
  color: var(--primary-color);
}

.btn-primary-white:hover {
  transform: translateY(-2px);
  box-shadow: var(--shadow-xl);
}

.btn-secondary-white {
  background: transparent;
  color: white;
  border-color: white;
}

.btn-secondary-white:hover {
  background: rgba(255, 255, 255, 0.1);
}

/* ========================================
   SECTIONS
   ======================================== */

.section-header {
  text-align: center;
  margin-bottom: var(--spacing-2xl);

  @media (max-width: 480px) {
    margin: 0 auto 30px !important;
    margin-bottom: 30px !important;
  }
}


@media (max-width: 480px) {
  .section-header {
    margin: 0 auto 30px !important;
    margin-bottom: 30px !important;
  }

}

.section-header h2 {
  font-size: 2.75rem;
  color: var(--text-dark);
  margin-bottom: 5px;
}

.section-header p {
  font-size: 1.125rem;
  color: var(--text-medium);
}

/* Services Overview Section */
.services-overview {
  background: var(--bg-light);
  padding: 70px 0;
}

@media (max-width: 768px) {
  .services-overview {
    padding: 80px 0px;
  }
}

.services-grid {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: var(--spacing-xl);
}

.service-card {
  width: 100%;
  background: white;
  border-radius: var(--radius-xl);
  display: flex;
  gap: 60px;
  align-items: flex-start;
  overflow: hidden;
  border: 1px solid var(--border-color);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.service-card:hover {
  box-shadow: 0 16px 48px rgba(82, 37, 225, 0.08);
  border-color: rgba(82, 37, 225, 0.1);
}

.service-card .service-cardThumbnail {
  width: 55%;
  height: 100%;
  background: #000;
  position: relative;
  z-index: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.service-card .service-cardThumbnail .service-cardThumbnailBgImg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  opacity: 0.7;
}

.service-card .service-cardThumbnail .service-cardThumbnailBgImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.service-card .service-cardThumbnail .productImg {
  width: 75%;
  aspect-ratio: 3 / 2;
  display: flex;
  border-radius: 20px;
  overflow: hidden;
  border: 5px solid rgba(255, 255, 255, 0.482);
}

.service-card .service-cardThumbnail .productImg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.service-card .service-cardDetails {
  width: calc(100% - 55% - 60px);
  display: flex;
  flex-direction: column;
  padding: 60px 40px 60px 0px;
}

.service-card h3 {
  font-size: 1.8rem;
  margin-top: 10px;
  font-weight: 800;
  color: var(--text-dark);
  /* font-family: var(--font-heading); */
}

.service-card>p {
  color: var(--text-medium);
  font-size: 1.05rem;
  line-height: 1.7;
}

.service-features {
  list-style: none;
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  border-top: 1px solid #eee;
  padding-top: 20px;
}

.service-features li {
  color: var(--text-medium);
  position: relative;
  padding-left: var(--spacing-md);
  font-size: 14px;
}

.service-features li:before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--success-color);
  font-weight: bold;
}

.service-card a {
  margin-top: var(--spacing-lg) !important;
  width: fit-content !important;
}

.service-link:hover {
  transform: translateX(5px);
}

.innerServiceOverview .services-grid {
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-xl);
}

.innerServiceOverview .service-card {
  flex-direction: column;
  gap: 0px;
}

.innerServiceOverview .service-card h3 {
  margin-top: 0;
}

.innerServiceOverview .service-cardThumbnail {
  width: 100%;
  aspect-ratio: 3 / 1.5;
  position: relative;
  overflow: hidden;
}

.innerServiceOverview .service-cardThumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.innerServiceOverview .service-cardDetails {
  width: 100%;
  padding: 30px;
}

.innerServiceOverview .service-cardDetails .pill {
  width: fit-content;
}

/* Why Choose Us Section */
.why-choose-us {
  padding: 80px 0;
  background: var(--bg-light);

  /* Large desktops */
  @media (max-width: 1200px) {
    padding: 80px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 30px 0 20px !important;
  }
}

.benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-lg);
}

.benefit-card {
  padding: var(--spacing-lg);
  border: 1px solid var(--border-color);
  background: white;
  border-radius: var(--radius-xl);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.benefit-card:hover {
  border-color: rgba(82, 37, 225, 0.15);
  box-shadow: 0 12px 32px rgba(82, 37, 225, 0.08);
  transform: translateY(-4px);
}

.benefit-number {
  display: inline-block;
  width: 48px;
  height: 48px;
  background: var(--bg-light);
  color: var(--primary-color);
  border-radius: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.1rem;
  font-weight: 700;
  margin-bottom: var(--spacing-md);
}

.benefit-card h3 {
  font-size: 1.2rem;
  margin-bottom: var(--spacing-sm);
  font-weight: 600;
  letter-spacing: -0.01em;
}

.benefit-card p {
  color: var(--text-medium);
  line-height: 1.7;
  font-size: 0.95rem;
}

/* Industries Section */
.industries {
  background: var(--bg-light);
  padding: 100px 0;
}

@media (max-width: 768px) {
  .industries {
    padding: 80px 0px;
  }
}

.industries .industriesMain {
  width: 100%;
  display: flex;
  align-items: flex-start;
  gap: 60px;
}

.industries .industriesMain .section-header {
  width: 40%;
  display: flex;
  flex-direction: column;
  position: sticky;
  top: 150px;
  text-align: left;
}

.industries .industriesMain .industries-grid {
  width: calc(100% - 40% - 60px);
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}

.industry-card {
  width: calc(100% / 2 - 15px);
  background: white;
  padding: var(--spacing-md);
  border-radius: var(--radius-lg);
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.industry-card::after {
  position: absolute;
  /* content: ''; */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.industry-icon {
  font-size: 2.5rem;
}

.industry-card h3 {
  font-size: 1.25rem;
  margin-top: 10px !important;
  font-weight: 600;
  margin-bottom: 0 !important;
  /* font-family: var(--font-heading); */
}

.industry-card p {
  color: var(--text-medium);
  margin-top: 10px;
  line-height: 1.4;
}

.industry-link {
  color: var(--primary-color);
  font-weight: 500;
  margin-top: 20px;
}

.industry-link:hover {
  text-decoration: underline;
}

/* Case Studies Preview */
.case-studies-preview {
  background: white;
  padding: 60px 0;
  position: relative;
  z-index: 0;

  @media (max-width: 1200px) {
    padding: 80px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 60px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 30px 0;
  }
}

.case-studies-preview::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -2;
  background: url(/assets/images/caseStudyBg.webp);
  background-size: cover;
  background-position: center;
}

.case-studies-preview::before {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  background-color: var(--bg-light);
}

.case-studies-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-sm);
}

.case-study-card {
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  padding: var(--spacing-lg);
  border-radius: var(--radius-xl);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  border: 1px solid rgba(82, 37, 225, 0.08);
}

.case-study-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(82, 37, 225, 0.1);
  border-color: rgba(82, 37, 225, 0.15);
}

.case-study-badge {
  display: inline-block;
  padding: 0.25rem 0.75rem;
  background: var(--primary-color);
  color: white;
  border-radius: var(--radius-md);
  font-size: 0.85rem;
  font-weight: 600;
  margin-bottom: var(--spacing-md);
}

.case-study-card h3 {
  font-size: 1.25rem;
  margin-bottom: var(--spacing-sm);
  font-weight: 800;
  /* font-family: var(--font-heading); */
}

.case-study-card>p {
  color: var(--text-medium);
  margin-bottom: var(--spacing-md);
  line-height: 1.6;
}

.case-study-metrics {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-md);
}

.metric {
  padding: var(--spacing-sm);
  background: rgba(255, 255, 255, 0.726);
  border: 1px solid #0000001f;
  border-radius: var(--radius-md);
}

.metric strong {
  display: block;
  font-size: 2rem;
  color: var(--primary-color);
  font-weight: 600;
  margin-bottom: 0.25rem;
}

.metric span {
  font-size: 0.85rem;
  color: var(--text-medium);
}

.case-study-link {
  color: var(--primary-color);
  font-weight: 600;
}

.case-study-link:hover {
  text-decoration: underline;
}

/* CTA Section */
.cta-section {
  background: linear-gradient(135deg, #1A1636 0%, var(--primary-dark) 50%, var(--primary-color) 100%);
  color: white;
  text-align: center;
  padding: 100px 0;
  position: relative;
  overflow: hidden;
}

.cta-section::before {
  content: '';
  position: absolute;
  top: -50%;
  right: -20%;
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(139, 122, 232, 0.2) 0%, transparent 70%);
  border-radius: 50%;
}

.cta-section::after {
  content: '';
  position: absolute;
  bottom: -30%;
  left: -10%;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(88, 39, 245, 0.15) 0%, transparent 70%);
  border-radius: 50%;
}

.cta-content h2 {
  font-size: 2.5rem;
  margin-bottom: var(--spacing-md);
}

.cta-content p {
  font-size: 1.25rem;
  margin-bottom: var(--spacing-xl);
  opacity: 0.95;
  color: #ffffff;
}

.cta-buttons {
  display: flex;
  gap: var(--spacing-md);
  justify-content: center;
}

/* ============================ */
/*         RESPONSIVE           */
/* ============================ */

/* Tablets */
@media (max-width: 992px) {
  .cta-section {
    padding: 80px 0;
  }

  .cta-content h2 {
    font-size: 2.2rem;
  }

  .cta-content p {
    font-size: 1.15rem;
  }
}

/* Large Mobiles */
@media (max-width: 768px) {
  .cta-section {
    padding: 70px 0;
  }

  .cta-buttons {
    flex-direction: column;
    align-items: center;
    width: 100%;
  }

  .cta-buttons a,
  .cta-buttons button {
    width: 80%;
    max-width: 280px;
    text-align: center;
  }
}

/* Small Mobiles */
@media (max-width: 480px) {
  .cta-section {
    padding: 60px 0;
  }

  .cta-content h2 {
    font-size: 2rem;
  }

  .cta-content p {
    font-size: 1.05rem;
  }

  .cta-buttons a,
  .cta-buttons button {
    width: 90%;
  }
}

/* Testimonials Section */
.testimonials {
  background: var(--bg-light);
  padding: 60px 0;
}

@media (max-width: 768px) {
  .testimonials {
    padding: 60px 0px;
  }
}

.testimonials-marquee {
  overflow: hidden;
  position: relative;
  width: 100%;
}

.testimonials-marquee::after {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 150px;
  height: 100%;
  z-index: 1;
  background: linear-gradient(90deg, var(--bg-light), rgba(255, 255, 255, 0));
}

.testimonials-marquee::before {
  position: absolute;
  content: "";
  top: 0;
  right: 0;
  width: 150px;
  height: 100%;
  z-index: 1;
  background: linear-gradient(90deg, rgba(255, 255, 255, 0), var(--bg-light));
}

.testimonials-marquee:hover .testimonials-grid {
  animation-play-state: paused;
}

.testimonials-grid {
  display: flex;
  gap: 20px;
  width: max-content;
  animation: scroll-x 30s linear infinite;
}

@keyframes scroll-x {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

.testimonial-card {
  min-width: var(--testimonial-width, 420px);
  max-width: var(--testimonial-width, 420px);
  background: white;
  padding: var(--spacing-lg);
  border-radius: var(--radius-xl);
  box-shadow: none;
  flex-shrink: 0;
  border: 1px solid var(--border-color);
  transition: all 0.3s ease;
}

@media (max-width: 768px) {
  :root {
    --testimonial-width: 300px;
  }
}

@media (max-width: 480px) {
  :root {
    --testimonial-width: 260px;
  }
}

.testimonial-rating {
  color: #fbbf24;
  font-size: 1rem;
  margin-bottom: var(--spacing-sm);
}

.testimonial-text {
  color: var(--text-medium);
  font-style: italic;
  margin-bottom: var(--spacing-md);
  line-height: 1.7;
}

.testimonial-author strong {
  display: block;
  color: var(--text-dark);
  margin-bottom: 0.25rem;
}

.testimonial-author span {
  color: var(--text-light);
  font-size: 0.9rem;
}

/* Blog Preview Section */
.blog-preview {
  background: white;
  padding: 70px 0;
}

@media (max-width: 768px) {
  .blog-preview {
    padding: 30px 0px;
  }
}

.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-lg);
  margin-bottom: var(--spacing-xl);
}

.blog-card {
  background: white;
  border-radius: var(--radius-xl);
  overflow: hidden;
  border: 1px solid var(--border-color);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.blog-card:hover {
  border-color: rgba(82, 37, 225, 0.12);
  box-shadow: 0 12px 32px rgba(82, 37, 225, 0.08);
  transform: translateY(-4px);
}

.blog-card:hover .blog-image img {
  transform: scale(0.9);
  transition: all 0.3s ease;
}

.blog-image {
  width: 100%;
  aspect-ratio: 16/9;
  border-radius: var(--radius-lg);
  overflow: hidden;
  background: linear-gradient(135deg,
      var(--primary-light),
      var(--primary-color));
}

.blog-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: all 0.3s ease;
  border-radius: var(--radius-lg);
}

.blog-content {
  padding: var(--spacing-sm);
}

/* tables inside a blog post (from the editor) */
.blog-content table {
  width: 100%;
  border-collapse: collapse;
  margin: 24px 0;
  font-size: 0.95rem;
  line-height: 1.5;
}
.blog-content table th,
.blog-content table td {
  border: 1px solid var(--border-color);
  padding: 12px 16px;
  text-align: left;
  vertical-align: top;
}
.blog-content table th,
.blog-content table tr:first-child td {
  background: #f5f4ff;
  color: var(--text-dark);
  font-weight: 700;
}
.blog-content table tr:nth-child(even) td {
  background: #faf9ff;
}

.blog-meta {
  display: flex;
  gap: var(--spacing-sm);
  margin-bottom: var(--spacing-sm);
  font-size: 0.85rem;
  align-items: center;
}

.blog-category {
  background: var(--bg-light);
  padding: 0.25rem 0.75rem;
  border-radius: var(--radius-sm);
  color: var(--primary-color);
  font-weight: 500;
  font-size: 12px;
}

.blog-date {
  color: var(--text-light);
}

.blog-card h3 {
  font-size: 1.25rem;
  margin-bottom: var(--spacing-sm);
  color: var(--text-dark);
  /* font-family: var(--font-heading); */
  line-height: 1.5;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
}

.blog-card p {
  color: var(--text-medium);
  margin-bottom: var(--spacing-md);
  line-height: 1.4;
  font-size: 14px;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
}

.blog-link {
  color: var(--primary-color);
  font-weight: 500;
}

.blog-link:hover {
  text-decoration: underline;
}

.blog-cta {
  text-align: center;
}

.blog-cta .btn-secondary {
  border-color: var(--primary-color) !important;
  color: var(--primary-color);
}

.blog-cta .btn-secondary:hover {
  background-color: var(--primary-color) !important;
  color: white !important;
}

/* ========================================
   FOOTER
   ======================================== */
/* --- BASE FOOTER STYLES --- */
.footer {
  background: #1A1636;
  color: #E8E5F0;
  padding: 80px 20px 20px 20px;
}

.footer-content {
  display: grid;
  /* Desktop: brand column on the left | link-columns block on the right */
  grid-template-columns: 1.5fr 3fr;
  align-items: start;
  gap: var(--spacing-xl);
  margin-bottom: var(--spacing-xl);
  max-width: 1200px;
  margin-inline: auto; /* Centers the container, but text inside stays left */
}

/* the 5 link columns: Salesforce / Odoo / AI-ML on top, Bussus / Company below */
.footer-cols {
  display: grid;
  grid-template-columns: 1fr 1fr 2fr;
  gap: var(--spacing-xl) var(--spacing-lg);
  align-items: start;
}

/* Products column: fill 4 per sub-column, column-first, so new products append after the last one */
.footer-section .footer-products {
  display: grid;
  grid-auto-flow: column;
  grid-template-rows: repeat(4, auto);
  grid-auto-columns: max-content;
  gap: 10px 30px;
  justify-content: start;
}
.footer-section .footer-products li { margin: 0; }
/* center the PRODUCTS heading over its sub-columns (block shrinks to the columns' width) */
.footer-section.footer-products-col { width: max-content; }
.footer-section.footer-products-col h4 { text-align: center; }
@media (max-width: 768px) {
  .footer-section .footer-products { grid-template-rows: repeat(5, auto); }
  .footer-section.footer-products-col { width: auto; }
  .footer-section.footer-products-col h4 { text-align: left; }
}

.footer-section .footerLogo {
  width: 180px;
  margin-bottom: var(--spacing-md);
}

.footer-section .footerLogo img {
  width: 100%;
  height: auto;
  object-fit: contain;
  filter: brightness(0) invert(1);
  opacity: 0.9;
}

.footer-section h3 {
  font-size: 1.5rem;
  margin-bottom: var(--spacing-md);
  color: white;
}

.footer-section h4 {
  margin-bottom: var(--spacing-md);
  font-size: 1rem;
  color: white;
  font-weight: 600;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  font-size: 0.8rem;
}

.footer-section p {
  color: rgba(255, 255, 255, 0.55);
  margin-bottom: var(--spacing-md);
  line-height: 1.7;
  font-size: 0.95rem;
}

.footer-section ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-section ul li {
  margin-bottom: var(--spacing-xs);
}

.footer-section ul a {
  color: rgba(255, 255, 255, 0.55);
  text-decoration: none;
  transition: all 0.3s ease;
  font-size: 0.9rem;
}

.footer-section ul a:hover {
  color: var(--primary-light);
  padding-left: 4px;
}

.social-links {
  display: flex;
  gap: var(--spacing-sm);
  margin-top: var(--spacing-md);
}

.social-links a {
  width: 40px;
  height: 40px;
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s ease;
  text-decoration: none;
}

.social-links a:hover {
  background: var(--primary-color);
  color: white;
  transform: translateY(-3px);
}

.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: var(--spacing-lg);
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  max-width: 1200px;
  margin-inline: auto;
}

.footer-bottom p {
  color: rgba(255, 255, 255, 0.4);
  font-size: 13px;
  margin: 0;
}

.footer-links {
  display: flex;
  gap: var(--spacing-md);
}

.footer-links a {
  font-size: 13px;
  color: rgba(255, 255, 255, 0.4);
  text-decoration: none;
}

.footer-links a:hover {
  color: var(--primary-light);
}

/* --- IMPROVED RESPONSIVE MEDIA QUERIES --- */

/* Tablet & Large Mobile (Under 1024px) */
@media (max-width: 1024px) {
  .footer-content {
    /* Tablet: brand on top (full width), link block below it */
    grid-template-columns: 1fr;
    gap: var(--spacing-xl);
  }
  .footer-cols {
    grid-template-columns: repeat(3, 1fr);
  }
}

/* Standard Mobile (Under 768px) */
@media (max-width: 768px) {
  .footer {
    padding: 60px 20px 20px 20px;
  }

  .footer-content {
    /* Stack all sections vertically */
    grid-template-columns: 1fr;
    gap: var(--spacing-lg);
  }

  .footer-cols {
    /* two link columns on phones */
    grid-template-columns: repeat(2, 1fr);
  }

  .footer-bottom {
    /* Stack copyright and bottom links */
    flex-direction: column;
    align-items: center; /* Keep left aligned */
    gap: var(--spacing-md);
  }

  .footer-links {
    flex-wrap: wrap; /* Prevent links from cutting off */
    gap: 15px;
  }
}

/* Small Mobile (Under 480px) */
@media (max-width: 480px) {
  .footer-section h3 {
    font-size: 1.25rem;
  }

  .footerLogo {
    width: 160px; /* Slightly smaller logo on very small screens */
  }
}
/* ========================================
   RESPONSIVE DESIGN
   ======================================== */

@media (max-width: 1024px) {
  h1 {
    font-size: 2.5rem;
  }

  h2 {
    font-size: 2rem;
  }

  .hero-title {
    font-size: 2.75rem;
  }

  .services-grid {
    grid-template-columns: 1fr;
  }

  .benefits-grid,
  .industries-grid,
  .case-studies-grid,
  .testimonials-grid,
  .blog-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .footer-content {
    grid-template-columns: 1fr;
  }

  .hero-stats {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 992px) {
  .hero-title {
    font-size: 3rem;
  }

  .hero-subtitle {
    width: 80%;
  }

  .hero-stats {
    width: 90%;
  }

  .industries .industriesMain {
    gap: 30px;
  }

  .industries .industriesMain .section-header {
    width: 45%;
  }

  .industries .industriesMain .industries-grid {
    width: calc(55% - 30px);
  }

  .industry-card {
    width: 100%;
  }

  .innerServiceOverview .services-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .servicePackageList .package-card {
    width: calc(50% - 15px);
  }
}

@media (max-width: 768px) {
  h1 {
    font-size: 2.5rem;
  }

  h2 {
    font-size: 2rem;
  }

  .hero-title {
    font-size: 2.25rem;
  }

  .hero-subtitle {
    font-size: 1rem;
    width: 100%;
    margin-bottom: var(--spacing-lg);
  }

  .hero-stats {
    grid-template-columns: repeat(2, 1fr);
    width: 100%;
    margin-top: var(--spacing-xl);
    padding: var(--spacing-sm);
  }

  .service-card {
    flex-direction: column;
    gap: 0;
  }

  .service-card .service-cardThumbnail {
    width: 100%;
    aspect-ratio: 16 / 9;
  }

  .service-card .service-cardDetails {
    width: 100%;
    padding: var(--spacing-md);
  }

  .industries .industriesMain {
    flex-direction: column;
    gap: var(--spacing-lg);
  }

  .industries .industriesMain .section-header {
    width: 100%;
    position: static;
    text-align: center;
  }

  .industries .industriesMain .industries-grid {
    width: 100%;
  }

  .industry-card {
    width: 100%;
  }

  .mobile-menu-toggle {
    display: flex;
  }

  /* Navigation update (already applied but keeping for context) */
  .nav-menu {
    position: fixed;
    top: 0;
    right: -100%;
    width: 300px;
    height: 100vh;
    background: var(--bg-white);
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 100px var(--spacing-lg) var(--spacing-xl);
    box-shadow: -10px 0 30px rgba(0, 0, 0, 0.1);
    transition: right 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 1001;
    gap: 0;
    overflow-y: auto;
    max-height: none;
  }

  .nav-menu.active {
    right: 0;
  }

  .nav-menu li {
    width: 100%;
    margin-bottom: 5px;
  }

  .nav-menu>li>a {
    display: block;
    padding: 12px 0;
    font-size: 16px;
    width: 100%;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  }

  .nav-menu>li>a.active::after {
    display: none;
  }

  .nav-menu>li>a.active {
    color: var(--primary-color);
    padding-left: 10px;
    border-left: 3px solid var(--primary-color);
  }

  .dropdown-menu {
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    padding-left: var(--spacing-sm);
    padding-top: 0;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
    background: #f8f9ff;
    border-radius: 0;
    width: 100%;
    min-width: 0;
  }

  .dropdown-menu li {
    border-bottom: 1px solid rgba(0, 0, 0, 0.03);
  }

  .dropdown-menu li:last-child {
    border-bottom: none;
  }

  .dropdown.active .dropdown-menu {
    max-height: 500px;
    padding-bottom: 10px;
  }

  .btn-nav {
    margin-top: 20px;
    text-align: center;
    width: 100% !important;
  }

  .mobile-menu-toggle {
    z-index: 1002;
  }

  .hero-buttons,
  .cta-buttons {
    flex-direction: column;
    width: 100%;
    gap: var(--spacing-sm);
  }

  .hero-buttons a,
  .cta-buttons a {
    width: 100%;
  }

  .benefits-grid,
  .case-studies-grid,
  .blog-grid,
  .footer-content,
  .services-grid,
  .servicePackageList,
  .experienceCloudList {
    grid-template-columns: 1fr !important;
    display: flex !important;
    flex-direction: column !important;
  }

  .testimonials-marquee .testimonials-grid {
    display: flex !important;
    flex-direction: row !important;
    width: max-content !important;
  }

  .servicePackageList .package-card {
    width: 100% !important;
  }

  .footer-bottom {
    flex-direction: column;
    gap: var(--spacing-md);
    text-align: center;
  }
}

@media (max-width: 480px) {
  .container {
    padding: 0 var(--spacing-sm);
  }

  h1 {
    font-size: 2rem;
  }

  h2 {
    font-size: 1.75rem;
  }

  .hero-title {
    font-size: 1.75rem;
    margin-top: 40px;
  }

  .hero-subtitle {
    font-size: 0.95rem;
  }

  .hero {
    min-height: auto;
    padding-top: 100px;
    padding-bottom: 60px;
  }

  .hero-stats {
    grid-template-columns: 1fr;
    gap: var(--spacing-sm);
  }

  .section-header h2 {
    font-size: 1.75rem;
  }

  .stat h3 {
    font-size: 1.75rem;
  }

  .stat p {
    font-size: 0.85rem;
  }
}

/* ========================================
   UTILITY CLASSES
   ======================================== */

.text-center {
  text-align: center;
}

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

.text-right {
  text-align: right;
}

.mt-sm {
  margin-top: var(--spacing-sm);
}

.mt-md {
  margin-top: var(--spacing-md);
}

.mt-lg {
  margin-top: var(--spacing-lg);
}

.mb-sm {
  margin-bottom: var(--spacing-sm);
}

.mb-md {
  margin-bottom: var(--spacing-md);
}

.mb-lg {
  margin-bottom: var(--spacing-lg);
}

.pt-sm {
  padding-top: var(--spacing-sm);
}

.pt-md {
  padding-top: var(--spacing-md);
}

.pt-lg {
  padding-top: var(--spacing-lg);
}

.pb-sm {
  padding-bottom: var(--spacing-sm);
}

.pb-md {
  padding-bottom: var(--spacing-md);
}

.pb-lg {
  padding-bottom: var(--spacing-lg);
}

/* ========================================
   EXTENDED UTILITY CLASSES FOR INNER PAGES
   ======================================== */

/* Grid Utilities */
.grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: var(--spacing-lg);
}

.grid-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing-lg);
}

.grid-4 {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--spacing-lg);
}

@media (max-width: 1024px) {

  .grid-3,
  .grid-4 {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {

  .grid-2,
  .grid-3,
  .grid-4 {
    grid-template-columns: 1fr;
  }
}

/* Badge & Pill Styles */
.badge {
  display: inline-block;
  padding: 0.375rem 1rem;
  background: var(--primary-color);
  color: white;
  border-radius: var(--radius-lg);
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.badge-secondary {
  background: var(--secondary-color);
}

.badge-success {
  background: var(--success-color);
}

.badge-outline {
  background: transparent;
  border: 1px solid var(--primary-color);
  color: var(--primary-color);
}

.pill {
  display: inline-block;
  padding: 0.25rem 0.875rem;
  background: rgba(82, 37, 225, 0.1);
  color: var(--primary-color);
  border-radius: 50px;
  font-size: 0.8rem;
  font-weight: 600;
}

/* Glass Effect */
.glass {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.3);
  box-shadow: var(--shadow-lg);
}

/* Timeline Styles */
.timeline {
  position: relative;

  display: flex;
  flex-direction: column;
}

.timeline::before {
  /* content: ''; */
  position: absolute;
  left: 0.5rem;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(to bottom,
      var(--primary-color),
      var(--primary-light));
}

.timeline-item {
  position: relative;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
}

.timeline-itemCol1 {
  width: 20px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 0;
}

.timeline-itemCol1::before {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
  width: 1px;
  height: 100%;
  border-left: 1px dashed var(--primary-color);
}

.timeline-itemCol1 .dot {
  width: 10px;
  height: 10px;
  background: var(--primary-color);
  border-radius: 50%;
}

.timeline-itemCol2 {
  width: 100%;
  display: flex;
  flex-direction: column;
  border: 1px dashed var(--primary-color);
  padding: var(--spacing-md);
  border-radius: var(--radius-lg);
}

.timeline-item::before {
  /* content: ''; */
  position: absolute;
  left: -2.5rem;
  top: 0.25rem;
  width: 1rem;
  height: 1rem;
  background: var(--primary-color);
  border-radius: 50%;
  border: 3px solid var(--bg-white);
  box-shadow: 0 0 0 2px var(--primary-color);
}

.timeline-item h4 {
  color: var(--primary-color);
  font-weight: 800;
  margin: 0;
}

.timeline-item p {
  color: var(--text-medium);
  line-height: 1.4;
  margin: 0;
  margin-top: 15px;
}

/* Pricing Card */
.pricing-card {
  background: white;
  border: 2px solid var(--border-color);
  border-radius: var(--radius-xl);
  padding: var(--spacing-xl);
  text-align: center;
  transition: all 0.3s ease;
}

.pricing-card:hover {
  border-color: var(--primary-color);
  transform: translateY(-5px);
  box-shadow: var(--shadow-xl);
}

.pricing-card.featured {
  border-color: var(--primary-color);
  background: linear-gradient(135deg,
      rgba(82, 37, 225, 0.05),
      rgba(167, 148, 255, 0.05));
  position: relative;
}

.pricing-card .price {
  font-size: 3rem;
  font-weight: 800;
  color: var(--primary-color);
  margin: var(--spacing-md) 0;
}

.pricing-card .price span {
  font-size: 1.25rem;
  font-weight: 500;
  color: var(--text-medium);
}

.pricing-card ul {
  list-style: none;
  text-align: left;
  margin: var(--spacing-lg) 0;
}

.pricing-card ul li {
  padding: var(--spacing-xs) 0;
  color: var(--text-medium);
  position: relative;
  padding-left: var(--spacing-md);
}

.pricing-card ul li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--success-color);
  font-weight: bold;
}

/* Resource Item */
.resource-item {
  background: white;
  border: 1px solid var(--border-color);
  border-radius: var(--radius-lg);
  padding: var(--spacing-lg);
  display: flex;
  gap: var(--spacing-md);
  align-items: start;
  transition: all 0.3s ease;
}

.resource-item:hover {
  border-color: var(--primary-color);
  box-shadow: var(--shadow-md);
  transform: translateX(5px);
}

.resource-icon {
  font-size: 2rem;
  flex-shrink: 0;
}

.resource-content h4 {
  margin-bottom: var(--spacing-xs);
  color: var(--text-dark);
}

.resource-content p {
  color: var(--text-medium);
  font-size: 0.95rem;
  line-height: 1.6;
  margin-bottom: var(--spacing-xs);
}

.resource-meta {
  display: flex;
  gap: var(--spacing-sm);
  font-size: 0.85rem;
  color: var(--text-light);
}

/* Video Wrapper */
.video-wrapper {
  position: relative;
  width: 100%;
  aspect-ratio: 3 / 1.7;
  overflow: hidden;
  border-radius: var(--radius-lg);
  background: var(--bg-light);
  box-shadow: var(--shadow-md);
}

.video-wrapper iframe,
.video-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.video-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg,
      var(--primary-color),
      var(--primary-light));
  color: white;
  font-size: 4rem;
}

/* KPI Cards */
.kpi-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--spacing-lg);
  margin-top: 50px;
}

.kpi-card {
  background: white;
  padding: var(--spacing-lg);
  border-radius: var(--radius-lg);
  text-align: center;
  border: 1px solid var(--border-color);
  transition: all 0.3s ease;
}

.kpi-card:hover {
  border-color: var(--primary-color);
  transform: translateY(-3px);
  box-shadow: var(--shadow-lg);
}

.kpi-value {
  font-size: 2.75rem;
  font-weight: 500;
  color: var(--primary-color);
  margin-bottom: var(--spacing-xs);
  line-height: 1;
}

.kpi-label {
  font-size: 0.95rem;
  color: var(--text-medium);
  font-weight: 400;
}

@media (max-width: 1024px) {
  .kpi-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .kpi-grid {
    grid-template-columns: 1fr;
    gap: var(--spacing-md);
  }
}

/* Package/Solution Card */
.package-card {
  background: white;
  border-radius: var(--radius-xl);
  padding: var(--spacing-xl);
  box-shadow: var(--shadow-md);
  transition: all 0.3s ease;
  height: 100%;
}

.package-card:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-xl);
}

.package-header {
  text-align: center;
  padding-bottom: var(--spacing-md);
  margin-bottom: var(--spacing-md);
  border-bottom: 2px solid var(--bg-light);
}

.package-header h3 {
  color: var(--text-dark);
  margin-bottom: var(--spacing-xs);
}

.package-icon {
  font-size: 3rem;
  margin-bottom: var(--spacing-md);
}

.package-features {
  list-style: none;
  margin-bottom: var(--spacing-lg);
}

.package-features li {
  padding: var(--spacing-xs) 0;
  color: var(--text-medium);
  position: relative;
  padding-left: var(--spacing-md);
}

.package-features li::before {
  content: "→";
  position: absolute;
  left: 0;
  color: var(--primary-color);
  font-weight: bold;
}

/* Testimonial Block */
.testimonial-block {
  background: linear-gradient(135deg,
      rgba(82, 37, 225, 0.05),
      rgba(167, 148, 255, 0.05));
  border-left: 4px solid var(--primary-color);
  padding: var(--spacing-xl);
  border-radius: var(--radius-lg);
  margin: var(--spacing-xl) 0;
}

.testimonial-block blockquote {
  font-size: 1.25rem;
  font-style: italic;
  color: var(--text-dark);
  margin-bottom: var(--spacing-md);
  line-height: 1.7;
}

.testimonial-author {
  display: flex;
  flex-direction: column;
}

.testimonial-avatar {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background: linear-gradient(135deg,
      var(--primary-color),
      var(--primary-light));
  display: flex;
  align-items: center;
  justify-content: center;
  color: white;
  font-size: 1.5rem;
  font-weight: 700;
}

.testimonial-info strong {
  display: block;
  color: var(--text-dark);
  margin-bottom: 0.25rem;
}

.testimonial-info span {
  color: var(--text-light);
  font-size: 0.9rem;
}

.page-hero {
  background: linear-gradient(135deg,
      var(--primary-color) 0%,
      var(--primary-dark) 100%);
  color: white;
  text-align: center;
  margin-top: 80px;
  background-size: cover;
  background-position: center;
  position: relative;
  z-index: 0;
}

.page-hero::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgb(0 0 0 / 34%);
  z-index: -1;
}
.page-hero .page-hero-main{
  width: 100%;
  padding: 100px 0px;
  min-height: 65vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.page-hero h1 {
  /* font-family: var(--font-heading); */
  font-size: 4em;
  margin: 0 !important;
  font-weight: 800;
  text-align: center;
  text-shadow: 0 0 8px rgb(0 0 0 / 8%);
}

.page-hero p {
  font-size: 18px;
  margin: 0 !important;
  margin-top: 20px !important;
  font-weight: 300;
  text-align: center;
  width: 60%;
}

.page-content {
  padding: 70px 0;
}

/* ============================= */
/*       MEDIA RESPONSIVE         */
/* ============================= */

/* Large desktops */
@media (max-width: 1200px) {
  .page-content {
    padding: 80px 0;
  }
}

/* Tablets */
@media (max-width: 992px) {
  .page-content {
    padding: 70px 0;
  }
}

/* Large mobiles */
@media (max-width: 768px) {
  .page-content {
    padding: 40px 0;
  }

  .page-hero h1 {
    font-size: 3em;
  }

  .page-hero p {
    width: 80%;
    font-size: 16px;
  }
}

/* Small mobiles */
@media (max-width: 480px) {
  .page-content {
    padding: 50px 0;
  }

  .page-hero {
    padding: 120px 0;
  }

  .page-hero h1 {
    font-size: 2em;
  }

  .page-hero p {
    width: 90%;
    font-size: 15px;
  }
}

/* servicePackage */
.servicePackage {
  width: 100%;
  padding: 70px 0px;
  background-color: var(--bg-light);

  @media (max-width: 1200px) {
    padding: 70px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 60px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 30px 0;
  }
}

.servicePackageList {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}

.servicePackageList .package-card {
  width: calc(100% / 3 - 20px);
  box-shadow: none;
  border: 1px solid var(--border-color);
  padding: var(--spacing-md);
  display: flex;
  flex-direction: column;
  height: inherit;
}

.servicePackageList .package-card .package-header {
  width: 100%;
  background: #dfe2ff;
  border-radius: var(--radius-lg);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 20px;
}

.servicePackageList .package-card .package-header .package-icon {
  width: 50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: white;
  border-radius: var(--radius-lg);
  font-size: 30px;
  color: var(--primary-color);
}

.servicePackageList .package-card .package-header h3 {
  font-weight: 800;
  font-size: 26px;
}

.servicePackageList .package-card .package-header .pill,
.servicePackageList .package-card .package-header .badge {
  border-radius: 50px;
  font-size: 12px;
  font-weight: 500;
  padding: 5px 20px;
  text-transform: capitalize;
}

.servicePackageList .package-card .package-features li {
  font-size: 14px;
}

.servicePackageList .package-card a {
  margin-top: auto;
}

/* businessOutcomes */
.businessOutcomes {
  width: 100%;
  padding: 70px 0px;

  @media (max-width: 1200px) {
    padding: 80px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 60px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 50px 0;
  }
}

/* implementationProcess */
.implementationProcess {
  width: 100%;
  padding: 70px 0px;
  background-color: var(--bg-light);

  @media (max-width: 1200px) {
    padding: 80px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 40px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 30px 0;
  }
}

/* serviceVideoSection */
.serviceVideoSection {
  width: 100%;
  padding: 70px 0px;

  @media (max-width: 1200px) {
    padding: 80px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 60px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 50px 0;
  }
}

/* experienceCloud */
.experienceCloud {
  width: 100%;
  padding: 70px 0;
}

.experienceCloud .experienceCloudList {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
}

.experienceCloud .experienceCloudList .package-card {
  width: calc(50% - 15px);
  border: 1px solid var(--border-color);
  padding: 0;
  box-shadow: none;
  transition: all 0.3s ease;
  min-height: 400px;
}

.experienceCloud .experienceCloudList .package-card .package-header {
  width: 100%;
  border-radius: 0;
  display: flex;
  flex-direction: column;
  padding: 20px;
  text-align: left;
  margin: 0;
}

.experienceCloud .experienceCloudList .package-card .package-header .package-icon {
  width: 60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #e6eeff;
  border-radius: var(--radius-lg);
  font-size: 30px;
  margin: 0;
  color: var(--primary-color);
}

.experienceCloud .experienceCloudList .package-card .package-header h3 {
  font-weight: 800;
  font-size: 26px;
  margin: 0;
  margin-top: 20px;
  margin-bottom: 10px;
}

.experienceCloud .experienceCloudList .package-card .package-cardDetails {
  width: 100%;
  padding: 20px;
  display: flex;
  flex-direction: column;
}

.experienceCloud .experienceCloudList .package-card .package-cardDetails ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  margin: 0;
}

.experienceCloud .experienceCloudList .package-card .package-cardDetails ul li {
  width: calc(100% / 2 - 10px);
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}

/* ---------- Responsive Breakpoints ---------- */

/* Large Desktops */
@media (max-width: 1200px) {
  .experienceCloud {
    padding: 70px 0;
  }
}

/* Tablets */
@media (max-width: 992px) {
  .experienceCloud {
    padding: 70px 0;
  }
}

/* Tablets & Large Mobiles */
@media (max-width: 768px) {
  .experienceCloud {
    padding: 60px 0;
  }

  .experienceCloud .experienceCloudList .package-card {
    width: 100% !important;
  }

  .experienceCloud .experienceCloudList .package-card .package-cardDetails ul li {
    width: 100% !important;
  }
}

/* Small mobiles */
@media (max-width: 480px) {
  .experienceCloud {
    padding: 30px 0;
  }
}

/* architecture */
.architecture {
  width: 100%;
  padding: 70px 0;
  background: var(--bg-light);
}

/* Large desktops */
@media (max-width: 1200px) {
  .architecture {
    padding: 70px 0;
  }
}

/* Tablets */
@media (max-width: 992px) {
  .architecture {
    padding: 70px 0;
  }
}

/* Large mobiles */
@media (max-width: 768px) {
  .architecture {
    padding: 60px 0;
  }
}

/* Small mobiles */
@media (max-width: 480px) {
  .architecture {
    padding: 40px 0;
  }
}

.architecture .package-card {
  box-shadow: none;
  padding: var(--spacing-md);
  display: flex;
  flex-direction: column;
}

.architecture .package-card .package-icon {
  width: 80px;
  height: 80px;
  background: #e6eeff;
  border-radius: var(--radius-lg);
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 40px;
  color: var(--primary-color);
  margin: 0;
}

.architecture .package-card h3 {
  font-size: 22px;
  font-weight: 800;
  margin: 0;
  margin-top: 20px;
}

.architecture .package-card ul {
  margin: 0;
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 14px;
  border-top: 1px dashed var(--border-color);
  padding-top: 20px;
}

.architecture .package-card ul li {
  margin: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.resourcesRowWrapper {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.resourcesRowWrapper .resourceRow {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 26px 32px;
  background: #ffffff;
  border-radius: 16px;
  border: 1px solid #ececff;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.04);
  transition: all 0.3s ease;
  /* ================= LEFT ================= */
  /* ================= BUTTON ================= */
}

.resourcesRowWrapper .resourceRow:hover {
  transform: translateY(-2px);
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.06);
}

@media (max-width: 768px) {
  .resourcesRowWrapper .resourceRow {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
  }
}

.resourcesRowWrapper .resourceRow .resourceLeft {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  /* ================= ICON ================= */
  /* ================= CONTENT ================= */
}

.resourcesRowWrapper .resourceRow .resourceLeft .resourceIcon {
  width: 52px;
  height: 52px;
  border-radius: 12px;
  background: #f2f0ff;
  color: #4f2bff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}

.resourcesRowWrapper .resourceRow .resourceLeft .resourceIcon.success {
  background: #e8fff1;
  color: #1a9c53;
}

.resourcesRowWrapper .resourceRow .resourceLeft .resourceIcon.danger {
  background: #fff1f1;
  color: #e03131;
}

.resourcesRowWrapper .resourceRow .resourceLeft .resourceContent {
  /* ================= META ================= */
}

.resourcesRowWrapper .resourceRow .resourceLeft .resourceContent h4 {
  font-size: 18px;
  font-weight: 800;
  margin-bottom: 6px;
  color: #0f172a;
}

.resourcesRowWrapper .resourceRow .resourceLeft .resourceContent p {
  font-size: 14.5px;
  color: #475569;
  line-height: 1.6;
  margin-bottom: 10px;
  max-width: 620px;

  @media (max-width: 768px) {
    line-height: 1.6;
    font-size: 12.5px;
  }
}

.resourcesRowWrapper .resourceRow .resourceLeft .resourceContent .resourceMeta {
  display: flex;
  gap: 18px;
  font-size: 13px;
  color: #64748b;
}

.resourcesRowWrapper .resourceRow .resourceLeft .resourceContent .resourceMeta span {
  display: flex;
  align-items: center;
  gap: 6px;
}

.resourcesRowWrapper .resourceRow .btnPrimary {
  padding: 10px 22px;
  background: #4f2bff;
  color: #ffffff;
  border-radius: 999px;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.25s ease;
}

.resourcesRowWrapper .resourceRow .btnPrimary:hover {
  background: #3f20e0;
}

@media (max-width: 768px) {
  .resourcesRowWrapper .resourceRow .btnPrimary {
    align-self: stretch;
    text-align: center;
  }
}

/*# sourceMappingURL=style.css.map */

.webinarsSection {
  padding: 4rem 0;
}

.webinarsSection .sectionHeader {
  text-align: center;
  margin-bottom: 3rem;
  @media (max-width: 768px) {
    margin-bottom: 1.5rem;
  }
}

.webinarsSection .sectionSubTitle {
  font-size: 1.4rem;
  font-weight: 800;
  color: var(--primary-color);
  margin-bottom: 1.5rem;
}

.webinarsSection .liveWebinarsGrid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-bottom: 4rem;
}

@media (max-width: 900px) {
  .webinarsSection .liveWebinarsGrid {
    grid-template-columns: 1fr;
  }
}

.webinarsSection .liveWebinarsGrid .liveWebinarCard {
  position: relative;
  padding: 28px;
  background: #ffffff;
  border-radius: 18px;
  border: 1px solid #eef0ff;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.05);
}

.webinarsSection .liveWebinarsGrid .liveWebinarCard h4 {
  font-size: 1.2rem;
  font-weight: 800;
  margin: 14px 0 10px;
}

.webinarsSection .liveWebinarsGrid .liveWebinarCard p {
  color: #475569;
  line-height: 1.6;
  margin-bottom: 16px;
}

.webinarsSection .liveWebinarsGrid .liveWebinarCard .liveBadge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 600;
  background: #e8fff1;
  color: #16a34a;
}

.webinarsSection .liveWebinarsGrid .liveWebinarCard .liveBadge i {
  font-size: 8px;
}

.webinarsSection .liveWebinarsGrid .liveWebinarCard .meta {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  font-size: 0.85rem;
  color: #64748b;
  margin-bottom: 20px;
}

.webinarsSection .liveWebinarsGrid .liveWebinarCard .meta span {
  display: flex;
  align-items: center;
  gap: 6px;
}

.webinarsSection .liveWebinarsGrid .liveWebinarCard .primaryBtn {
  display: inline-block;
  padding: 10px 22px;
  border-radius: 999px;
  background: var(--primary-color);
  color: #ffffff;
  font-size: 0.9rem;
  text-decoration: none;
}

.webinarsSection .liveWebinarsGrid .liveWebinarCard .primaryBtn:hover {
  opacity: 0.9;
}

.webinarsSection .onDemandGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

@media (max-width: 1024px) {
  .webinarsSection .onDemandGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .webinarsSection .onDemandGrid {
    grid-template-columns: 1fr;
  }
}

.webinarsSection .onDemandGrid .onDemandCard {
  padding: 26px;
  background: #ffffff;
  border-radius: 18px;
  border: 1px solid #eef0ff;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.04);
  transition: all 0.3s ease;
}

.webinarsSection .onDemandGrid .onDemandCard:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 44px rgba(0, 0, 0, 0.08);
}

.webinarsSection .onDemandGrid .onDemandCard .icon {
  width: 46px;
  height: 46px;
  border-radius: 12px;
  background: #f2f0ff;
  color: var(--primary-color);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  margin-bottom: 14px;
}

.webinarsSection .onDemandGrid .onDemandCard .duration-watch {
  display: flex;
  justify-content: space-between;
  align-items: start;
}

.webinarsSection .onDemandGrid .onDemandCard h4 {
  font-size: 1.05rem;
  font-weight: 800;
  margin-bottom: 8px;
}

.webinarsSection .onDemandGrid .onDemandCard p {
  font-size: 0.95rem;
  color: #475569;
  line-height: 1.6;
  margin-bottom: 14px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
}

.webinarsSection .onDemandGrid .onDemandCard .duration {
  display: inline-block;
  font-size: 0.8rem;
  padding: 4px 12px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  margin-top: 10px;
}

.webinarsSection .onDemandGrid .onDemandCard a {
  display: inline-block;
  margin-top: 10px;
  font-weight: 500;
  color: var(--primary-color);
  text-decoration: none;
}

/*# sourceMappingURL=style.css.map */

.acceleratorsSection {
  padding: 70px 0;
  background: #f0f2ff;

  /* Large desktops */
  @media (max-width: 1200px) {
    padding: 80px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 60px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 50px 0;
  }
}

.acceleratorsSection .sectionHeader {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 64px;

  @media (max-width: 480px) {
    margin: 0 auto 44px;
  }
}

.acceleratorsSection .sectionHeader h2 {
  font-size: 42px;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 12px;
}

.acceleratorsSection .sectionHeader p {
  font-size: 18px;
  color: #64748b;
}

.acceleratorsSection .acceleratorsGrid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}

@media (max-width: 1024px) {
  .acceleratorsSection .acceleratorsGrid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 640px) {
  .acceleratorsSection .acceleratorsGrid {
    grid-template-columns: 1fr;
  }
}

.acceleratorsSection .acceleratorCard {
  background: #ffffff;
  border-radius: 24px;
  padding: 36px 32px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 20px 40px rgba(15, 23, 42, 0.06);
  transition: 0.35s ease;
  position: relative;
}

.acceleratorsSection .acceleratorCard:hover {
  transform: translateY(-10px);
  box-shadow: 0 30px 60px rgba(15, 23, 42, 0.1);
}

.acceleratorsSection .acceleratorCard .icon {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  background: rgba(79, 70, 229, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 24px;
}

.acceleratorsSection .acceleratorCard .icon i {
  font-size: 22px;
  color: #4f46e5;
}

.acceleratorsSection .acceleratorCard h3 {
  font-size: 22px;
  font-weight: 800;
  margin-bottom: 12px;
  color: #0f172a;
}

.acceleratorsSection .acceleratorCard .description {
  font-size: 15px;
  color: #64748b;
  margin-bottom: 22px;
  line-height: 1.6;
}

.acceleratorsSection .acceleratorCard .features {
  list-style: none;
  padding: 0;
  margin: 0 0 32px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.acceleratorsSection .acceleratorCard .features li {
  font-size: 14px;
  color: #334155;
  padding-left: 22px;
  position: relative;
}

.acceleratorsSection .acceleratorCard .features li::before {
  content: "→";
  position: absolute;
  left: 0;
  color: #4f46e5;
  font-weight: 600;
}

.acceleratorsSection .acceleratorCard .cardBtn {
  margin-top: auto;
  text-align: center;
  padding: 14px;
  border-radius: 14px;
  background: linear-gradient(135deg, #4f46e5, #6366f1);
  color: #ffffff;
  text-decoration: none;
  font-weight: 500;
  transition: 0.3s ease;
}

.acceleratorsSection .acceleratorCard .cardBtn:hover {
  opacity: 0.9;
}

/*# sourceMappingURL=style.css.map */

.services-overview {
  padding: 70px 0;
  background: #f8f9fb;

  /* Large desktops */
  @media (max-width: 1200px) {
    padding: 60px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 60px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 50px 0 20px;
  }
}

.services-overview .section-header {
  text-align: center;
  margin-bottom: 60px;
}

.services-overview .section-header h2 {
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 10px;
}

.services-overview .section-header p {
  font-size: 18px;
  color: #6a6a6a;
}

.services-overview .services-wrapper {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

.services-overview .services-wrapper .service-card {
  display: flex;
  align-items: stretch;
  gap: 30px;
  background: #fff;
  border-radius: 18px;
  padding: 30px;
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.04);
  height: 100%;
  min-height: 260px;
  transition: 0.3s ease;
}

.services-overview .services-wrapper .service-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.08);
}

.services-overview .services-wrapper .service-card .service-image {
  flex: 0 0 35%;
}

.services-overview .services-wrapper .service-card .service-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 14px;
}

.services-overview .services-wrapper .service-card .service-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.services-overview .services-wrapper .service-card .service-content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.services-overview .services-wrapper .service-card .service-content .service-icon {
  width: 55px;
  height: 55px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 26px;
  background: #eef2ff;
  border-radius: 12px;
  color: var(--primary-color);
}

.services-overview .services-wrapper .service-card .service-content h3 {
  font-size: 24px;
  margin-bottom: 10px;
}

.services-overview .services-wrapper .service-card .service-content p {
  color: #666;
  line-height: 1.6;
  margin-bottom: 16px;
}

.services-overview .services-wrapper .service-card .service-content ul {
  list-style: none;
  padding: 0;
  margin-top: auto;
}

.services-overview .services-wrapper .service-card .service-content ul li {
  margin-bottom: 8px;
  padding-left: 20px;
  position: relative;
  font-size: 15px;
}

.services-overview .services-wrapper .service-card .service-content ul li::before {
  content: "✓";
  color: #5379ff;
  position: absolute;
  left: 0;
}

@media (max-width: 992px) {
  .services-overview .services-wrapper .service-card {
    flex-direction: column;
  }

  .services-overview .services-wrapper .service-card .service-image {
    flex: none;
  }

  .services-overview .services-wrapper .service-card .service-image img {
    height: 220px;
  }
}

/*# sourceMappingURL=style.css.map */

.kpi-outcomes {
  padding: 70px 0;
  background: var(--bg-light);

  /* Large desktops */
  @media (max-width: 1200px) {
    padding: 80px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 60px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 20px 0;
  }
}

.kpi-outcomes .section-header {
  text-align: center;
  margin-bottom: 60px;

  @media (max-width: 480px) {
    margin: 0 auto 44px;
  }
}

.kpi-outcomes .section-header h2 {
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 12px;
  color: #1e293b;
}

.kpi-outcomes .section-header p {
  font-size: 18px;
  color: #64748b;
}

.kpi-outcomes .kpi-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 28px;
  justify-content: center;
}

.kpi-outcomes .kpi-card {
  flex: 0 0 calc(25% - 21px);
  min-height: 180px;
  background: #fff;
  border-radius: 18px;
  padding: 30px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border: 1px solid rgba(0, 0, 0, 0.05);
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.04);
  transition: 0.3s ease;
  text-align: center;
}

.kpi-outcomes .kpi-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.08);
}

.kpi-outcomes .kpi-card .kpi-value {
  font-size: 46px;
  font-weight: 700;
  color: var(--primary-color);
  margin-bottom: 10px;
}

.kpi-outcomes .kpi-card .kpi-label {
  font-size: 16px;
  color: #475569;
  line-height: 1.5;
}

@media (max-width: 992px) {
  .kpi-outcomes .kpi-card {
    flex: 0 0 calc(50% - 14px);
  }
}

@media (max-width: 600px) {
  .kpi-outcomes .kpi-card {
    flex: 0 0 100%;
  }
}

/*# sourceMappingURL=style.css.map */

.accelerators {
  padding: 100px 20px;
  background: #f5f7fa;
}

.accelerators .section-header {
  text-align: center;
  margin-bottom: 60px;
}

.accelerators .section-header h2 {
  font-size: 40px;
  font-weight: 700;
  color: #1c1c1c;
}

.accelerators .section-header p {
  font-size: 18px;
  color: #555;
  margin-top: 6px;
}

.accelerators .accelerators-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  justify-content: center;
}

.accelerators .accelerators-grid .accelerator-card {
  width: calc(33.33% - 20px);
  background: rgba(255, 255, 255, 0.25);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-radius: 20px;
  overflow: hidden;
  border: 1px solid #dcdcdc;
  display: flex;
  flex-direction: column;
  transition: transform 0.3s ease;
}

.accelerators .accelerators-grid .accelerator-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 14px 35px rgba(0, 0, 0, 0.2);
}

.accelerators .accelerators-grid .accelerator-card:hover .card-image img {
  transform: scale(1.05);
}

.accelerators .accelerators-grid .accelerator-card .card-image {
  position: relative;
  width: 100%;
  height: 240px;
  overflow: hidden;
}

.accelerators .accelerators-grid .accelerator-card .card-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.accelerators .accelerators-grid .accelerator-card .card-image .card-icon {
  position: absolute;
  bottom: -20px;
  left: 20px;
  width: 60px;
  height: 60px;
  background: #3d3be8;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 12px;
}

.accelerators .accelerators-grid .accelerator-card .card-image .card-icon img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.accelerators .accelerators-grid .accelerator-card .card-content {
  padding: 40px 20px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.accelerators .accelerators-grid .accelerator-card .card-content h3 {
  font-size: 22px;
  font-weight: 700;
  color: #1c1c1c;
}

.accelerators .accelerators-grid .accelerator-card .card-content p {
  font-size: 15px;
  color: #555;
  line-height: 1.6;
}

.accelerators .accelerators-grid .accelerator-card .card-content ul {
  list-style: none;
  padding-left: 18px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.accelerators .accelerators-grid .accelerator-card .card-content ul li {
  position: relative;
  font-size: 14px;
  color: #333;
}

.accelerators .accelerators-grid .accelerator-card .card-content ul li::before {
  content: "✔";
  color: #3d3be8;
  position: absolute;
  left: -18px;
  top: 0;
}

.accelerators .accelerators-grid .accelerator-card .card-content .pill {
  align-self: flex-start;
  margin-top: auto;
  background: linear-gradient(90deg, #3d3be8, #6f72ff);
  color: #fff;
  padding: 6px 16px;
  border-radius: 30px;
  font-size: 13px;
  font-weight: 600;
}

@media (max-width: 1200px) {
  .accelerators .accelerators-grid .accelerator-card {
    width: calc(50% - 20px);
  }
}

@media (max-width: 992px) {
  .accelerators {
    padding: 80px 15px;
  }

  .accelerators .section-header h2 {
    font-size: 32px;
  }

  .accelerators .section-header p {
    font-size: 16px;
  }

  .accelerators .accelerators-grid .accelerator-card {
    width: calc(50% - 15px);
  }

  .accelerators .accelerator-card .card-image {
    height: 200px;
  }

  .accelerators .accelerator-card .card-content {
    padding: 30px 15px 15px;
  }
}

@media (max-width: 768px) {
  .accelerators {
    padding: 70px 15px;
  }

  .accelerators .section-header h2 {
    font-size: 28px;
  }

  .accelerators .section-header p {
    font-size: 15px;
  }

  .accelerators .accelerators-grid {
    gap: 20px;
  }

  .accelerators .accelerators-grid .accelerator-card {
    width: 100%;
  }

  .accelerators .accelerator-card .card-image {
    height: 180px;
  }
}

@media (max-width: 480px) {
  .accelerators {
    padding: 60px 10px 30px;
  }

  .accelerators .section-header h2 {
    font-size: 24px;
  }

  .accelerators .section-header p {
    font-size: 14px;
  }

  .accelerators .accelerator-card .card-image {
    height: 160px;
  }

  .accelerators .accelerator-card .card-content h3 {
    font-size: 20px;
  }

  .accelerators .accelerator-card .card-content p,
  .accelerators .accelerator-card .card-content ul li {
    font-size: 13px;
  }

  .accelerators .accelerator-card .card-content .pill {
    font-size: 12px;
    padding: 5px 12px;
  }
}

/*# sourceMappingURL=style.css.map */

.servicesOverview {
  padding: 60px 0;
  background: var(--bg-light);
}

@media (max-width: 768px) {
  .servicesOverview {
    padding: 40px 0;
  }
}

.servicesOverview .sectionHeader {
  text-align: center;
  margin-bottom: 64px;

  @media (max-width: 768px) {
    margin-bottom: 30px;
  }
}

.servicesOverview .sectionHeader h2 {
  font-size: 2.6rem;
  font-weight: 700;
  margin-bottom: 12px;
}

.servicesOverview .sectionHeader p {
  font-size: 1.1rem;
  color: var(--text-medium);
  max-width: 600px;
  margin: 0 auto;
}

.servicesOverview .caseCard {
  background: #ffffff;
  border-radius: 28px;
  padding: 48px;
  margin-bottom: 48px;
  border: 1px solid #e0e0e0;
  /* light border */
  transition: transform 0.3s ease;
}

.servicesOverview .caseCard:hover {
  transform: translateY(-6px);
}

@media (max-width: 768px) {
  .servicesOverview .caseCard {
    padding: 32px 24px;
  }
}

.servicesOverview .caseCard .caseHeader {
  margin-bottom: 32px;
}

.servicesOverview .caseCard .caseHeader .caseBadge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 0.85rem;
  font-weight: 600;
  padding: 6px 14px;
  border-radius: 999px;
  color: #fff;
}

.servicesOverview .caseCard .caseHeader .caseBadge.retail {
  background: var(--primary-color);
}

.servicesOverview .caseCard .caseHeader .caseBadge.manufacturing {
  background: var(--primary-color);
}

.servicesOverview .caseCard .caseHeader .caseBadge.distribution {
  background: var(--primary-color);
}

.servicesOverview .caseCard .caseHeader h3 {
  font-size: 2rem;
  margin: 16px 0 12px;
  /* font-family: var(--font-heading); */

  @media (max-width: 768px) {
    font-size: 20px !important;
  }
}

.servicesOverview .caseCard .caseHeader p {
  font-size: 1.1rem;
  color: var(--text-medium);
  max-width: 850px;
}

.servicesOverview .caseCard .caseBody {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 24px;
  margin-bottom: 36px;
}

@media (max-width: 768px) {
  .servicesOverview .caseCard .caseBody {
    grid-template-columns: 1fr;
  }
}

.servicesOverview .caseCard .caseBody .caseBlock {
  background: var(--bg-light);
  padding: 24px;
  border-radius: 20px;
}

.servicesOverview .caseCard .caseBody .caseBlock h4 {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 1.1rem;
  color: var(--primary-color);
  margin-bottom: 16px;
  font-weight: 800;
}

.servicesOverview .caseCard .caseBody .caseBlock ul {
  list-style: none;
  padding: 0;
}

.servicesOverview .caseCard .caseBody .caseBlock ul li {
  position: relative;
  padding-left: 22px;
  margin-bottom: 10px;
  color: var(--text-medium);
}

.servicesOverview .caseCard .caseBody .caseBlock ul li::before {
  content: "✔";
  position: absolute;
  left: 0;
  color: var(--primary-color);
  font-weight: 600;
}

.servicesOverview .caseCard .caseMetrics {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}

@media (max-width: 1024px) {
  .servicesOverview .caseCard .caseMetrics {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .servicesOverview .caseCard .caseMetrics {
    grid-template-columns: 1fr;
  }
}

.servicesOverview .caseCard .caseMetrics .metricItem {
  background: var(--bg-light);
  border-radius: 18px;
  padding: 22px;
  text-align: center;
}

.servicesOverview .caseCard .caseMetrics .metricItem i {
  font-size: 1.4rem;
  color: var(--primary-color);
  margin-bottom: 10px;
}

.servicesOverview .caseCard .caseMetrics .metricItem strong {
  display: block;
  font-size: 2.2rem;
  color: var(--primary-color);
}

.servicesOverview .caseCard .caseMetrics .metricItem span {
  font-size: 0.95rem;
  color: var(--text-medium);
}

/*# sourceMappingURL=style.css.map */

/* testimonials section */
.testimonials {
  padding: 60px 0;
  background: var(--bg-light);
}

.testimonials .section-header {
  text-align: center;
  margin-bottom: 60px;
}

@media (max-width: 768px) {
  .testimonials .section-header {
    margin-bottom: 30px;
  }
}

.testimonials .section-header h2 {
  font-size: 38px;
  font-weight: 700;
  color: #1c1c1c;
}

.testimonials .section-header p {
  font-size: 18px;
  color: #666;
  margin-top: 8px;
}

.testimonials .marquee-container {
  overflow: hidden;
  position: relative;
  width: 100%;
  max-width: 100%;
}

.testimonials .marquee-container .marquee-track {
  display: flex;
  gap: 24px;
  animation: marqueeScroll 22s linear infinite;
}

.testimonials .marquee-container .marquee-track:hover {
  animation-play-state: paused;
}

.testimonials .marquee-container .marquee-track .testimonial-card {
  min-width: 600px;
  background: #fff;
  border-left: 6px solid var(--primary-color);
  padding: 28px 32px;
  border-radius: 12px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.07);
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.testimonials .marquee-container .marquee-track .testimonial-card blockquote {
  font-size: 16px;
  line-height: 1.6;
  color: #333;
  font-style: italic;
}

.testimonials .marquee-container .marquee-track .testimonial-card .author {
  display: flex;
  align-items: center;
  gap: 14px;
}

.testimonials .marquee-container .marquee-track .testimonial-card .author .avatar {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: linear-gradient(135deg,
      var(--primary-color),
      var(--secondary-color));
  color: #fff;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}

.testimonials .marquee-container .marquee-track .testimonial-card .author .info {
  display: flex;
  flex-direction: column;
}

.testimonials .marquee-container .marquee-track .testimonial-card .author .info strong {
  font-size: 16px;
  font-weight: 700;
  color: #1c1c1c;
}

.testimonials .marquee-container .marquee-track .testimonial-card .author .info span {
  font-size: 14px;
  color: #777;
}

@keyframes marqueeScroll {
  0% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-50%);
  }
}

@media (max-width: 992px) {
  .testimonials .marquee-container .marquee-track .testimonial-card {
    min-width: 500px;
    padding: 24px 26px;
  }

  .testimonials .marquee-container .marquee-track .testimonial-card blockquote {
    font-size: 15px;
  }
}

@media (max-width: 768px) {
  .testimonials {
    padding: 60px 0;
  }

  .testimonials .section-header h2 {
    font-size: 30px;
  }

  .testimonials .marquee-container .marquee-track .testimonial-card {
    min-width: 380px;
    padding: 20px;
  }

  .testimonials .marquee-container .marquee-track .testimonial-card .author .avatar {
    width: 42px;
    height: 42px;
  }
}

@media (max-width: 480px) {
  .testimonials {
    padding: 30px 0;
  }

  .testimonials .section-header h2 {
    font-size: 26px;
  }

  .testimonials .marquee-container .marquee-track .testimonial-card {
    min-width: 300px;
    padding: 18px;
  }

  .testimonials .marquee-container .marquee-track .testimonial-card blockquote {
    font-size: 14px;
  }
}

/*# sourceMappingURL=style.css.map */

.why-choose-us {
  padding: 70px 0;
  background-color: var(--bg-light);

  /* ================= HEADER ================= */
  /* ================= GRID ================= */
  /* ================= RESPONSIVE ================= */
}

.why-choose-us .section-header {
  text-align: center;
  max-width: 780px;
  margin: 0 auto 70px;
}

.why-choose-us .benefits-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}

.why-choose-us .benefits-grid .benefit-card {
  position: relative;
  padding: 42px 34px;
  background: rgba(255, 255, 255, 0.85);
  border-radius: 20px;
  border: 1px solid rgba(15, 23, 42, 0.1);
  /* kept / slightly stronger */
  transition: all 0.35s ease;
  overflow: hidden;
  /* gradient glow */
  /* ================= NUMBER ================= */
}

.why-choose-us .benefits-grid .benefit-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #6d28d9, #4f46e5);
  opacity: 0;
  transition: opacity 0.35s ease;
}

.why-choose-us .benefits-grid .benefit-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 35px 65px rgba(79, 70, 229, 0.18);
}

.why-choose-us .benefits-grid .benefit-card:hover::before {
  opacity: 0.06;
}

.why-choose-us .benefits-grid .benefit-card .benefit-number {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: linear-gradient(135deg, #6d28d9, #4f46e5);
  color: #ffffff;
  font-size: 15px;
  font-weight: 600;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 26px;
  position: relative;
  z-index: 1;
}

.why-choose-us .benefits-grid .benefit-card h3 {
  font-size: 22px;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 14px;
  position: relative;
  z-index: 1;
}

@media (max-width: 600px) {
  .why-choose-us .benefits-grid .benefit-card h3 {
    font-size: 20px;
  }
}

.why-choose-us .benefits-grid .benefit-card p {
  font-size: 15.5px;
  line-height: 1.7;
  color: #475569;
  position: relative;
  z-index: 1;
}

@media (max-width: 1024px) {
  .why-choose-us .benefits-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .why-choose-us .section-header .title {
    font-size: 36px;
  }
}

@media (max-width: 600px) {
  .why-choose-us .benefits-grid {
    grid-template-columns: 1fr;
  }

  .why-choose-us .section-header {
    margin-bottom: 50px;
  }

  .why-choose-us .section-header .title {
    font-size: 30px;
  }
}

/*# sourceMappingURL=style.css.map */

.industries {
  background: #ffffff;
  padding: 70px 0;
  overflow: hidden;

  @media (max-width: 600px) {
    padding: 40px 0;
  }
}

.industries .section-header {
  text-align: center;
  margin-bottom: 50px;

  @media (max-width: 600px) {
    margin-bottom: 20px;
  }
}

.industries .section-header .section-image img {
  width: 100%;
  max-width: 800px;
  display: block;
  margin: auto;
}

.industries .industries-grid {
  display: flex;
  flex-wrap: wrap;
  margin: -14px;
  padding: 0 20px;

  @media (max-width: 768px) {
    padding: 0 20px;
    gap: 30px;
  }
}

.industries .industries-grid .industry-card {
  background: #f8faff;
  border: 1px solid #e5edff;
  border-radius: 18px;
  padding: 30px;
  margin-top: 20px;
  margin: 14px;
  flex: 0 0 calc(33.333% - 28px);
  text-align: center;
  transition: 0.3s ease;

  @media (max-width: 900px) {
    margin: 0;
    margin-top: 20px;
  }
}

.industries .industries-grid .industry-card .industry-img {
  width: 100%;
  height: 200px;
  margin-bottom: 18px;
  overflow: hidden;
  border-radius: 12px;
}

.industries .industries-grid .industry-card .industry-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.industries .industries-grid .industry-card h3 {
  font-size: 20px;
  font-weight: 800;
  margin-bottom: 10px;
  color: #0b1c3f;
}

.industries .industries-grid .industry-card p {
  font-size: 15px;
  line-height: 1.6;
  color: #5a6c8a;
}

@media (max-width: 992px) {
  .industries .industries-grid .industry-card {
    flex: 0 0 calc(50% - 28px);
  }
}

@media (max-width: 600px) {
  .industries .industries-grid .industry-card {
    flex: 0 0 100%;
  }
}

/*# sourceMappingURL=style.css.map */

.industry-solutions-section {
  padding: 80px 0;
  background-color: #ffffff;
  font-family: "Inter", sans-serif;

  /* Large desktops */
  @media (max-width: 1200px) {
    padding: 70px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 50px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 30px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 20px 0;
  }
}

.industry-solutions-section .industry-solutions-grid {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 60px;
  align-items: center;
}

@media (max-width: 992px) {
  .industry-solutions-section .industry-solutions-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }
}

.industry-solutions-section .industry-solutions-info .industry-solutions-title {
  font-size: 2.5rem;
  color: #1f2937;
  font-weight: 800;
  margin-bottom: 20px;
}

.industry-solutions-section .industry-solutions-info .industry-solutions-lead {
  font-size: 1.125rem;
  color: #4b5563;
  line-height: 1.3;
  margin-bottom: 40px;
}

.industry-solutions-section .industry-solutions-features {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-bottom: 40px;
}

@media (max-width: 640px) {
  .industry-solutions-section .industry-solutions-features {
    grid-template-columns: 1fr;
  }
}

.industry-solutions-section .industry-solutions-features .industry-feature-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: #f9fafb;
  border-radius: 12px;
  border: 1px solid transparent;
  transition: all 0.25s ease;
}

.industry-solutions-section .industry-solutions-features .industry-feature-card:hover {
  transform: translateX(5px);
  background: #f5f3ff;
  border-color: #6366f1;
}

.industry-solutions-section .industry-solutions-features .industry-feature-card .industry-feature-icon {
  color: #6366f1;
  font-weight: bold;
  font-size: 1rem;
}

.industry-solutions-section .industry-solutions-features .industry-feature-card .industry-feature-name {
  font-size: 0.95rem;
  color: #1f2937;
  font-weight: 500;
}

.industry-solutions-section .industry-solutions-btn {
  display: inline-block;
  padding: 16px 32px;
  background-color: #6366f1;
  color: #ffffff;
  text-decoration: none;
  border-radius: 8px;
  font-weight: 600;
  transition: background 0.3s ease;
  font-size: 16px;
}


/* ----------- Responsive Breakpoints ----------- */

/* Large desktops (≤1200px) */
@media (max-width: 1200px) {
  .industry-solutions-section .industry-solutions-btn {
    padding: 15px 30px;
    font-size: 16px;
  }
}

/* Tablets (≤992px) */
@media (max-width: 992px) {
  .industry-solutions-section .industry-solutions-btn {
    padding: 14px 28px;
    font-size: 15px;
  }
}

/* Large mobiles (≤768px) */
@media (max-width: 768px) {
  .industry-solutions-section .industry-solutions-btn {
    padding: 14px 26px;
    font-size: 15px;
    width: auto;
  }
}

/* Small mobiles (≤480px) */
@media (max-width: 480px) {
  .industry-solutions-section .industry-solutions-btn {
    width: 100%;
    text-align: center;
    padding: 14px 0;
    font-size: 14px;
  }
}


.industry-solutions-section .industry-solutions-btn:hover {
  background-color: #4f46e5;
}

.industry-solutions-section .industry-solutions-visual .industry-image-wrapper {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.industry-solutions-section .industry-solutions-visual .industry-image-wrapper .industry-main-img {
  width: 100%;
  display: block;
  aspect-ratio: 1/1;
  -o-object-fit: cover;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.industry-solutions-section .industry-solutions-visual .industry-image-wrapper:hover .industry-main-img {
  transform: scale(1.05);
}

.industry-solutions-section .industry-solutions-visual .industry-image-wrapper .industry-live-status {
  position: absolute;
  bottom: 20px;
  left: 20px;
  background: #ffffff;
  padding: 10px 18px;
  border-radius: 50px;
  display: flex;
  align-items: center;
  gap: 8px;
  font-weight: 700;
  font-size: 0.85rem;
  color: #1f2937;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.industry-solutions-section .industry-solutions-visual .industry-image-wrapper .industry-live-status .industry-pulse-dot {
  width: 8px;
  height: 8px;
  background: #10b981;
  border-radius: 50%;
  animation: industry-pulse 2s infinite;
}

@keyframes industry-pulse {
  0% {
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0.7);
  }

  70% {
    box-shadow: 0 0 0 10px rgba(16, 185, 129, 0);
  }

  100% {
    box-shadow: 0 0 0 0 rgba(16, 185, 129, 0);
  }
}

/*# sourceMappingURL=style.css.map */

.industry-impact {
  padding: 70px 0;
  background: #fff;

  @media (max-width: 992px) {
    padding: 40px 0;
  }
}

.industry-impact .container {
  width: 100%;
  margin: 0 auto;
}

.industry-impact .section-header {
  text-align: center;
  margin-bottom: 3rem;
}

.industry-impact .section-header h2 {
  font-size: 2.2rem;
  font-weight: 700;
  color: #111;
  margin-bottom: 0.5rem;
}

.industry-impact .section-header p {
  font-size: 1rem;
  color: #555;
}

.industry-impact .industry-stats {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}

@media (max-width: 992px) {
  .industry-impact .industry-stats {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 576px) {
  .industry-impact .industry-stats {
    grid-template-columns: repeat(1, 1fr);
  }
}

.industry-impact .industry-stats .stat-box {
  background: #f9fafb;
  padding: 2rem 1rem;
  border-radius: 12px;
  text-align: center;
  border: 1px solid #e5e7eb;
  transition: all 0.3s ease;
}

.industry-impact .industry-stats .stat-box i {
  font-size: 2.2rem;
  color: var(--primary-color);
  margin-bottom: 0.8rem;
  display: inline-block;
}

.industry-impact .industry-stats .stat-box h3 {
  font-size: 2rem;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 0.3rem;
}

.industry-impact .industry-stats .stat-box p {
  font-size: 0.95rem;
  color: #475569;
}

.industry-impact .industry-stats .stat-box:hover {
  background: var(--salesforce-color);
  border-color: var(--primary-color);
  transform: translateY(-4px);
  box-shadow: 0px 8px 25px rgba(0, 0, 0, 0.08);
}

.industry-impact .industry-stats .stat-box:hover i,
.industry-impact .industry-stats .stat-box:hover h3,
.industry-impact .industry-stats .stat-box:hover p {
  color: #fff;
}

/*# sourceMappingURL=style.css.map */

.journal-section {
  padding: 100px 0;
  background-color: #ffffff;
  color: #334155;
  font-family: "Inter", sans-serif;
}

.journal-section .journal-container {
  max-width: 1300px;
  margin: 0 auto;
  padding: 0 30px;
}

.journal-section .journal-header {
  text-align: center;
  margin-bottom: 60px;
}

.journal-section .journal-header .journal-title {
  font-size: 3rem;
  font-weight: 800;
  color: #0f172a;
  margin-bottom: 30px;
  letter-spacing: -1px;
}

.journal-section .journal-header .journal-filters {
  display: flex;
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

@media (max-width: 768px) {
  .journal-section .journal-header .journal-filters {
    justify-content: flex-start;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding: 10px 0 20px 0;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .journal-section .journal-header .journal-filters::-webkit-scrollbar {
    display: none;
  }
}

.journal-section .journal-header .journal-filters .filter-btn {
  background: #f1f5f9;
  border: none;
  padding: 12px 24px;
  border-radius: 100px;
  font-weight: 600;
  font-size: 0.9rem;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  color: var(--text-dark);
  white-space: nowrap;
}

.journal-section .journal-header .journal-filters .filter-btn:hover {
  background: #e2e8f0;
}

.journal-section .journal-header .journal-filters .filter-btn.active {
  background: var(--primary-color);
  color: #ffffff;
  box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
}

.journal-section .journal-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 40px;
}

.journal-section .journal-grid .journal-card {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid #e5e7eb;
  transition: all 0.4s ease;
}

/* the <a> wraps the whole card — make it a full-height flex column so the body
   can grow and the author row bottom-aligns across every card, regardless of
   how long the excerpt is */
.journal-section .journal-grid .journal-card > a {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  height: 100%;
  color: inherit;
  text-decoration: none;
}

.journal-section .journal-grid .journal-card:hover .journal-thumb img {
  transform: scale(1.1);
}

.journal-section .journal-grid .journal-card .journal-thumb {
  height: 240px;
  overflow: hidden;
  background: #f1f5f9;
}

.journal-section .journal-grid .journal-card .journal-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transition: transform 0.6s ease;
}

.journal-section .journal-grid .journal-card .journal-body {
  padding: 30px;
  flex-grow: 1;
  display: flex;
  flex-direction: column;
}

.journal-section .journal-grid .journal-card .journal-body .journal-meta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}

.journal-section .journal-grid .journal-card .journal-body .journal-meta .badge {
  background: rgba(59, 130, 246, 0.1);
  color: var(--primary-dark);
  padding: 4px 12px;
  border-radius: 6px;
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
}

.journal-section .journal-grid .journal-card .journal-body .journal-meta .date {
  font-size: 0.85rem;
  color: #94a3b8;
}

.journal-section .journal-grid .journal-card .journal-body h3.line-clamp-2 {
  font-size: 1.4rem;
  line-height: 1.3;
  font-weight: 700;
  color: #0f172a;
  margin-bottom: 15px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.journal-section .journal-grid .journal-card .journal-body p.line-clamp-3 {
  font-size: 1rem;
  line-height: 1.6;
  color: #334155;
  margin-bottom: 25px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.journal-section .journal-grid .journal-card .journal-body .journal-author {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 15px;
  padding-top: 20px;
  border-top: 1px solid #f1f5f9;
}

.journal-section .journal-grid .journal-card .journal-body .journal-author .avatar {
  width: 44px;
  height: 44px;
  flex: none;               /* never shrink — keeps the row aligned */
  overflow: hidden;         /* clip the photo to the circle */
  background: var(--primary-dark);
  color: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 700;
  font-size: 1rem;          /* size of the initial fallback */
}
.journal-section .journal-grid .journal-card .journal-body .journal-author .avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.journal-section .journal-grid .journal-card .journal-body .journal-author .details {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1px;
  min-width: 0;             /* allow long names to truncate instead of breaking layout */
  flex: 1;                  /* fill the row so read-time can sit on the far right */
}
/* top row: author name on the left, read-time on the right */
.journal-section .journal-grid .journal-card .journal-body .journal-author .details .details-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.journal-section .journal-grid .journal-card .journal-body .journal-author .details .name {
  font-weight: 700;
  font-size: 0.95rem;
  color: #0f172a;
  margin: 0;
}

.journal-section .journal-grid .journal-card .journal-body .journal-author .details .time {
  font-size: 0.8rem;
  color: #94a3b8;
  margin: 0;
  white-space: nowrap;      /* keep "9 min read" on one line, pinned right */
  flex-shrink: 0;
}

.journal-section .journal-grid .journal-card .journal-body .journal-author .details .job-role {
  font-size: 0.85rem;
  color: rgba(0, 0, 0, 0.588);
  font-weight: 500;
  margin: 0;
}

.journal-section .journal-footer-msg {
  margin-top: 80px;
  text-align: center;
}

.journal-section .journal-footer-msg p {
  color: #94a3b8;
  font-style: italic;
  font-size: 1.1rem;
}

.journelTitle {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  -webkit-box-orient: vertical;

  @media (max-width: 768px) {
    font-size: 22px;
  }
}

@media (max-width: 768px) {
  .journal-section {
    padding: 50px 0;
  }

  .journal-section .journal-header {
    margin-bottom: 30px;
  }

  .journal-section .journal-header .journal-title {
    font-size: 2.2rem;
    margin-bottom: 15px;
  }

  .journal-section .journal-container {
    padding: 0 20px;
  }

  .journal-section .journal-grid {
    grid-template-columns: 1fr;
    gap: 25px;
  }
}

/*# sourceMappingURL=style.css.map */

.services-detailed {
  padding: 70px 0 !important;
  background-color: var(--bg-light);
  font-family: "Inter", sans-serif;

  @media (max-width: 1200px) {
    padding: 80px 0 !important;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0 !important;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 50px 0 !important;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 50px 0 !important;
  }
}

.services-detailed .container {
  margin: 0 auto;
}

.services-detailed .section-header {
  text-align: center;
  margin-bottom: 60px;
}

.services-detailed .section-header h2 {
  font-size: 2.5rem;
  font-weight: 800;
  color: #202e3b;
  margin-bottom: 16px;
}

.services-detailed .section-header p {
  font-size: 1.125rem;
  color: #667085;
  max-width: 600px;
  margin: 0 auto;
}

.services-detailed .modules-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 24px;
}

.services-detailed .modules-grid .module-card {
  background: #ffffff;
  border: 1px solid #eaecf0;
  padding: 32px 24px;
  text-align: left;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.services-detailed .modules-grid .module-card .icon-wrapper {
  width: 56px;
  height: 56px;
  background: rgba(113, 75, 103, 0.05);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 25px;
  margin-bottom: 20px;
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.services-detailed .modules-grid .module-card .icon-wrapper svg {
  width: 28px;
  height: 28px;
  color: var(--primary-color);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.services-detailed .modules-grid .module-card h4 {
  font-size: 1.25rem;
  font-weight: 700;
  color: #202e3b;
  margin-bottom: 8px;
}

.services-detailed .modules-grid .module-card p {
  font-size: 0.95rem;
  color: #667085;
  line-height: 1.5;
  margin: 0;
}

.services-detailed .modules-grid .module-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1),
    0 10px 10px -5px rgba(0, 0, 0, 0.04);
  border-color: rgba(113, 75, 103, 0.3);
}

.services-detailed .modules-grid .module-card:hover .icon-wrapper {
  background: var(--primary-color);
  transform: rotate(-5deg);
}

.services-detailed .modules-grid .module-card:hover .icon-wrapper svg {
  color: #ffffff;
}

@media (max-width: 768px) {
  .services-detailed {
    padding: 60px 0;
  }

  .services-detailed .section-header h2 {
    font-size: 1.8rem !important;
  }

  .services-detailed .modules-grid {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 16px;
  }
}

/*# sourceMappingURL=style.css.map */

.odoo-services-suite {
  padding: 70px 0;
  background-color: #ffffff;
  font-family: "Inter", sans-serif;


  @media (max-width: 768px) {
    padding: 30px 0;
}
}

.odoo-services-suite .container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

.odoo-services-suite .section-header {
  text-align: center;
  margin-bottom: 70px;
}

.odoo-services-suite .services-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}

.odoo-services-suite .services-grid .service-card {
  display: flex;
  flex-direction: column;      /* icon on top, content below */
  align-items: center;         /* icon centered horizontally at the top */
  text-align: center;
  gap: 18px;
  padding: 30px;
  background: #f9fafb;
  border-radius: 24px;
  border: 1px solid #eaecf0;
  transition: all 0.4s ease;
}
.odoo-services-suite .services-grid .service-card .service-content { width: 100%; }
/* keep the checklist readable (left-aligned) even though the card is centered */
.odoo-services-suite .services-grid .service-card .features-list { text-align: left; }

.odoo-services-suite .services-grid .service-card .service-icon {
  flex-shrink: 0;
  width: 60px;
  height: 60px;
  background: #ffffff;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}

.odoo-services-suite .services-grid .service-card .service-icon svg {
  width: 30px;
  height: 30px;
  color: var(--primary-dark);
}

.odoo-services-suite .services-grid .service-card .service-content h3 {
  font-size: 1.5rem;
  font-weight: 800;
  color: #202e3b;
  margin-top: 0;          /* reset the 10px inherited from generic .service-card h3 so it aligns with the icon */
  margin-bottom: 12px;
}

.odoo-services-suite .services-grid .service-card .service-content p {
  font-size: 1rem;
  color: #667085;
  line-height: 1.6;
  margin-bottom: 20px;
}

.odoo-services-suite .services-grid .service-card .service-content .features-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  list-style: none;
  padding: 0;
  margin: 0;
  gap: 10px;
}

.odoo-services-suite .services-grid .service-card .service-content .features-list li {
  font-size: 0.9rem;
  color: #475467;
  position: relative;
  padding-left: 20px;
}

.odoo-services-suite .services-grid .service-card .service-content .features-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: #017e84;
  font-weight: bold;
}

.odoo-services-suite .services-grid .service-card:hover {
  background: #ffffff;
  border-color: var(--primary-color);
  transform: translateY(-5px);
  box-shadow: 0 20px 40px rgba(113, 75, 103, 0.1);
}

.odoo-services-suite .services-grid .service-card:hover .service-icon {
  background: var(--primary-color);
}

.odoo-services-suite .services-grid .service-card:hover .service-icon svg {
  color: #ffffff;
}

@media (max-width: 992px) {
  .odoo-services-suite .services-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }
}

@media (max-width: 576px) {
  .odoo-services-suite .service-card {
    flex-direction: column;
    text-align: center;
  }

  .odoo-services-suite .service-card .service-icon {
    margin: 0 auto;
  }

  .odoo-services-suite .service-card .features-list {
    grid-template-columns: 1fr;
    text-align: left;
  }
}

/*# sourceMappingURL=style.css.map */

.explore-icons {
  padding: 90px 0;
  background: linear-gradient(180deg, #faf7f9, #ffffff);
}

.explore-icons .section-header {
  text-align: center;
  margin-bottom: 60px;
}

.explore-icons .section-header .title {
  font-size: 34px;
  font-weight: 700;
  color: #1f2937;
  margin-bottom: 10px;
}

.explore-icons .section-header .subtitle {
  font-size: 16px;
  color: #6b7280;
  max-width: 600px;
  margin: 0 auto;
}

.explore-icons .explore-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

@media (max-width: 992px) {
  .explore-icons .explore-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 576px) {
  .explore-icons .explore-grid {
    grid-template-columns: 1fr;
  }
}

.explore-icons .explore-card {
  background: #ffffff;
  border-radius: 18px;
  padding: 45px 35px;
  text-align: center;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.06);
  transition: all 0.4s ease;
  position: relative;
  overflow: hidden;
}

.explore-icons .explore-card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #714b67, #a76a8d);
  opacity: 0;
  transition: opacity 0.4s ease;
  z-index: 0;
}

.explore-icons .explore-card>* {
  position: relative;
  z-index: 1;
}

.explore-icons .explore-card .icon-box {
  width: 70px;
  height: 70px;
  margin: 0 auto 25px;
  border-radius: 50%;
  background: rgba(113, 75, 103, 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.4s ease;
}

.explore-icons .explore-card .icon-box i {
  font-size: 28px;
  color: var(--primary-color);
}

.explore-icons .explore-card h3 {
  font-size: 22px;
  font-weight: 800;
  color: #111827;
  margin-bottom: 12px;
  transition: color 0.4s ease;
}

.explore-icons .explore-card p {
  font-size: 15px;
  line-height: 1.7;
  color: #6b7280;
  margin-bottom: 22px;
  transition: color 0.4s ease;
}

.explore-icons .explore-card a {
  font-size: 15px;
  font-weight: 600;
  color: var(--primary-color);
  text-decoration: none;
  padding-bottom: 3px;
  border-bottom: 2px solid transparent;
  transition: all 0.3s ease;
}

.explore-icons .explore-card:hover .icon-box {
  background: var(--primary-dark);
}

.explore-icons .explore-card:hover .icon-box i {
  color: #ffffff;
}

/*# sourceMappingURL=style.css.map */

.features-section {
  padding: 0px 0;
}

@media (max-width: 768px) {
  .features-section {
    padding: 0px 0;
  }
}

@media (max-width: 480px) {
  .features-section {
    padding: 0px 0;
  }
}

.features-section .container {
  margin: 0 auto;
  padding: 0 16px;
}

.features-section .section-header {
  text-align: center;
  margin-bottom: 50px;
}

@media (max-width: 768px) {
  .features-section .section-header {
    margin-bottom: 40px;
  }
}

.features-section .section-header .title {
  font-size: 36px;
  font-weight: 700;
  color: #1f2933;
  margin-bottom: 12px;
}

@media (max-width: 768px) {
  .features-section .section-header .title {
    font-size: 30px;
  }
}

@media (max-width: 480px) {
  .features-section .section-header .title {
    font-size: 26px;
  }
}

.features-section .section-header .subtitle {
  font-size: 16px;
  color: #6b7280;
  max-width: 650px;
  margin: 0 auto;
  line-height: 1.6;
}

@media (max-width: 480px) {
  .features-section .section-header .subtitle {
    font-size: 15px;
  }
}

.features-section .features-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

@media (max-width: 1024px) {
  .features-section .features-grid {
    gap: 24px;
  }
}

@media (max-width: 992px) {
  .features-section .features-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 576px) {
  .features-section .features-grid {
    grid-template-columns: 1fr;
  }
}

.features-section .feature-box {
  background: #ffffff;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid #ddd;
  /* added */
  transition: all 0.35s ease;
  display: flex;
  flex-direction: column;
  height: 100%;
}

.features-section .feature-box:hover {
  transform: translateY(-10px);
  box-shadow: 0 22px 45px rgba(0, 0, 0, 0.1);
}

.features-section .feature-box:hover .feature-image img {
  transform: scale(1.08);
}

.features-section .feature-box .feature-image {
  width: 100%;
  height: 220px;
  overflow: hidden;
}

@media (max-width: 992px) {
  .features-section .feature-box .feature-image {
    height: 200px;
  }
}

@media (max-width: 576px) {
  .features-section .feature-box .feature-image {
    height: 180px;
  }
}

.features-section .feature-box .feature-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transition: transform 0.4s ease;
}

.features-section .feature-box .feature-content {
  padding: 24px;
  flex: 1;
}

@media (max-width: 480px) {
  .features-section .feature-box .feature-content {
    padding: 20px;
  }
}

.features-section .feature-box .feature-content h3 {
  font-size: 20px;
  font-weight: 800;
  color: #111827;
  margin-bottom: 10px;
}

@media (max-width: 480px) {
  .features-section .feature-box .feature-content h3 {
    font-size: 18px;
  }
}

.features-section .feature-box .feature-content p {
  font-size: 15px;
  color: #6b7280;
  line-height: 1.65;
}

@media (max-width: 480px) {
  .features-section .feature-box .feature-content p {
    font-size: 14px;
  }
}

/*# sourceMappingURL=style.css.map */

.industryShowcase {
  padding: 60px 0;

  @media (max-width: 1200px) {
    padding: 80px 0;
  }

  /* Tablets */
  @media (max-width: 992px) {
    padding: 70px 0;
  }

  /* Large mobiles */
  @media (max-width: 768px) {
    padding: 60px 0;
  }

  /* Small mobiles */
  @media (max-width: 480px) {
    padding: 50px 0 30px;
  }
}

.industryShowcase .industryHeader {
  text-align: center;
  max-width: 700px;
  margin: 0 auto 70px;
}

.industryShowcase .industryHeader .industryTitle {
  font-size: 40px;
  font-weight: 700;
  color: var(--text-dark);
  margin-bottom: 12px;
  letter-spacing: -0.03em;
}

.industryShowcase .industryHeader .industrySubtitle {
  font-size: 16px;
  color: var(--text-medium);
  line-height: 1.7;
}

.industryShowcase .industryCards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}

.industryShowcase .industryCards .industryItem {
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
  border: 1px solid rgba(0, 0, 0, 0.08);
  transition: all 0.4s ease;
  position: relative;
}

.industryShowcase .industryCards .industryItem:hover {
  transform: translateY(-10px);
  box-shadow: 0 35px 60px rgba(0, 0, 0, 0.12);
}

.industryShowcase .industryCards .industryItem:hover .industryImage img {
  transform: scale(1.08);
}

.industryShowcase .industryCards .industryItem:hover .industryContent a {
  color: var(--primary-color);
}

.industryShowcase .industryCards .industryItem .industryImage {
  height: 220px;
  overflow: hidden;
}

.industryShowcase .industryCards .industryItem .industryImage img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.industryShowcase .industryCards .industryItem .industryContent {
  padding: 28px;
}

.industryShowcase .industryCards .industryItem .industryContent h3 {
  font-size: 22px;
  font-weight: 800;
  color: #1f2937;
  margin-bottom: 10px;
}

.industryShowcase .industryCards .industryItem .industryContent p {
  font-size: 15px;
  color: #6b7280;
  line-height: 1.6;
  margin-bottom: 18px;
}

.industryShowcase .industryCards .industryItem .industryContent a {
  font-size: 14px;
  font-weight: 600;
  color: #4f46e5;
  text-decoration: none;
  transition: color 0.3s ease;
}

@media (max-width: 1024px) {
  .industryShowcase .industryCards {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .why-contact-bar{ padding: 1rem !important;  }

}

@media (max-width: 640px) {
  .industryShowcase .industryHeader {
    margin-bottom: 50px;
  }

  .industryShowcase .industryHeader .industryTitle {
    font-size: 32px;
  }

  .industryShowcase .industryCards {
    grid-template-columns: 1fr;
  }
}

/* ========================================
   OUR WORK / PORTFOLIO SECTION
   ======================================== */
.work-section {
  padding: 80px 0;
  background: var(--bg-white);
}

.work-section .section-header {
  margin-bottom: 3rem;
}

.work-filters {
  display: flex;
  gap: 0.75rem;
  justify-content: center;
  margin-bottom: 3rem;
  flex-wrap: wrap;
}

.work-filter-btn {
  padding: 0.5rem 1.5rem;
  background: transparent;
  border: 1.5px solid var(--border-color);
  border-radius: 50px;
  color: var(--text-medium);
  font-weight: 500;
  font-size: 0.9rem;
  cursor: pointer;
  transition: all 0.3s ease;
  font-family: var(--font-primary);
}

.work-filter-btn:hover {
  border-color: var(--primary-color);
  color: var(--primary-color);
}

.work-filter-btn.active {
  background: var(--primary-color);
  color: white;
  border-color: var(--primary-color);
}

.work-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}

.work-card {
  background: white;
  border-radius: var(--radius-xl);
  overflow: hidden;
  border: 1px solid var(--border-color);
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}

.work-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 20px 48px rgba(82, 37, 225, 0.1);
  border-color: rgba(82, 37, 225, 0.12);
}

.work-card-image {
  width: 100%;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  position: relative;
}

.work-card-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.4, 0, 0.2, 1);
}

.work-card:hover .work-card-image img {
  transform: scale(1.05);
}

.work-card-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(26, 22, 54, 0.8) 100%);
  opacity: 0;
  transition: opacity 0.4s ease;
  display: flex;
  align-items: flex-end;
  padding: 1.5rem;
}

.work-card:hover .work-card-overlay {
  opacity: 1;
}

.work-card-overlay .work-view-btn {
  color: white;
  font-weight: 500;
  font-size: 0.9rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.work-card-content {
  padding: 1.5rem;
}

.work-card-tags {
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
  margin-bottom: 0.75rem;
}

.work-tag {
  display: inline-block;
  padding: 0.2rem 0.7rem;
  background: var(--bg-light);
  color: var(--primary-color);
  border-radius: 50px;
  font-size: 0.75rem;
  font-weight: 600;
}

.work-card-content h3 {
  font-size: 1.15rem;
  font-weight: 600;
  margin-bottom: 0.5rem;
  letter-spacing: -0.01em;
  line-height: 1.4;
}

.work-card-content p {
  color: var(--text-medium);
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 1rem;
}

.work-card-meta {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 1rem;
  border-top: 1px solid var(--border-color);
}

.work-card-client {
  font-size: 0.85rem;
  color: var(--text-light);
  font-weight: 500;
}

.work-card-link {
  color: var(--primary-color);
  font-weight: 600;
  font-size: 0.85rem;
  display: flex;
  align-items: center;
  gap: 0.3rem;
  transition: gap 0.3s ease;
}

.work-card-link:hover {
  gap: 0.6rem;
}

.work-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2rem;
  margin-top: 4rem;
  padding: 3rem;
  background: var(--bg-light);
  border-radius: var(--radius-xl);
}

.work-stat {
  text-align: center;
}

.work-stat-number {
  font-size: 2.5rem;
  font-weight: 700;
  color: var(--primary-color);
  letter-spacing: -0.03em;
  line-height: 1;
  margin-bottom: 0.5rem;
}

.work-stat-label {
  font-size: 0.9rem;
  color: var(--text-medium);
  font-weight: 400;
}

.work-cta {
  text-align: center;
  margin-top: 3rem;
}

@media (max-width: 1024px) {
  .work-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .work-stats {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 768px) {
  .work-section {
    padding: 60px 0;
  }
  .work-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }
  .work-stats {
    grid-template-columns: repeat(2, 1fr);
    padding: 2rem;
    gap: 1.5rem;
  }
  .work-stat-number {
    font-size: 2rem;
  }
}

@media (max-width: 480px) {
  .work-stats {
    grid-template-columns: 1fr;
  }
  .work-filters {
    gap: 0.5rem;
  }
  .work-filter-btn {
    padding: 0.4rem 1rem;
    font-size: 0.8rem;
  }
}

/* Work Page Hero */
.work-page-hero {
  /* gradient fallback; the banner image is set INLINE in work/index.php so the base-path rewriter
     fixes the /assets URL for both localhost (/symakev7) and the production root */
  background: linear-gradient(135deg, #1A1636 0%, var(--primary-dark) 100%);
  background-size: cover;
  background-position: center;
  padding: 140px 0 80px;
  color: white;
  text-align: center;
  margin-top: 80px;
}

.work-page-hero h1 {
  font-size: 3.5rem;
  font-weight: 700;
  margin-bottom: 1rem;
  letter-spacing: -0.03em;
}

.work-page-hero p {
  font-size: 1.1rem;
  opacity: 0.8;
  max-width: 600px;
  margin: 0 auto;
  font-weight: 300;
  line-height: 1.7;
}

.work-featured {
  padding: 80px 0;
  background: var(--bg-light);
}

.featured-project {
  display: grid;
  grid-template-columns: 1.2fr 1fr;
  gap: 4rem;
  align-items: center;
}

.featured-project-image {
  border-radius: var(--radius-xl);
  overflow: hidden;
  box-shadow: var(--shadow-xl);
}

.featured-project-image img {
  width: 100%;
  height: auto;
  display: block;
}

.featured-project-content .featured-label {
  display: inline-block;
  padding: 0.3rem 1rem;
  background: rgba(82, 37, 225, 0.1);
  color: var(--primary-color);
  border-radius: 50px;
  font-size: 0.8rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 1.5rem;
}

.featured-project-content h2 {
  font-size: 2.25rem;
  font-weight: 700;
  margin-bottom: 1rem;
  letter-spacing: -0.02em;
}

.featured-project-content p {
  color: var(--text-medium);
  line-height: 1.8;
  margin-bottom: 2rem;
}

.featured-metrics {
  display: flex;
  gap: 2.5rem;
  margin-bottom: 2rem;
}

.featured-metric h4 {
  font-size: 1.75rem;
  color: var(--primary-color);
  font-weight: 700;
  margin-bottom: 0.25rem;
}

.featured-metric span {
  font-size: 0.85rem;
  color: var(--text-light);
}

@media (max-width: 768px) {
  .featured-project {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .work-page-hero {
    padding: 120px 0 60px;
  }
  .work-page-hero h1 {
    font-size: 2.25rem;
  }
}

/* ===== FAQ (shared by every page) ===== */
.seo-faq { max-width: 900px; margin: 60px auto; padding: 0 20px; }
.faq-item { border-bottom: 1px solid #eee; padding: 15px 0; }
.faq-item h3 { cursor: pointer; font-size: 16px; font-weight: 600; color: #222; margin: 0; }
.faq-item p { display: none; margin-top: 10px; color: #555; line-height: 1.8; }


/* Remixicon sizing for consolidated .odoo-services-suite icons (was Lucide svg) */
.odoo-services-suite .services-grid .service-card .service-icon i {
  font-size: 30px;
  color: var(--primary-dark);
  line-height: 1;
}
.odoo-services-suite .services-grid .service-card:hover .service-icon i {
  color: #ffffff;
}


/* ===== Page styles moved from header.php (blog / contact / comparison) ===== */
.blog-container {
            padding: 4rem 0;
        }

        .blog-filters {
            display: flex;
            gap: 1rem;
            justify-content: center;
            margin-bottom: 3rem;
            flex-wrap: wrap;
        }

        .filter-btn {
            padding: 0.5rem 1.5rem;
            background: white;
            border: 2px solid var(--border-color);
            border-radius: var(--radius-md);
            color: var(--text-dark);
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s ease;
        }

        .filter-btn:hover,
        .filter-btn.active {
            background: var(--primary-color);
            color: white;
            border-color: var(--primary-color);
        }

        .blog-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 2rem;
            margin-bottom: 3rem;
        }

        .blog-card-full {
            background: white;
            border-radius: var(--radius-lg);
            overflow: hidden;
            box-shadow: var(--shadow-md);
            transition: all 0.3s ease;
        }

        .blog-card-full:hover {
            transform: translateY(-5px);
            box-shadow: var(--shadow-xl);
        }

        .blog-image-full {
            height: 220px;
            overflow: hidden;
        }

        .blog-image-placeholder-full {
            width: 100%;
            height: 100%;
            background: linear-gradient(135deg, var(--primary-light), var(--primary-color));
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 4rem;
        }

        .blog-content-full {
            padding: 1.5rem;
        }

        .blog-meta-full {
            display: flex;
            gap: 1rem;
            margin-bottom: 1rem;
            font-size: 0.85rem;
        }

        .blog-category-full {
            background: var(--bg-light);
            padding: 0.25rem 0.75rem;
            border-radius: var(--radius-sm);
            color: var(--primary-color);
            font-weight: 600;
        }

        .blog-date-full {
            color: var(--text-light);
        }

        .blog-card-full h3 {
            font-size: 1.25rem;
            margin-bottom: 0.75rem;
            color: var(--text-dark);
        }

        .blog-excerpt {
            color: var(--text-medium);
            margin-bottom: 1rem;
            line-height: 1.6;
        }

        .blog-author {
            display: flex;
            align-items: center;
            gap: 0.75rem;
            margin-top: 1rem;
            padding-top: 1rem;
            border-top: 1px solid var(--border-color);
        }

        .author-avatar {
            width: 40px;
            height: 40px;
            background: var(--primary-color);
            color: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-weight: bold;
        }

        .author-info {
            flex: 1;
        }

        .author-name {
            font-weight: 600;
            color: var(--text-dark);
            font-size: 0.9rem;
        }

        .author-title {
            font-size: 0.8rem;
            color: var(--text-light);
        }

        .read-time {
            color: var(--text-light);
            font-size: 0.85rem;
        }

        @media (max-width: 1024px) {
            .blog-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (max-width: 768px) {
            .blog-grid {
                grid-template-columns: 1fr;
            }
        }

 .contact-container {
            padding: 100px 0;
            background: radial-gradient(circle at 10% 20%, rgba(82, 37, 225, 0.03) 0%, transparent 40%),
                radial-gradient(circle at 90% 80%, rgba(167, 148, 255, 0.05) 0%, transparent 40%);
            position: relative;
        }

        .contact-grid {
            display: grid;
            grid-template-columns: 0.85fr 1.15fr;
            gap: 5rem;
            align-items: start;
        }

        .contact-info-wrapper {
            display: flex;
            flex-direction: column;
            gap: 1.5rem;
        }

        .contact-header {
            margin-bottom: 3.5rem;
        }

        .contact-header .badge {
            display: inline-block;
            padding: 0.5rem 1.25rem;
            background: rgba(82, 37, 225, 0.08);
            color: var(--primary-color);
            border-radius: 50px;
            font-size: 0.85rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 0.1em;
            margin-bottom: 1.5rem;
        }

        .contact-header h2 {
            font-family: var(--font-primary);
            font-size: 2.8rem;
            line-height: 1.2;
            margin-bottom: 1.5rem;
            color: var(--text-dark);
            font-weight: 800;
        }

        .contact-header h2 span {
            background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
            -webkit-background-clip: text;
            background-clip: text;
            -webkit-text-fill-color: transparent;
            color: var(--primary-color);
            position: relative;
        }

        .contact-header p {
            font-size: 1.15rem;
            color: var(--text-medium);
            max-width: 95%;
            line-height: 1.8;
            opacity: 0.9;
        }
 .info-card {
            background: white;
            padding: 1.75rem;
            border-radius: 24px;
            display: flex;
            align-items: center;
            gap: 1.5rem;
            box-shadow: 0 10px 30px rgba(82, 37, 225, 0.05);
            transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
            border: 1px solid rgba(82, 37, 225, 0.05);
        }

        .info-card:hover {
            transform: translateX(10px) translateY(-5px);
            box-shadow: 0 20px 40px rgba(82, 37, 225, 0.1);
            border-color: var(--primary-color);
        }

          .icon-box {
            width: 56px;
            height: 56px;
            background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
            border-radius: 18px;
            display: flex;
            align-items: center;
            justify-content: center;
            color: white;
            flex-shrink: 0;
            box-shadow: 0 8px 20px rgba(82, 37, 225, 0.2);
        }

        .info-details h4 {
            font-size: 1.15rem;
            margin-bottom: 0.3rem;
            color: var(--text-dark);
            font-weight: 600;
        }
          .info-details p {
            color: var(--text-medium);
            font-size: 0.95rem;
            margin: 0;
            line-height: 1.5;
        }

        .contact-form-card {
            background: rgba(255, 255, 255, 0.8);
            backdrop-filter: blur(20px);
            -webkit-backdrop-filter: blur(20px);
            padding: 3.5rem;
            border-radius: 40px;
            border: 1px solid rgba(0, 0, 0, 0.153);
            position: relative;
        }

 .form-title {
            margin-bottom: 3rem;
        }

        .form-title h3 {
            font-size: 2.2rem;
            margin-bottom: 0.75rem;
            font-family: var(--font-primary);
            font-weight: 800;
        }

        .form-title p {
            color: var(--text-medium);
            font-size: 1.05rem;
        }

        .form-floating {
            position: relative;
            margin-bottom: 2rem;
        }
          .form-floating label {
            display: block;
            margin-bottom: 0.6rem;
            font-weight: 600;
            color: var(--text-dark);
            font-size: 0.9rem;
            letter-spacing: 0.02em;
        }

        .form-floating input,
        .form-floating select,
 .form-floating textarea {
            width: 100%;
            padding: 1.1rem 1.4rem;
            background: #f8f9ff;
            border: 2px solid transparent;
            border-radius: 18px;
            font-family: var(--font-primary);
            font-size: 1rem;
            transition: all 0.3s ease;
            color: var(--text-dark);
        }

        .form-floating input:focus,
        .form-floating select:focus,
        .form-floating textarea:focus {
            outline: none;
            border-color: var(--primary-color);
            background: white;
            box-shadow: 0 10px 25px rgba(82, 37, 225, 0.06);
        }
           .form-row {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 1.5rem;
        }

        .form-floating textarea {
            min-height: 160px;
            resize: vertical;
        }
         .submit-btn-modern {
            width: 100%;
            padding: 1.25rem;
            background: var(--primary-color);
            color: white;
            border: none;
            border-radius: 20px;
            font-size: 1.1rem;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 0.8rem;
            box-shadow: 0 15px 30px rgba(82, 37, 225, 0.25);
        }
         .submit-btn-modern:hover {
            background: var(--primary-dark);
            transform: translateY(-4px);
            box-shadow: 0 20px 40px rgba(82, 37, 225, 0.35);
        }

        .submit-btn-modern svg {
            transition: transform 0.4s ease;
        }

        .submit-btn-modern:hover svg {
            transform: translate(5px, -5px);
        }

        .why-contact-wrapper {
            margin-top: 5rem;
            text-align: center;
        }

        .why-contact-caption {
            font-size: 0.95rem;
            color: var(--text-medium);
            margin-bottom: 2rem;
            font-weight: 500;
            display: flex;
            align-items: center;
            justify-content: center;
            gap: 1rem;
            text-transform: uppercase;
            letter-spacing: 0.1em;
        }

        .why-contact-caption::before,
        .why-contact-caption::after {
            content: "";
            height: 1px;
            width: 50px;
            background: rgba(82, 37, 225, 0.1);
        }

        .why-contact-bar {
            padding: 2.5rem;
            background: white;
            border-radius: 30px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.02);
            border: 1px solid rgba(0, 0, 0, 0.03);
        }
  .bar-item {
            display: flex;
            align-items: center;
            gap: 1rem;
            font-weight: 600;
            color: var(--text-dark);
            font-size: 1rem;
        }

        .bar-icon {
            color: var(--success-color);
            font-size: 1.4rem;
        }

        .map-wrapper {
            margin-top: 4rem;
            border-radius: 40px;
            overflow: hidden;
            height: 450px;
            box-shadow: var(--shadow-xl);
            position: relative;
        }

        @media (max-width: 1100px) {
            .contact-grid {
                grid-template-columns: 1fr;
                gap: 4rem;
            }

            .contact-info-wrapper {
                text-align: center;
                align-items: center;
            }

            .contact-header p {
                margin-left: auto;
                margin-right: auto;
            }

            .info-card {
                width: 100%;
                max-width: 500px;
                text-align: left;
            }
        }

        @media (max-width: 768px) {
            .form-row {
                grid-template-columns: 1fr;
            }

            .contact-form-card {
                padding: 2.5rem 1.5rem;
            }

            .why-contact-bar {
                flex-direction: column;
                gap: 2rem;
                align-items: flex-start;
            }

            .contact-header h2 {
                font-size: 1.8rem;
            }
        }
  .hero-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, rgba(26, 22, 54, 0.65) 0%, rgba(82, 37, 225, 0.35) 100%);
    z-index: -1;
}

 .page-hero {
            color: white;
            padding: 4rem 0 3rem;
            text-align: center;
        }

        .products-container {
            padding: 4rem 0;
        }

        .products-grid {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 2rem;
            margin-bottom: 3rem;
        }

        .product-card {
            background: white;
            border-radius: var(--radius-xl);
            overflow: hidden;
            box-shadow: var(--shadow-md);
            transition: all 0.3s ease;
            border: 2px solid transparent;
        }

        .product-card:hover {
            transform: translateY(-5px);
            box-shadow: var(--shadow-xl);
            border-color: var(--primary-color);
        }

        .product-header {
            background: linear-gradient(135deg, var(--primary-color), var(--primary-light));
            color: white;
            padding: 2rem;
            text-align: center;
        }

        .product-icon {
            font-size: 4rem;
            margin-bottom: 1rem;
        }

        .product-header h3 {
            font-size: 1.5rem;
            margin-bottom: 0.5rem;
            color: white;
        }

        .product-tagline {
            opacity: 0.9;
            font-size: 0.95rem;
        }

        .product-body {
            padding: 2rem;
        }

        .product-price {
            text-align: center;
            margin-bottom: 1.5rem;
        }

        .price-label {
            color: var(--text-light);
            font-size: 0.85rem;
            margin-bottom: 0.25rem;
        }

        .price-amount {
            font-size: 2.5rem;
            font-weight: 800;
            color: var(--primary-color);
        }

        .price-period {
            color: var(--text-medium);
            font-size: 1rem;
        }

        .product-description {
            color: var(--text-medium);
            margin-bottom: 1.5rem;
            line-height: 1.6;
        }

        .product-features {
            list-style: none;
            margin-bottom: 1.5rem;
        }

        .product-features li {
            padding: 0.5rem 0;
            padding-left: 1.75rem;
            position: relative;
            color: var(--text-medium);
        }

        .product-features li:before {
            content: "\2713";
            position: absolute;
            left: 0;
            color: var(--success-color);
            font-weight: bold;
            font-size: 1.1rem;
        }

        .product-cta {
            text-align: center;
        }

        .product-btn {
            display: inline-block;
            width: 100%;
            padding: 0.875rem;
            background: var(--primary-color);
            color: white;
            border-radius: var(--radius-md);
            font-weight: 600;
            transition: all 0.3s ease;
        }

        .product-btn:hover {
            background: var(--primary-dark);
            transform: translateY(-2px);
            box-shadow: var(--shadow-md);
        }

        .featured-badge {
            position: absolute;
            top: 1rem;
            right: 1rem;
            background: #fbbf24;
            color: white;
            padding: 0.5rem 1rem;
            border-radius: var(--radius-md);
            font-weight: 700;
            font-size: 0.85rem;
            z-index: 1;
        }

        .product-card.featured {
            border-color: #fbbf24;
        }

        .comparison-section {
            padding: 4rem 0;
            background: var(--bg-light);
        }

        .comparison-table {
            overflow-x: auto;
            margin-top: 2rem;
        }

        table {
            width: 100%;
            background: white;
            border-radius: var(--radius-lg);
            overflow: hidden;
            box-shadow: var(--shadow-md);
        }

        th {
            background: var(--primary-color);
            color: white;
            padding: 1.5rem;
            text-align: left;
            font-weight: 600;
        }

        td {
            padding: 1.25rem 1.5rem;
            border-bottom: 1px solid var(--border-color);
        }

        tr:last-child td {
            border-bottom: none;
        }

        .check-icon {
            color: var(--success-color);
            font-weight: bold;
            font-size: 1.25rem;
        }

        @media (max-width: 1024px) {
            .products-grid {
                grid-template-columns: repeat(2, 1fr);
            }
        }

        @media (max-width: 768px) {
            .products-grid {
                grid-template-columns: 1fr;
            }
        }

         .industry-section {
            padding: 4rem 0;
        }

        .industry-section:nth-child(even) {
            background: var(--bg-light);
        }

        .industry-content {
            display: grid;
            grid-template-columns: 1fr 1fr;
            gap: 3rem;
            align-items: center;
        }

        .industry-text h2 {
            color: var(--text-dark);
            margin-bottom: 1rem;
        }

        .industry-text p {
            color: var(--text-medium);
            line-height: 1.7;
            margin-bottom: 1.5rem;
        }

        .industry-features {
            list-style: none;
            margin-bottom: 1.5rem;
        }

        .industry-features li {
            padding: 0.75rem 0;
            padding-left: 2rem;
            position: relative;
            color: var(--text-medium);
        }

        .industry-features li:before {
            content: "\2713";
            position: absolute;
            left: 0;
            color: var(--success-color);
            font-weight: bold;
            font-size: 1.25rem;
        }

        .industry-visual {
            background: linear-gradient(135deg, var(--primary-light), var(--primary-color));
            border-radius: var(--radius-xl);
            height: 400px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 8rem;
            box-shadow: var(--shadow-lg);
        }

        .industry-stats {
            display: grid;
            grid-template-columns: repeat(3, 1fr);
            gap: 2rem;
            margin-top: 2rem;
        }

        .stat-box {
            background: white;
            padding: 1.5rem;
            border-radius: var(--radius-md);
            text-align: center;
            box-shadow: var(--shadow-sm);
        }

        .stat-box h3 {
            color: var(--primary-color);
            font-size: 2rem;
            margin-bottom: 0.5rem;
        }

        .stat-box p {
            color: var(--text-medium);
            margin: 0;
        }

        @media (max-width: 768px) {
            .industry-content {
                grid-template-columns: 1fr;
            }

            .industry-visual {
                height: 250px;
                font-size: 5rem;
            }

            .industry-stats {
                grid-template-columns: 1fr;
            }
        }
          .hero-overlay {
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background: linear-gradient(180deg, rgba(26, 22, 54, 0.65) 0%, rgba(82, 37, 225, 0.35) 100%);
            z-index: -1;
        }

        @media (max-width: 767px) {
          .why-contact-bar{ padding: 1rem !important;  }
        }


/* ===== Moved from blog/index.php ===== */
.blog-pagination {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    margin-top: 3rem;
}
.blog-pagination .page-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 40px;
    padding: 0.5rem 0.9rem;
    background: white;
    border: 2px solid var(--border-color);
    border-radius: var(--radius-md);
    color: var(--text-dark);
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}
.blog-pagination a.page-link:hover {
    background: var(--primary-color);
    color: white;
    border-color: var(--primary-color);
}
.blog-pagination .page-link.active {
    background: var(--primary-color);
    color: white;
    border-color: var(--primary-color);
}
.blog-pagination .page-link.disabled,
.blog-pagination .page-link.ellipsis {
    opacity: 0.5;
    cursor: default;
}


/* ===== Moved from blog/details.php ===== */
.blog_details li { margin-left: 19px; }

/* ===== Footer contact (NAP) ===== */
.footer .footer-contact { list-style: none; padding: 0; margin: 1.1rem 0 0.4rem; }
.footer .footer-contact li { display: flex; align-items: flex-start; gap: 9px; margin-bottom: 11px; font-size: 0.9rem; line-height: 1.55; }
.footer .footer-contact li i { flex-shrink: 0; margin-top: 2px; font-size: 1rem; opacity: 0.85; }
.footer .footer-contact a { color: inherit; text-decoration: none; }
.footer .footer-contact a:hover { color: var(--primary-color); }

/* ===== About page ===== */
.about-intro { display: grid; grid-template-columns: 1.4fr 1fr; gap: 3rem; align-items: center; }
.about-eyebrow { display: inline-block; color: var(--primary-color); font-weight: 700; letter-spacing: .5px; text-transform: uppercase; font-size: .8rem; margin-bottom: .75rem; }
.about-intro-text h2 { font-size: 2rem; color: var(--text-dark); margin-bottom: 1rem; line-height: 1.25; }
.about-intro-text p { color: var(--text-light); line-height: 1.8; margin-bottom: 1rem; }
.about-intro-text .btn { margin-top: .5rem; }
.about-intro-card { background: var(--bg-light); border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: 2rem; }
.about-intro-card ul { list-style: none; margin: 0; padding: 0; }
.about-intro-card li { display: flex; gap: 12px; align-items: flex-start; padding: .85rem 0; border-bottom: 1px solid var(--border-color); color: var(--text-dark); font-weight: 500; line-height: 1.5; }
.about-intro-card li:last-child { border-bottom: 0; }
.about-intro-card li i { color: var(--primary-color); font-size: 1.3rem; flex-shrink: 0; }

.about-stats-section { background: #fff; padding: 3.5rem 0; }
.about-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.about-stat { display: flex; align-items: center; justify-content: center; gap: 6px; flex-wrap: wrap; text-align: center; background: var(--bg-light); border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: 1.75rem 1.25rem; transition: border-color .25s ease, box-shadow .25s ease, transform .25s ease; }
.about-stat:hover { border-color: var(--primary-color); box-shadow: 0 12px 28px rgba(82, 37, 225, .10); transform: translateY(-4px); }
.about-stat-num { display: inline-flex; align-items: baseline; font-size: 2.3rem; font-weight: 800; color: var(--text-dark); line-height: 1; }
.about-stat-suffix { color: var(--primary-color); font-weight: 800; margin-left: 1px; }
.about-stat-label { color: var(--text-light); font-size: .98rem; font-weight: 500; }

.about-mv { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.about-mv-card { background: #fff; border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: 2.25rem; }
.about-mv-icon { width: 56px; height: 56px; border-radius: 14px; background: rgba(113,75,103,.1); display: flex; align-items: center; justify-content: center; font-size: 1.6rem; color: var(--primary-color); margin-bottom: 1rem; }
.about-mv-card h3 { font-size: 1.4rem; color: var(--text-dark); margin-bottom: .6rem; }
.about-mv-card p { color: var(--text-light); line-height: 1.8; }

.about-team { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.about-team-card { background: #fff; border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: 0 0 1.75rem; overflow: hidden; text-align: center; transition: transform .25s ease, box-shadow .25s ease; }
.about-team-card:hover { transform: translateY(-6px); box-shadow: 0 14px 30px rgba(0,0,0,.08); }
.about-avatar { width: 84px; height: 84px; border-radius: 50%; margin: 0 auto 1rem; display: flex; align-items: center; justify-content: center; font-size: 1.6rem; font-weight: 700; color: #fff; background: var(--a, var(--primary-color)); }
.about-team-card h3 { font-size: 1.15rem; color: var(--text-dark); margin-bottom: .2rem; }
.about-role { display: block; color: var(--primary-color); font-weight: 600; font-size: .9rem; margin-bottom: .6rem; }
.about-team-card p { color: var(--text-light); font-size: .9rem; line-height: 1.6; }

.about-partners-section { background: var(--bg-light); padding: 5rem 0; }
.about-partners { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.5rem; }
.about-partner { background: #fff; border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: 1.75rem 1rem; text-align: center; }
.about-partner i { font-size: 2.2rem; color: var(--primary-color); display: block; margin-bottom: .6rem; }
.about-partner span { color: var(--text-dark); font-weight: 600; }

@media (max-width: 900px) {
  .about-intro, .about-mv { grid-template-columns: 1fr; }
  .about-stats, .about-team, .about-partners { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 520px) {
  .about-stats, .about-team, .about-partners { grid-template-columns: 1fr; }
}

/* ===== About page - story feature cards ===== */
.about-intro-features { display: flex; flex-direction: column; gap: 1rem; }
.about-feature { display: flex; gap: 14px; align-items: flex-start; background: var(--bg-light); border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: 1.25rem; }
.about-feature i { font-size: 1.6rem; color: var(--primary-color); flex-shrink: 0; margin-top: 2px; }
.about-feature h4 { font-size: 1.05rem; color: var(--text-dark); margin-bottom: .25rem; }
.about-feature p { color: var(--text-light); font-size: .9rem; line-height: 1.55; margin: 0; }

/* ===== About page - journey timeline (SCOPED to .about-journey so it never touches the shared .timeline component) ===== */
.about-journey .section-header { margin-bottom: 2.5rem; }
.about-journey .timeline { position: relative; max-width: 940px; margin: 0 auto; padding: 1rem 0; }
.about-journey .timeline::before { content: ""; position: absolute; top: 0; bottom: 0; left: 50%; width: 2px; transform: translateX(-50%); background: linear-gradient(to bottom, transparent, rgba(82, 37, 225, .25) 8%, rgba(82, 37, 225, .25) 92%, transparent); }
.about-journey .timeline-item { position: relative; width: 50%; padding: 0 2.75rem 2.5rem; }
.about-journey .timeline-item:nth-child(odd) { left: 0; text-align: right; }
.about-journey .timeline-item:nth-child(even) { left: 50%; text-align: left; }

/* glowing purple dot */
.about-journey .timeline-marker { position: absolute; top: 1.4rem; width: 16px; height: 16px; border-radius: 50%; background: var(--primary-color); border: 3px solid #fff; box-shadow: 0 0 0 3px rgba(82, 37, 225, .18), 0 0 12px 2px rgba(82, 37, 225, .55); animation: timelineGlow 2.2s ease-in-out infinite; z-index: 2; }
.about-journey .timeline-item:nth-child(odd) .timeline-marker { right: -8px; }
.about-journey .timeline-item:nth-child(even) .timeline-marker { left: -8px; }
@keyframes timelineGlow {
  0%, 100% { box-shadow: 0 0 0 3px rgba(82, 37, 225, .18), 0 0 10px 2px rgba(82, 37, 225, .45); }
  50% { box-shadow: 0 0 0 5px rgba(82, 37, 225, .12), 0 0 20px 5px rgba(82, 37, 225, .75); }
}

/* rounded content card + hover effect */
.about-journey .timeline-content { background: #fff; border: 1px solid var(--border-color); border-radius: var(--radius-lg); padding: 1.4rem 1.6rem; box-shadow: 0 6px 20px rgba(0, 0, 0, .05); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.about-journey .timeline-item:hover .timeline-content { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(82, 37, 225, .16); border-color: rgba(82, 37, 225, .35); }
.about-journey .timeline-item:hover .timeline-marker { box-shadow: 0 0 0 5px rgba(82, 37, 225, .15), 0 0 22px 6px rgba(82, 37, 225, .85); }
.about-journey .timeline-year { display: inline-block; font-size: 1.15rem; font-weight: 800; color: var(--primary-color); margin-bottom: .25rem; }
.about-journey .timeline-content h3 { font-size: 1.15rem; color: var(--text-dark); margin-bottom: .4rem; }
.about-journey .timeline-content p { color: var(--text-light); font-size: .92rem; line-height: 1.6; margin: 0; }

/* scroll-reveal: slide in from each side + fade */
.about-journey .timeline-item { opacity: 0; transition: opacity .6s ease, transform .6s ease; }
.about-journey .timeline-item:nth-child(odd) { transform: translateX(-45px); }
.about-journey .timeline-item:nth-child(even) { transform: translateX(45px); }
.about-journey .timeline-item.in-view { opacity: 1; transform: translateX(0); }

@media (max-width: 720px) {
  .about-journey .timeline::before { left: 8px; }
  .about-journey .timeline-item,
  .about-journey .timeline-item:nth-child(odd),
  .about-journey .timeline-item:nth-child(even) { width: 100%; left: 0; text-align: left; padding-left: 2.75rem; padding-right: 0; transform: translateX(30px); }
  .about-journey .timeline-item.in-view { transform: translateX(0); }
  .about-journey .timeline-item:nth-child(odd) .timeline-marker,
  .about-journey .timeline-item:nth-child(even) .timeline-marker { left: 0; right: auto; }
}

/* ===== About page - clickable LinkedIn avatar ===== */
.about-avatar-link { position: relative; display: block; width: 100%; margin: 0 0 1.25rem; }
.about-avatar-link .about-avatar { margin: 0; transition: transform .2s ease, box-shadow .2s ease; }
.about-avatar-link:hover .about-avatar { transform: scale(1.06); box-shadow: 0 8px 20px rgba(0,0,0,.15); }
/* LinkedIn badge: small frosted circle at the bottom, appears on hover (image stays visible) */
.about-avatar-badge { position: absolute; left: 50%; bottom: 14px; transform: translate(-50%, 10px); width: 46px; height: 46px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: rgba(255, 255, 255, .7); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px); color: #1a1a2e; font-size: 22px; box-shadow: 0 4px 14px rgba(0, 0, 0, .18); opacity: 0; transition: opacity .3s ease, transform .3s ease; }
.about-avatar-link:hover .about-avatar-badge { opacity: 1; transform: translate(-50%, 0); }

/* ===== About page - real team photos ===== */
.about-avatar-img { display: block; width: 100%; aspect-ratio: 1 / 1; border-radius: 0; object-fit: cover; object-position: center top; background: var(--bg-light); }
.about-team-card h3,
.about-team-card .about-role,
.about-team-card p { padding-left: 1.25rem; padding-right: 1.25rem; }

/* ===== About page - value cards (reuse homepage .service-card effect) ===== */
.value-services .service-icon { width: 64px; height: 64px; border-radius: 16px; background: rgba(113, 75, 103, .1); display: flex; align-items: center; justify-content: center; margin-bottom: 6px; }
.value-services .services-grid .service-card .service-icon i { font-size: 30px; color: var(--primary-color); }
.value-services .service-cardDetails p { color: var(--text-medium); font-size: 1.05rem; line-height: 1.7; }
/* single rounded image tile (inner floating box removed) + team-style hover lift */
.value-services .service-cardThumbnail { min-height: 340px; background: transparent; padding: 20px; display: flex; align-items: center; justify-content: center; }
.value-services .service-cardThumbnailBgImg { position: relative; z-index: 1; width: 100%; height: 100%; min-height: 300px; border-radius: var(--radius-lg); overflow: hidden; transition: transform .3s ease, box-shadow .3s ease; }
/* override global 0.7 opacity (was causing the washed-out white haze) */
.value-services .service-card .service-cardThumbnail .service-cardThumbnailBgImg { opacity: 1; }
.value-services .service-cardThumbnail:hover .service-cardThumbnailBgImg { transform: translateY(-6px); box-shadow: 0 18px 34px rgba(0, 0, 0, .18); }
.value-services .service-cardThumbnailBgImg img { width: 100%; height: 100%; object-fit: cover; display: block; }
.value-img-ph { width: 100%; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; background: linear-gradient(135deg, #eef0f4, #dbe0e8); color: #9098a8; font-weight: 700; text-align: center; }
.value-img-ph small { font-weight: 500; opacity: .8; }

/* ===== Contact form toast (auto-dismiss popup) ===== */
.contact-toast { position: fixed; top: 24px; left: 50%; transform: translateX(-50%) translateY(-20px); display: flex; align-items: center; gap: 10px; padding: 14px 22px; border-radius: 10px; font-weight: 600; font-size: .98rem; box-shadow: 0 12px 34px rgba(0, 0, 0, .18); z-index: 9999; opacity: 0; transition: opacity .35s ease, transform .35s ease; max-width: 92vw; }
.contact-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }
.contact-toast.is-success { background: #e7f7ec; color: #14663a; border: 1px solid #b6e3c6; }
.contact-toast.is-error { background: #fdecec; color: #8a1f1f; border: 1px solid #f3b9b9; }
.contact-toast i { font-size: 1.35rem; line-height: 1; }
.contact-toast.is-success i { color: #1f9d57; }
.contact-toast.is-error i { color: #d33; }

/* ===== "Our Core Services" split-feature: picture pops on card hover ===== */
.services-overview .service-card .productImg { transition: transform .3s ease, box-shadow .3s ease; }
.services-overview .service-card:hover .productImg { transform: translateY(-8px); box-shadow: 0 20px 42px rgba(0, 0, 0, .16); }

/* ===== Block CMS: readable prose section (SEO body copy) ===== */
.cms-prose .container { max-width: 900px; }
.cms-prose h2 { font-size: 1.9rem; color: var(--text-dark); margin-bottom: 1rem; line-height: 1.25; }
.cms-prose p { color: var(--text-light); line-height: 1.85; margin-bottom: 1rem; font-size: 1.05rem; }
.cms-prose-list { margin: 0 0 1rem 1.25rem; padding: 0; }
.cms-prose-list li { color: var(--text-light); line-height: 1.8; margin-bottom: .5rem; }

/* ===== Block CMS: alternating section bands (scoped to CMS pages only) ===== */
.cms-band--even { background: #ffffff; }
.cms-band--odd { background: var(--bg-light); }
/* let the band colour show through content sections; hero image + purple CTA keep their own bg */
.cms-band .services-overview,
.cms-band .about-stats-section,
.cms-band .why-choose-us,
.cms-band .industryShowcase,
.cms-band .experienceCloud,
.cms-band .implementationProcess,
.cms-band .testimonials,
.cms-band .seo-faq,
.cms-band .industry-solutions-section,
.cms-band .servicesOverview,
.cms-band .page-content { background: transparent !important; }

/* Lock the CMS page hero to the banner's aspect-ratio so a 1920x820 image fits exactly
   (no trimming, no empty bars). Height grows if text needs it; relaxes on mobile. */
.cms-band .page-hero {
  aspect-ratio: 1920 / 820;
  min-height: 340px;
  padding: 40px 0;
  display: flex;
  align-items: center;
}
@media (max-width: 768px) {
  .cms-band .page-hero { aspect-ratio: auto; min-height: 300px; padding: 70px 20px; }
}

/* ===== Block CMS: scroll-reveal (CMS pages only, scoped to .cms-band) ===== */
.cms-band { opacity: 0; transform: translateY(48px) scale(.985); transition: opacity .8s cubic-bezier(.16, .8, .3, 1), transform .8s cubic-bezier(.16, .8, .3, 1); }
.cms-band.in-view { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .cms-band { opacity: 1 !important; transform: none !important; transition: none; } }

/* staggered cards inside a revealed band */
.cms-band :is(.benefits-grid, .services-grid, .industryCards, .experienceCloudList) > * {
  opacity: 0; transform: translateY(26px); transition: opacity .6s ease, transform .6s ease;
}
.cms-band.in-view :is(.benefits-grid, .services-grid, .industryCards, .experienceCloudList) > * { opacity: 1; transform: none; }
.cms-band.in-view :is(.benefits-grid, .services-grid, .industryCards, .experienceCloudList) > *:nth-child(2) { transition-delay: .09s; }
.cms-band.in-view :is(.benefits-grid, .services-grid, .industryCards, .experienceCloudList) > *:nth-child(3) { transition-delay: .18s; }
.cms-band.in-view :is(.benefits-grid, .services-grid, .industryCards, .experienceCloudList) > *:nth-child(4) { transition-delay: .27s; }
.cms-band.in-view :is(.benefits-grid, .services-grid, .industryCards, .experienceCloudList) > *:nth-child(5) { transition-delay: .36s; }
.cms-band.in-view :is(.benefits-grid, .services-grid, .industryCards, .experienceCloudList) > *:nth-child(6) { transition-delay: .45s; }

/* ===== Block CMS: FAQ as rounded cards with hover popup (CMS pages only) ===== */
.cms-band .seo-faq { max-width: 820px; }
.cms-band .faq-item {
  border: 1px solid var(--border-color);
  border-radius: var(--radius-lg);
  background: #fff;
  padding: 18px 24px;
  margin-bottom: 14px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .04);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.cms-band .faq-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(82, 37, 225, .12);
  border-color: rgba(82, 37, 225, .3);
}
.cms-band .faq-item h3 {
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
  font-size: 1.05rem; color: var(--text-dark);
}
.cms-band .faq-item h3::after {
  content: ""; width: 9px; height: 9px; flex-shrink: 0; margin-left: 10px; margin-top: -5px;
  border-right: 2px solid var(--primary-color); border-bottom: 2px solid var(--primary-color);
  transform: rotate(45deg); transition: transform .25s ease;
}
.cms-band .faq-item p { color: var(--text-light); margin-top: 12px; }

/* ===== Block CMS: FAQ single column + service-card popup (CMS pages only) ===== */
.cms-band .seo-faq { max-width: 820px; }

/* service-list cards get a hover popup on both pages (value-cards + packages) */
.cms-band .benefits-grid .benefit-card,
.cms-band .experienceCloudList .package-card { transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.cms-band .benefits-grid .benefit-card:hover,
.cms-band .experienceCloudList .package-card:hover { transform: translateY(-6px); box-shadow: 0 16px 34px rgba(82, 37, 225, .14); border-color: rgba(82, 37, 225, .25); }

/* ===== Block CMS: content-highlight (bold gradient callout) ===== */
.content-highlight { display: grid; grid-template-columns: 1.1fr .9fr; gap: 3rem; align-items: center; background: linear-gradient(135deg, #5b2ec9 0%, #7c3aed 55%, #9333ea 100%); border-radius: 26px; padding: 3.25rem 3.5rem; box-shadow: 0 30px 70px rgba(82, 37, 225, .28); position: relative; overflow: hidden; }
.content-highlight::after { content: ""; position: absolute; right: -80px; top: -80px; width: 320px; height: 320px; border-radius: 50%; background: rgba(255, 255, 255, .07); pointer-events: none; }
.ch-text { position: relative; z-index: 1; }
.ch-text h2 { font-size: 2.1rem; color: #fff; margin-bottom: 1rem; line-height: 1.2; }
.ch-text p { color: rgba(255, 255, 255, .9); line-height: 1.8; margin-bottom: 1rem; font-size: 1.05rem; }
.ch-points { display: grid; gap: 1rem; position: relative; z-index: 1; }
.ch-point { display: flex; gap: 14px; align-items: flex-start; background: rgba(255, 255, 255, .1); border: 1px solid rgba(255, 255, 255, .18); border-radius: 14px; padding: 1rem 1.15rem; transition: transform .25s ease, background .25s ease; }
.ch-point:hover { transform: translateX(6px); background: rgba(255, 255, 255, .18); }
.ch-ic { color: #fff; font-size: 1.4rem; line-height: 1.2; flex-shrink: 0; }
.ch-txt { color: #fff; font-weight: 500; line-height: 1.5; }
@media (max-width: 860px) { .content-highlight { grid-template-columns: 1fr; gap: 1.75rem; padding: 2.25rem; } }

/* value-cards: show an icon inside the circle when provided (instead of the 01/02 number) */
.benefit-number i { font-size: 1.35rem; line-height: 1; font-weight: 400; }

/* value-cards: illustrated image icon variant (uses /assets/images/icons/*) — CMS pages only */
.cms-band .why-choose-us .benefits-grid .benefit-card .benefit-number--img {
  width: 84px; height: 84px; background: transparent; border-radius: 18px; box-shadow: none;
}
.cms-band .benefit-number--img img { width: 100%; height: 100%; object-fit: contain; display: block; }

/* feature-split image: relax the hard 1:1 crop so landscape images aren't over-cropped (CMS pages only) */
.cms-band .industry-solutions-section .industry-main-img { aspect-ratio: 4 / 3; }

/* feature-split: make the image fill the column height so left content & right image
   align top-and-bottom regardless of how many checklist items (standard SEO pages). */
.cms-band .industry-solutions-section .industry-solutions-grid { align-items: stretch; }
.cms-band .industry-solutions-section .industry-solutions-visual { display: flex; }
.cms-band .industry-solutions-section .industry-image-wrapper { width: 100%; }
.cms-band .industry-solutions-section .industry-main-img { aspect-ratio: auto; height: 100%; min-height: 340px; object-fit: cover; }

/* ===== Block CMS: spotlight — extraordinary image showcase (CMS pages only) ===== */
.cms-band .spotlight { padding: 76px 0; }
.cms-band .spotlight .spot-grid {
  display: grid; grid-template-columns: 0.95fr 1.05fr; gap: 64px; align-items: center;
}
.cms-band .spotlight.spotlight--reverse .spot-media { order: 2; }

/* left column: image (+ floating badge) stacked over the checklist */
.cms-band .spotlight .spot-media { display: flex; flex-direction: column; }
.cms-band .spotlight .spot-visual { position: relative; margin-bottom: 10px; }
/* left column fills the row height; checklist sits at the bottom so it aligns with the CTA */
.cms-band .spotlight .spot-media { justify-content: flex-start; }
/* right column: top content at top, button pushed to the bottom -> both columns align top & bottom */
.cms-band .spotlight .spot-panel { display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; }
/* small label line above the checklist (the extra line); auto top-margin pushes the
   label+checklist group to the bottom of the column so it lines up with the CTA */
.cms-band .spotlight .spot-points-label {
  margin: 26px 0 0; font-size: .78rem; font-weight: 700; letter-spacing: .09em;
  text-transform: uppercase; color: var(--primary-color, #5225e1);
}
.cms-band .spotlight .spot-points-label + .spot-points { margin-top: 14px; }
/* keep the pill + button at their natural width (don't let flex stretch them full-width) */
.cms-band .spotlight .spot-eyebrow,
.cms-band .spotlight .spot-btn { align-self: flex-start; }
.cms-band .spotlight .spot-panel h2,
.cms-band .spotlight .spot-panel p { align-self: stretch; }

/* framed image with a glowing gradient ring */
.cms-band .spotlight .spot-frame {
  position: relative; border-radius: 26px; padding: 6px;
  background: linear-gradient(135deg, rgba(124,58,237,.9), rgba(82,37,225,.35), rgba(14,165,183,.5));
  box-shadow: 0 30px 70px rgba(82,37,225,.22);
}
.cms-band .spotlight .spot-frame img {
  display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover;
  border-radius: 20px; position: relative; z-index: 1; transition: transform .6s ease;
}
.cms-band .spotlight .spot-frame:hover img { transform: scale(1.04); }
.cms-band .spotlight .spot-glow {
  position: absolute; top: -40px; right: -40px; width: 200px; height: 200px; border-radius: 50%;
  background: radial-gradient(circle, rgba(124,58,237,.45), transparent 70%); filter: blur(6px); z-index: 0;
}

/* floating stat badge overlapping the image (anchored to .spot-visual) */
.cms-band .spotlight .spot-badge {
  position: absolute; right: -18px; bottom: -18px; z-index: 3;
  background: #fff; border-radius: 18px; padding: 16px 22px;
  box-shadow: 0 18px 40px rgba(82,37,225,.22); border: 1px solid rgba(82,37,225,.12);
  display: flex; flex-direction: column; line-height: 1.1;
  animation: spotFloat 4s ease-in-out infinite;
}
.cms-band .spotlight .spot-badge strong {
  font-size: 2.1rem; font-weight: 800;
  background: linear-gradient(135deg,#6d28d9,#4f46e5); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
}
.cms-band .spotlight .spot-badge span { font-size: .82rem; color: var(--text-light,#5b5772); font-weight: 600; margin-top: 2px; }
@keyframes spotFloat { 0%,100% { transform: translateY(0); } 50% { transform: translateY(-8px); } }

/* content panel */
.cms-band .spotlight .spot-eyebrow {
  display: inline-block; font-size: .78rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase;
  color: var(--primary-color,#5225e1); background: rgba(82,37,225,.09); border: 1px solid rgba(82,37,225,.18);
  padding: 7px 14px; border-radius: 999px; margin-bottom: 16px;
}
.cms-band .spotlight .spot-panel h2 { font-size: 2.15rem; line-height: 1.18; color: var(--text-dark,#14122b); margin-bottom: 16px; }
.cms-band .spotlight .spot-panel p { color: var(--text-light,#5b5772); line-height: 1.8; margin-bottom: 14px; font-size: 1.03rem; }
.cms-band .spotlight .spot-points { list-style: none; margin: 34px 0 0; padding: 0; display: grid; gap: 12px; }
.cms-band .spotlight .spot-points li {
  display: flex; align-items: center; gap: 12px; padding: 12px 16px;
  background: #fff; border: 1px solid rgba(82,37,225,.12); border-radius: 14px;
  color: var(--text-dark,#201b3d); font-weight: 600; box-shadow: 0 4px 14px rgba(82,37,225,.05);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.cms-band .spotlight .spot-points li:hover { transform: translateX(6px); box-shadow: 0 12px 26px rgba(82,37,225,.14); border-color: rgba(82,37,225,.35); }
.cms-band .spotlight .spot-ic {
  flex-shrink: 0; width: 34px; height: 34px; border-radius: 10px; display: flex; align-items: center; justify-content: center;
  background: linear-gradient(135deg,#6d28d9,#4f46e5); color: #fff; font-size: 1.1rem;
}
.cms-band .spotlight .spot-btn {
  display: inline-block; margin-top: 28px; padding: 14px 30px; border-radius: 999px;
  background: linear-gradient(135deg,#6d28d9,#4f46e5); color: #fff; font-weight: 700; text-decoration: none;
  box-shadow: 0 12px 28px rgba(82,37,225,.28); transition: transform .25s ease, box-shadow .25s ease;
}
.cms-band .spotlight .spot-btn:hover { transform: translateY(-3px); box-shadow: 0 18px 38px rgba(82,37,225,.4); }
@media (prefers-reduced-motion: reduce) { .cms-band .spotlight .spot-badge { animation: none; } }
@media (max-width: 900px) {
  .cms-band .spotlight { padding: 48px 0; }
  .cms-band .spotlight .spot-grid { grid-template-columns: 1fr; gap: 40px; }
  .cms-band .spotlight.spotlight--reverse .spot-media { order: 0; }
  .cms-band .spotlight .spot-panel h2 { font-size: 1.8rem; }
  .cms-band .spotlight .spot-badge { right: 12px; bottom: -16px; }
  .cms-band .spotlight .spot-points { margin-top: 40px; }
  .cms-band .spotlight .spot-points-label { margin-top: 28px; }
  .cms-band .spotlight .spot-points-label + .spot-points { margin-top: 14px; }
  .cms-band .spotlight .spot-btn { margin-top: 24px; }
}

/* ===== Block CMS: delivery-timeline — extraordinary effect (CMS pages only) ===== */
/* connector as a downward-flowing gradient */
.cms-band .implementationProcess .timeline-itemCol1 { width: 46px; height: 66px; }
.cms-band .implementationProcess .timeline-itemCol1::before {
  border: none; width: 3px; border-radius: 3px;
  background: linear-gradient(to bottom, rgba(82,37,225,0), rgba(82,37,225,.5), rgba(124,58,237,.95));
  background-size: 100% 220%; animation: cmsFlow 2.6s linear infinite;
}
@keyframes cmsFlow { 0% { background-position: 0 -110%; } 100% { background-position: 0 110%; } }

/* glowing, pulsing purple dot */
.cms-band .implementationProcess .timeline-itemCol1 .dot {
  width: 16px; height: 16px; border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #a78bfa, #5225e1 70%);
  box-shadow: 0 0 0 4px rgba(82,37,225,.14), 0 0 14px 3px rgba(82,37,225,.55);
  animation: cmsDotPulse 2.4s ease-in-out infinite; position: relative; z-index: 2;
  transition: transform .3s ease;
}
@keyframes cmsDotPulse {
  0%, 100% { box-shadow: 0 0 0 4px rgba(82,37,225,.14), 0 0 14px 3px rgba(82,37,225,.5); }
  50%      { box-shadow: 0 0 0 8px rgba(82,37,225,.04), 0 0 22px 6px rgba(82,37,225,.75); }
}

/* content card: solid, with an animated left accent bar and hover lift */
.cms-band .implementationProcess .timeline-itemCol2 {
  border: 1px solid rgba(82,37,225,.16); background: #fff; border-radius: var(--radius-lg);
  box-shadow: 0 8px 24px rgba(82,37,225,.06); position: relative; overflow: hidden;
  transition: transform .32s ease, box-shadow .32s ease, border-color .32s ease;
}
.cms-band .implementationProcess .timeline-itemCol2::before {
  content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px;
  background: linear-gradient(to bottom, #6d28d9, #7c3aed);
  transform: scaleY(0); transform-origin: top; transition: transform .35s ease;
}
.cms-band .implementationProcess .timeline-item:hover .timeline-itemCol2 {
  transform: translateX(6px); box-shadow: 0 18px 40px rgba(82,37,225,.16); border-color: rgba(82,37,225,.4);
}
.cms-band .implementationProcess .timeline-item:hover .timeline-itemCol2::before { transform: scaleY(1); }
.cms-band .implementationProcess .timeline-item:hover .timeline-itemCol1 .dot { transform: scale(1.14); }

/* staggered reveal as the band scrolls into view */
.cms-band .implementationProcess .timeline-item { opacity: 0; transform: translateY(26px); transition: opacity .6s ease, transform .6s ease; }
.cms-band.in-view .implementationProcess .timeline-item { opacity: 1; transform: none; }
.cms-band.in-view .implementationProcess .timeline-item:nth-child(2) { transition-delay: .1s; }
.cms-band.in-view .implementationProcess .timeline-item:nth-child(3) { transition-delay: .2s; }
.cms-band.in-view .implementationProcess .timeline-item:nth-child(4) { transition-delay: .3s; }
.cms-band.in-view .implementationProcess .timeline-item:nth-child(5) { transition-delay: .4s; }
.cms-band.in-view .implementationProcess .timeline-item:nth-child(6) { transition-delay: .5s; }

@media (prefers-reduced-motion: reduce) {
  .cms-band .implementationProcess .timeline-itemCol1::before,
  .cms-band .implementationProcess .timeline-itemCol1 .dot { animation: none; }
  .cms-band .implementationProcess .timeline-item { opacity: 1; transform: none; }
}

/* ===== Block CMS: geo-coverage (premium "South India coverage" band, CMS pages only) ===== */
.cms-band .geo-coverage { padding: 74px 0; }
.cms-band .geo-coverage .geo-grid {
  display: grid; grid-template-columns: 1.05fr 0.95fr; gap: 56px; align-items: stretch;
}
.cms-band .geo-coverage .geo-text { align-self: center; }
.cms-band .geo-coverage .geo-eyebrow {
  display: inline-flex; align-items: center; gap: 8px;
  font-size: .78rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase;
  color: var(--primary-color, #5225e1);
  background: rgba(82, 37, 225, .09); border: 1px solid rgba(82, 37, 225, .18);
  padding: 7px 14px; border-radius: 999px; margin-bottom: 18px;
}
.cms-band .geo-coverage .geo-eyebrow i { font-size: 1rem; }
.cms-band .geo-coverage .geo-text h2 {
  font-size: 2.1rem; line-height: 1.2; color: var(--text-dark, #14122b); margin-bottom: 16px;
}
.cms-band .geo-coverage .geo-text p {
  color: var(--text-light, #5b5772); line-height: 1.8; margin-bottom: 14px; font-size: 1.03rem;
}
.cms-band .geo-coverage .geo-points { list-style: none; margin: 20px 0 0; padding: 0; }
.cms-band .geo-coverage .geo-points li {
  display: flex; align-items: flex-start; gap: 10px; margin-bottom: 12px;
  color: var(--text-dark, #201b3d); font-weight: 500; line-height: 1.5;
}
.cms-band .geo-coverage .geo-points li i { color: var(--primary-color, #5225e1); font-size: 1.2rem; margin-top: 1px; flex-shrink: 0; }

/* right-hand coverage panel */
.cms-band .geo-coverage .geo-panel {
  position: relative; overflow: hidden;
  display: flex; flex-direction: column; height: 100%;
  background: linear-gradient(158deg, #ffffff 0%, #f4efff 100%);
  border: 1px solid rgba(82, 37, 225, .16); border-radius: 26px;
  padding: 34px 34px 30px; box-shadow: 0 26px 60px rgba(82, 37, 225, .12);
}
.cms-band .geo-coverage .geo-panel-glow {
  position: absolute; top: -70px; right: -70px; width: 220px; height: 220px; border-radius: 50%;
  background: radial-gradient(circle, rgba(124, 58, 237, .28), transparent 70%); pointer-events: none;
}
/* image bleeds to the card edges across the top */
.cms-band .geo-coverage .geo-panel-media {
  position: relative; margin: -34px -34px 24px; overflow: hidden;
  border-radius: 26px 26px 0 0;
}
.cms-band .geo-coverage .geo-panel-media img {
  display: block; width: 100%; height: auto; /* show the full graphic, no cropping */
}
.cms-band .geo-coverage .geo-panel-label {
  position: relative; font-size: .72rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  color: #8a83a6; margin: 4px 0 12px;
}
.cms-band .geo-coverage .geo-panel-label + .geo-cities,
.cms-band .geo-coverage .geo-states + .geo-panel-label { margin-top: 22px; }
.cms-band .geo-coverage .geo-states { position: relative; display: flex; flex-wrap: wrap; gap: 10px; }
.cms-band .geo-coverage .geo-state {
  display: inline-flex; align-items: center; gap: 7px;
  background: #fff; border: 1px solid rgba(82, 37, 225, .18); border-radius: 12px;
  padding: 10px 14px; font-weight: 600; color: var(--text-dark, #201b3d); font-size: .95rem;
  box-shadow: 0 4px 12px rgba(82, 37, 225, .06); transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.cms-band .geo-coverage .geo-state i { color: var(--primary-color, #5225e1); font-size: 1.05rem; }
.cms-band .geo-coverage .geo-state:hover { transform: translateY(-3px); box-shadow: 0 12px 24px rgba(82, 37, 225, .16); border-color: rgba(82, 37, 225, .4); }
.cms-band .geo-coverage .geo-cities { position: relative; display: flex; flex-wrap: wrap; gap: 9px; }
.cms-band .geo-coverage .geo-city {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255, 255, 255, .7); border: 1px solid rgba(82, 37, 225, .12); border-radius: 999px;
  padding: 7px 14px 7px 11px; font-size: .9rem; font-weight: 500; color: #4a4560;
}
.cms-band .geo-coverage .geo-dot {
  width: 9px; height: 9px; border-radius: 50%; background: var(--primary-color, #5225e1); flex-shrink: 0;
  box-shadow: 0 0 0 0 rgba(82, 37, 225, .5); animation: geoPulse 2.4s infinite;
}
.cms-band .geo-coverage .geo-city:nth-child(2n) .geo-dot { animation-delay: .5s; }
.cms-band .geo-coverage .geo-city:nth-child(3n) .geo-dot { animation-delay: 1s; }
@keyframes geoPulse {
  0% { box-shadow: 0 0 0 0 rgba(82, 37, 225, .45); }
  70% { box-shadow: 0 0 0 8px rgba(82, 37, 225, 0); }
  100% { box-shadow: 0 0 0 0 rgba(82, 37, 225, 0); }
}
.cms-band .geo-coverage .geo-panel-foot {
  position: relative; display: flex; align-items: baseline; gap: 12px;
  margin-top: auto; padding-top: 20px; border-top: 1px dashed rgba(82, 37, 225, .22);
}
.cms-band .geo-coverage .geo-panel-foot strong { font-size: 2.1rem; font-weight: 800; color: var(--primary-color, #5225e1); line-height: 1; }
.cms-band .geo-coverage .geo-panel-foot span { color: var(--text-light, #5b5772); font-size: .95rem; line-height: 1.4; }
@media (prefers-reduced-motion: reduce) { .cms-band .geo-coverage .geo-dot { animation: none; } }
@media (max-width: 900px) {
  .cms-band .geo-coverage { padding: 48px 0; }
  .cms-band .geo-coverage .geo-grid { grid-template-columns: 1fr; gap: 34px; }
  .cms-band .geo-coverage .geo-text h2 { font-size: 1.8rem; }
}

/* ===== Unified FAQ cards on the MAIN SITE — same look as the SEO/CMS landing pages =====
   Mirrors the .cms-band .faq-item card style so every FAQ across the site matches.
   The .cms-band rules are more specific, so CMS pages are unaffected. The accordion
   toggle (script.js) sets the answer's inline display, so we never set display here. */
.faq-item {
  border: 1px solid var(--border-color);
  border-radius: var(--radius-lg);
  background: #fff;
  padding: 18px 24px;
  margin-bottom: 14px;
  box-shadow: 0 4px 14px rgba(0, 0, 0, .04);
  transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease;
}
.faq-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 30px rgba(82, 37, 225, .12);
  border-color: rgba(82, 37, 225, .3);
}
.faq-item h3 {
  display: flex; align-items: center; justify-content: space-between; gap: 14px;
  font-size: 1.05rem; color: var(--text-dark); cursor: pointer; margin: 0;
}
.faq-item h3::after {
  content: ""; width: 9px; height: 9px; flex-shrink: 0; margin-left: 10px; margin-top: -5px;
  border-right: 2px solid var(--primary-color); border-bottom: 2px solid var(--primary-color);
  transform: rotate(45deg); transition: transform .25s ease;
}
.faq-item p { color: var(--text-light); margin-top: 12px; line-height: 1.8; }

/* ===== Soft alternating gradient band (white ↔ subtle lavender/blue mesh) ===== */
.grad-band {
  background:
    radial-gradient(1200px 620px at 90% 6%, rgba(139, 122, 232, 0.30), transparent 58%),
    radial-gradient(1000px 620px at 4% 98%, rgba(120, 160, 255, 0.22), transparent 60%),
    #f5f3ff !important;
}

/* White partner band — forces white to keep a clean white↔gradient alternation site-wide */
.white-band { background: #ffffff !important; }
