/* Outer container: override WordPress flex only for this slider. */
.wp-block-columns.custom-solution-cards.solution-product-columns-slider.slick-initialized {
    display: block !important;
    gap: 0 !important;
    position: relative;
    min-width: 0;
    padding-bottom: 0;
  }
  
  /* Slide viewport. */
  .solution-product-columns-slider.slick-initialized > .slick-list {
    display: block;
    position: relative;
    width: 100%;
    min-width: 0;
    margin: 0;
    padding: 0;
    overflow: hidden;
  }
  
  /* Equal-height slides; spacing is handled by slide margins. */
  .solution-product-columns-slider.slick-initialized
    > .slick-list > .slick-track {
    display: flex !important;
    gap: 0 !important;
    align-items: stretch;
  }
  
  /* Only style the outer cards, preserving nested icon/text columns. */
  .solution-product-columns-slider.slick-initialized
    > .slick-list > .slick-track > .solution_cards {
    display: flex !important;
    flex-direction: column;
    flex: 0 0 auto !important;
    height: auto !important;
    min-width: 0;
    max-width: none !important;
    box-sizing: border-box;
    margin-block: 0 !important;
    margin-inline: calc(var(--solution-slider-gap, 24px) / 2) !important;
  }
  
  /* Keep all Learn More CTAs aligned at the bottom. */
  .solution-product-columns-slider.slick-initialized
    > .slick-list > .slick-track > .solution_cards
    > .wp-block-buttons {
    margin-top: auto !important;
  }
  
  /* Left/right arrows. */
  .solution-product-columns-slider.slick-initialized
    > .solution-slider-arrow {
    position: absolute;
    top: var(--solution-arrow-top, 50%);
    bottom: auto;
    z-index: 2;
    display: grid;
    place-items: center;
    width: 36px;
    height: 36px;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid #00414c;
    border-radius: 50%;
    background: #fff;
    color: #00414c;
    font-family: inherit;
    font-size: 28px;
    line-height: 1;
    transform: translateY(-50%);
    cursor: pointer;
  }
  
  .solution-product-columns-slider.slick-initialized
    > .solution-slider-prev {
    left: -40px;
    right: auto;
  }
  
  .solution-product-columns-slider.slick-initialized
    > .solution-slider-next {
    right: -40px;
    left: auto;
  }
  
  .solution-product-columns-slider
    > .solution-slider-arrow::before,
  .solution-product-columns-slider
    > .solution-slider-arrow::after {
    content: none !important;
  }
  
  .solution-product-columns-slider
    > .solution-slider-arrow:hover {
    background: #00414c;
    color: #fff;
  }
  
  .solution-product-columns-slider
    > .solution-slider-arrow.slick-disabled {
    opacity: 0.35;
    cursor: default;
  }
  
  .solution-product-columns-slider
    > .solution-slider-arrow.slick-hidden {
    display: none !important;
  }
  
  .solution-product-columns-slider
    > .solution-slider-arrow:focus-visible {
    outline: 2px solid #00414c;
    outline-offset: 3px;
  }
  
  /* Dots: separate row below the cards. */
  .solution-product-columns-slider.slick-initialized
    > ul.slick-dots {
    position: static !important;
    display: flex !important;
    flex: none !important;
    justify-content: center;
    align-items: center;
    gap: 8px !important;
    width: 100% !important;
    max-width: none;
    height: auto;
    margin: 20px 0 0 !important;
    padding: 0 !important;
    list-style: none;
    transform: none !important;
  }
  
  .solution-product-columns-slider
    > ul.slick-dots > li {
    display: block;
    flex: none;
    width: 12px;
    height: 12px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none;
  }
  
  .solution-product-columns-slider
    > ul.slick-dots > li > button {
    display: block;
    width: 12px;
    height: 12px;
    margin: 0;
    padding: 0 !important;
    border: 0;
    border-radius: 50%;
    background: #c2c3a6;
    color: transparent;
    font-size: 0;
    line-height: 0;
    cursor: pointer;
  }
  
  .solution-product-columns-slider
    > ul.slick-dots > li > button::before,
  .solution-product-columns-slider
    > ul.slick-dots > li > button::after {
    content: none !important;
  }
  
  .solution-product-columns-slider
    > ul.slick-dots > li.slick-active > button {
    background: #00414c;
  }
  
  .solution-product-columns-slider
    > ul.slick-dots > li > button:focus-visible {
    outline: 2px solid #00414c;
    outline-offset: 3px;
  }
  
  /* Keep arrows within the container on mobile. */
  @media (max-width: 767px) {
    .solution-product-columns-slider.slick-initialized
        > .solution-slider-prev {
        left: 0;
    }
  
    .solution-product-columns-slider.slick-initialized
        > .solution-slider-next {
        right: 0;
    }
  }