.tab-carousel.block {
  .tab-carousel-container {
    overflow: hidden;
    position: relative;

    .tab-carousel-background {
      height: 100vh;
      position: relative;

      img {
        height: 100vh;
        width: 100%;
        object-fit: cover;
      }

      .tab-carousel__bg-picture--desktop,
      .tab-carousel__bg-picture--mobile {
        height: 100%;
        inset: 0;
        margin: 0;
        position: absolute;
        width: 100%;
      }

      .tab-carousel__bg-picture--desktop img,
      .tab-carousel__bg-picture--mobile img {
        display: block;
        height: 100vh;
        object-fit: cover;
        width: 100%;
      }

      .tab-carousel__bg-picture--desktop {
        display: none;

        @media (width >= 768px) {
          display: block;
        }
      }

      .tab-carousel__bg-picture--mobile {
        display: block;

        @media (width >= 768px) {
          display: none;
        }
      }
    }

    .tab-carousel-tabs {
      position: absolute;
      bottom: 20px;
      left: 50%;
      transform: translateX(-50%);
      width: calc(100% - (var(--container-margin) * 2));
      background: color-mix(in srgb, var(--corp-color-slate) 25%, transparent);
      backdrop-filter: blur(22px);
      border-radius: var(--corp-radius-sm);
      padding: 23px 40px;
      z-index: 3;

      @media (width >= 1200px) {
        bottom: 51px;
      }

      .tab-carousel__tab {
        background: transparent;
        border: 0;
        color: color-mix(in srgb, var(--corp-color-white) 40%, transparent);
        font-family: var(--corp-font-family);
        font-size: var(--corp-type-mobile-body-2-font-size);
        font-weight: var(--corp-type-mobile-body-2-font-weight);
        line-height: var(--corp-type-mobile-body-2-line-height);
        margin-bottom: 20px;
        padding: 0;
        padding-bottom: 20px;
        text-align: center;
        width: 100%;
        border-bottom: 1px solid var(--secondary-gray-700);

        &:last-of-type {
          margin-bottom: 0;
          padding-bottom: 0;
          border-bottom: 0;
        }

        &[aria-selected='true'] {
          color: var(--corp-color-white);
          font-weight: var(--fw-500);
        }

        @media (width >= 768px) {
          border-bottom: 0;
          border-right: 1px solid color-mix(in srgb, var(--corp-color-white) 40%, transparent);
          font-size: var(--corp-type-desktop-caption-3-font-size);
          font-weight: var(--corp-type-body-font-weight);
          line-height: var(--corp-type-desktop-body-lg-line-height);
          margin-bottom: 0;
          margin-right: 20px;
          padding-bottom: 0;
          padding-right: 20px;
          width: auto;

          &:last-of-type {
            margin-right: 0;
            padding-right: 0;
            border-right: 0;
          }
        }

        @media (width >= 1200px) {
          font-size: var(--corp-type-tablet-heading-2-font-size);
          font-weight: var(--corp-type-tablet-heading-xl-font-weight);
          line-height: var(--corp-type-desktop-body-4-line-height);
        }
      }

      @media (width >= 768px) {
        width: max-content;
      }
    }

    .tab-carousel-items {
      position: absolute;
      top: 50%;
      left: var(--container-margin);
      transform: translateY(-50%);
      height: 100%;
      display: flex;
      flex-direction: column;
      justify-content: center;

      .splide__slide  {
        width: 100%;
      }

      .tab-carousel__card {
        .tab-carousel__subtitle {
          margin-bottom: 16px;

          * {
            color: var(--corp-color-white);
            font-family: var(--corp-font-family);
            font-size: var(--corp-type-mobile-tag-1-font-size);
            font-weight: var(--corp-type-mobile-tag-1-font-weight);
            line-height: var(--corp-type-mobile-tag-1-line-height);
            opacity: 0.4;
            text-transform: uppercase;
          }

          @media (width >= 768px) {
            margin-bottom: 16px;

            * {
              font-size: var(--corp-type-tablet-heading-2-font-size);
              font-weight: var(--corp-type-tablet-heading-2-font-weight);
              line-height: var(--corp-type-tablet-heading-xl-line-height);
            }
          }

          @media (width >= 1200px) {
            margin-bottom: 20px;

            * {
              font-size: var(--corp-type-tablet-heading-xl-font-size);
              font-weight: var(--corp-type-tablet-heading-2-font-weight);
              line-height: var(--corp-type-tablet-heading-xl-line-height);
            }
          }
        }

        .tab-carousel__title {
          margin-bottom: 12px;

          * {
            color: var(--corp-color-white);
            font-family: var(--corp-font-family);
            font-size: var(--corp-type-mobile-display-2-font-size);
            font-weight: var(--corp-type-mobile-display-2-font-weight);
            line-height: var(--corp-type-mobile-display-2-line-height);
          }

          @media (width >= 768px) {
            margin-bottom: 16px;

            * {
              font-size: var(--corp-type-tablet-display-font-size);
              font-weight: var(--corp-type-tablet-display-font-weight);
              line-height: var(--corp-type-tablet-display-3xl-line-height);
            }
          }

          @media (width >= 1200px) {
            margin-bottom: 20px;

            * {
              font-size: var(--corp-type-desktop-heading-xxl-font-size);
              font-weight: var(--corp-type-desktop-heading-xxl-font-weight);
              line-height: var(--corp-type-desktop-heading-xxl-line-height);
            }
          }
        }

        .tab-carousel__description {
          width: 80%;
          margin-bottom: 12px;

          * {
            color: var(--corp-color-white);
            font-family: var(--corp-font-family);
            font-size: var(--corp-type-mobile-body-sm-font-size);
            font-weight: var(--corp-type-mobile-body-sm-font-weight);
            line-height: var(--corp-type-mobile-body-sm-line-height);
          }

          @media (width >= 768px) {
            width: 50%;
            margin-bottom: 16px;

            * {
              font-size: var(--corp-type-tablet-body-3-font-size);
              font-weight: var(--fw-400);
              /* line-height: var(--corp-type-body-lg-line-height); */
              line-height: 140%;
            }
          }

          @media (width >= 1200px) {
            width: 55%;
            margin-bottom: 20px;

            *{
              font-size: var(--corp-type-body-lg-font-size);
              line-height: 150%;
            }
          }
        }

        .tab-carousel__cta {
          a {
            border: 1px solid var(--corp-color-white);
            color: var(--corp-color-white);
            display: inline-block;
            font-family: var(--corp-font-family);
            font-size: var(--corp-type-cta-font-size);
            font-weight: var(--corp-type-cta-font-weight);
            line-height: var(--corp-type-cta-line-height);
            min-width: 115px;
            padding-block: 12px;
            text-align: center;
            text-transform: capitalize;
            transition: background 0.3s ease, border-color 0.3s ease;

            &:hover {
              background: var(--corp-color-primary);
              border-color: var(--corp-color-primary);
            }
          }
        }
      }

      .splide__pagination {
        display: flex;
        gap: var(--corp-space-sm);
        margin-top: var(--corp-space-xl);
        list-style: none;

        .splide__pagination__page {
          width: 8px;
          height: 8px;
          background: color-mix(in srgb, var(--corp-color-white) 40%, transparent);
          border-radius: 100px;
          border: 0;
          padding: 0;

          &.is-active {
            background: var(--corp-color-white);
            width: 10px;
            height: 10px;
          }
        }
      }

      .tab-carousel__arrows {
        display: none;

        @media (width >= 1200px) {
          position: absolute;
          bottom: 58px;
          display: flex;
          gap: 22px;

          .corp-arrow-btn {
            width: var(--corp-arrow-btn-size);
            height: var(--corp-arrow-btn-size);
            border-radius: 100px;
            fill: var(--corp-color-overlay-black-50);
            filter: drop-shadow(0 6px 36px rgb(0 0 0 / 2%));
            backdrop-filter: blur(48px);
            background: var(--corp-color-overlay-black-50);
            position: relative;
            padding: 0;

            &::before {
              content: '';
              position: absolute;
              top: 50%;
              left: 50%;
              width: 20px;
              height: 20px;
              background: url("/corporate/icons/corp-slider-arrow.svg") no-repeat center / contain;
              transform: translate(-50%, -50%);
            }

            &.tab-carousel__nav-btn--prev::before {
              transform: translate(-50%, -50%) rotate(-180deg);
            }

            svg {
              display: none;
            }
          }
        }
      }
    }
  }
}
