.a3-hero {
  position: relative;
  display: flex;
  align-items: center;
  padding: 150px 10px !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background:
    linear-gradient(rgb(0 0 0 / 60%), rgb(0 0 0 / 60%)),
    url(https://olivedrab-cassowary-363284.hostingersite.com/wp-content/uploads/2026/07/image-3.webp);
  overflow: hidden;
  background-size: cover !important;
}
.a3-hero__overlay {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
}
.a3-site-header__actions-menu li:last-child a {
  background-color: #ff6900 !important;
  position: relative;
  top: 0;
  transition: all 0.4s;
}
.a3-hero__actions a.a3-btn.a3-btn--secondary {
  position: relative;
  top: 0;
  transition: all 0.4s;
}
.a3-site-header__actions-menu li:last-child a:hover {
  background-color: #e76001 !important;
  top: -3px;
}
.a3-hero__actions a.a3-btn.a3-btn--secondary:hover {
  top: -3px;
}
/* .a3-why-choose-us .container {
  max-width: 1230px;
} */
.a3-hero__badge {
  display: inline-flex;
  align-items: center;
  padding: 8px 16px;
  margin-bottom: 26px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 4px;
  background: rgba(25, 25, 25, 0.55);
  color: var(--primary);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;
  text-transform: uppercase;
}
.a3-hero__badge::before {
  content: "";
  width: 6px;
  height: 6px;
  margin-right: 10px;
  border-radius: 0;
  background: var(--primary);
}
.a3-hero__heading {
  margin: 0;
  color: #fff;
  font-weight: 700;
  line-height: 1.08;
  letter-spacing: -1.8px;
  font-size: 60px;
}
.a3-hero__highlight {
  display: inline-block;
  color: var(--primary);
}
.a3-hero__description {
  margin: 34px 0 42px;
  max-width: 665px;
  font-family: Inter, sans-serif;
  font-style: normal;
  font-weight: 400;
  font-size: 20px;
  line-height: 162%;
  display: flex;
  align-items: center;
  color: #d4d4d8;
}
.a3-hero__actions {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.a3-talk {
  position: absolute;
  right: 70px;
  bottom: 60px;
  z-index: 20;
}
.a3-talk a {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 58px;
  padding: 0 28px;
  border-radius: 16px;
  background: var(--primary);
  color: #fff;
  font-weight: 600;
  box-shadow: 0 18px 35px rgba(255, 107, 0, 0.35);
}
.a3-trusted-by {
  padding: 145px 0;
  background-image: url(https://olivedrab-cassowary-363284.hostingersite.com/wp-content/themes/twentytwentyfive-child/images/trust-sectionbg.jpg);
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  border-bottom: 1px solid #e4e4e7;
}
.a3-trusted-by__heading {
  text-align: center;
  margin-bottom: 66px;
  font-weight: 400;
}

/* .a3-trusted-by__logos {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 70px;
  margin-bottom: 80px;
}
.a3-trusted-by__logo {
  max-height: 56px;
  width: auto;
  object-fit: contain;
  transition: 0.3s ease;
} 
.a3-trusted-by__logo:hover {
  transform: translateY(-4px);
}*/
.a3-trusted-by__logos-wrap {
  max-width: 1024px;
  margin: 0 auto;
  margin-bottom: 118px;
}

.a3-trusted-by__logo-slide {
  display: flex !important;
  align-items: center;
  justify-content: center;
  padding: 0 20px;
  height: 80px;
}

.a3-trusted-by__logo {
  max-height: 80px;
  width: auto;
  /* filter: grayscale(100%); */
  /* opacity: 0.7; */
  transition:
    filter 0.2s ease,
    opacity 0.2s ease;
  object-fit: contain;
  object-position:center;
}

.a3-trusted-by__logo:hover {
  /* filter: grayscale(0%); */
  /* opacity: 1; */
}
.a3-trusted-by__cert-heading {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin-bottom: 60px;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: #000000;
}
.a3-trusted-by__cert-heading::after,
.a3-trusted-by__cert-heading::before {
  content: "";
  width: 60px;
  height: 1px;
  background: #000;
}
/* .a3-trusted-by__certs{display:grid;grid-template-columns:repeat(5,1fr);gap:40px}
.a3-trusted-by__cert{text-align:center}
.a3-trusted-by__cert img{height:72px;width:auto;margin:0 auto 22px;object-fit:contain}
.a3-trusted-by__cert-title{display:block;font-weight:400;color:#18181B;line-height:1.5}
.a3-trusted-by__cert-sub{display:block;margin-top:4px;color:#18181B;line-height:1.5} */
/* code add by abhi */
.a3-trusted-by__certs-wrap {
  max-width: var(--a3-container-max);
  margin: 0 auto;
}

.a3-trusted-by__cert-slide {
  display: flex !important;
  justify-content: center;
  padding: 0 16px;
}

.a3-trusted-by__cert {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 6px;
}
.a3-trusted-by__details{
    min-height: 100px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.a3-trusted-by__cert img {
  height: 76px;
  width: auto;
  margin-bottom: 4px;
  object-fit: contain;
}

.a3-trusted-by__cert-title {
  font-size: 14px !important;
  font-weight: 400;
  color: #18181b;
  line-height: 1.5;
}

.a3-trusted-by__cert-sub {
  font-size: 14px !important;
  margin-top: 4px;
  color: #18181b;
  line-height: 1.5;
}
/* code added by abhi ends */
.a3-stats {
  padding: 100px 0;
  background: #fff;
}
.a3-stats .container {
  max-width: 1025px;
}
.a3-stats .row > div:first-child .a3-stats__item {
  background-image: url(https://olivedrab-cassowary-363284.hostingersite.com/wp-content/themes/twentytwentyfive-child/images/card1bg.svg);
}
.a3-stats .row > div:nth-child(2) .a3-stats__item {
  background-image: url(https://olivedrab-cassowary-363284.hostingersite.com/wp-content/themes/twentytwentyfive-child/images/card2bg.svg);
  box-shadow:
    0 20px 25px -5px rgba(255, 105, 0, 0.2),
    0 8px 10px -6px rgba(255, 105, 0, 0.2);
}
.a3-stats .row > div:nth-child(3) .a3-stats__item {
  background-image: url(https://olivedrab-cassowary-363284.hostingersite.com/wp-content/themes/twentytwentyfive-child/images/card3bg.svg);
  background-position: right bottom !important;
}
.a3-stats .row > div:nth-child(4) .a3-stats__item {
  background-image: url(https://olivedrab-cassowary-363284.hostingersite.com/wp-content/themes/twentytwentyfive-child/images/card4bg.svg);
  box-shadow: none !important;
}
.a3-stats .row > div:nth-child(4) .a3-stats__item .a3-stats__number {
  color: var(--primary);
}
.a3-stats__item {
  position: relative;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: cover !important;
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  min-height: 235px;
  border-radius: 22px;
  background: #fff;
  padding: 40px;
  overflow: hidden;
  transition: 0.35s ease;
  box-shadow:
    0 20px 25px -5px rgba(24, 24, 27, 0.1),
    0 8px 10px -6px rgba(24, 24, 27, 0.1);
  margin-bottom: 24px;
}
.a3-stats__item:hover {
  transform: translateY(-6px);
}
.col-lg-8 .a3-stats__item {
  min-height: 235px;
}
.a3-stats__item.is-orange .a3-stats__label,
.a3-stats__item.is-orange .a3-stats__number {
  color: #fff;
}
.row > div:last-child .a3-stats__item {
  background: #f8f8f8;
}
.a3-stats__number {
  font-size: 72px;
  font-weight: 700;
  line-height: 1;
  color: #222;
  margin-bottom: 12px;
}
/* Optional supporting line under a stat's label.
 *
 * A new element rather than a change to an existing rule: no page other than
 * a3logics-in-malaysia sets `description` on a stat row, so this selector
 * matches nothing anywhere else and service.css's usual "changing a rule here
 * hits every template" caution does not apply. */
.a3-stats__desc {
  margin: 8px 0 0;
  font-size: 14px;
  line-height: 22px;
  color: #676F7B;
  max-width: 34ch;
}

.a3-stats__item.is-orange .a3-stats__desc {
  color: rgba(255, 255, 255, 0.82);
}

.a3-stats__label {
  display: block;
  font-weight: 700;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: #71717A;
}
.a3-stats__icon {
  position: absolute;
  right: 30px;
  bottom: 30px;
  width: 80px;
  height: 80px;
  object-fit: contain;
  opacity: 0.08;
}
.a3-who-we-are {
  padding: 50px 0;
  background: #fff;
}
span.a3-tooling__badge-label {
  background: #fff7ed80;
  border: solid 1px #ffedd480;
  color: #f54900;
  display: inline-flex;
  width: fit-content;
  padding: 0 13px;
  font-size: 10px;
  text-transform: uppercase;
  font-weight: 500;
}
.a3-explore-services__header .a3-eyebrow {
  box-shadow: 0px 1px 3px 0px #0000001a;
  background: #fff7ed;
  border: solid 1px #ffd6a7;
  color: #f54900;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 600;
  display: inline-flex;
  padding: 5px 30px;
  border-radius: 100px;
  align-items: center;
  gap: 10px;
}
.a3-explore-services__header .a3-eyebrow:before {
  content: "";
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHZpZXdCb3g9IjAgMCAxNCAxNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzFfNjQyKSI+CjxwYXRoIGQ9Ik02LjQyNjM1IDEuNjQxMjdDNi40NTEzNSAxLjUwNzQ1IDYuNTIyMzUgMS4zODY1OSA2LjYyNzA4IDEuMjk5NjJDNi43MzE4IDEuMjEyNjUgNi44NjM2NCAxLjE2NTA0IDYuOTk5NzcgMS4xNjUwNEM3LjEzNTkgMS4xNjUwNCA3LjI2Nzc0IDEuMjEyNjUgNy4zNzI0NiAxLjI5OTYyQzcuNDc3MTggMS4zODY1OSA3LjU0ODE5IDEuNTA3NDUgNy41NzMxOSAxLjY0MTI3TDguMTg2MjcgNC44ODM0NEM4LjIyOTgxIDUuMTEzOTQgOC4zNDE4MyA1LjMyNTk2IDguNTA3NyA1LjQ5MTg0QzguNjczNTggNS42NTc3MSA4Ljg4NTYgNS43Njk3MyA5LjExNjEgNS44MTMyN0wxMi4zNTgzIDYuNDI2MzVDMTIuNDkyMSA2LjQ1MTM1IDEyLjYxMjkgNi41MjIzNSAxMi42OTk5IDYuNjI3MDhDMTIuNzg2OSA2LjczMTggMTIuODM0NSA2Ljg2MzY0IDEyLjgzNDUgNi45OTk3N0MxMi44MzQ1IDcuMTM1OSAxMi43ODY5IDcuMjY3NzQgMTIuNjk5OSA3LjM3MjQ2QzEyLjYxMjkgNy40NzcxOCAxMi40OTIxIDcuNTQ4MTkgMTIuMzU4MyA3LjU3MzE5TDkuMTE2MSA4LjE4NjI3QzguODg1NiA4LjIyOTgxIDguNjczNTggOC4zNDE4MyA4LjUwNzcgOC41MDc3QzguMzQxODMgOC42NzM1OCA4LjIyOTgxIDguODg1NiA4LjE4NjI3IDkuMTE2MUw3LjU3MzE5IDEyLjM1ODNDNy41NDgxOSAxMi40OTIxIDcuNDc3MTggMTIuNjEyOSA3LjM3MjQ2IDEyLjY5OTlDNy4yNjc3NCAxMi43ODY5IDcuMTM1OSAxMi44MzQ1IDYuOTk5NzcgMTIuODM0NUM2Ljg2MzY0IDEyLjgzNDUgNi43MzE4IDEyLjc4NjkgNi42MjcwOCAxMi42OTk5QzYuNTIyMzUgMTIuNjEyOSA2LjQ1MTM1IDEyLjQ5MjEgNi40MjYzNSAxMi4zNTgzTDUuODEzMjcgOS4xMTYxQzUuNzY5NzMgOC44ODU2IDUuNjU3NzEgOC42NzM1OCA1LjQ5MTg0IDguNTA3N0M1LjMyNTk2IDguMzQxODMgNS4xMTM5NCA4LjIyOTgxIDQuODgzNDQgOC4xODYyN0wxLjY0MTI3IDcuNTczMTlDMS41MDc0NSA3LjU0ODE5IDEuMzg2NTkgNy40NzcxOCAxLjI5OTYyIDcuMzcyNDZDMS4yMTI2NSA3LjI2Nzc0IDEuMTY1MDQgNy4xMzU5IDEuMTY1MDQgNi45OTk3N0MxLjE2NTA0IDYuODYzNjQgMS4yMTI2NSA2LjczMTggMS4yOTk2MiA2LjYyNzA4QzEuMzg2NTkgNi41MjIzNSAxLjUwNzQ1IDYuNDUxMzUgMS42NDEyNyA2LjQyNjM1TDQuODgzNDQgNS44MTMyN0M1LjExMzk0IDUuNzY5NzMgNS4zMjU5NiA1LjY1NzcxIDUuNDkxODQgNS40OTE4NEM1LjY1NzcxIDUuMzI1OTYgNS43Njk3MyA1LjExMzk0IDUuODEzMjcgNC44ODM0NEw2LjQyNjM1IDEuNjQxMjdaIiBzdHJva2U9IiNGRjY5MDAiIHN0cm9rZS13aWR0aD0iMS4xNjY2NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xMS42NjcgMS4xNjY5OVYzLjUwMDMzIiBzdHJva2U9IiNGRjY5MDAiIHN0cm9rZS13aWR0aD0iMS4xNjY2NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xMi44MzMzIDIuMzMzMDFIMTAuNSIgc3Ryb2tlPSIjRkY2OTAwIiBzdHJva2Utd2lkdGg9IjEuMTY2NjciIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNMi4zMzM2NiAxMi44MzMzQzIuOTc3OTkgMTIuODMzMyAzLjUwMDMzIDEyLjMxMSAzLjUwMDMzIDExLjY2NjdDMy41MDAzMyAxMS4wMjIzIDIuOTc3OTkgMTAuNSAyLjMzMzY2IDEwLjVDMS42ODkzMyAxMC41IDEuMTY2OTkgMTEuMDIyMyAxLjE2Njk5IDExLjY2NjdDMS4xNjY5OSAxMi4zMTEgMS42ODkzMyAxMi44MzMzIDIuMzMzNjYgMTIuODMzM1oiIHN0cm9rZT0iI0ZGNjkwMCIgc3Ryb2tlLXdpZHRoPSIxLjE2NjY3IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xXzY0MiI+CjxyZWN0IHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgZmlsbD0id2hpdGUiLz4KPC9jbGlwUGF0aD4KPC9kZWZzPgo8L3N2Zz4K);
  display: block;
  width: 14px;
  height: 14px;
}
.a3-who-we-are__description {
  font-style: normal;
  font-weight: 500;
  font-size: 24px;
  line-height: 180%;
  color: #000;
  margin-bottom: 0;
}
.a3-who-we-are__link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  font-size: 24px;
  text-decoration: underline;
  transition: 0.3s ease;
  margin-top: 15px !important;
}
.a3-who-we-are__link:hover {
  color: var(--primary-hover);
}
.a3-who-we-are__link:hover::after {
  transform: translateX(6px);
}
.a3-why-choose-us {
  padding: 96px 0;
  background: #fff;
}
.a3-why-choose-us__content {
  max-width: 560px;
}
.a3-why-choose-us__heading {
  margin-bottom: 30px;
  font-weight: 400;
  font-size: 56px;
}
.a3-why-choose-us__description {
  font-size: 17px ;
  margin-bottom: 66px;
  color: #52525B;
}
.a3-why-choose-us__description p:last-child {
  margin-bottom: 0;
}
.a3-why-choose-us .col-lg-6 {
    margin-top: 0px;
}
.a3-why-choose-us__points {
  margin: 0;
  padding: 0;
  list-style: none;
}
.a3-why-choose-us__points li {
  position: relative;
  padding-left: 34px;
  margin-bottom: 28px;
  line-height: 1.8;
  font-size: 15px;
  color: #3F3F46;
  font-weight: 500;
}
.a3-why-choose-us__points li:last-child {
  margin-bottom: 0;
}
.a3-why-choose-us__points li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 3px;
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #fff4ec;
  color: #ff6b00;
  font-size: 11px;
  font-weight: 700;
}
.a3-why-choose-us__media {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  box-shadow: 0 25px 60px rgba(0, 0, 0, 0.12);
}
.a3-why-choose-us__media img {
  width: 100%;
  display: block;
  border-radius: 5px !important;
}
.a3-why-choose-us__badge {
  position: absolute;
  left: 20px;
  bottom: 20px;
  background: #fff;
  padding: 18px 22px;
  border-left: 4px solid #FF6900;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
}
.a3-why-choose-us__badge-number {
  font-style: normal;
  font-weight: 700;
  font-size: 36px;
  line-height: 36px;
  color: #18181B;
}
.a3-why-choose-us__badge-label {
  margin-top: 8px;
  max-width: 140px;
  font-style: normal;
  font-weight: 700;
  font-size: 10px;
  line-height: 16px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #3F3F46;
}
.a3-tech-capabilities {
  padding: 128px 0;
  background: #f8f8f8;
}
.a3-tech-capabilities .col-md-7{
  margin-top: 0px;
}
.a3-tech-capabilities__heading {
  line-height: 1.1;
  font-weight: 400;
  margin-bottom: 20px;
  font-size: 56px;
}
.a3-tech-capabilities__description {
  max-width: 650px;
  color: #3F3F46;
  margin-bottom: 60px;
  font-family: Inter;
  font-weight: 300;
  font-style: Light;
  font-size: 19px;
  leading-trim: NONE;
  line-height: 34.2px;
  letter-spacing: 0%;
  vertical-align: middle;
}
.a3-tech-capabilities__tab-div{
  background: #fff;
  border-radius: 20px;
  padding: 50px 15px;
  box-shadow: 0 20px 50px rgba(0, 0, 0, 0.08);
  height: 100% !important;
  display: flex;
  justify-content: center;
  align-items: center;
}
.a3-tech-capabilities__tab-list {
  overflow: auto;
  height: 100%;
  max-height: 480px;
  flex-wrap: nowrap;
}
.a3-tech-capabilities__tab-list::-webkit-scrollbar {
    width: 1px;
    height: 1px; /* For horizontal scrollbar */
}

.a3-tech-capabilities__tab-list::-webkit-scrollbar-track {
    background: #E4E4E7;
}

.a3-tech-capabilities__tab-list::-webkit-scrollbar-thumb {
    background: #E4E4E7;
    border-radius: 0;
}

.a3-tech-capabilities__tab-list::-webkit-scrollbar-thumb:hover {
    background: #E4E4E7;
}
.a3-tech-capabilities__panel li span {
  color: #18181b;
  font-weight: 700;
  display: block;
  font-size: 20px;
}
.a3-tooling__filters .nav-link.active svg path,
.a3-tooling__filters .nav-link:hover svg path {
  stroke: #ff6900;
}
.a3-tech-capabilities__tab-btn {
  display: flex;
  align-items: center;
  justify-content: start !important;
  gap: 13px;
  width: 100%;
  padding: 22px 5px;
  background: 0 0;
  border: 0;
  border-bottom: 1px solid #F4F4F5;
  color: #71717A;
  font-weight: 600;
  text-align: left !important;
  border-radius: 0 !important;
  counter-increment: btn-counter;
  position: relative;
  font-size: 20px;
  min-height: 60px;
}
.a3-tech-capabilities__tab-btn::before {
  content: "[" counter(btn-counter) "]";
  font-weight: 700;
  font-size: 13px;
  color: #22222287 !important;
}
.a3-tech-capabilities__tab-btn:last-child {
  border-bottom: 0;
}
.a3-tech-capabilities__tab-btn img {
  width: 20px;
}
.a3-tech-capabilities__tab-btn.active,
.a3-tech-capabilities__tab-btn:hover {
  background: #fff !important;
  color: #18181b !important;
  box-shadow: none !important;
}
.a3-tooling__filters .nav-link.active svg path, .a3-tooling__filters .nav-link:hover svg path: {
  stroke: #ff6900;
}
.a3-tech-capabilities__tab-btn.active span {
  font-weight: 700;
}
.a3-tech-capabilities__panel {
  display: grid;
  grid-template-columns: 1fr 280px;
  grid-template-areas: "image image" "card list";
  gap: 20px;
}
.a3-tech-capabilities__panels_btm {
  display: flex;
  gap: 20px !important;
}
.a3-tech-capabilities__panels_btm > div {
  width: 50%;
}
.a3-tech-capabilities__panel > img {
  grid-area: image;
  width: 100%;
  height: 280px;
  object-fit: cover;
  border-radius: 20px;
}
.a3-tech-capabilities__card-wrap {
  grid-area: card;
}
.a3-tech-capabilities__panel > ul {
  grid-area: list;
  
}
.a3-tech-capabilities__card {
  background: linear-gradient(135deg, #ff6900 0, #f54900 100%);
  color: #fff;
  border-radius: 20px;
  padding: 40px;
  height: 100%;
  min-height: 290px;
  display: flex;
  flex-direction: column;
  box-shadow: 0px 25px 50px -12px #00000040;
}
.a3-tech-capabilities__card-icon {
  width: 42px;
  margin-bottom: 30px;
}
.a3-tech-capabilities__card h3 {
  color: #fff;
  font-size: 22px;
  margin-bottom: 20px;
}
.a3-tech-capabilities__card p {
  color: #fff;
  opacity: 0.95;
  line-height: 1.8;
  font-size: 14px;
}
.a3-tech-capabilities__panel ul {
  background: #fff;
  background-image: url(https://olivedrab-cassowary-363284.hostingersite.com/wp-content/uploads/2026/08/Container.svg);
  background-position: bottom right;
  background-size: auto;
  background-repeat: no-repeat;
  border-radius: 20px;
  padding: 35px;
  margin: 0;
  list-style: disc;
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.08);
  width: 100%;
}
.a3-tech-capabilities__panel li {
  margin-bottom: 20px;
  color: #3F3F46;
  line-height: 1.7;
  font-size: 14px ;
}
.a3-tech-capabilities__panel li:last-child {
  margin-bottom: 0;
}
.a3-tech-capabilities__card-slider {
  overflow: hidden;
}
.a3-tech-capabilities__card-arrows {
  display: flex;
  gap: 5px;
  position: absolute;
  bottom: 10px;
  left: 30px;
}
.a3-tech-capabilities__card-arrow {
  width: 46px;
  height: 46px;
  color: #f8f8f8;
  cursor: pointer !important;
  background: 0 0;
  padding: 0 !important;
  font-size: x-large;
}
.a3-tech-capabilities__card-slider,
.a3-tech-capabilities__card-slider .slick-list,
.a3-tech-capabilities__card-slider .slick-slide,
.a3-tech-capabilities__card-slider .slick-slide > div,
.a3-tech-capabilities__card-slider .slick-track,
.a3-tech-capabilities__card-wrap {
  height: 100% !important;
}
.a3-tech-capabilities__card-slider .slick-track {
  display: flex;
}
.a3-tech-capabilities__card-slider .slick-slide {
  display: flex !important;
  height: auto;
}
.a3-tech-capabilities__card-slider .slick-slide > div {
  width: 100%;
  display: flex;
}
.a3-tech-capabilities__card {
  height: 100%;
  width: 100%;
}
.a3-tooling {
  /* 128 was an outlier - every neighbouring band uses 100 or less, and with
     the pager hidden on desktop it read as dead space under the cards. */
  padding: 64px 0;
  background: #fff;
  border-bottom: solid 1px #eee;
}
.a3-tooling__inner {
  max-width: 1320px;
}
.a3-tooling__eyebrow {
  display: inline-block;
  color: var(--primary);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  margin-bottom: 18px;
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
}
.a3-tooling__eyebrow:before {
  width: 8px;
  height: 8px;
  display: block;
  background: #ff6900;
  content: "";
}
.a3-tooling__heading {
  font-size: 48px;
  line-height: 1.15;
  font-weight: 400;
  color: #202124;
  margin-bottom: 25px;
}
.a3-tooling__highlight {
  color: var(--primary);
  font-weight: 400;
}
.a3-tooling__description {
  max-width: 760px;
  color: #52525B;
  font-size: 18px;
  line-height: 29.25px;
  margin-bottom: 60px;
}
.a3-tooling__filters {
  display: flex;
  align-items: center;
  gap: 30px;
  border-bottom: 1px solid #e9e9e9;
  margin-bottom: 25px;
  overflow-x: auto;
  white-space: nowrap;
  flex-wrap: nowrap;
}
.a3-tooling__filters::-webkit-scrollbar {
  display: none;
}
.a3-tooling__filters .nav-link {
  border: none;
  background: 0 0;
  color: #52525B;
  padding: 0 0 10px;
  position: relative;
  transition: 0.3s;
  display: flex;
  font-family: Inter;
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  letter-spacing: -0.35px;
  text-align: center;
  vertical-align: middle;
}
.a3-tooling__filters .nav-link:hover {
  color: var(--primary);
}
.a3-tooling__filters .nav-link.active {
  background: 0 0;
  color: var(--primary);
  font-weight: 600;
}
.a3-tooling__filters .nav-link.active:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 100%;
  height: 2px;
  background: var(--primary);
}
.a3-tooling__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 28px;
}
.a3-tooling__card {
  background: #fff;
  border: 1px solid #E4E4E7CC;
  padding: 24px;
  transition: 0.35s;
  height: 100%;
  display: flex;
  flex-direction: column;
}
.a3-tooling__card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.08);
  /* border-color: #fff; */
}
.a3-tooling__card img {
  width: 28px;
  height: 28px;
  object-fit: contain;
}
.a3-tooling__card h4 {
  font-size: 18px;
  font-weight: 600;
  color: #18181B;
  margin: 0 0 18px;
  line-height: 1.2;
  position: relative;
}
.a3-tooling__card h4:after {
  content: "";
  display: block;
  width: 24px;
  height: 3px;
  background: var(--primary);
  margin-top: 12px;
}
.a3-tooling__card p {
  color: #27272A;
  line-height: 1.9;
  font-size: 14px;
  margin-bottom: 10px;
  flex-grow: 1;
}
.a3-tooling__badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 20px;
  padding: 5px 10px;
  color: var(--primary);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  width: fit-content;
}
.a3-tooling__badge:before {
  content: "★";
  font-size: 10px;
}
.a3-tooling__icon {
  width: 56px;
  height: 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fafafa;
  border: 1px solid #efefef;
  margin-bottom: 24px;
  box-shadow: 0px 1px 3px 0px #0000001A;
}
.tab-pane.fade {
  transition: opacity 0.3s ease;
}
/* Slick inline-styles a width on the track and on every slide, computed from
 * slidesToShow. Three `!important` width overrides used to sit here and beat
 * all of it:
 *
 *   .slick-track  width: 100% !important       track forced to the container
 *   .slick-slide  width: max-content !important slide sized by its content
 *   .slick-slide>div max-width: 300px !important
 *
 * With those in place slidesToShow and every responsive breakpoint were inert -
 * slides came out ~324px at any viewport. A tab holding two cards therefore
 * covered 648px of a 1314px row and left the rest blank, and on a phone the
 * track was narrower than one slide. Removing them lets Slick do the sizing it
 * is being asked to do; the 12px gutter stays, since that is presentation. */
.a3_tool_slider .slick-track {
  display: flex;
  /* slick.css ships `margin-left: auto; margin-right: auto` on the track, which
     only bites when the track is narrower than the list - i.e. exactly the
     short tabs this section is full of. A one-card tab came out floating in
     the middle of the row, lined up with nothing. Pinned left, that card sits
     in the first of the four column positions, flush with the eyebrow, the
     heading and the first tab. A tab with more cards than fit is unaffected:
     its track is wider than the list, so `auto` was already doing nothing. */
  margin-left: 0;
  margin-right: auto;
}
.a3_tool_slider .slick-slide {
  height: auto;
  display: flex !important;
  padding: 20px 12px;
}
.a3_tool_slider .slick-slide > div {
  width: 100%;
  display: flex;
}
.a3_tool_slider .a3-tooling__card {
  width: 100%;
  height: 100%;
}
.a3_tool_slider .slick-list {
  margin: 0 -12px;
}

/* Tooling slider dots. Grey circles, active one an orange pill - the same
 * convention as the testimonials and resources sliders, so the theme reads
 * consistently. Lives here rather than in a refinements file because the
 * slider itself is defined here and is used on four templates: the services
 * listing, the home page, the case studies listing and a case study.
 *
 * global.css has to be answered twice: it floors every button at 56px and sets
 * border-radius: 0 !important, and a slick dot is a button - without the
 * override the circles and the pill all render as squares. */
.a3_tool_slider .slick-dots {
  position: static;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  /* The slide already carries 20px of bottom padding, so the pager only needs
     the difference - 24 on top of that read as a hole under the cards. */
  margin: 4px 0 0;
  padding: 0;
  list-style: none;
}

.a3_tool_slider .slick-dots li {
  width: auto;
  height: auto;
  margin: 0;
}

/* One page of slides needs no pager - Slick still draws a single dot. Hiding
 * the li alone leaves the ul's 24px top margin behind, so take the whole list
 * out of flow instead. */
.a3_tool_slider .slick-dots:has(li:only-child) {
  display: none;
}

.a3_tool_slider .slick-dots li:only-child {
  display: none;
}

.a3_tool_slider .slick-dots li button:before {
  display: none;
}

.a3_tool_slider .slick-dots li button {
  display: block;
  width: 8px;
  height: 8px;
  min-height: 0;
  padding: 0;
  border: 0;
  border-radius: 999px !important;
  background: #d4d4d8;
  font-size: 0;
  line-height: 0;
  text-indent: -9999px;
  overflow: hidden;
  cursor: pointer;
  transition:
    width 0.3s cubic-bezier(0.22, 0.85, 0.28, 1),
    background-color 0.3s ease;
}

.a3_tool_slider .slick-dots li.slick-active button {
  width: 24px;
  background: var(--primary, #ff6900);
}

.a3_tool_slider .slick-dots li button:hover,
.a3_tool_slider .slick-dots li button:focus-visible {
  background: var(--primary, #ff6900);
}

@media (prefers-reduced-motion: reduce) {
  .a3_tool_slider .slick-dots li button {
    transition: none;
  }
}
.a3-secure-compliant {
  padding: 100px 0;
  border-bottom: solid 1px #eee;
}
.a3-secure-compliant__heading {
  font-weight: 400;
  font-size: 48px;
}
.a3-secure-compliant__description{
  max-width: 672px;
  font-weight: 400;
  font-size: 18px;
  line-height: 29px;
  color: #52525B;
}
.a3-secure-compliant__logos {
  margin-top: 10px;
}
.a3-secure-compliant__logo-item {
  display: flex !important;
  justify-content: start;
  align-items: center;
  padding: 0px;
  overflow: visible;
}
.a3-secure-compliant__logo-item img {
  max-width: 145px;
  width: 100%;
  height: 145px;
  object-fit: contain;
  transition: 0.3s;
}
.a3-secure-compliant__logo-item:hover img {
  transform: scale(1.05);
}
.a3_secure_slider .slick-track {
  display: flex;
  align-items: center;
  padding: 50px 10px;
}
.a3_secure_slider .slick-slide {
  height: auto;
}
.a3_secure_slider .slick-list {
  overflow: hidden;
}
.a3-faq {
  padding: 80px 0px;
  background: #fff;
  border-top: solid 1px #eee;
}
.a3-faq__eyebrow {
  display: block;
  color: #666;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 0.18em;
  margin-bottom: 18px;
}
.a3-faq__heading {
  margin-bottom: 70px;
  font-weight: 400;
  font-size: 48px;
  line-height: 55px;
  letter-spacing: -1.5px;
  color: #030303;
}
.a3-faq .container {
  max-width: 1024px;
  margin: auto;
}
.a3-faq__accordion .accordion-item {
  border: none;
  border-top: 1px solid #ddd;
  border-radius: 0;
  background: 0 0;
}
.a3-faq__accordion .accordion-item:last-child {
  border-bottom: 1px solid #ddd;
}
.a3-faq__accordion .accordion-button {
  background: 0 0;
  box-shadow: none;
  padding: 28px 0;
  font-size: 24px;
  font-weight: 400;
  color: #111;
}
.a3-faq__accordion .accordion-button:not(.collapsed) {
  background: 0 0;
  color: #111;
}
.a3-faq__accordion .accordion-button:focus {
  box-shadow: none;
}
.a3-faq__accordion .accordion-button::after {
  background: 0 0;
  content: "+";
  font-size: 32px;
  width: auto;
  height: auto;
  transform: none;
  font-weight: 300;
}
.a3-faq__accordion .accordion-button:not(.collapsed)::after {
  content: "−";
  transform: none;
}
.a3-faq__accordion .accordion-body {
  padding: 0 0 30px;
  font-size: 18px;
  line-height: 1.8;
  color: #666;
}
.a3-contact-cta {
  padding: 120px 0;
  background: #fff;
}
.a3-contact-cta__content {
  padding-right: 40px;
}
.a3-contact-cta__heading {
  margin-bottom: 25px;
  font-weight: 400;
  font-size: 48px;
  line-height: 55px;
  letter-spacing: -1.5px;
  color: #030303;
}
.a3-contact-cta__line {
  display: block;
  width: 70px;
  height: 4px;
  background: var(--primary);
  margin-bottom: 35px;
}
.a3-contact-cta__description {
  font-weight: 400;
  font-size: 18px;
  line-height: 29px;
  color: #52525B;
  margin-bottom: 50px;
}
.a3-contact-cta__image {
  width: 100%;
  display: block;
  object-fit: cover;
}
.a3-contact-cta__form {
padding: 40px;
isolation: isolate;
background: #FFFFFF;
border: 1px solid #E4E4E7;
box-shadow: 0px 25px 50px -12px rgba(228, 228, 231, 0.5);
}
.a3-contact-cta__form-heading {
  font-weight: 700;
  font-size: 30px;
  line-height: 36px;
  color: #18181B;
  margin-bottom: 40px;
}
.a3-contact-cta .form-control,
.a3-contact-cta .form-select {
  border: none;
  border-bottom: 1px solid #ddd;
  border-radius: 0;
  padding: 16px 0 14px 0;
  font-size: 16px;
  box-shadow: none;
  color: #71717A;
}
.a3-contact-cta textarea {
  min-height: 60px;
  height: 110px !important;
}
.a3-contact-cta .form-control:focus,
.a3-contact-cta .form-select:focus {
  border-color: var(--primary);
  box-shadow: none;
}
.a3-phone-group {
  display: flex;
  align-items: center;
  gap: 10px;
}
.a3-phone-group p {
  margin-bottom: 0 !important;
}
.a3-country-code {
  white-space: nowrap;
  margin-right: 15px;
  font-weight: 600;
}
.a3-phone-group .form-control {
  border: none;
  margin: 0;
  border-bottom: 1px solid #ddd;
  padding-left: 105px !important;
}
.a3-file-upload {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 1px solid #ddd;
  padding-bottom: 12px;
  cursor: pointer;
  position: relative;
}
.a3-file-upload input {
  border: none;
  max-width: 100%;
}
.a3-contact-points {
  list-style: none;
  padding: 0;
  margin: 0;
}
.a3-contact-points li {
  display: flex;
  align-items: center;
  margin-bottom: 12px;
  color: #444;
}
.a3-contact-points li p {
  margin-bottom: 0 !important;
}
.a3-contact-points li::before {
  content: "";
  color: var(--primary);
  font-weight: 700;
  margin-right: 10px;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwXzFfMTA1NykiPgo8cGF0aCBkPSJNMTUuMDAwMyA1TDUuODMzNjYgMTQuMTY2N0wxLjY2Njk5IDEwIiBzdHJva2U9IiNGRjY5MDAiIHN0cm9rZS13aWR0aD0iMS42NjY2NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xOC4zMzMgOC4zMzM5OEwxMi4wODMgMTQuNTg0TDEwLjgzMyAxMy4zMzQiIHN0cm9rZT0iI0ZGNjkwMCIgc3Ryb2tlLXdpZHRoPSIxLjY2NjY3IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8ZGVmcz4KPGNsaXBQYXRoIGlkPSJjbGlwMF8xXzEwNTciPgo8cmVjdCB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==);
  width: 20px;
  height: 20px;
}
.col-12.acceptancefield{
  margin-top: 35px;
}
.frm-btn-div{
  border-top:1px solid #e4e4e78a ;
}
input.wpcf7-form-control.wpcf7-submit {
  width: auto;
  background-color: var(--primary) !important;
  color:#fff !important;
}
input.wpcf7-form-control.wpcf7-submit:hover{
  background-color: var(--primary-hover) !important;
  color:#fff !important;
}
.acceptancefield span.wpcf7-list-item {
  margin: 0 !important;
}
.acceptancefield p {
  margin-bottom: 0 !important;
  line-height: normal;
}
.acceptancefield span.wpcf7-list-item label {
  display: flex !important;
  align-items: center;
  gap: 10px;
}
.acceptancefield span.wpcf7-list-item label input {
  width: 14px;
  height: 14px;
  border-radius: 0;
}
.a3-btn {
  border: none;
  padding: 16px 45px;
  font-weight: 600;
  transition: 0.3s;
}
.a3-btn:hover {
  background: #e65a00;
}
.a3-file-upload span {
  display: block;
  font-size: 15px !important;
  width: max-content;
  position: static;
}
.a3-testimonials {
  padding: 100px 0;
  background: #fafafa;
}
.a3-file-upload input.wpcf7-form-control.wpcf7-file {
  position: absolute;
  left: 0;
  top: 0;
  padding: 0;
  opacity: 0;
}
.a3-file-upload br {
  display: none;
}
.a3-file-upload:after {
  content: "";
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEwIDIuNVYxMi41IiBzdHJva2U9IiNGRjY5MDAiIHN0cm9rZS13aWR0aD0iMS42NjY2NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xNC4xNjYzIDYuNjY2NjdMOS45OTk2NyAyLjVMNS44MzMwMSA2LjY2NjY3IiBzdHJva2U9IiNGRjY5MDAiIHN0cm9rZS13aWR0aD0iMS42NjY2NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0xNy41IDEyLjVWMTUuODMzM0MxNy41IDE2LjI3NTQgMTcuMzI0NCAxNi42OTkzIDE3LjAxMTggMTcuMDExOEMxNi42OTkzIDE3LjMyNDQgMTYuMjc1NCAxNy41IDE1LjgzMzMgMTcuNUg0LjE2NjY3QzMuNzI0NjQgMTcuNSAzLjMwMDcyIDE3LjMyNDQgMi45ODgxNiAxNy4wMTE4QzIuNjc1NTkgMTYuNjk5MyAyLjUgMTYuMjc1NCAyLjUgMTUuODMzM1YxMi41IiBzdHJva2U9IiNGRjY5MDAiIHN0cm9rZS13aWR0aD0iMS42NjY2NyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=);
  width: 20px;
  height: 20px;
}
.acceptancefield .wpcf7-form-control-wrap {
  display: block;
}
.acceptancefield span.wpcf7-list-item label input {
  min-width: 18px;
  height: 20px;
  appearance: none;
  border: none;
  padding: 0;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAxOSAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMSIgeT0iMSIgd2lkdGg9IjE2LjQiIGhlaWdodD0iMTgiIGZpbGw9IndoaXRlIiBzdHJva2U9IiNENEQ0RDgiIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4K);
  margin: 0 !important;
  display: block;
}
.acceptancefield span.wpcf7-list-item label input:checked {
  min-width: 20px;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMjAiIHZpZXdCb3g9IjAgMCAyMCAyMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHJlY3QgeD0iMSIgeT0iMSIgd2lkdGg9IjE4IiBoZWlnaHQ9IjE4IiBmaWxsPSIjRkY2OTAwIi8+CjxyZWN0IHg9IjEiIHk9IjEiIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgc3Ryb2tlPSIjRkY2OTAwIiBzdHJva2Utd2lkdGg9IjIiLz4KPHBhdGggZD0iTTE0IDdMOC41IDEyLjVMNiAxMCIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+Cg==);
}
@media(max-width:767px){
  .a3-contact-points li::before{
      width: 30px;
      height: 30px;
      background-position: center;
      background-repeat: no-repeat;
  }
  .a3-contact-points li p{
    width: calc(100% - 30px);
  }
}
.a3-testimonials__header {
  margin-bottom: 60px;
}
.a3-testimonials__heading {
  font-weight: 400;
  font-size: 48px;
  line-height: 55px;
  letter-spacing: -1.5px;
  color: #18181B;
}
.a3-testimonials__heading span {
  color: var(--primary);
}
/* .a3-testimonials-slider {
  overflow: hidden;
} */
@media (min-width:1024px) {
  .a3-testimonials-slider .slick-dots{
    bottom: -45px !important;
    display: none !important;
  }
}
.a3-testimonials__card {
  height: 100%;
  border: 1px solid #eaeaea;
  background: #fff;
  display: flex;
  flex-direction: column;
}
.a3-testimonials__quote {
  flex: 1;
  padding: 42px;
  min-height: 240px;
  font-weight: 300;
  font-size: 15px;
  line-height: 24px;
  letter-spacing: -0.375px;
  color: #3F3F46;
}
.a3-testimonials__author {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 25px;
  border-top: 1px solid #c9ccd1;
}
.a3-testimonials__name {
  font-style: normal;
  font-weight: 600;
  font-size: 18px;
  line-height: 28px;
  letter-spacing: -0.45px;
  color: #18181B;
}
.a3-testimonials__designation {
  font-size: 12px;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #8a8a8a;
}
.a3-testimonials__linkedin {
  color: #0077b5;
  font-size: 26px;
}
.a3-testimonials__image {
  overflow: hidden;
}
.a3-testimonials__image img {
  width: 80%;
  margin: auto;
  aspect-ratio: 1/1;
  object-fit: cover;
  display: block;
  transition: 0.4s;
}
.a3-testimonials__card:hover img {
  transform: scale(1.05);
}
.a3-testimonials .swiper-pagination {
  margin-top: 50px;
  position: relative;
}
.a3-testimonials .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
}
.a3-testimonials .swiper-pagination-bullet-active {
  background: var(--primary);
}
.a3-case-studies {
  padding: 120px 0;
  background: #fff;
}
.a3-case-studies__heading {
  max-width: 800px;
  margin: 20px 0;
  font-weight: 400;
  font-size: 48px;
}
.a3-case-studies__heading span {
  color: var(--primary);
}
.a3-case-studies__description {
  max-width: 720px;
  margin-bottom: 50px;
  font-size: 16px;
  color: #27272A;
}
.a3-case-study-card {
  border-bottom: 1px solid #c9ccd1;
  padding: 70px 0;
}
.a3-case-study-card__image {
  overflow: hidden;
}
.a3-case-study-card__image img {
  width: 100%;
  display: block;
  object-fit: cover;
}
.a3-case-study-card__content {
  margin-left: auto;
}
.a3-case-study-card__link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-decoration: none;
  color: #222;
  margin-bottom: 30px;
  gap: 20px;
}
.a3-case-study-card__link h3 {
  margin: 0;
  font-size: 48px;
  font-weight: 400;
}
.a3-case-study-card__link svg {
  flex-shrink: 0;
  color: #8b8b8b;
  transition: 0.3s;
  width: 35px;
  height: 35px;
}
.a3-case-study-card__link:hover svg {
  color: var(--primary);
  transform: translate(4px, -4px);
}
.a3-case-study-card__content p {
  margin-bottom: 20px;
}
.a3-case-study-card__impact {
  margin-bottom: 35px;
  font-size: 16px;
  color: #030303;
}
.a3-case-study-card__impact strong {
  font-weight: 700;
}
.a3-case-study-card__category {
  display: inline-flex;
  padding: 10px 18px;
  border: 1px solid var(--primary);
  color: var(--primary);
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 1px;
  margin-bottom: 40px;
}
.a3-case-study-card__tags {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}
.a3-case-study-card__tags span {
  padding: 10px 18px;
  border: 1px solid #ddd;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.a3-explore-services {
  padding: 120px 0;
  background: #fafafa;
  border-bottom: solid 1px #eee;
}
.a3-case-study-card:last-child {
  border: none;
  padding-bottom: 0;
}
.slick-initialized
  .slick-slide:nth-child(even)
  .a3-testimonials__image::before {
  background: #f4f4f5;
}
.a3-testimonials__card .a3-testimonials__info {
  display: flex;
  justify-content: space-between;
}
.a3-testimonials__card .a3-testimonials__title {
  text-transform: uppercase;
  font-style: normal;
  font-weight: 600;
  font-size: 10px;
  line-height: 15px;
  color: #71717A;
}
.a3-explore-services__header {
  margin-bottom: 70px;
}
.a3-explore-services__heading {
  margin-top: 15px;
  font-weight: 500;
  font-size: 48px;
  line-height: 53px;
  text-align: center;
  letter-spacing: -1.2px;
  color: #18181B;
}
.a3-service-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  min-height: 175px;
  padding: 35px;
  background: #fff;
  border: 1px solid #E4E4E7;
  border-radius: 22px;
  text-decoration: none;
  color: #222;
  transition: 0.35s;
}
/* ---------------------------------------------------------------------------
 * EQUAL CARD HEIGHTS  (Explore Our Services - 317 pages)
 *
 * Two separate causes, both needed:
 *
 * 1. The card sat at its own content height inside a block-level Bootstrap
 *    column, so a two-line title made it 201px next to its 176px neighbours -
 *    a 25px step, exactly one line of the 25.5px desktop title. Making the
 *    column a flex container lets the card stretch to the column, and the row
 *    already stretches its columns to the tallest in that line.
 *
 * 2. Stretching alone only levels each ROW. A row of one-line titles still
 *    came out shorter than a row containing a two-line one. Reserving two
 *    lines on the title levels the whole grid instead.
 *
 * `2lh` rather than a pixel value because the title is 14px/1.35 at base and
 * 17px/25.5px above 992 - one number cannot serve both, and `lh` resolves
 * against whichever is in force. The px fallback ahead of it is the base-size
 * pair for anything that does not support the unit; such a browser still gets
 * level rows from the stretch above.
 *
 * Scoped to this section so no other `.row g-4` on the site is affected.
 * ------------------------------------------------------------------------- */
