.tabbed-categories-wrapper {
  padding: 24px 0 40px;
  background-color: #fff;

  @media only screen and (min-width: 992px) {
    padding: 40px 0 60px;
  }

  .container {
    display: flex;
    flex-direction: column;
    gap: 16px;

    @media only screen and (min-width: 992px) {
      gap: 24px;
    }

    .tabbed-categories-heading {
      margin: 0;
      font-size: 28px;
      font-weight: 700;
      line-height: normal;
      text-align: center;
      color: #152a49;

      @media only screen and (min-width: 992px) {
        font-size: 32px;
      }
    }

    .tabbed-categories-tablist {
      list-style: none;
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 32px;
      margin: 0 -16px;
      padding-bottom: 16px;
      border-bottom: 1px solid #f2f5f9;

      @media only screen and (min-width: 992px) {
        padding-bottom: 0;
      }

      .tab-item {
        > button {
          padding: 4px 8px;
          font-size: 18px;
          font-weight: 500;
          line-height: normal;
          text-align: center;
          color: #152a49;
          border-bottom: 2px solid transparent;

          @media only screen and (min-width: 992px) {
            font-size: 24px;
          }

          &.active {
            border-color: #152a49;
          }
        }
      }
    }

    .tabbed-categories-content {
      .tab-pane {
        display: none;

        &.active {
          display: block;
        }

        .tab-pane-grid {
          display: flex;
          justify-content: flex-start;
          gap: 16px;
          overflow: auto;
          margin: -16px;
          padding: 16px;

          @media only screen and (min-width: 992px) {
            justify-content: center;
            gap: 16px;
            margin: -24px;
            padding: 24px;
          }
        }
      }
    }
  }
}
