/* client logo */
.logo-swiper {
    overflow: hidden;
    padding: 50px 0 10px;
}

.logo-swiper .swiper-wrapper {
    transition-timing-function: linear !important;
}

.logo-swiper .swiper-slide {
    width: auto !important;
    flex-shrink: 0;
}

.client-logo-wrapper{
    min-height: 127px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    border-radius: 20px;
    border: 1px solid #F3F3F3;
    box-shadow: 4px 4px 10px 0px #0000000D;
    min-width: 252px;
}

.client-logo-wrapper img{
    max-width: 185px;
    min-height: 45px;
    object-fit: contain;
}
/* */

/* technolog tabs section starts */
.technology-tabs-content-wrapper{
    margin-top: 50px;
    padding: 10px;
    border-radius: 32px;
}

.technology-tabs-content-wrapper .nav-tabs{
    gap: 8px;
    padding-bottom: 24px;
    margin-bottom: 24px;
    border-bottom-color: #D9D9D9;
    overflow-x: auto;
    width: 100%;
    flex-wrap: nowrap;
}

.technology-tabs-content-wrapper .nav-link{
    border: 1px solid #EDEDED;
    border-radius: 30px;
    min-height: 56px;
    min-width: 125px;
    font-size: 16px;
    line-height: 26px;
    color: #373737;
    background-color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2px 5px;
}

.technology-tabs-content-wrapper .nav-link.active{
    background-color: #4D52F2;
    color: #fff;
    border: 1px solid #4D52F2;
}

.tech-list-content{
    padding: 0 16px;
}

.tech-list-content .technology-grid{
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    column-gap: 20px;
    row-gap: 20px;
}

.technology-grid-item{
    display: flex;
    flex-direction: column;
    align-items: center;
    row-gap: 10px;
}

.technology-grid-item-img{
    width: 120px;
    height: 120px;
    background-color: #fff;
    box-shadow: 4px 4px 10px 0px #0000000D;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
}

.technology-grid-item-img img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.technology-grid-item p{
    margin: 0;
    color: #747474;
    font-size: 18px;
    line-height: 28px;
    font-weight: 500;
    text-align: center;
}
/* technology tabs section ends */

/* case study section start */
.image-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr;
    grid-template-rows: repeat(2, 1fr);
    gap: 20px;
    margin-top: 50px;
}

.grid-item {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
    height: 315px;
}

.grid-item.large {
    grid-row: span 2;
    height: 650px;
}

.grid-item .case-study-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.6s ease;
}

.grid-item::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 65%;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.9),rgba(0, 0, 0, 0));
    opacity: 0;
    transition: opacity 0.35s ease;
    z-index: 1;
}

.grid-item.large .case-study-details{
    left: 20px;
}

.case-study-details {
    position: absolute;
    left: 15px;
    bottom: 20px;
    color: #fff;
    z-index: 2;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.35s ease;
}

.grid-item.large .case-study-details h3{
    font-size: 32px;
    line-height: 40px;
    font-weight: 600;
}

.grid-item.large .case-study-details p{
    font-size: 24px;
    line-height: 32px;
}

.grid-item .case-study-details h3{
    font-size: 24px;
    line-height: 28px;
    font-weight: 600;
}