.a3-explore-services .row > [class*="col-"] {
  display: flex;
}

.a3-explore-services .a3-service-card {
  width: 100%;
}

.a3-explore-services .a3-service-card__title {
  min-height: 38px;
  min-height: 2lh;
  display: flex;
  align-items: center;
  justify-content: center;
}

.a3-service-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 20px 45px rgba(0, 0, 0, 0.08);
}
.a3-service-card__arrow {
  position: absolute;
  top: 22px;
  right: 22px;
  color: #cfcfcf;
  transition: 0.3s;
}
.a3-service-card__arrow svg{
  height:20px ;
  width:20px ;
}
.a3-service-card:hover .a3-service-card__arrow {
  color: var(--primary);
  transform: translate(3px, -3px);
}
.a3-service-card__icon {
  width: 48px;
  height: 48px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 28px;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.08);
}
.a3-service-card__icon img {
  width: 24px;
  height: 24px;
  object-fit: contain;
}
.a3-service-card__title {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.35;
}
.iti {
  width: 100%;
}
.iti__tel-input {
  width: 100%;
  border: none;
  border-bottom: 1px solid var(--a3-color-border, #ddd);
  padding: 10px 10px 10px 90px;
  font-size: 15px;
  background: 0 0;
}
.iti__tel-input:focus {
  outline: 0;
  border-bottom-color: var(--a3-color-orange, var(--primary));
}
.iti__selected-country {
  padding-left: 0;
}

.slick-next {
  right: 0;
}
.slick-prev {
  left: 0;
}
.a3-testimonials__image {
  position: relative;
  margin-top: 10px;
}
.a3-testimonials__image img {
  position: relative;
  z-index: 1;
}
.a3-testimonials__image:before {
  width: 595px;
  height: 595px;
  opacity: 0.85;
  border-radius: 5000px;
  content: "";
  background: #ff69001a;
  display: block;
  position: absolute;
  left: calc(-50% + 131px);
  top: calc(-50% - 160px);
}

@media (max-width: 1199px) {
  .a3-trusted-by__certs {
    grid-template-columns: repeat(5, 1fr);
  }
  .a3-tooling__grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .a3-why-choose-us .container {
    max-width: 1320px;
  }
}
@media (max-width: 991px) {
  .a3-secure-compliant__inner .col-md-8 {
    width: 100%;
  }
  .a3-hero {
    min-height: 400px;
    padding: 20px 0;
  }
  .a3-hero .a3-hero__overlay .col-md-7 {
    width: 100%;
    text-align: center;
  }
  .a3-hero .a3-hero__overlay .a3-hero__heading {
    font-size: 31px;
  }
  .a3-hero__inner {
    max-width: 100%;
  }
  .a3-hero__heading {
    font-size: 46px;
    letter-spacing: -1px;
  }
  .a3-hero__description {
    font-size: 18px;
    max-width: 100%;
    margin: 10px 0 20px 0;
  }
  .a3-hero__actions a.a3-btn {
    padding: 9px 20px;
    min-height: auto;
    justify-content: center;
  }
  .a3-talk {
    right: 30px;
    bottom: 30px;
  }
  .a3-trusted-by {
    padding: 50px 0;
  }
  .a3-trusted-by__logos {
    gap: 40px;
    margin-bottom: 60px;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow: auto;
    justify-content: start;
    padding: 0 20px;
  }
  .a3-trusted-by__certs {
    grid-template-columns: repeat(5, 1fr);
    gap: 15px;
    overflow: auto;
    padding: 0 10px;
  }
  .a3-trusted-by__certs .a3-trusted-by__cert {
    min-width: 190px;
    padding: 10px;
    border-radius: 10px;
  }
  .a3-trusted-by__cert img {
    margin: 0 auto 12px;
  }
  .a3-stats {
    padding: 80px 0;
  }
  .a3-stats__item,
  .col-lg-8 .a3-stats__item {
    min-height: 180px;
    margin-bottom: 20px;
  }
  .a3-stats__number {
    font-size: 56px;
  }
  .a3-who-we-are {
    padding: 50px 0;
  }
  .a3-why-choose-us .col-lg-7,
  .a3-why-choose-us .col-lg-6 {
    margin-top: 10px;
  }
  .a3-who-we-are__description {
    max-width: 100%;
    font-size: 20px;
  }
  .a3-why-choose-us__media img {
    width: 100%;
    display: block;
    height: 400px;
    object-fit: cover;
  }
  .a3-tech-capabilities__tab-div{
    padding: 10px !important;
  }
  .a3-tech-capabilities__tab-list {
    height: auto;
    flex-direction: row !important;
    flex-wrap: nowrap;
    overflow: auto;
    border-radius: 8px;
  }
  .a3-tech-capabilities__tab-list .a3-tech-capabilities__tab-btn {
    padding: 0 20px;
    white-space: nowrap;
  }
  .a3-who-we-are__link {
    font-size: 20px;
  }
  .a3-why-choose-us {
    padding: 80px 0;
  }
  .a3-why-choose-us__heading {
    font-size: 38px;
  }
  .a3-why-choose-us__content {
    max-width: 100%;
    margin-bottom: 40px;
  }
  .a3-tech-capabilities {
    padding: 80px 0;
  }
  .a3-tech-capabilities__heading {
    font-size: 38px;
  }
  .a3-tech-capabilities__panel {
    grid-template-columns: 1fr;
    grid-template-areas: "image" "card" "list";
  }
  .a3-tech-capabilities__panels_btm {
    flex-direction: column;
  }
  .a3-tech-capabilities__panels_btm > div {
    width: 100%;
  }
  .a3-tech-capabilities__tab-list {
    height: auto;
  }
  .a3-tooling {
    padding: 80px 0;
  }
  .a3-tooling__heading {
    font-size: 46px;
  }
  .a3-tooling__description {
    font-size: 18px;
  }
  .a3-tooling__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .a3-secure-compliant {
    padding: 80px 0;
  }
  .a3-secure-compliant__heading {
    font-size: 38px;
  }
  .a3-faq {
    padding: 70px 0;
  }
  .a3-faq__heading {
    font-size: 42px;
    margin-bottom: 50px;
  }
  .a3-faq__accordion .accordion-button {
    font-size: 22px !important;
  }
  .a3-contact-cta {
    padding: 80px 0;
  }
  .a3-contact-cta__heading {
    font-size: 42px !important;
  }
  .a3-contact-cta__content {
    padding-right: 0;
    margin-bottom: 40px;
  }
  .a3-testimonials {
    padding: 80px 0;
    background: #fafafa;
  }
  .a3-testimonials__heading {
    font-size: 38px;
  }
  .a3-case-studies {
    padding: 80px 0;
  }
  .a3-case-studies__heading {
    font-size: 42px;
  }
  .a3-case-study-card {
    padding: 50px 0;
  }
  .a3-case-study-card__content {
    margin: 40px 0 0;
    max-width: 100%;
  }
  .a3-explore-services {
    padding: 50px 0;
    background: #eee;
  }
  .a3-explore-services__heading {
    font-size: 38px;
  }
  .a3-service-card {
    min-height: 200px;
    margin-bottom: 24px;
  }
  .a3-trusted-by__heading {
    margin-bottom: 50px;
  }
  .a3-explore-services__header {
    margin-bottom: 40px;
  }
  .a3-case-study-card__impact,
  .a3-case-study-card__category {
    margin-bottom: 15px;
  }
  .a3-testimonials {
    padding: 0px 0;
  }
  .a3-contact-cta__form {
    padding: 35px;
  }

  .a3-case-study-card__tags span {
    padding: 5px 12px;
    border: 1px solid #ddd;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
  }
  .wpcf7-form .row > * {
    margin-top: 0;
  }
  .a3-file-upload br {
    display: none;
  }
  .a3-file-upload .wpcf7-form-control-wrap {
    width: auto;
  }
  .a3-file-upload .wpcf7-form-control-wrap .wpcf7-form-control.wpcf7-file {
    padding: 0;
  }
  .row.g-5 {
    margin-right: -15px;
    margin-left: -15px;
  }
  .a3-case-study-card .col-lg-6 {
    padding: 0;
  }
}
@media (max-width: 767px) {
  .a3-hero {
    min-height: 410px;
  }
  .a3-hero__overlay {
    align-items: flex-start;
    padding-top: 20px;
    position: static;
    background: transparent;
  }
  .a3-hero__badge {
    margin: 0 auto 20px;
  }
  .a3-hero__heading {
    font-size: 32px;
    line-height: 1.2;
    letter-spacing: -0.5px;
  }
  .a3-hero__description {
    font-size: 14px;
    margin: 20px auto 30px;
    text-align: center;
    max-width: 100%;
  }
  .a3-hero__actions {
    flex-direction: column;
    align-items: stretch;
  }
  .a3-hero__actions .a3-btn {
    text-align: center;
    justify-content: center;
  }
  .a3-talk {
    display: none;
  }
  .a3-trusted-by {
    padding: 50px 0;
  }
  .a3-trusted-by__heading {
    margin-bottom: 30px;
    font-size: 26px;
  }
  .a3-trusted-by__logos-wrap{
    margin-bottom: 34px !important;
  }
  .a3-trusted-by__logos {
    gap: 20px;
    margin-bottom: 40px;
  }
  .a3-trusted-by__logo {
    max-height: 28px;
  }
  .a3-trusted-by__cert-heading {
    gap: 12px;
    font-size: 12px;
    letter-spacing: 1px;
    text-align: center;
  }
  .a3-trusted-by__cert-heading::after,
  .a3-trusted-by__cert-heading::before {
    width: 30px;
  }
  .a3-trusted-by__cert img {
    height: 50px;
    margin-bottom: 12px;
  }
  .a3-stats {
    padding: 20px 0;
  }
  .a3-stats__item {
    min-height: auto;
    padding: 25px 20px;
    border-radius: 16px;
    margin-bottom: 15px;
  }
  .a3-stats__number {
    font-size: 36px;
    margin-bottom: 8px;
  }
  .a3-stats__icon {
    width: 50px;
    height: 50px;
    right: 15px;
    bottom: 15px;
  }
  .a3-who-we-are {
    padding: 50px 0;
  }
  .a3-who-we-are__description {
    font-size: 16px;
  }
  .a3-who-we-are__description p {
    margin-bottom: 20px;
  }
  .a3-who-we-are__link {
    font-size: 18px;
  }
  .a3-why-choose-us {
    padding: 50px 0;
  }
  .a3-why-choose-us__heading {
    font-size: 30px;
    margin-bottom: 25px;
  }
  .a3-why-choose-us__description {
    margin-bottom: 30px;
  }
  .a3-why-choose-us__points li {
    margin-bottom: 20px;
  }
  .a3-why-choose-us__badge {
    left: 15px;
    bottom: 15px;
    padding: 12px 15px;
  }
  .a3-why-choose-us__badge-number {
    font-size: 32px;
  }
  .a3-tech-capabilities {
    padding: 50px 0;
  }
  .a3-tech-capabilities__heading {
    font-size: 30px;
  }
  .a3-tech-capabilities__tab-btn {
    padding: 16px 20px;
    font-size: 15px;
  }
  .a3-tech-capabilities__card {
    padding: 25px;
  }
  .a3-tech-capabilities__card h3 {
    font-size: 24px;
  }
  .a3-tech-capabilities__panel ul {
    padding: 25px;
  }
  .a3-tech-capabilities__panel > img {
    height: auto;
    max-height: 220px;
  }
  .a3-tooling {
    padding: 50px 0;
  }
  .a3-tooling__heading {
    font-size: 30px;
  }
  .a3-tooling__description {
    font-size: 16px;
    margin-bottom: 35px;
  }
  .a3-tooling__filters {
    gap: 20px;
    margin-bottom: 30px;
    overflow: hidden;
    align-items: start;
    overflow-x: auto;
  }
  .a3-tooling__filters .nav-link {
    font-size: 14px;
    display: block;
  }
  .a3-tooling__card {
    padding: 24px;
  }
  .a3-secure-compliant {
    padding: 50px 0 50px 0;
  }
  .a3-secure-compliant__heading {
    font-size: 30px;
  }
  .a3-secure-compliant__logos {
    margin-top: 35px;
  }
  .a3-secure-compliant__logo-item img {
    max-width: 130px;
    height: 70px;
  }
  .a3-faq {
    padding: 50px 0;
  }
  .a3-case-study-card__content {
    margin: 0px 0 0;
    max-width: 100%;
  }
  .a3-faq__heading {
    font-size: 30px;
    margin-bottom: 35px;
  }
  .a3-contact-cta {
    padding: 50px 0;
  }
  .a3-contact-cta__heading {
    font-size: 30px !important;
  }
  .a3-contact-cta__description {
    font-size: 16px;
    margin-bottom: 30px;
  }
  .a3-contact-cta__form {
    padding: 25px;
  }
  .a3-contact-cta__form-heading {
    font-size: 24px;
  }
  .a3-phone-group {
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
  }
  .a3-file-upload {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
  }
  .a3-testimonials {
    padding: 50px 0;
  }
  .a3-testimonials__heading {
    font-size: 24px;
    margin: 0;
  }
  .a3-testimonials__header {
    margin-bottom: 15px;
  }
  .a3-testimonials__quote {
    min-height: auto;
    padding: 25px 20px;
    font-size: 15px;
  }
  .a3-testimonials__author {
    padding: 15px 20px;
  }

  .a3-case-studies {
    padding: 50px 0;
  }
  .a3-case-studies__heading {
    font-size: 30px;
  }
  .a3-case-studies__description {
    margin-bottom: 40px;
    font-size: 16px;
  }
  .a3-case-study-card {
    padding: 40px 0;
  }
  .a3-case-study-card__link {
    gap: 15px;
  }
  .a3-case-study-card__link h3 {
    font-size: 26px;
  }
  .a3-explore-services {
    padding: 50px 0;
  }
  .a3-explore-services__heading {
    font-size: 30px;
  }
  .a3-explore-services__header {
    margin-bottom: 40px;
  }
  .a3-service-card {
    padding: 25px;
    min-height: 180px;
    margin-bottom: 0;
  }
  .a3-hero .a3-hero__overlay .a3-hero__heading {
    font-size: 21px;
    text-align: center;
  }
  .a3-case-study-card__category {
    font-size: 12px;
    padding: 5px 12px;
  }
}
@media (max-width: 575px) {
  .a3-tooling__grid {
    grid-template-columns: 1fr;
  }
  .a3-tooling__heading {
    font-size: 28px;
  }
  .a3-faq__accordion .accordion-button {
    font-size: 18px !important;
    padding: 20px 0;
  }
  .a3-faq__accordion .accordion-body {
    font-size: 16px;
  }
}



/* new secton css */


.industry-section {
    background: #fafafa;
    padding: 130px 0px 0px 0px;
    border-top:1px solid #E4E4E7 ;
}

 .section-title {
    max-width: 896px;
    font-weight: 500;
    font-size: 56px;
    line-height: 61.6px;
    letter-spacing: -1.4px;
    color: #18181B;
    margin:auto ;
}

.industry-section .title-line {
  margin: 24px auto;
  display: block;
  width: 96px;
  height: 4px;
  background: #FF6900;

}

 .section-desc {
  max-width: 815px;
  font-style: normal;
  font-weight: 300;
  font-size: 20px;
  line-height: 32.5px;
  color: #52525B;
  margin: auto;
}

.industry-card {
    display: block;
    position: relative;
    overflow: hidden;
    border-radius: 4px;
    text-decoration: none;
    color: #fff;
}

.industry-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: .5s;
    aspect-ratio: 1 / 1;
}

