[data-component-id="incmty:profiles"] {
  text-align: center;
  padding: 48px 16px;
  background-color: var(--bg-color);

  .headings-container {
    .headings__title {
      font-size: 12px;
      font-style: normal;
      font-weight: 900;
      line-height: 18px;
      text-transform: uppercase;

      + * {
        margin-top: 16px;
      }
    }

    h2.headings__subtitle {
      font-size: 26px;
    }

    h3.headings__subtitle {
      font-size: 22px;
    }

    h4.headings__subtitle {
      font-size: 18px;
    }

    .headings__subtitle {
      font-style: normal;
      font-weight: 700;
      line-height: 32px;

      + * {
        margin-top: 16px;
      }
    }

    .headings__description {
      p {
        font-size: 16px;
        font-style: normal;
        font-weight: 400;
        line-height: 22px;
      }

      * + * {
        margin-top: 8px;
      }
      + * {
        margin-top: 24px;
      }
    }

    * + .headings__description {
      margin-top: 16px;
    }
  }

  .profiles {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 24px;
    row-gap: 24px;

    .profile {
      &:nth-child(-n + 6) {
        display: grid;
      }
    }

    + * {
      margin-top: 24px;
    }
  }

  * + .profiles {
    margin-top: 24px;
  }

  .load-more {
    height: 54px;
    display: none;

    button {
      background-color: var(--button-bg-color);
      cursor: pointer;

      &:hover {
        color: var(--button-text-color);
        background-color: var(--button-bg-color);
        border: 2px solid var(--button-bg-color);
        box-shadow: none;
      }

      &:focus {
        box-shadow: none;
      }
    }
  }
}

@media screen and (min-width: 1024px) {
  [data-component-id="incmty:profiles"] {
    padding: 96px;

    .headings-container {
      .headings__title {
        font-size: 12px;
        font-style: normal;
        font-weight: 900;
        line-height: 18px;
        text-transform: uppercase;

        + * {
          margin-top: 16px;
        }
      }

      h2.headings__subtitle {
        font-size: 48px;
      }

      h3.headings__subtitle {
        font-size: 32px;
      }

      h4.headings__subtitle {
        font-size: 24px;
      }

      .headings__subtitle {
        line-height: 54px;
      }
    }

    .profiles {
      grid-template-columns: repeat(4, 1fr);
      column-gap: 96px;
      row-gap: 48px;

      .profile {
        &:nth-child(-n + 12) {
          display: grid;
        }
      }

      + * {
        margin-top: 48px;
      }
    }

    * + .profiles {
      margin-top: 48px;
    }

    .load-more {
      button {
        &:hover {
          color: var(--text-color) !important;
          background-color: var(--button-text-color) !important;
          border: 2px solid var(--text-color) !important;
          box-shadow: none;
        }

        &:focus {
          color: var(--button-text-color);
          background-color: var(--button-bg-color);
          border: 2px solid var(--button-bg-color);
          box-shadow: none;
        }
      }
    }
  }
}

@media screen and (min-width: 1920px) {
  [data-component-id="incmty:profiles"] {
    .profiles {
      grid-template-columns: repeat(6, 1fr);
    }
  }
}
