/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Nov 12 2026 | 12:46:30 */
/* ===== Service carousel =====
   Works for both structures:
   section.main-serv-caru > .elementor-container  > .serv-box  (inner section)
   column.main-serv-caru  > .elementor-widget-wrap > .serv-box (column)
*/
.main-serv-caru {
  position: relative;
}

.main-serv-caru > .elementor-container,
.main-serv-caru > .elementor-widget-wrap {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch;
  overflow-x: auto;
  overflow-y: hidden;
  padding: 0 !important;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  cursor: grab;
}
.main-serv-caru > .elementor-container::-webkit-scrollbar,
.main-serv-caru > .elementor-widget-wrap::-webkit-scrollbar {
  display: none;
}
.main-serv-caru > .elementor-container.dragging,
.main-serv-caru > .elementor-widget-wrap.dragging {
  scroll-snap-type: none;
  scroll-behavior: auto;
  cursor: grabbing;
}

/* Each box */
.main-serv-caru > .elementor-container > .serv-box,
.main-serv-caru > .elementor-widget-wrap > .serv-box {
  flex: 0 0 calc(100% / 3) !important;
  width: calc(100% / 3) !important;
  max-width: none !important;
  margin: 0 !important;
  scroll-snap-align: start;
}
@media (max-width: 1024px) {
  .main-serv-caru > .elementor-container > .serv-box,
  .main-serv-caru > .elementor-widget-wrap > .serv-box {
    flex-basis: 50% !important;
    width: 50% !important;
  }
}
@media (max-width: 767px) {
  .main-serv-caru > .elementor-container > .serv-box,
  .main-serv-caru > .elementor-widget-wrap > .serv-box {
    flex-basis: 100% !important;
    width: 100% !important;
  }
  .serv-box p {
    display: block;
    min-height: 0px !important;
  }
  .main-serv-caru .elementor-widget-image a {
    width: fit-content !important;
  }
  .serv-box .serv-inn .elementor-widget-wrap {
    min-height: 160px !important;
  }
}
.main-serv-caru img {
  -webkit-user-drag: none;
  user-select: none;
}

/* Arrows */
.main-serv-caru .serv-arrow {
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  z-index: 5;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff !important;
  color: #000 !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
  cursor: pointer;
  transition:
    background 0.25s,
    color 0.25s;
}
.main-serv-caru .serv-arrow svg {
  width: 20px;
  height: 20px;
  display: block;
  pointer-events: none;
}
.main-serv-caru .serv-arrow:hover,
.main-serv-caru .serv-arrow:active,
.main-serv-caru .serv-arrow:focus-visible {
  background: #0d0458 !important;
  color: #fff !important;
  outline: none;
}
.main-serv-caru .serv-arrow.prev {
  left: -12px;
}
.main-serv-caru .serv-arrow.next {
  right: -12px;
}
.main-serv-caru.serv-static .serv-arrow {
  display: none;
}
@media (max-width: 767px) {
  .main-serv-caru .serv-arrow {
    width: 28px;
    height: 28px;
  }
  .cta-sec .elementor-container {
    margin-top: -1px;
  }
}