.section-top-brands-tpg {
  > .top_brands_tpg {
    background-color: var(--top-brands-bg);
    padding: 40px 0;
    margin-top: 5rem;
    margin-bottom: 5rem;

    > .top_brands_tpg__inner {
      display: flex;
      flex-direction: column;
      gap: 24px;

      > .top_brands_tpg__heading {
        margin: 0;
        text-align: center;
        font-size: clamp(24px, 2.5vw, 40px);
        font-weight: 600;
      }

      > .top_brands_tpg__slider {
        width: 100%;
        overflow: hidden;

        > .top_brands_tpg__wrapper {
          align-items: center;

          > .top_brands_tpg__slide {
            display: flex;
            align-items: center;
            justify-content: center;
            min-height: 72px;

            > .top_brands_tpg__logo-link {
              display: flex;
              width: 100%;
              justify-content: center;
              text-decoration: none;

              > .top_brands_tpg__logo-image {
                height: var(--top-brands-logo-height);
                max-width: 100%;
                object-fit: contain;
                width: auto;
              }
            }

            > .top_brands_tpg__logo-image {
              height: var(--top-brands-logo-height);
              max-width: 100%;
              object-fit: contain;
              width: auto;
            }

            > .top_brands_tpg__logo-placeholder {
              align-items: center;
              background-color: rgb(255 255 255 / 70%);
              border: 1px dashed rgb(0 0 0 / 20%);
              border-radius: 6px;
              color: rgb(0 0 0 / 55%);
              display: inline-flex;
              font-size: 13px;
              font-weight: 600;
              height: var(--top-brands-logo-height);
              justify-content: center;
              padding: 0 16px;
            }
          }
        }
      }

      > .top_brands_tpg__controls {
        align-items: center;
        display: flex;
        gap: 4px;
        justify-content: center;

        > .top_brands_tpg__arrow {
          align-items: center;
          background-color: transparent;
          cursor: pointer;
          display: inline-flex;
          height: 34px;
          justify-content: center;
          line-height: 1;
          padding: 0;
          transition: opacity 0.2s ease;
          width: 34px;

          &.swiper-button-disabled {
            cursor: not-allowed;
            opacity: 0.35;
          }

          > span {
            font-size: 16px;
          }
        }

        > .top_brands_tpg__pagination {
          align-items: center;
          display: inline-flex;
          justify-content: center;
          min-height: 24px;
          width: auto;

          > .swiper-pagination-bullet {
            background: currentcolor;
            opacity: 0.3;
            width: 1.2rem;
            height: 1.2rem;

            &.swiper-pagination-bullet-active {
              opacity: 1;
            }
          }
        }
      }
    }
  }
}
