.testimonials {
  position: relative;

  &.special {
    .testimonial-card {
      padding: 84px 130px 59px 130px !important;
      @media (max-width: 800px) {
        padding: 95px 50px 60px 50px !important;
      }
      @media (max-width: 500px) {
        padding: 95px 30px 60px 30px !important;
      }
    }
    h2 {
      @media (max-width: 500px) {
        font-size: 25px;
      }
    }
  }

  .cards {
    position: relative;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 44px;
    z-index: 2;

    .testimonial-card {
      padding: 53px 37px 39px 41px;
      border-radius: 26px;
      background: #fff;
      box-shadow: 0px 0px 13px 0px rgba(0, 0, 0, 0.19);
      .txt-wrap {
        display: block;
        .txt {
          p {
            margin-top: 14px;
          }
        }
      }
      .author-wrap {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        column-gap: 14px;
        img {
          object-fit: cover;
          width: 74px;
          aspect-ratio: 1/1;
          border-radius: 50%;
        }
        .author-info {
          color: var(--ccs-color-light-grey);
          font-size: 13px;
          font-style: italic;
          font-weight: 500;
          line-height: normal;
          text-transform: uppercase;
        }
      }
      .bold-heading {
        color: var(--ccs-color-main-blue);
      }
    }
  }

  &.type-single {
    .circle {
      right: 0;
      top: 0;
    }
    .cards {
      .testimonial-card {
        padding: 119px 44px 59px 48px;
        text-align: center;

        .markers {
          position: absolute;
          top: 0;
          left: 26px;
          color: var(--ccs-color-lime);
          text-align: center;
          font-size: 140px;
          font-weight: 800;
          line-height: normal;
        }
        .bold-heading {
          text-transform: unset;
        }
        .author-info {
          color: var(--ccs-color-light-grey);
          font-size: 13px;
          font-weight: 800;
          line-height: normal;
          text-transform: uppercase;
        }
      }
    }
  }
  &.type-multiple {
    .circle {
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
    }
    .testimonial-card:not(.shell-card) {
      display: flex;
      flex-direction: column;
      justify-content: space-between;
      .bold-heading {
        text-transform: uppercase;
      }
    }
    .shell-card {
      background-color: var(--ccs-color-lime);
      display: flex;
      flex-direction: column;
      justify-content: flex-end;
      gap: 44px;
      align-items: flex-start;
      .heading {
        font-size: 23px;
        font-weight: 800;
        line-height: normal;
        text-transform: uppercase;
      }
    }
  }
}