.industry-card .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, #09090B 0%, rgba(24, 24, 27, 0.5) 50%, rgba(24, 24, 27, 0) 100%);
}

.industry-card .content {
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 18px;
    z-index: 2;
    padding: 5px;
}

.industry-card h5 {
    margin-bottom: 15px;
    font-style: normal;
    font-weight: 700;
    font-size: 24px;
    line-height: 32px;
    color: #FF6900;
}

.industry-card p {
  font-style: normal;
  font-weight: 500;
  font-size: 18px;
  line-height: 23px;
  display: flex;
  align-items: center;
  color: #FFFFFF;
}

.industry-card:hover img {
    transform: scale(1.08);
}

.industry-card:hover .overlay {
    background: linear-gradient(
        to top,
        rgba(0,0,0,.92) 5%,
        rgba(0,0,0,.55) 45%,
        rgba(0,0,0,.20) 100%
    );
}

@media (max-width: 991px) {
     .section-title {
        font-size: 34px;
    }
    .industry-section{
      padding: 50px 0px;
    }
     .section-desc{
      font-size: 16px;
      line-height: normal;
    }
  }
  
  @media (max-width: 767px) {
     .section-title {
      font-size: 28px;
    }
     .section-desc{
      font-size: 16px;
      line-height: normal;
    }
}