.grid-item .case-study-details p{
    font-size: 16px;
    line-height: 26px;
    margin: 0;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.grid-item:hover::before {
    opacity: 1;
}

.grid-item:hover .case-study-image{
    transform: scale(1.1);
}

.grid-item.large:hover .case-study-details {
    opacity: 1;
    transform: translateY(-20px);
}

.grid-item:hover .case-study-details {
    opacity: 1;
    transform: translateY(0px);
}

.grid-item .icon {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 46px;
    height: 46px;
    background: #fff;
    border-radius: 100% 0 100% 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: bold;
    z-index: 2;
    cursor: pointer;
    padding: 10px;
}
/* case study section ends */


/* industry we serve section start */
.industry-serve-slider .industry-slider{
    padding: 0 15px 15px 15px;
}

.industry-card-wrapper {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 24px;
}

.industry-slider-wrapper{
    margin-top: 50px;
}

.industry-card {
    background: #fff;
    border-radius: 12px;
    box-shadow: 4px 4px 10px 0px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    height: auto;
}

.industry-image {
    position: relative;
    height: 160px;
}

.industry-image:before{
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, #000000 0%, rgba(0, 0, 0, 0) 100%);
}

.industry-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.industry-image h4 {
    position: absolute;
    left: 32px;
    color: #fff;
    font-size: 22px;
    line-height: 32px;
    font-weight: 600;
    top: 50%;
    margin: 0px;
    transform: translateY(-50%);
}

.industry-card p {
    padding: 24px;
    font-size: 16px;
    line-height: 28px;
    color: rgba(0, 0, 0, 0.6);
    margin-bottom: 0px;
    min-height: 160px;
}

/* PAGINATION DOTS */
.industry-slider-wrapper .swiper-pagination-bullets {
    bottom: 0px;
}

.industry-slider-wrapper .swiper-pagination-bullet {
    width: 24px;
    height: 6px;
    background: rgba(192, 192, 192, 0.5);
    opacity: 1;
    border-radius: 30px;
}

.industry-slider-wrapper .swiper-pagination-bullet-active {
    background: #4D52F2;
}
/* industry we serve section ends */

/* testimonial section starts */
.testimonials-slider-wrapper{
    margin-top: 50px;
    position: relative;
}

.testimonials-slide-btn-wrap{
    position: relative;
}

.testimonials-header h2 {
    color: #4f46e5;
}

.testimonial-main {
    overflow: hidden;
}

.testimonial-main,
.testimonial-thumbs{
    width: 1096px;
}

.testimonial-card {
    display: flex;
    align-items: center;
    gap: 40px;
    padding: 20px;
    border-radius: 20px;
}

.testimonial-avatar {
    width: 315px;
    height: 315px;
    border-radius: 0px;
    overflow: hidden;
    border-radius: 16px;
}

.testimonial-avatar img {
    display: block;
    width: 100%;
    height: auto;
}

.testimonial-content {
    max-width: calc(100% - 360px);
}

.testimonial-quote {
    margin: 0 0 32px;
    font-size: 18px;
    line-height: 30px;
    color: #606060;
    font-style: italic;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 5;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.testimonial-author-details{
    display: flex;
    align-items: center;
    column-gap: 15px;
}

.play-video-icon{
    width: 40px;
    height: 40px;
    z-index: 4;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: rgb(14, 130, 195);
    border: 0;
    animation: playBlink 1.6s ease-in-out infinite;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
    border-radius: 50%;
}

@keyframes playBlink {
    0% {
        box-shadow: 0 0 0 0 rgba(14, 130, 195, 0.55);
    }
    50% {
        box-shadow: 0 0 0 12px rgba(14, 130, 195, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(14, 130, 195, 0);
    }
}

.play-video-icon svg {
    width: 15px;
    height: 15px;
    color: #fff;
}

.client-details {
    width: calc(100% - 55px);
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.client-details h3 {
    margin: 0;
    font-size: 22px;
    line-height: 32px;
    font-weight: 600;
    color: #0A0907;
}

.client-country-flag{
    width: 30px;
    display: flex;
    align-items: center;
}

.client-country-flag img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.testimonial-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 58px;
    height: 58px;
    border-radius: 999px;
    border: none;
    background-color: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 5;
    padding: 0;
    border: 1px solid #E5E5E5;
}

.testimonial-nav-btn:hover{
    background: #4d52f2;
    border-color: #4d52f2;
    color: #fff;
}

.testimonial-nav-btn.swiper-button-disabled{
    background: #A0A3BD;
    border-color: #A0A3BD;
    pointer-events: none;
}

.testimonial-nav-btn.swiper-button-disabled svg{
    stroke: #fff;
}

.testimonial-nav-btn:focus{
    outline: none;
}

.testimonial-nav-btn svg{
    stroke: #303030;
}

.testimonial-nav-btn:hover svg{
    stroke: #fff;
}

.testimonial-prev {
    left: 0;
}

.testimonial-next {
    right: 0;
}

.client-testimonial-popup .modal-dialog{
    max-width: 768px;
}

.client-testimonial-popup .modal-content{
    border: 0;
    background-color: transparent;
}

.client-testimonial-popup .modal-body{
    padding: 0;
}

.client-testimonial-popup .modal-body iframe{
    aspect-ratio: 16 / 9;
    max-inline-size: 100%;
}

.client-testimonial-popup .testimonial-video-close{
    background-color: transparent;
    border: 0;
    padding: 0;
    position: absolute;
    right: -20px;
    top: -20px;
    width: 40px;
    height: 40px;
    z-index: 1;
    color: #f00;
}

.client-testimonial-popup .testimonial-video-close .close-bg-blur{
    color: #fdf4f9;
}
/* testimonial section ends */

/* blog section starts */
.blog-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  margin-top: 50px;
}

.page-template-new-hire-development .blog-card{
  box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.25)
}

/* Card */
.blog-card {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    padding: 16px;
    display: flex;
    flex-direction: column;
    row-gap: 24px;
}

.blog-card:hover {
  transform: translateY(-4px);
}

/* Image */
.blog-image {
  border-radius: 16px;
  overflow: hidden;
}

.blog-image img {
  width: 100%;
  height: 220px;
  object-fit: contain;
  display: block;
}

/* Content */
.blog-listing-content {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    row-gap: 16px;
}

/* Tag */
.blog-tag {
    display: inline-block;
    font-size: 12px;
    font-weight: 500;
    color: rgba(47, 131, 197, 1);
    background: rgba(1, 143, 255, 0.1);
    padding: 4px 10px;
    border-radius: 20px;
}

/* Title */
.blog-listing-title {
    font-size: 24px;
    line-height: 36px;
    font-weight: 500;
    color: rgba(0, 0, 0, 1);
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Description */
.blog-listing-desc {
    font-size: 16px;
    line-height: 26px;
    color: rgba(0, 0, 0, 0.6);
    margin: 0;
}

/* Read more */
.read-more {
    font-size: 14px;
    line-height: 28px;
    color: rgba(77, 82, 242, 1);
    text-decoration: none;
    font-weight: 500;
    text-decoration: underline;
}

/* blog section ends */

/* market preference section start */
.market-preference-wrapper{
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 16px;
    margin-top: 50px;
    margin-bottom: 16px;
}

.market-grid{
    background-color: #fff;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 165px;
    padding: 5px;
}

.market-preference-image{
    margin-bottom: 20px;
}

.market-details{
    display: flex;
    align-items: center;
    font-size: 16px;
    line-height: 28px;
    font-weight: 500;
    column-gap: 5px;
    color: rgb(0, 0, 0, 0.6);
}

.ratings-wrapper{
    display: flex;
    align-items: center;
    font-size: 16px;
    line-height: 28px;
    color: #FFC107;
}

.market-numbers{
    font-weight: 600;
    color: #000;
}

.market-numbering{
    color: #515151;
    text-align: center;
}

.market-details + .market-numbering,
.market-numbering + .market-numbering{
    margin-top: 10px;
}

.award-certificate-wrapper{
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    column-gap: 16px;
}

.award-certifcate-grid{
    display: flex;
    flex-direction: column;
    row-gap: 12px;
}

.award-certifcate-grid img{
    width: 160px;
    height: 160px;
    object-fit: contain;
}

.award-name{
    margin: 0;
    font-size: 14px;
    line-height: 20px;
    color: #575757;
    text-align: center;
}
/* market preference section ends */

/* cta section starts */
.common-cta-section{
    margin: 30px 0;
}

.common-cta-bg{
    border-radius: 16px;
    background-color: #4D52F2;
    padding: 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.cta-left-side{
    max-width: 700px;
    display: flex;
    flex-direction: column;
    row-gap: 24px;
}

.cta-title{
    font-size: 30px;
    line-height: 40px;
    font-weight: 600;
    margin: 0;
}

.cta-description{
    font-size: 18px;
    line-height: 28px;
    font-weight: 500;
    margin: 0;
}

.cta-right-side{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    min-width: 250px;
}

.cta-btn-wrap{
    background-color: #fff;
    border-radius: 30px;
    display: flex;
    transition: all 0.3s ease-in-out;
}

.cta-btn{
    border-radius: 30px;
    font-size: 16px;
    line-height: 28px;
    min-height: 56px;
    min-width: 200px;
    font-weight: 600;
    padding: 12px 24px;
    background: linear-gradient(113.48deg, #2C53F8 15.51%, #9650E3 50.37%, #DD227B 85.23%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: ctaBlink 1.6s ease-in-out infinite;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid transparent;
}

.cta-btn-wrap:hover{
    background-color: transparent;
}

.cta-btn-wrap:hover .cta-btn{
    border-color: #fff;
    color: #fff;
    -webkit-text-fill-color: unset;
}

@keyframes ctaBlink {
    0% {
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0.55);
    }
    50% {
        box-shadow: 0 0 0 12px rgba(255, 255, 255, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(255, 255, 255, 0);
    }
}
/* cta section starts */

/* faq accordion section start */
.faq-accordion-wrapper{
    max-width: 1080px;
    margin: 50px auto 0;
    display: flex;
    flex-direction: column;
    row-gap: 20px;
}

.faq-accordion-wrapper .accordion-item{
    border: 0;
    background: linear-gradient(113.48deg, rgba(44, 83, 248, 0.05) 15.51%, rgba(150, 80, 227, 0.05) 50.37%, rgba(221, 34, 123, 0.05) 85.23%);
    border-radius: 16px !important;
}

.faq-accordion-wrapper .accordion-button{
    background: transparent;
    box-shadow: none;
    padding: 24px 40px;
    font-size: 18px;
    line-height: 28px;
    font-weight: 500;    
    color: rgba(49, 49, 49, 1);
}

.faq-accordion-wrapper .accordion-button::after{
    width: 24px;
    height: 24px;
    background-image: url(../../images/common-section-image/faq-plus-icon.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px;
}

.faq-accordion-wrapper .accordion-button:not(.collapsed)::after{
    background-image: url(../../images/common-section-image/faq-minus-icon.svg);
}

.faq-accordion-wrapper .accordion-body{
    padding: 10px 40px 24px;
}
/* faq accordion section ends */

/* ai platform */
.ai-platforms {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    column-gap: 24px;
    row-gap: 20px;
    margin-top: 50px;
}

.platform-card {
    padding: 32px;
    border-radius: 16px;
    border: 1px solid #e5e7eb;
    background: #fff;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
    row-gap: 20px;
}

.platform-card-head{
    display: flex;
    align-items: center;
    justify-content: flex-start;
    column-gap: 15px;
}

.platform-card img {
    width: 48px;
    height: 48px;
}

.platform-card h4 {
    font-size: 26px;
    line-height: 36px;
    font-weight: 600;
    margin-bottom: 0px;
    color: rgba(49, 49, 49, 1);
}

.platform-card p {
    font-size: 16px;
    line-height: 1.4;
    color: rgba(0, 0, 0, 0.6);
    margin-bottom: 0;
}

/* Soft background tints */
.openai { background: rgba(222, 233, 228, 0.25); border-color: rgba(14, 169, 130, 1); }
.claude { background: rgba(255, 199, 180, 0.25); border-color: rgba(217, 119, 87, 1); }
.aws { background: rgba(255, 228, 186, 0.25); border-color: rgba(255, 153, 0, 1); }
.meta { background: rgba(161, 209, 255, 0.25); border-color: rgba(0, 100, 225, 1); }
.azure { background: rgba(215, 246, 255, 0.25); border-color: rgba(16, 76, 142, 1); }
.perplexity { background: rgba(167, 225, 237, 0.25); border-color: rgba(63, 126, 139, 1); }
.gemini { background: rgba(220, 201, 255, 0.25); border-color: rgba(115, 118, 200, 1); }
.copilot { background: rgba(254, 168, 196, 0.25); border-color: rgba(241, 89, 139, 1); }
/* */

/* features listing section starts */
.features-section.common-section-spacing{
  padding: 124px 0;
}

.features-wrapper{
  display: flex;
  align-items: flex-start;
  column-gap: 30px;
}

.features-listing{
  max-width: 455px;
  width: 100%;
  position: sticky;
  top: 124px;
}

.features-listing ul{
    display: flex;
    flex-direction: column;
    row-gap: 24px;
    max-height: calc(4 * 140px);
    overflow-y: auto;
}

.features-listing ul li{
  border-radius: 8px;
  background-color: #fff;
  font-size: 18px;
  line-height: 28px;
  color: rgb(0, 0, 0,0.6);
  font-weight: 500;
  min-height: 70px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 10px;
  position: relative;
  overflow: hidden;
  box-shadow: 0px 2px 1px #C0C0C0;
}

.features-listing ul li.active::before{
  content: '';
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background: #4D52F21A;
}

.features-listing ul li.active::after{
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  background: linear-gradient(
      113.48deg,
      #2C53F8 15.51%,
      #9650E3 50.37%,
      #DD227B 85.23%
  );
  z-index: 1;
}

.features-listing ul li.active{
  background: linear-gradient(113.48deg, #2C53F8 15.51%, #9650E3 50.37%, #DD227B 85.23%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  box-shadow: none;
}

.features-grid{
  width: 100%;
  max-width: 810px;
  position: sticky;
  top: 124px;
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}

.feature-grid-item{
  display: flex;
  flex-direction: column;
  border-radius: 16px;
  overflow: hidden;
}

.feature-grid-item .feature-grid-image{
  width: 100%;
  height: 368px;
  object-fit: cover;
}

.feature-grid-content{
  background-color: #fff;
  padding: 40px;
  row-gap: 24px;
  display: flex;
  flex-direction: column;
}

.main-section-title.feature-section-title{
  font-size: 30px;
  line-height: 1.4;
  margin: 0;
  text-align: left;
}

.feature-description{
  font-size: 16px;
  line-height: 1.8;
  color: #606060;
  font-weight: 500;
}

.feature-description ul{
  display: flex;
  flex-direction: column;
  list-style: disc;
  padding-left: 20px;
}
/* features listing section ends */

/* main activity section */
/* MAIN SLIDER */
.ai-main-slider .swiper-slide {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 40px;
}

.slide-content {
    max-width: 660px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    row-gap: 32px;
}

.main-activity-title{
    font-size: 40px;
    line-height: 50px;
    font-weight: 600;
    margin: 0px;
    display: flex;
    flex-wrap: wrap;
    color: #3D3D3D;
}

.gradient-title{
    background: linear-gradient(113.48deg, #2C53F8 15.51%, #9650E3 50.37%, #DD227B 85.23%);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    display: inline-flex;
    position: relative;
}

.gradient-title:after{
    content: '';
    width: 43px;
    height: 51px;
    position: absolute;
    right: -60px;
    top: 50%;
    transform: translateY(-50%);
    background-image: url(../../images/new-web-image/title-pattern-icon.svg);
    background-repeat: no-repeat;
    background-position: right;
    background-size: contain;
}

.slide-image {
    max-width: 540px;
}

.slide-image img {
    width: 100%;
    border-radius: 16px;
    object-fit: cover;
}

.main-activity-description{
    font-size: 18px;
    line-height: 28px;
    color: rgb(0, 0, 0, 0.6);
    font-weight: 500;
    margin: 0px;
}

/* BUTTON */
.main-activity-btn{
    border: 1px solid #4D52F2;
    min-height: 56px;
    min-width: 260px;
    padding: 10px;
    font-size: 16px;
    line-height: 26px;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border-radius: 30px;
    color: #4D52F2;
}

.main-activity-btn:hover{
    background-color: #4D52F2;
    color: #fff;
}

/* THUMB SLIDER */
.ai-thumb-slider {
    margin-top: 80px;
    overflow: hidden;
}

.ai-thumb-slider .swiper-wrapper {
    align-items: stretch;
}

.slider-thumb-title,
.slider-thumb-desc{
    opacity: 0.5;
}

.swiper-slide-thumb-active .slider-thumb-title,
.swiper-slide-thumb-active .slider-thumb-desc{
    opacity: 1;
}

.slider-thumb-title{
    font-size: 16px;
    line-height: 28px;
    font-weight: 500;
    color: #2B2B2B;
    margin-bottom: 10px;
}

.slider-thumb-desc{
    font-size: 18px;
    line-height: 30px;
    font-weight: 500;
    color: #000000;
    margin: 0;
}

.ai-thumb-slider .swiper-slide {
    position: relative;
    padding: 20px 10px;
    cursor: pointer;
}

/* PROGRESS BAR */
.ai-thumb-slider .progress {
    position: absolute;
    top: 0;
    left: 0;
    height: 3px;
    width: 100%;
    background: rgba(192, 192, 192, 0.5);
    overflow: hidden;
}

.ai-thumb-slider .progress::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    background: #4D52F2;
    transform: scaleX(0);
    transform-origin: left;
}

.ai-thumb-slider .progress.animate::after {
    animation: progressFill linear forwards;
    animation-duration: var(--progress-duration, 5000ms);
}

.ai-thumb-slider .progress.reset::after {
    animation: none !important;
    transform: scaleX(0);
}

@keyframes progressFill {
    from {
        transform: scaleX(0);
    }
    to {
        transform: scaleX(1);
    }
}
/* */


@media(max-width:1399px){
    .award-certifcate-grid img {
        width: 130px;
        height: 130px;
    }

    .market-preference-image{
        max-height: 30px;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .market-preference-image img{
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .client-logo-wrapper{
        min-height: 100px;
        min-width: 200px;
    }

    .client-logo-wrapper img {
        max-width: 145px;
        min-height: 40px;
    }

    .common-cta-bg{
        padding: 30px;
    }

    .cta-title {
        font-size: 28px;
        line-height: 38px;
    }

    .cta-description {
        font-size: 16px;
        line-height: 26px;
    }

    .blog-image img{
        height: 180px;
    }

    .blog-tag{
        font-size: 10px;
        padding: 3px 8px;
    }
    
    .blog-listing-title {
        font-size: 18px;
        line-height: 28px;
    }

    .blog-listing-desc {
        font-size: 14px;
        line-height: 24px;
    }

    .testimonial-main, .testimonial-thumbs {
        width: 960px;
    }

    /* features listing section starts */
    .features-section.common-section-spacing{
        padding: 70px 0;
    }

    .features-wrapper{
        column-gap: 20px;
    }

    .features-listing{
        max-width: 330px;
        top: 70px;
    }

    .features-listing ul {
        row-gap: 18px;
    }

    .features-listing ul li{
        font-size: 14px;
        line-height: 20px;
        min-height: 60px;
    }

    .features-grid{
        max-width: calc(100% - 350px);
        top: 84px;
    }

    .feature-grid-item .feature-grid-image{
        height: 340px;
    }

    .feature-grid-content{
        padding: 30px;
        row-gap: 18px;
    }

    .main-section-title.feature-section-title {
        font-size: 26px;
    }

    .feature-description {
        font-size: 15px;
    }
    /* features listing section ends */

    /* technolog tabs section starts */
    .technology-tabs-content-wrapper {
        margin-top: 40px;
    }

    .technology-tabs-content-wrapper .nav-tabs{
        gap: 8px;
    }

    .technology-tabs-content-wrapper .nav-link{
        min-height: 50px;
        min-width: 130px;
        font-size: 15px;
        line-height: 24px;
    }

    .technology-grid-item-img {
        width: 95px;
        height: 95px;
    }

    .technology-grid-item p{
        font-size: 16px;
        line-height: 26px;
    }
    /* technolog tabs section ends */

    /* case study section start */
    .image-grid{
        margin-top: 40px;
    }

    .grid-item.large{
        height: 550px;
    }

    .grid-item {
        height: 265px;
    }
    /* case study section ends */

    /* main activity section start */
    .slide-content{
        row-gap: 26px;
        max-width: 600px;
    }

    .main-activity-title{
        font-size: 36px;
        line-height: 46px;
    }

    .main-activity-description{
        font-size: 16px;
        line-height: 26px;
    }

    .main-activity-btn{
        min-height: 50px;
        min-width: 220px;
        padding: 10px;
        font-size: 14px;
        line-height: 24px;
    }

    .slide-image {
        max-width: calc(100% - 640px);
    }

    .slider-thumb-title{
        margin-bottom: 5px;
    }

    .slider-thumb-desc {
        font-size: 16px;
        line-height: 26px;
    }
    /* main activity section ends */

    /* ai platform */
    .ai-platforms{
        margin-top: 40px;
    }

    .platform-card {
        padding: 26px;
        row-gap: 15px;
    }

    .platform-card img {
        width: 42px;
        height: 42px;
    }

    .platform-card h4 {
        font-size: 22px;
        line-height: 34px;
    }
    /* ai platform */

    /* industry we serve section start */
    .industry-slider-wrapper {
        margin-top: 40px;
    }

    .industry-image h4{
        left: 50%;
        font-size: 18px;
        line-height: 28px;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 100%;
        padding: 0 15px;
    }

    .industry-card p {
        padding: 18px;
        font-size: 15px;
        line-height: 26px;
        min-height: 145px;
    }

    /* industry we serve section ends */

    /* testimonial section starts */
    .testimonials-slider-wrapper {
        margin-top: 40px;
    }

    .testimonial-nav-btn{
        width: 52px;
        height: 52px;
    }
    /* testimonial section ends */

    /* blog section starts */
    .blog-grid {
        margin-top: 40px;
    }
    /* blog section ends */

    /* market preference section start */
    .market-preference-wrapper{
        margin-top: 40px;
    }

    .award-name{
        font-size: 12px;
        line-height: 18px;
    }
    /* market preference section ends */

    /* faq accordion section start */
    .faq-accordion-wrapper{
        margin: 40px auto 0;
    }
    /* faq accordion section ends */
}

@media(max-width:1199px){
    .award-certificate-wrapper,
    .market-preference-wrapper{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        row-gap: 16px;
    }

    .award-certifcate-grid,
    .market-preference-wrapper .market-grid{
        width: calc(33% - 16px);
    }

    .blog-grid{
        gap: 20px;
    }

    .blog-listing-content{
        row-gap: 12px;
    }

    .blog-listing-title {
        font-size: 20px;
        line-height: 30px;
    }

    .cta-title {
        font-size: 26px;
        line-height: 36px;
    }

    .cta-left-side {
        max-width: 520px;
        row-gap: 16px;
    }

    .cta-btn{
        min-height: 50px;
        min-width: 180px;
    }

    .grid-item {
        height: 215px;
    }

    .grid-item.large {
        height: 450px;
    }

    .grid-item .icon{
        top: 15px;
        right: 15px;
        width: 36px;
        height: 36px;
        padding: 6px;
    }

    .faq-accordion-wrapper .accordion-button{
        padding: 20px 28px;
        font-size: 16px;
        line-height: 26px;
    }

    .faq-accordion-wrapper .accordion-body {
        padding: 10px 28px 20px;
    }

    .testimonial-main, .testimonial-thumbs {
        width: 780px;
    }

    .testimonial-card{
        gap: 20px;
    }

    .testimonial-avatar {
        width: 275px;
        height: 275px;
    }

    .testimonial-content {
        max-width: calc(100% - 295px);
    }

    .testimonial-quote {
        margin: 0 0 26px;
        font-size: 16px;
        line-height: 26px;
    }

    .client-details h3{
        font-size: 20px;
        line-height: 30px;
    }

    .logo-swiper{
        padding: 35px 0 10px;
    }

    .features-section.common-section-spacing {
        padding: 60px 0;
    }

    .features-listing{
        top: 70px;
    }

    .features-grid{
        top: 70px;
    }

    .industry-card p {
        padding: 14px;
        font-size: 14px;
        line-height: 24px;
        min-height: 150px;
    }

    .main-activity-title {
        font-size: 30px;
        line-height: 40px;
    }

    .slide-content{
        max-width: 500px;
    }

    .slide-image {
        max-width: calc(100% - 550px);
    }

    .gradient-title:after{
        width: 33px;
        height: 41px;
        right: -40px;
    }

    .tech-list-content .technology-grid{
        grid-template-columns: repeat(7, 1fr);
    }

    .industry-serve-slider .industry-slider{
        padding: 0 15px 35px 15px;
    }
}

@media(max-width:991px){
    
    .features-wrapper {
        column-gap: 10px;
    }

    .features-listing ul {
        row-gap: 12px;
    }

    .features-listing{
        max-width: 280px;
    }

    .features-grid{
        max-width: calc(100% - 290px);
    }

    .feature-grid-item .feature-grid-image {
        height: 220px;
    }

    .feature-grid-content {
        padding: 20px;
        row-gap: 12px;
    }

    .main-section-title.feature-section-title {
        font-size: 22px;
    }

    .technology-tabs-content-wrapper .nav-link {
        min-height: 44px;
        min-width: 120px;
    }

    .tech-list-content{
        padding: 0;
    }

    .tech-list-content .technology-grid {
        grid-template-columns: repeat(6, 1fr);
    }

    .technology-grid-item-img {
        width: 85px;
        height: 85px;
        padding: 15px
    }

    .technology-grid-item{
        row-gap: 5px;
    }

    .common-cta-bg {
        padding: 25px;
    }

    .common-cta-bg {
        padding: 25px;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        text-align: center;
        gap: 20px;
    }

    .cta-right-side{
        min-width: auto;
    }

    .image-grid{
        grid-template-columns: unset;
    }

    .grid-item.large{
        grid-column: span 2;
    }

    .grid-item{
        grid-column: span 1;
    }

    .ai-platforms{
        grid-template-columns: repeat(3, 1fr);
    }

    .ai-main-slider .swiper-slide{
        gap: 40px;
        flex-direction: column;
        align-items: flex-start;
    }

    .slide-content{
        max-width: 100%;
        align-items: flex-start;
        text-align: left;
        row-gap: 20px;
    }

    .ai-thumb-slider .swiper-slide {
        padding: 10px;
    }

    .slider-thumb-title {
        font-size: 14px;
        line-height: 26px;
    }

    .slider-thumb-desc {
        font-size: 14px;
        line-height: 24px;
    }

    .grid-item.large .case-study-details h3 {
        font-size: 28px;
        line-height: 36px;
    }

    .grid-item.large .case-study-details p {
        font-size: 22px;
        line-height: 30px;
    }

    .grid-item {
        height: 260px;
    }

    .grid-item .case-study-details h3 {
        font-size: 22px;
        line-height: 26px;
    }

    .grid-item .case-study-details p {
        font-size: 15px;
        line-height: 24px;
    }

    .slide-image {
        max-width: 100%;
    }

    .ai-thumb-slider {
        margin-top: 60px;
    }

    .platform-card {
        padding: 18px;
        row-gap: 12px;
    }

    .platform-card-head{
        column-gap: 12px;
    }

    .platform-card img {
        width: 36px;
        height: 36px;
    }

    .platform-card h4 {
        font-size: 20px;
        line-height: 28px;
    }

    .platform-card p {
        font-size: 15px;
    }

    .industry-image {
        height: 130px;
    }

    .testimonial-main, .testimonial-thumbs {
        width: 580px;
    }

    .testimonial-avatar {
        width: 220px;
        height: 220px;
    }

    .testimonial-content {
        max-width: calc(100% - 240px);
    }

    .play-video-icon {
        width: 30px;
        height: 30px;
    }

    .play-video-icon svg {
        width: 10px;
        height: 10px;
    }

    .client-details h3 {
        font-size: 18px;
        line-height: 28px;
    }

    .testimonial-nav-btn {
        width: 42px;
        height: 42px;
    }

    .testimonial-nav-btn svg{
        width: 8px;
    }

    .blog-grid{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .blog-card{
        width: calc(50% - 10px);
    }

    .faq-accordion-wrapper .accordion-button {
        padding: 15px 22px;
    }

    .faq-accordion-wrapper .accordion-body {
        padding: 6px 22px 15px;
    }

    .cta-left-side {
        row-gap: 10px;
    }

    .cta-title {
        font-size: 24px;
        line-height: 32px;
    }

    .main-activity-title{
        flex-direction: column;
        align-items: flex-start;
    }
}


@media(max-width:767px){

    .client-logo-wrapper {
        min-height: 85px;
        min-width: 180px;
    }

    .client-logo-wrapper img {
        max-width: 125px;
        min-height: 30px;
    }

    .features-listing{
        display: none;
    }

    .features-grid {
        max-width: 100%;
    }

    .technology-tabs-content-wrapper .nav-link{
        font-size: 14px;
        line-height: 22px;
        min-width: 110px;
    }

    .tech-list-content .technology-grid {
        grid-template-columns: repeat(5, 1fr);
        column-gap: 10px;
        row-gap: 10px;
    }

    .technology-grid-item-img {
        width: 75px;
        height: 75px;
    }

    .technology-grid-item p {
        font-size: 14px;
        line-height: 20px;
    }

    .ai-platforms {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 16px;
        row-gap: 12px;
    }

    .testimonials-slider-wrapper{
        padding-bottom: 30px;
    }

    .testimonial-nav-btn{
        top: auto;
        transform: translateX(-50%);
        bottom: -50px;
        left: 50%;
    }

    .testimonial-nav-btn.testimonial-prev{
        margin-left: -24px;
    }

    .testimonial-nav-btn.testimonial-next{
        margin-left: 24px;
    }

    .testimonial-main, .testimonial-thumbs {
        width: 100%;
    }

    .testimonial-card{
        padding: 15px;
    }

    .testimonial-avatar {
        width: 180px;
        height: 180px;
    }

    .testimonial-content {
        max-width: calc(100% - 200px);
    }

    .testimonial-quote {
        margin: 0 0 16px;
        font-size: 14px;
        line-height: 22px;
    }

    .blog-grid {
        gap: 10px;
    }

    .blog-card {
        width: calc(50% - 5px);
    }

    .blog-image img {
        height: 130px;
    }

    .blog-listing-title {
        font-size: 18px;
        line-height: 28px;
    }

    .market-preference-image{
        max-height: 26px;
    }

    .award-certificate-wrapper, .market-preference-wrapper{
        gap: 10px;
    }

    .award-certifcate-grid, .market-preference-wrapper .market-grid {
        width: calc(33% - 5px);
    }

    .ratings-wrapper,
    .market-details{
        font-size: 14px;
        line-height: 24px;
    }

    .testimonial-nav-btn {
        width: 36px;
        height: 36px;
    }

    .ai-thumb-slider {
        margin-top: 40px;
    }
}

@media(max-width:575px){
    .logo-swiper {
        padding: 25px 0 10px;
    }

    .tech-list-content .technology-grid{
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }

    .technology-grid-item{
        width: 23%;
    }

    .technology-grid-item p {
        font-size: 13px;
        line-height: 18px;
    }

    .cta-title {
        font-size: 22px;
        line-height: 30px;
    }
    
    .grid-item {
        height: 220px;
    }

    .slider-thumb-title,
    .slider-thumb-desc{
        display: none;
    }

    .features-section.common-section-spacing {
        padding: 40px 0;
    }

    .technology-tabs-content-wrapper,
    .offering-grid-wrapper,
    .image-grid,
    .ai-platforms,
    .industry-slider-wrapper,
    .testimonials-slider-wrapper,
    .blog-grid,
    .market-preference-wrapper{
        margin-top: 30px;
    }

    .main-activity-title {
        font-size: 24px;
        line-height: 34px;
    }

    .gradient-title:after {
        width: 23px;
        height: 31px;
        right: -30px;
    }
    
    .main-activity-btn {
        min-height: 46px;
        min-width: 180px;
        padding: 8px;
        font-size: 14px;
        line-height: 24px;
    }

    .testimonial-card {
        padding: 15px;
        flex-direction: column;
        align-items: flex-start;
    }

    .testimonial-content {
        max-width: 100%;
    }

    .blog-grid {
        gap: 20px;
    }

    .blog-card {
        width: 100%;
        row-gap: 15px;
    }

    .blog-image img {
        height: 100%;
    }

    .faq-accordion-wrapper {
        margin: 30px auto 0;
    }

    .faq-accordion-wrapper .accordion-button {
        padding: 12px 16px;
    }

    .faq-accordion-wrapper .accordion-body {
        padding: 6px 16px 15px;
    }

    .award-certifcate-grid, .market-preference-wrapper .market-grid {
        width: calc(50% - 5px);
    }

    .market-grid {
        min-height: 140px;
    }

    .market-preference-image{
        max-height: 22px;
        margin-bottom: 15px;
    }

    .ratings-wrapper {
        font-size: 12px;
        line-height: 22px;
    }

    .feature-grid-content {
        padding: 15px;
    }

    .main-section-title.feature-section-title {
        font-size: 20px;
    }
}

@media(max-width:479px){

    .technology-grid-item{
        width: calc(25% - 8px);
    }

    .platform-card {
        padding: 14px;
        row-gap: 8px;
    }

    .ai-platforms{
        column-gap: 12px;
        grid-template-columns: repeat(1, 1fr);
    }

    .platform-card img {
        width: 32px;
        height: 32px;
    }

    .testimonial-avatar {
        width: 150px;
        height: 150px;
    }

    .faq-accordion-wrapper .accordion-button{
        font-size: 14px;
        line-height: 22px;
        padding: 12px;
    }

    .faq-accordion-wrapper .accordion-body{
        font-size: 14px;
        line-height: 22px;
    }

    .faq-accordion-wrapper .accordion-button::after {
        width: 16px;
        height: 16px;
        background-size: 10px;
    }

    .faq-accordion-wrapper .accordion-body {
        padding: 6px 12px 12px;
    }

    .faq-accordion-wrapper{
        row-gap: 12px;
    }

    .common-cta-bg {
        padding: 20px;
    }

    .cta-title {
        font-size: 20px;
        line-height: 28px;
    }

    .cta-description {
        font-size: 14px;
        line-height: 22px;
    }

    .cta-btn {
        min-height: 45px;
        min-width: 170px;
        font-size: 14px;
        line-height: 24px;
    }

    .market-preference-image {
        max-height: 20px;
        margin-bottom: 10px;
    }

    .market-numbering {
        font-size: 14px;
        line-height: 22px;
    }

    .market-details + .market-numbering, .market-numbering + .market-numbering {
        margin-top: 5px;
    }

    .award-certifcate-grid {
        row-gap: 8px;
    }

    .technology-grid-item-img {
        width: 65px;
        height: 65px;
    }

    .industry-card p{
        min-height: auto;
    }
}