.elementor-4295 .elementor-element.elementor-element-51bb486 .elementor-heading-title{font-size:clamp(2.94rem, calc(2.619rem + 1.591vw), 3.81rem);line-height:70px;letter-spacing:-0.01em;}.elementor-4295 .elementor-element.elementor-element-05846ce{text-align:start;}.elementor-4295 .elementor-element.elementor-element-05846ce img{max-width:104px;}.elementor-4295 .elementor-element.elementor-element-029242f{text-align:start;}.elementor-4295 .elementor-element.elementor-element-029242f img{max-width:186px;}.elementor-4295 .elementor-element.elementor-element-915270d{--swiper-slides-to-display:3;--swiper-slides-gap:16px;width:100%;max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;--arrow-prev-left-position:0px;--arrow-prev-top-position:0px;--arrow-next-right-position:0px;--arrow-next-top-position:0px;--arrow-size:17px;--arrow-normal-color:var( --e-global-color-text );--arrow-hover-color:#8A8A8A;--swiper-pagination-spacing:clamp(2rem, 8vw, 3rem);}.elementor-4295 .elementor-element.elementor-element-915270d .swiper-slide > .elementor-element{height:100%;}:root{--page-title-display:none;}@media(max-width:1366px){.elementor-4295 .elementor-element.elementor-element-51bb486 .elementor-heading-title{font-size:48px;line-height:60px;}.elementor-4295 .elementor-element.elementor-element-915270d{--swiper-slides-to-display:3;}}@media(max-width:1024px){.elementor-4295 .elementor-element.elementor-element-915270d{--swiper-slides-to-display:2;}}@media(max-width:767px){.elementor-4295 .elementor-element.elementor-element-51bb486 .elementor-heading-title{font-size:36px;line-height:1.3em;}.elementor-4295 .elementor-element.elementor-element-05846ce img{max-width:83px;}.elementor-4295 .elementor-element.elementor-element-029242f img{max-width:140px;}.elementor-4295 .elementor-element.elementor-element-915270d{--swiper-slides-to-display:1;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}}/* Start custom CSS for loop-carousel, class: .elementor-element-915270d *//* Prevent horizontal page scroll */
html,
body {
  overflow-x: hidden;
}


/* Slider breakout */
.case-study-slider {
  width: calc(100% + ((100vw - 100%) / 2));
  max-width: none;
  margin-right: calc((100% - 100vw) / 2);
}


/* Main carousel */
.case-study-carousel {
  position: relative;
  overflow: visible !important;
  padding-bottom: clamp(1.5rem, 2.5vw, 2.75rem) !important;
}


/* Allow carousel wrappers to show the card shadow */
.case-study-carousel,
.case-study-carousel > .elementor-widget-container,
.case-study-carousel .swiper,
.case-study-carousel .swiper-wrapper,
.case-study-carousel .swiper-slide,
.case-study-carousel .elementor-loop-container {
  overflow: visible !important;
}


/* Swiper viewport */
.case-study-carousel .swiper {
  padding-top: 16px;
  padding-left: 0 !important;
  padding-right: 0 !important;
  padding-bottom: 0;

  box-sizing: border-box;
  overflow: visible !important;
  cursor: grab;
  touch-action: pan-y !important;
  -webkit-overflow-scrolling: touch;
  user-select: none;
  -webkit-user-select: none;
}

.case-study-carousel .swiper:active {
  cursor: grabbing;
}


/* Slides row */
.case-study-carousel .swiper-wrapper {
  gap: 0;
  margin-left: 0 !important;
  cursor: grab;
  touch-action: pan-y !important;
  user-select: none;
  -webkit-user-select: none;
  transition-timing-function: cubic-bezier(.25, .46, .45, .94) !important;
}

.case-study-carousel .swiper-wrapper:active {
  cursor: grabbing;
}


/* Slide sizing */
.case-study-carousel .swiper-slide {
    width: clamp(320px, 28vw, 410px) !important;
  flex-shrink: 0;
  margin-right: 16px !important;
}


/* Outer rounded wrapper */
.case-study-carousel .case-study-card-hover {
  position: relative;
  border-radius: 20px;
  overflow: visible !important;

  box-shadow:
    0 16px 20px 0 rgba(0, 0, 0, 0.06);

  transition:
    box-shadow 600ms cubic-bezier(.16, 1, .3, 1);
}


/* Desktop hover shadow */
.case-study-carousel .case-study-card-hover:hover {
  box-shadow:
    0 16px 30px 0 rgba(0, 0, 0, 0.14),
    0 4px 12px -4px rgba(0, 0, 0, 0.12);
}


/* Make Loop Item fill the slide */
.case-study-carousel .swiper-slide > .e-loop-item,
.case-study-carousel .swiper-slide > .elementor {
  width: 100%;
}


/* Inner card */
.case-study-carousel .case-study-card {
  position: relative;
  width: 100%;
  border-radius: 20px;
  overflow: hidden !important;

  cursor: grab;
  pointer-events: auto !important;
  touch-action: pan-y !important;
  user-select: none;
  -webkit-user-select: none;
}

.case-study-carousel .case-study-card:active {
  cursor: grabbing;
}


/* Full-size video */
.case-study-carousel .case-study-video,
.case-study-carousel .case-study-video > .elementor-widget-container,
.case-study-carousel .case-study-video .elementor-wrapper {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

.case-study-carousel .case-study-video video,
.case-study-carousel .case-study-video .elementor-video {
  position: absolute !important;
  inset: 0 !important;
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center;
}


/* Post title line height */
.case-study-carousel .case-study-title,
.case-study-carousel .case-study-title *,
.case-study-carousel .case-study-title .elementor-heading-title {
  line-height: 1.3 !important;
}


/* Prevent internal card layers from blocking drag or swipe */
.case-study-carousel .case-study-card video,
.case-study-carousel .case-study-card img,
.case-study-carousel .case-study-card picture,
.case-study-carousel .case-study-card svg,
.case-study-carousel .case-study-card .elementor-video,
.case-study-carousel .case-study-card .elementor-wrapper,
.case-study-carousel .case-study-card .elementor-widget-container,
.case-study-carousel .case-study-card .e-hosted-video,
.case-study-carousel .case-study-card .e-video,
.case-study-carousel .case-study-card .case-study-overlay,
.case-study-carousel .case-study-card .case-study-content,
.case-study-carousel .case-study-card .case-study-chips {
  pointer-events: none !important;
  user-select: none;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}


/* Pagination */
.case-study-carousel .swiper-pagination {
  bottom: 0.5rem !important;
  transform: translateX(-50%) translateY(-1.75rem) !important;
}

.case-study-carousel .swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  margin: 0 6px !important;
  background: #c8c8c1;
  opacity: 1;
}

.case-study-carousel .swiper-pagination-bullet-active {
  background: #ff6400;
}


/* Arrows */
.case-study-carousel .elementor-swiper-button,
.case-study-carousel .swiper-button-prev,
.case-study-carousel .swiper-button-next {
  position: absolute !important;
  top: auto !important;
  bottom: 0.25rem !important;

  width: 40px;
  height: 40px;

  color: #222;

  display: flex;
  align-items: center;
  justify-content: center;
}


/* Next arrow at full right edge */
.case-study-carousel .elementor-swiper-button-next,
.case-study-carousel .swiper-button-next {
  left: auto !important;
  right: 0 !important;
}


/* Previous arrow beside next */
.case-study-carousel .elementor-swiper-button-prev,
.case-study-carousel .swiper-button-prev {
  left: auto !important;
  right: 40px !important;
}

.case-study-carousel .swiper-button-prev::after,
.case-study-carousel .swiper-button-next::after {
  font-size: 28px;
}


/* Touch devices */
@media (hover: none), (pointer: coarse) {

  .case-study-carousel .swiper,
  .case-study-carousel .swiper-wrapper,
  .case-study-carousel .swiper-slide,
  .case-study-carousel .case-study-card {
    touch-action: pan-y !important;
  }

  .case-study-carousel .swiper-wrapper {
    will-change: transform;
  }

  .case-study-carousel .case-study-card-hover:hover {
    box-shadow:
      0 16px 20px 0 rgba(0, 0, 0, 0.06);
  }
}


/* Tablet */
@media (max-width: 1024px) {

  .case-study-carousel {
    padding-bottom: clamp(1.5rem, 2.5vw, 2.75rem);
  }

  .case-study-carousel .swiper {
    padding-top: 16px;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-bottom: 0;
  }

  .case-study-carousel .swiper-slide {
    width: clamp(280px, 45vw, 360px) !important;
  }

  .case-study-carousel .elementor-swiper-button,
  .case-study-carousel .swiper-button-prev,
  .case-study-carousel .swiper-button-next {
    display: none !important;
  }
}


/* Mobile */
@media (max-width: 767px) {

  /* Break out of site-width parent */
  .case-study-slider {
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }

  .case-study-carousel {
    padding-bottom: clamp(2.75rem, 6vw, 3.5rem) !important;
  }

  /* Match BOCO mobile carousel spacing */
  .case-study-carousel .swiper {
    padding-top: 16px;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    padding-bottom: 0;
    overflow: visible !important;
    box-sizing: border-box;
  }

  .case-study-carousel .swiper-wrapper {
    gap: 0 !important;
    margin-left: 0 !important;
  }

  /* Mobile card sizing */
  .case-study-carousel .swiper-slide {
    width: calc(100vw - 3rem) !important;
    margin-right: 16px !important;
  }

  .case-study-carousel .swiper-slide > .e-loop-item,
  .case-study-carousel .swiper-slide > .elementor,
  .case-study-carousel .swiper-slide > * {
    width: 100% !important;
    max-width: 100% !important;
  }

  .case-study-carousel .case-study-card {
    width: 100% !important;
  }

  .case-study-carousel .swiper-pagination {
    display: flex !important;
    opacity: 1 !important;
    visibility: visible !important;

    position: absolute !important;
    left: 50% !important;
    right: auto !important;
    top: auto !important;
    bottom: 2rem !important;

    transform: translateX(-50%) translateY(0) !important;

    z-index: 20 !important;
    width: auto !important;
  }

  .case-study-carousel .swiper-pagination-bullet {
    display: block !important;
  }
}/* End custom CSS */