/* ===========================
   Team Section
=========================== */

.team-section {
    padding: 98px 0;
    background: #fff;
}

.team-title {
    font-style: normal;
    font-weight: 500;
    font-size: 56px;
    line-height: 60px;
    color: #0F172B;
    margin-bottom: 30px !important;
}

/* ===========================
   Slick Slider
=========================== */

.team-slider {
    margin-top: 50px;
}

.team-slider .slick-list {
    margin: 0 -12px;
}

.team-slider .slick-slide {
    padding: 0 12px;
    height: inherit !important;
}

.team-slider .slick-track {
    display: flex;
}

/* ===========================
   Team Card
=========================== */

.team-card {
    display: block;
    text-decoration: none;
    color: inherit;
}

.team-image {
    position: relative;
    overflow: hidden;
    border-radius: 14px;
    background: #f5f5f5;
    width: 100%;
}

.team-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    transition: transform .45s ease;
}

.team-card:hover .team-image img {
    transform: scale(1.08);
}

.team-content {
    padding-top: 18px;
}

.team-content h4 {
    margin: 0 0 2px;
    font-weight: 600;
    font-size: 18px;
    line-height: 28px;
    color: #0F172B;
  }

.team-content span {
    display: block;
    font-style: normal;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
    color: #62748E;
}


