  .zw-product-header { 
    background: #F2F7F3 !important; 
  }

  /* hero section css */
  
  .hero-section-wrapper { 
    background-color: #F2F7F3; 
  }
  
  .hero-section {
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
    align-items: center;
  }
  h1 {
    color: #000;
    width: 71%;
    font-size: var(--zf-fs-h1-l);
    line-height: var(--zf-lh-h1-l);
    margin-left: -4px;
  }
  .hero-description {
    color: #000;
    font-size: var(--zf-fs-p-m);
    line-height: var(--zf-lh-p-m); 
    width: 88%;
    margin: 8px 0 24px;

      
  }
  .hero-content { flex: 1; }
  .hero-image { 
    font-size: 0;
    flex: 1;
    border-radius: var(--zf-br-l); 
  }
  .hero-buttons {
    justify-content: flex-start;
  }
  
  
  
  @media screen and (max-width: 1024px) {
    .hero-section { 
      flex-direction: column;
      gap: 40px; 
    }
    .hero-content { 
      text-align: center; 
    }
    h1 {
      margin: auto;
    }
    .hero-description {
      width: 65%;
      margin: 8px auto 26px;
    }
    .hero-buttons { 
      justify-content: center; 
    }
    .hero-image { 
      width: 80%; 
    }
  }
  

  @media screen and (max-width: 900px) {
    h1 { 
      width: 100%; 
    }
    .hero-description { 
      width: 78%; 
    }
  }
  
  
  @media screen and (max-width: 500px) {
    .hero-description { width: 95%; }
    .hero-image { width: 100%; }
  }
  
  
  
  
  
  
  
  
  
  
  /* Insights Section */
  
  .insight-title {
    font-size: var(--zf-fs-h-m);
    line-height: var(--zf-lh-h-m);
    font-family: var(--zf-secondary-medium);
    margin-bottom: 28px;
    color: #003435;
    width: 42%;
  }

  .insights-list {
    display: flex;
    gap: 24px;
    border-bottom: 1px solid #E4E8E1;
    padding-bottom: 80px;
  }
  
  .insight { flex: 1; }
  
  .insight h3 {
    color: #000;
    font-family: var(--zf-secondary-medium);
    font-size: var(--zf-fs-h3-m);
    line-height: var(--zf-lh-h3-m);
    text-transform: capitalize;
    padding: 8px 0;
  }
  .insight p {
    color: #4b4949;
    font-size: var(--zf-fs-p-m);
    line-height: var(--zf-lh-p-m);
    max-width: 90%;
  }
  
  
  @media screen and (max-width: 1024px) {
    .insight-title { width: 59%; }
    .insights-list { flex-direction: column; }
    .insight {
      display: flex;
      gap: 25px;
      align-items: center;
      border-bottom: 1px solid #E4E8E1;
      padding-bottom: 24px;
    }
    .insight:last-child {
      border-bottom: none;
      padding-bottom: 0;
    }
    .insight img { width: 300px; }
  }
  
  @media screen and (max-width: 768px) {
    .insight-title { width: 69%; }
  }
  
  @media screen and (max-width: 600px) {
    .insight-title {
      width: 100%;
      font-size: 28px;
      line-height: 38px;
    }
    .insight { flex-direction: column; }
    .insight img { width: auto; }
  }
  
  
  
  
  
  
  
  
  
  
  /* Spotlight Section */
  
  
  
  .spotlight-title {
    width: 54%;
    color: #003435;
    font-family: var(--zf-secondary-medium);
    font-size: var(--zf-fs-h-m);
    line-height: var(--zf-lh-h-m);
    margin-bottom: 26px;
  }
  
  .features-box {
    border: 1px solid #e5e7eb;
    border-radius: var(--zf-br-l);
    overflow: hidden;
    background-color: #ffffff;
  }
  
  .features-flex {
    display: flex;
    flex-wrap: wrap;
  }
  
  
  .feature-card {
    flex: 0 0 33.3%;
    padding: 40px 48px;
    border-right: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
  }
  
  .feature-card:nth-child(3n) { border-right: none; }
  
  .feature-card:nth-child(n+4) { border-bottom: none; }
  
  .spotlight-icon {
    width: 24px;
    height: 24px;
  }
  
  
  
  .feature-card h3 {
    color: #003435;
    font-size: var(--zf-fs-h3-m);
    line-height: var(--zf-lh-h3-m);
    font-family: var(--zf-secondary-medium);
    margin: 12px 0 8px;
  }
  
  .feature-card p {
    color: #4B4949;
    font-size: var(--zf-fs-p-m);
    line-height: var(--zf-lh-p-m);
    width: 90%;
  }
  
  @media screen and (max-width: 1024px) {
    .feature-card:nth-child(3n),
    .feature-card:nth-child(n+4) {
      border: 1px solid #E4E8E1;
    }
    .spotlight-title { width: 75%; }
    .features-box { border: none; }
    .features-flex { gap: 20px; }
    .feature-card { flex: 0 0 48%; }
    .feature-card {
      padding: 24px;
      border-radius: var(--zf-br-l);
      border: 1px solid #E4E8E1;
    }
    
  }
  
  
  
  @media (max-width: 600px) {
    .spotlight-title {
      width: 100%;
      font-size: 28px;
      line-height: 38px;
    }
    .feature-card { flex: 0 0 100%; }
  }
  @media (max-width: 500px) {
    .spotlight-title { font-size: 26px; }
  }
  
  
  
  /* Finance App Section */
  
  
  
  
  
  
  
  
  
  
  /* --- Section Layout --- */
  .ecosystem-section {
    padding: 0 50px;
    position: relative;
    min-height: 750px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    overflow: hidden;
    background-color: #0b592f;
    padding-bottom: 0;
    background-image: url("/sites/zweb/images/practice/partner/parctice-partner-zapps-bg.png"), url("/sites/zweb/images/practice/partner/parctice-partner-zapps-bg-gradient.png");
    background-repeat: no-repeat;
    background-size: 560px 560px, 1150px 319px;
    background-position: 50% 50%, 40% 100%;
    border-radius: var(--zf-br-l);
  }
  
  
  
  .ecosystem-layout {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    width: 100%;
    position: relative;
    z-index: 4;
    max-width: 1280px;
  }
  .finance-apps-header {
    margin-top: 26px;
  }
  .badge-column {
    display: flex;
    flex-direction: column;
    gap: 56px;
  }
  .badge-column.right .badge-wrapper{
    text-align: end;
  }
  .badge-wrapper {
    position: relative;
  }
  
  .app-badge {
    color: #bbf7d0;
    padding: 12px 28px;
    cursor: pointer;
    font-size: var(--zf-fs-label-m);
    font-family: var(--zf-secondary-medium);
    transition: all 0.3s ease;
    z-index: 2;
    position: relative;
    white-space: nowrap;
    border-radius: var(--zf-br-m);
    border: 1px solid #116B3B;
    background-color: #116B3B;
  }
  
  .left button.app-badge::before,
  .right button.app-badge::after {
    position: absolute;
    content: "";
    width: 28px;
    transform: rotate(45deg);
    transition: all .3s ease;
    background: #116b3b;
    height: 28px;
    border-radius: var(--zf-br-s);
  }
  
  
  .left button.app-badge::before {
    top: 3px; 
    right: -10px;
  }
  .right button.app-badge::after {
    top: 3px; 
    left: -10px;
  }
  
  .app-badge.active {
    background-color: #09A44F;
    color: white;
    border-color: #7DE1AB;
    box-shadow: 0 4px 15px rgba(0, 168, 89, 0.4);
  }
  
  .left button.app-badge.active::before {
    background: #09a44f;
    border-top: 1px solid #7de1ab;
    border-right: 1px solid #7de1ab;
  }
  .right button.app-badge.active::after {
    background: #09a44f;
    border: 1px solid #7de1ab;
    border-right: none;
    border-top: none;
  }
  .app-badge:hover {
    background: #127F44;
  }
  .left button.app-badge:hover::before,
  .right button.app-badge:hover::after {
    background: #127F44;
  }
  
  .connector-line {
    position: absolute;
    top: 50%;
    height: 1px;
    background-color: #578C6F;
    z-index: 1;
  }
  
  .badge-column.left .connector-line,
  .badge-column.right .connector-line { width: 100vw;}
  
  
  .badge-wrapper:has(.active) .connector-line {
    background-color: #00a859;
    opacity: 0.8;
  }
  
  .badge-column.left .connector-line::after,
  .badge-column.right .connector-line::before {
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #09A44F;
    top: 50%;
    transform: translateY(-50%);
    box-shadow: 0 0 10px #09A44F;
    opacity: 0;
    transition: opacity 0.3s;
  }
  
  .badge-wrapper:has(.active) .connector-line::after,
  .badge-wrapper:has(.active) .connector-line::before {
    opacity: 1; /* Shows green dot only when active */
  }
  
  .badge-column.left .connector-line::after { right: 0; } /* Dot at the tip near the circle */
  .badge-column.right .connector-line::before { left: 0; } /* Dot at the tip near the circle */
  
  /* --- Center Column (Header & Image) --- */
  .center-column {
    width: 50%; 
    display: flex;
  }
  
  .center-header { text-align: center; }
  
  .center-header h2 {
    font-size: var(--zf-fs-h2);
    line-height: var(--zf-lh-h2);
    font-family: var(--zf-secondary-medium);
    width: 76%;
    margin: auto;
  }
  
  
  .image-container {
    width: 40%;
    display: flex;
    justify-content: center;
    height: 280px;
    position: relative;
    position: absolute;
    bottom: 0;
    z-index: 9;
  }
  
  .image-wrapper {
    position: relative;
    width: 86%;
    max-width: 650px;
    height: 100%;
    overflow: hidden;
    border-radius: 16px 16px 0 0; 
  }
  
  .screen-img {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top;
    transform: translateY(100%);
    transition: transform .6s cubic-bezier(0.25,1,0.5,1);
    z-index: 9;
    left: 0;
    right: 0;
    margin: auto;
  }
  
  .screen-img.active { transform: translateY(0); }
  
  
  
  @media screen and (max-width: 1200px) {
    .image-container { width: 42%; }
    .ecosystem-section { border-radius: 0; }
  }
  
  @media screen and (max-width: 1100px) {
    .ecosystem-section {
      min-height: 650px;
      background-size: 490px 490px, 1150px 319px;
    }
    .app-badge { 
      font-size: 10px; 
    }
    .left button.app-badge::before {
      right: -9px;
      width: 27px;
      height: 27px;
    }
    .right button.app-badge::after {
      left: -9px;
      width: 24px;
      height: 27px;
    }
    .center-header h2 {
      width: 100%;
    }
    .image-container { 
      height: 260px; 
    }
  
  } 
  @media screen and (max-width: 900px) { 
    .image-wrapper { width: 91%; }
  }

  
  
  @media screen and (max-width: 900px) {
    .ecosystem-layout,
    .image-container {
      display: none;
    }
    .ecosystem-section {
      background-image: none;
      padding: 80px 5%;
    }
  
  }
  
  
  /* ecosystem-layout-tab */
  
  
  .ecosystem-layout-tab { display: none; }
  
  
  .section-header h2 {
    color: #F4F4F5;
    font-size: 42px;
    font-family: var(--zf-secondary-medium);
    font-weight: 500;
    line-height: 53px;
    margin: 12px 0 47px;
  }
  
  .accordion-list {
    display: flex;
    flex-direction: column;
    gap: 15px;
  }
  
  .accordion-item {
    background-color: #ffffff;
    border-radius: var(--zf-br-l);
    overflow: hidden;
    transition: all 0.3s ease;
  }
  
  .accordion-header {
    width: 100%;
    background: transparent;
    border: none;
    padding: 19px 35px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    color: #0b4a26;
  }
  
  .title {
    color: #083E21;
    text-align: center;
    font-size: 21px;
    font-family: var(--zf-secondary-medium);
    font-weight: 500;
    line-height: normal;
  }
  
  .toggle-icon, .spacer {
    font-size: 30px;
    color: #0b4a26;
  }
  
  .toggle-icon::before { content: '+'; }
  
  .accordion-item.active .toggle-icon::before { content: '\2212'; }
  
  .accordion-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease-in-out;
  }
  
  .content-inner {
    padding: 20px 35px;
  }
  
  .content-inner img {
    width: 100%;
    border-radius: var(--zf-br-m);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    margin-bottom: 20px;
  }
  
  .divider {
    height: 1px;
    background-color: #e5e7eb;
    margin-bottom: 20px;
  }
  
  .content-inner p {
    color: #4B4949;
    font-size: var(--zf-fs-p-m);
    line-height: 26px;
    margin: 25px 0;
  }
  
  @media screen and (max-width: 900px) {
    .ecosystem-layout-tab { display: block; }
  }
  
  @media screen and (max-width: 500px) {
    .section-header h2 {
      font-size: 28px;
      line-height: 38px;
    }
    .accordion-header { padding: 14px 30px; }
    .title { font-size: 16px; }
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  /* Partner with us section */
  /* Partner with us section */
  .partner-with-us-section {
    display: flex;
    width: 100%;
    gap: 60px;
    min-height: 530px;
  }
  
  .left-section { flex: 1; }
  
  .left-section h2 {
    color: #000;
    font-size: var(--zf-fs-h-m);
    line-height: var(--zf-lh-h-m);
    font-family: var(--zf-secondary-medium);
    margin: 8px 0 32px;
  }
  
  /* Stepper Container */
  .stepper {
    display: flex;
    flex-direction: column;
    gap: 25px;
  }
  
  .step {
    display: flex;
    gap: 25px;
    position: relative;
    cursor: pointer;
  }
  
  .step-indicator {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 34px;
  }
  
  .icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background-color: #f0f0f0;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: all 0.3s ease;
    z-index: 2;
  }
  
  .icon svg {
    width: 16px;
    height: 16px;
  }
  
  .line-bg {
    width: 3px;
    height: calc(100% + 25px);
    background-color: #f0f0f0;
    position: absolute;
    top: 9px;
    z-index: 1;
  }
  
  .line-progress {
    width: 100%;
    height: 0;
    background-color: #000000;
  }
  
  .step:last-child .line-bg { display: none; }
  
  .step-content {
    flex: 0 0 80%;
    padding-top: 2px;
    border-bottom: 1px solid rgba(228, 228, 228, 1); 
    padding-bottom: 20px;
  }
  
  .step-content h3 {
    color: #646464;
    transition: all 0.3s ease;
    font-size: var(--zf-fs-p-l);
    font-family: var(--zf-secondary-semibold);
    line-height: var(--zf-lh-p-l);
  }
  
  .step-content h3:hover { color: #292929; }
  
  .step-content p {
    color: #403F3F;
    font-size: var(--zf-fs-p-m);
    line-height: var(--zf-lh-p-m);
    font-weight: 400;
    margin-top: 5px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.5s ease, opacity 0.5s ease;
  }
  
  .step.active .icon { background-color: #000000; }
  .step.active .icon svg path { stroke: #fff; }
  .step.active .step-content h3 { color: #292929; }
  .step.active .step-content p {
    max-height: 50px; 
    opacity: 1;
  }
  
  .step.active .line-progress { animation: extendLine 4s linear forwards; }
  
  @keyframes extendLine {
    0% { height: 0%; }
    100% { height: 100%; }
  }
  

  .right-section {
    flex: 1;
    border-radius: var(--zf-br-xl);
    background: #f4f5f5;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
    height: fit-content;
  }
  
  .mockup-container {
    width: 90%;
    display: grid;
    place-items: center;
  }
  
  .slider-img {
    grid-area: 1 / 1;
    width: 100%;
    height: auto;
    object-fit: contain;
    opacity: 0;
    transition: opacity 0.5s ease-in-out;
    pointer-events: none;
  } 

  
  .slider-img.active {
    opacity: 1;
    z-index: 2;
    pointer-events: auto;
  }
  
  @media screen and (max-width: 1399px) {
    .right-section { height: auto; }
  }

  @media screen and (max-width: 1024px) {
    .partner-with-us-section {
      display: flex;
      flex-direction: column;
      gap: 0px;
    }
    
    .left-section { display: contents; }
    
    .left-section .label { order: 1; }
    
    .left-section h2 { 
      order: 2; 
      font-size: 28px;
      line-height: 38px;
      margin-bottom: 10px;
    }
    
    .right-section { 
      order: 3; 
      width: 100%; 
      height: auto; 
      padding: 0; 
      margin-bottom: 40px;
      border-radius: var(--zf-br-m);
    }
    
    .stepper { order: 4; gap: 15px; }
    
    .line-bg { display: none; }
    
    .step {
      border-bottom: 1px solid #eaeaea;
      padding-bottom: 15px;
      margin: 0;
    }
    
    .step:last-child { border-bottom: none; }
    
    .step-content {
      border-bottom: none;
      padding-bottom: 0;
      width: 100%;
    }
    
    .mockup-container {
      width: 60%;
    }
  
    /* Arrow styles for mobile steps */
    .step-content h3 {
      position: relative;
      padding-right: 30px; 
      display: flex;
      justify-content: space-between;
      align-items: center;
    }
    .step { position: relative; }
    .step::after {
      content: "";
      position: absolute;
      right: 30px;
      top: 10px;
      width: 10px;
      height: 10px;
      border-right: 2px solid #646464;
      border-bottom: 2px solid #646464;
      transform: translateY(-20%) rotate(45deg);
      transition: transform 0.3s ease, border-color 0.3s ease;
    }
  
    .step.active::after {
      transform: translateY(20%) rotate(-135deg);
      border-color: #292929; 
    }
  }
  
  @media screen and (max-width: 500px) {
    .left-section h2 { font-size: 24px; line-height: 34px; }
    .step::after { right: 5px; }
  }
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  /* free section */
  
  
  
  
  .free-section-wrapper {
    border-bottom: 1px solid #E4E8E1; 
  }
  .free-section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-radius: var(--zf-br-l);
    border: 1px solid #F0EFE9;
    background: linear-gradient(92deg, #E6EFE1 1.92%, #F7FAF5 46.5%, #F4F8D9 100.24%);
  }
  
  .free-section-content {
    max-width: 450px;
    padding-left: 90px;
  }
  
  .free-section-title {
    color: #000;
    font-size: var(--zf-fs-h-m);
    font-family: var(--zf-secondary-medium);
    line-height: var(--zf-lh-h-m);
  }
  .free-section-description {
    color: #000;
    font-size: var(--zf-fs-p-m);
    font-family: var(--zf-secondary-regular);
    line-height: var(--zf-lh-p-m);
    margin: 5px 0 12px;
  }
  .explore-free {
    display: flex;
    align-items: baseline;
    color: #2F2F29;
    font-size: var(--zf-fs-p-m);
    font-style: normal;
    font-weight: 400;
    line-height: var(--zf-lh-p-m);
    text-transform: uppercase;
  }
  .free-section-image { max-width: 610px; }
  .explore-free svg {
    display: inline-block;
    width: 7px;
    transition: all 0.3s ease;
    margin-left: 6px;
  }
  
  .explore-free:hover svg {
    transform: translateX(5px);
    transition: all 0.3s ease;
  }
  
  @media screen and (max-width: 1024px) {
    .free-section {
      flex-direction: column;
    }
    .free-section-content {
      text-align: center;
      padding: 40px;
      max-width: 100%;
    }
    .explore-free  { 
      justify-content: center; 
    }
  } 
  
  @media screen and (max-width: 900px) {
    .free-section-content {
      text-align: center;
      padding: 40px;
    }
  }
  
  
  
  
  
  
  
  
  
  
  
  
  /* testimonila section */
  
  .partner-testimonial-box-wrapper {
    padding-bottom: 50px;
  }
  .partner-testimonial-box {
    text-align: center;
  }
  .testimonial-title {
    color: #010F07;
    font-size: var(--zf-lh-h3-xl);
    font-family: var(--zf-secondary-medium);
    line-height: var(--zf-lh-h3-xl);
    margin-bottom: 32px;
  }
  
  p.testimonial-description {
    font-size: var(--zf-fs-h3-l);
    line-height: var(--zf-lh-h-m);
    width: 55%;
    margin: 8px auto 23px;
    padding-top: 0;
    color: #000;
  }
  div.testimonial-author {
    justify-content: center;
    text-align: left;
  }
  
  div.author-info {
    flex: unset;
    display: flex;
    flex-direction: column;
  }
  h3.testimonial-name,
  p.testimonial-position,
  span.testimonial-qualifications {
    color: #010f07;
  }
  .demo-container .testimonial-author {
    justify-content: left;
  }
  
  @media screen and (max-width: 1024px) {
    p.testimonial-description {
      width: 60%; 
    }  
  }
  @media screen and (max-width: 900px) {
    p.testimonial-description {
      width: 85%; 
    }  
  }
  
  @media screen and (max-width: 500px) {
    p.testimonial-description {
      width: 100%;
    }
    div.author-info .testimonial-info {
      align-items: flex-start;
    }
  }
  
  






  
  /* infinity carousel */
  
  .infinite-carousel  {
    max-width: 1150px;
    margin: auto;
    overflow: hidden;
    -webkit-mask: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);;
    mask: linear-gradient(90deg, transparent, #fff 20%, #fff 80%, transparent);
  }
  .infinite-carousel:hover .carousel-inner{
  animation-play-state: paused;
  }
  .carousel-inner {
    display: flex;
    width: fit-content;
    gap: 20px;
    animation: scroll 60s linear infinite;
  }
  .carousel-inner li {
    width: 200px;
  }
  
  @keyframes scroll {
    to {
        transform: translate(-50%);
    }
  }
  
  @media screen and (max-width: 500px) {
    .carousel-inner li {
      width: 150px;
    }
    
  }
  
  
  
  
    