/* ===========================
   Button
=========================== */

.team-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px;
    background: #FF6900;
    color: #fff;
    text-decoration: none;
    transition: .3s ease;
    font-weight: 500;
    font-size: 16px;
    line-height: 26px;
    color: #FFFFFF;
    min-width: 185px;
    margin-top: 44px !important;
}

.team-btn:hover {
    background: #e55f00;
    color: #fff;
}


/* ===========================
   Slick Dots
=========================== */

.team-slider .slick-dots {
    bottom: -45px;
}

.team-slider .slick-dots li button:before {
    font-size: 10px;
    color: #d0d0d0;
    opacity: 1;
}

.team-slider .slick-dots li.slick-active button:before {
    color: #FF6900;
}

@media (max-width: 991.98px) {

  .team-slider .slick-dots {
    position: static;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    width: 100%;
    height: auto;
    margin: 24px 0 0;
    padding: 0;

    list-style: none;
  }

  .team-slider .slick-dots li {
    width: auto;
    height: auto;
    margin: 0;
  }

  .team-slider .slick-dots li button:before {
    display: none;
  }

  .team-slider .slick-dots li button {
    display: block;
    width: 8px;
    height: 8px;
    padding: 0;
    min-height: 0;

    border: 0;
    border-radius: 999px !important;
    background: #d4d4d8;

    font-size: 0;
    line-height: 0;
    text-indent: -9999px;
    overflow: hidden;
    cursor: pointer;

    transition:
      width 0.3s cubic-bezier(0.22, 0.85, 0.28, 1),
      background-color 0.3s ease;
  }

  .team-slider .slick-dots li.slick-active button {
    width: 24px;
    background: var(--primary, #ff6900);
  }

  .team-slider .slick-dots li button:hover,
  .team-slider .slick-dots li button:focus-visible {
    background: var(--primary, #ff6900);
  }

  .team-slider .slick-list {
    overflow: hidden;
  }

  .team-slider .slick-slider {
    margin-bottom: 0;
  }
}
/* ===========================
   Responsive
=========================== */

@media (max-width: 1199px) {

    .team-slider .slick-prev {
        left: -15px;
    }

    .team-slider .slick-next {
        right: -15px;
    }

}

@media (max-width: 991px) {

    .team-section {
        padding: 80px 0;
    }

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

    .team-slider {
        margin-top: 40px;
    }

    .team-content h4 {
        font-size: 20px;
    }

}

@media (max-width: 767px) {

    .team-section {
        padding: 60px 0;
    }

    .team-title {
        text-align: center;
        font-size: 34px;
    }

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

    .team-content h4 {
        font-size: 18px;
    }

    .team-content span {
        font-size: 14px;
    }

    .team-slider .slick-prev,
    .team-slider .slick-next {
        display: none !important;
    }

}



/*==================================================
    Software Solutions Section
==================================================*/

.software-section {
    padding: 127.3px 0;
    background: #fff;
}
.software-section p.section-description{
  max-width: 855px;
  font-weight: 300;
  font-size: 20px;
  line-height: 32px;
  color: #3F3F46;
}
.software-section span.section-divider{
  width: 96px;
  height: 4px;
  display: block;
  margin: 24px   auto ;
  background: #FF6900;
}

/*==================================================
    Sticky Stack Wrapper
==================================================*/

.a3-stack-wrap {
    max-width: 1320px;
    margin: 70px auto 0;
    padding: 0 15px;
}


/*==================================================
    Sticky Card
==================================================*/

/*
 * The pin offset clears the sticky site header: 81px at >=1200px, 99px between
 * 992px and 1199px, plus a small gap for the card's top shadow.
 *
 * A fixed `top` only works while the whole card still fits in what is left of
 * the screen below the pin. When it doesn't, the card pins and everything past
 * the fold becomes permanently unreachable - there is nothing left to scroll.
 * The tallest card here measures 836px, and a 1920x1080 screen leaves ~918 CSS
 * px of viewport at 100% zoom but only ~525 at 175%, because browser zoom
 * scales the CSS viewport down while the card's height is content-driven. That
 * is why it cut off worse the further the user zoomed in.
 *
 * stack-cards.js lowers --a3-stack-pin per card when that happens, so the card
 * pins by its BOTTOM edge instead and the last line stays reachable. It only
 * ever writes a value smaller than the one here, so the stack behaves exactly
 * as before on any screen where the card already fits - and if the JS never
 * runs, this is still the original behaviour.
 *
 * Percentages can't do this in CSS alone: on a sticky box Chrome resolves a
 * percentage inset against the scrollport, not the containing block, so
 * `calc(100dvh - 100%)` is always 0. Hence the JS.
 */
.a3-stack-wrap{
    --a3-stack-pin:93px;
}

@media (max-width:1199px){
    .a3-stack-wrap{
        --a3-stack-pin:111px;
    }
}

.a3-stack-card {
    position: sticky;
    top: var(--a3-stack-pin);
    background: #fff;
    margin-bottom: 35px;
    overflow: hidden;
    z-index: calc(var(--stack-index) + 1);
  border-top: 1px solid #E4E4E7;
  box-shadow: 0px -20px 40px rgba(0, 0, 0, 0.08);
}

.a3-stack-card:last-child{
    margin-bottom:0;
}

.a3-stack-card .row{
    min-height:560px;
}


/*==================================================
    Left Content
==================================================*/

.a3-stack-card__content{
    display:flex;
    flex-direction:column;
    justify-content:center;
    height:100%;
    /* Fluid, so the padding shrinks with the column instead of eating it. */
    padding: clamp(30px, 5.2vw, 80px) clamp(25px, 4.6vw, 80px);
}

/*
 * Type is fluid rather than stepped. The card is a 50/50 split, so the text
 * column is only ~half the viewport - a breakpoint step that fires as the
 * screen narrows used to bump the heading UP (48px -> 56px below 1199px)
 * while the column shrank, which is what made it unreadable at browser zoom.
 * Zoom just narrows the CSS viewport, so a continuous curve never steps.
 *
 * The curve is anchored on the existing design values:
 *   >=1400px -> 48px   991px -> 40px   375px -> 28px
 * and the unitless line-heights reproduce the Figma 60px / 32px at those sizes.
 */
.a3-stack-card__content h2{
  margin-bottom: clamp(18px, 2vw, 30px);
  font-style: normal;
  font-weight: 500;
  font-size: clamp(28px, 1.95vw + 20.7px, 48px);
  line-height: 1.25;
  color: #18181B;
}

.a3-stack-card__content p{
    margin-bottom: clamp(24px, 3.2vw, 45px);
    font-style: normal;
    font-weight: 400;
    font-size: clamp(16px, 0.4vw + 14.4px, 20px);
    line-height: 1.6;
    color: #3F3F46;
}


/*==================================================
    Feature List
==================================================*/

.a3-stack-card__points{
    display:grid;
    /* auto-fit: two up while a column can still hold a phrase, one up when it
       can't. The old fixed 2-up squeezed these to 164px at 992px. */
    grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
    gap:clamp(14px,1.6vw,20px) clamp(20px,2.4vw,35px);
    list-style:none;
    padding:0;
    margin:0;
}

.a3-stack-card__points li{
    position:relative;
    padding-left:18px;
    font-weight: 700;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.7px;
    text-transform: uppercase;
    color: #3F3F46;
}

.a3-stack-card__points li::before{
    content:"";
    width:6px;
    height:6px;
    background:#ff6b00;
    position:absolute;
    left:0;
    top:7px;
}


/*==================================================
    Right Image
==================================================*/

.a3-stack-card .col-lg-6:last-child{
    padding:0;
}

.a3-stack-card__image{
    width:100%;
    height:100%;
    min-height:560px;
    object-fit:cover;
    display:block;
}


/*==================================================
    Hover
==================================================*/

.a3-stack-card:hover .a3-stack-card__image{
    transform:scale(1.03);
    transition:.5s ease;
}


/*
 * No Large Desktop / Laptop type queries here on purpose - the clamp()s above
 * cover 375px to 1400px+ continuously. Only structural changes below.
 */


/*==================================================
    Tablet
==================================================*/

@media (max-width:991px){

    .software-section{
        padding:80px 15px;
    }

    .a3-stack-wrap{
        margin-top:50px;
    }

    .a3-stack-card{
        position:relative;
        top:0;
        margin-bottom:30px;
    }

    .a3-stack-card .row{
        min-height:auto;
    }

    .a3-stack-card .col-lg-6:first-child{
        order:2;
    }

    .a3-stack-card .col-lg-6:last-child{
        order:1;
    }

    .a3-stack-card__image{
        min-height:350px;
    }

}


/*==================================================
    Mobile
==================================================*/

@media (max-width:767px){

    .software-section{
        padding:60px 15px;
    }

    .a3-stack-wrap{
        padding:0;
    }

    .a3-stack-card__points li{
        font-size:13px;
    }

    .a3-stack-card__image{
        min-height:260px;
    }

}

/*==================================================
    Who We Are - Cards
==================================================

 * Only renders when the page supplies who_we_are_items. The band's original
 * heading + prose + link layout above is untouched, so pages without cards are
 * byte-identical to before.
 *
 * These are deliberately NOT .a3-stack-card. Two reasons, both measured:
 *
 *   1. The images the documents attach here are 890x270 (3.30:1) strips. The
 *      stack card puts its image in a 50/50 column at min-height:560px, so
 *      object-fit:cover would throw away ~65% of the width and leave a slice of
 *      the middle of the picture. Here the image sits on top at its own aspect
 *      ratio and is not cropped at all.
 *   2. The points here are full sentences. .a3-stack-card__points li is 14px
 *      700 UPPERCASE, which suits the short phrases that band carries ("Swipe
 *      Matching") and not a sentence.
 *
 * The visual language is otherwise borrowed intact: the 20px radius and 280px
 * image band from .a3-tech-capabilities__panel > img, the 6px orange square
 * marker and type scale from .a3-stack-card.
 */

.a3-who-we-are__heading {
    margin: 0 0 4px;
    font-weight: 500;
    font-size: clamp(28px, 1.95vw + 20.7px, 48px);
    line-height: 1.25;
    color: #18181B;
    max-width: 900px;
}

.a3-who-we-are span.section-divider {
    /* Same token as .software-section, but this band is left-aligned. */
    width: 96px;
    height: 4px;
    display: block;
    margin: 24px 0;
    background: #FF6900;
}

.a3-who-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin: 56px 0 10px;
}

/*
 * Five cards leave one over. It sits centred at the same column width rather
 * than spanning both: the source images are 890px wide, and a full-bleed row
 * would upscale them to ~1290px and visibly soften.
 */
.a3-who-cards > .a3-who-card:last-child:nth-child(odd) {
    grid-column: 1 / -1;
    max-width: calc(50% - 15px);
    margin-inline: auto;
}

/* ---------------------------------------------------------------------------
 * TEXT-ONLY CARDS  (.a3-who-cards--text, set by the template when no card in
 * the band carries an image)
 *
 * The default card is a banner card: an 890x270 image with copy beneath, two
 * to a row, and a heading that clamps up to 30px because it sits under a
 * picture and needs the weight. Strip the image out and the same rules give a
 * near-empty box with an oversized title - which is what a3logics-in-malaysia
 * rendered before this block existed.
 *
 * Everything here is nested under the modifier, so the 171 pages whose cards
 * DO have images are not affected by a single declaration.
 * ------------------------------------------------------------------------- */
.a3-who-cards--text {
    grid-template-columns: repeat(var(--a3-who-cols, 4), 1fr);
    gap: 24px;
    margin-top: 40px;
}

/* A single card at a quarter of the row is a sliver. Cap it instead. */
.a3-who-cards--text:not(:has(.a3-who-card + .a3-who-card)) {
    max-width: 420px;
}

/* The banner layout centres a lone fifth card at half width. A text card is a
 * quarter of the row, so that rule has to be undone rather than inherited. */
.a3-who-cards--text > .a3-who-card:last-child:nth-child(odd) {
    grid-column: auto;
    max-width: none;
    margin-inline: 0;
}

.a3-who-cards--text .a3-who-card {
    border-radius: 16px;
    transition: border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

.a3-who-cards--text .a3-who-card:hover {
    border-color: rgba(255, 107, 0, 0.45);
    transform: translateY(-4px);
    box-shadow: 0 12px 28px rgba(24, 24, 27, 0.07);
}

.a3-who-cards--text .a3-who-card__content {
    padding: 28px 24px 26px;
}

/* The card's mark. 48px is the size the source design draws these at, and the
 * stroke colour comes from `currentColor` in the SVG itself. */
.a3-who-cards--text .a3-who-card__icon {
    display: block;
    width: 48px;
    height: 48px;
    margin-bottom: 18px;
    color: #71717a;
}

/* Without an icon the card top is a bare corner and the row reads as four
 * empty outlines - so a card that has no mark gets a short accent rule in its
 * place, and one that does have a mark does not get both. */
.a3-who-cards--text .a3-who-card__content:not(:has(.a3-who-card__icon))::before {
    content: "";
    display: block;
    width: 28px;
    height: 3px;
    margin-bottom: 18px;
    background: #ff6b00;
    border-radius: 2px;
}

/* 22px flat, not the banner card's clamp to 30 - it is a label above two lines
 * of copy, and it is the size the source design uses for the same four cards. */
.a3-who-cards--text .a3-who-card__content h3 {
    font-size: 22px;
    line-height: 1.35;
    margin-bottom: 10px;
}

.a3-who-cards--text .a3-who-card__content p {
    margin-bottom: 0;
    font-size: 15px;
    line-height: 1.7;
}

@media (max-width: 1199px) {
    .a3-who-cards--text {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 767px) {
    .a3-who-cards--text {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    .a3-who-cards--text .a3-who-card__content {
        padding: 24px 20px;
    }
}

.a3-who-card {
    display: flex;
    flex-direction: column;
    background: #fff;
    border: 1px solid #E4E4E7;
    border-radius: 20px;
    overflow: hidden;
}

.a3-who-card__image {
    display: block;
    width: 100%;
    /* The documents supply 890x270; holding that ratio means no crop at all. */
    aspect-ratio: 890 / 270;
    object-fit: cover;
}

.a3-who-card__content {
    padding: clamp(24px, 2.4vw, 36px);
}

.a3-who-card__content h3 {
    margin: 0 0 12px;
    font-weight: 500;
    font-size: clamp(22px, 0.9vw + 16px, 30px);
    line-height: 1.3;
    color: #18181B;
}

.a3-who-card__content p {
    margin: 0 0 22px;
    font-weight: 400;
    font-size: 16px;
    line-height: 1.6;
    color: #3F3F46;
}

.a3-who-card__points {
    display: grid;
    gap: 12px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.a3-who-card__points li {
    position: relative;
    padding-left: 18px;
    font-size: 15px;
    line-height: 1.55;
    color: #3F3F46;
}

.a3-who-card__points li::before {
    content: "";
    width: 6px;
    height: 6px;
    background: #ff6b00;
    position: absolute;
    left: 0;
    top: 8px;
}


/*==================================================
    Who We Are - Cards / Tablet
==================================================*/

@media (max-width: 991px) {

    .a3-who-cards {
        grid-template-columns: 1fr;
        gap: 24px;
        margin-top: 40px;
    }

    /* One column, so the odd-card centring above must not narrow it. */
    .a3-who-cards > .a3-who-card:last-child:nth-child(odd) {
        max-width: none;
        margin-inline: 0;
    }

}


/*==================================================
    Who We Are - Cards / Mobile
==================================================*/

@media (max-width: 767px) {

    .a3-who-card__content p {
        font-size: 15px;
    }

    .a3-who-card__points li {
        font-size: 14px;
    }

}

/* =========================================================
 *  WHO WE ARE - CARD SUBHEADING  (appended block, new class name)
 *
 *  These documents open a card with a short label - "Security
 *  Capabilities", "DeFi Capabilities", "Enterprise Flexibility" -
 *  that introduces the points beneath it. It is a subheading, not
 *  one more bullet.
 *
 *  New selector only; nothing above this block is touched, so a
 *  card without a label renders byte-identical.
 * ========================================================= */
.a3-who-card__subhead {
    margin: 18px 0 8px;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
    color: #18181B;
}

/* =========================================================
 *  CASE STUDY CARDS + COMPLIANCE CARDS
 *  (appended block, new class names only)
 *
 *  Content the client documents supply that the original field
 *  group had nowhere to put: case studies named in prose rather
 *  than linked to a case_study post, and written differentiators
 *  in the compliance band, which otherwise holds logos only.
 *
 *  Both render only when their repeater has rows, so a page
 *  supplying neither is byte-identical to before.
 * ========================================================= */
.a3-cs-cards,
.a3-sc-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 24px;
    margin-top: 40px;
}
.a3-cs-card,
.a3-sc-card {
    background: #FFFFFF;
    border: 1px solid #E4E4E7;
    border-radius: 12px;
    padding: 24px;
}
.a3-cs-card__title,
.a3-sc-card__title {
    margin: 0 0 10px;
    font-size: 19px;
    font-weight: 600;
    line-height: 1.35;
    color: #18181B;
}
.a3-cs-card__impact,
.a3-sc-card__text {
    margin: 0;
    font-size: 15px;
    line-height: 1.6;
    color: #3F3F46;
}
.a3-cs-card__tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 16px 0 0;
    padding: 0;
    list-style: none;
}
.a3-cs-card__tags li {
    padding: 4px 12px;
    border-radius: 999px;
    background: #FFF3EA;
    font-size: 13px;
    line-height: 1.5;
    color: #B34700;
}

@media (max-width: 767px) {
    .a3-cs-cards,
    .a3-sc-cards {
        grid-template-columns: 1fr;
        gap: 16px;
        margin-top: 28px;
    }
    .a3-cs-card,
    .a3-sc-card { padding: 20px; }
}

/* FAQ band description — only present when a document renames the band
   (About Us turns it into "Our Core Values"). New selector; every other
   page renders byte-identical. */
.a3-faq__description {
    max-width: 780px;
    /* Breathing room before the accordion starts - without the bottom margin
       the paragraph sat directly on the first item's rule. */
    margin: 10px 0 34px;
    font-size: 16px;
    line-height: 1.65;
    color: #3F3F46;
}

@media (max-width: 767px) {
    .a3-faq__description { margin-bottom: 24px; }
}

/* =========================================================================
 * Industry card without a photo
 *
 * .industry-card draws its height from its <img> (aspect-ratio 1/1) and
 * positions .overlay and .content absolutely on top. A card whose image
 * field is empty therefore collapses to 0px and disappears from the page -
 * on the home page 11 of 14 cards vanished this way.
 *
 * New class, new block: nothing above is modified, and the modifier is only
 * emitted when the image really is missing, so every card that has a photo
 * renders byte-identical HTML and CSS.
 * ========================================================================= */
.industry-card--noimg {
    aspect-ratio: 1 / 1;
    background: linear-gradient(160deg, #1F2937 0%, #09090B 100%);
}

.industry-card--noimg .overlay {
    background: linear-gradient(0deg, rgba(9, 9, 11, .85) 0%, rgba(24, 24, 27, .35) 60%, rgba(24, 24, 27, 0) 100%);
}


/* ---------------------------------------------------------------------------
 * CTA STRIP  (.a3-svc-cta)
 *
 * Ported from `.a3-idx-cta` in collection-index.css, which draws the same dark
 * panel on the collection-index template. Copied rather than shared because
 * that stylesheet is enqueued on one template only - the same reason the
 * white-paper card was copied out of blogs.css.
 *
 * Two `global.css` rules have to be answered on the button, both already known
 * on this project: `button/a` CTAs get `min-height: 56px`, and
 * `border-radius: 0 !important` squares off anything meant to be a pill.
 * ------------------------------------------------------------------------- */
.a3-svc-cta {
  padding: 40px 0 96px;
}

.a3-svc-cta__panel {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 48px;
  padding: 52px 56px;
  border-radius: 22px;
  overflow: hidden;
  background: linear-gradient(120deg, #1b1b20 0%, #0d0d10 62%);
}

/* The faint grid and the warm corner glow are what tie this panel to the hero
   and the placeholder cards - one vocabulary across three surfaces. */
.a3-svc-cta__panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 34px 34px;
}

.a3-svc-cta__panel::after {
  content: "";
  position: absolute;
  top: -70%;
  right: -6%;
  width: 42%;
  padding-bottom: 42%;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 105, 0, 0.22) 0%, rgba(255, 105, 0, 0) 66%);
  pointer-events: none;
}

.a3-svc-cta__text,
.a3-svc-cta__actions {
  position: relative;
  z-index: 1;
}

.a3-svc-cta__heading {
  margin: 0 0 12px;
  max-width: 22ch;
  font-size: clamp(26px, 2.6vw, 36px);
  font-weight: 500;
  line-height: 1.16;
  letter-spacing: -0.9px;
  text-wrap: balance;
  color: #fff;
}

.a3-svc-cta__copy {
  margin: 0;
  max-width: 52ch;
  font-size: 15.5px;
  line-height: 1.68;
  color: rgba(255, 255, 255, 0.68);
}

.a3-svc-cta__actions {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}

.a3-svc-cta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-height: 54px;
  padding: 0 30px;
  border-radius: 999px !important;
  background: #ff6b00;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 0.2px;
  white-space: nowrap;
  text-decoration: none;
  transition: background 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}

.a3-svc-cta__btn svg {
  transition: transform 0.25s ease;
}

.a3-svc-cta__btn:hover {
  background: #e45f00;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgba(255, 105, 0, 0.28);
}

.a3-svc-cta__btn:hover svg {
  transform: translateX(3px);
}

.a3-svc-cta__also {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 15px;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.82);
  text-decoration: none;
  transition: color 0.2s ease;
}

.a3-svc-cta__also svg {
  transition: transform 0.2s ease;
}

.a3-svc-cta__also:hover {
  color: #ff6b00;
}

.a3-svc-cta__also:hover svg {
  transform: translateX(3px);
}

@media (max-width: 991px) {
  .a3-svc-cta__panel {
    grid-template-columns: 1fr;
    gap: 32px;
    padding: 40px 32px;
  }
}

@media (max-width: 767px) {
  .a3-svc-cta {
    padding: 24px 0 64px;
  }
  .a3-svc-cta__panel {
    padding: 32px 24px;
    border-radius: 18px;
  }
  .a3-svc-cta__btn {
    width: 100%;
  }
}

/* Optional side image on the Secure & Compliant band. Only renders where the
   new `secure_compliant_image` field is set - no existing page sets it. */
.a3-secure-compliant__media img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 20px;
}

@media (max-width: 991px) {
  .a3-secure-compliant__media {
    margin-top: 32px;
  }
}
