categories-and-products:not(.oj-complete) {
  visibility: hidden;
}

.cap-main-container,
.cap-side-container,
.cap-grid-container,
.cap-row-container,
.cap-infrastructure-container,
.cap-applications-container {
  display: flex;
  flex-direction: column;
  align-content: space-between;
  row-gap: 16px;
}

.cap-infrastructure-container {
  row-gap: 0px;
}

.cap-main-container {
  position: relative;
  top: -133px;
  margin: 52px 16px -117px 16px;
  max-width: 1392px;
}

@media only screen and (min-width: 600px) {

  .cap-grid-container,
  .cap-side-container,
  .cap-row-container {
    justify-content: space-between;
    column-gap: 16px;
  }

  .cap-grid-container,
  .cap-infrastructure-container,
  .cap-applications-container {
    flex-wrap: wrap;
    flex-direction: row;
  }

  .cap-row-container {
    flex-direction: row;
  }

  .cap-infrastructure-container {
    column-gap: 81px;
  }

  .cap-applications-container {
    column-gap: 64px;
    row-gap: 40px;
  }

  .cap-side-container>div {
    height: 100%;
  }

  .cap-grid-container>div {
    flex: 1 0 30%;
  }

  .cap-row-container>div {
    flex: 1;
  }

  .cap-infrastructure-container>div,
  .cap-applications-container>div {
    flex: 1 0 39%;
  }
}

@media only screen and (min-width: 1025px) {
  .cap-main-container {
    flex-direction: row;
    justify-content: space-between;
    column-gap: 16px;
  }

  .cap-main-container>div {
    flex: 1;
  }
}

.cap-texture-blue {
  background: url("../../../images/home-page/categories-and-products/cap-texture-blue.png");
}

.cap-texture-green {
  background: url("../../../images/home-page/categories-and-products/cap-texture-green.png");
  padding-bottom: 80px;
}

.cap-texture-blue,
.cap-texture-green {
  background-position: -91px 0px;
  background-repeat: no-repeat;
}

.cap-card-style,
.cap-texture-blue,
.cap-texture-green {
  background-color: white;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
  border-radius: 6px;
  padding: 16px 16px;
}

@media only screen and (min-width: 600px) {
  .cap-main-container {
    margin: 52px 24px -115px 24px;
  }

  .cap-texture-blue,
  .cap-texture-green {
    background-position: right top;
  }

  .cap-card-style,
  .cap-texture-blue,
  .cap-texture-green {
    padding: 24px 24px;
  }
}

@media only screen and (min-width: 1025px) {
  .cap-main-container {
    margin-bottom: -115px;
  }

  .cap-texture-blue,
  .cap-texture-green {
    padding: 38px 38px;
  }

  .cap-card-style {
    padding: 24px 38px;
  }
}

@media only screen and (min-width: 1440px) {
  .cap-main-container {
    margin: 52px auto -115px auto;
  }
}

.oj-typography-subheading-md {
  line-height: 32px !important;
}

.cap-template-title {
  margin-bottom: 21px;
}

.cap-template-ico,
.cap-section-ico {
  display: inline-block;
  width: 20px;
  margin-right: 12px;
  vertical-align: top;
}

.cap-template-ico {
  position: relative;
  top: 3px;
}

.cap-section-ico {
  position: relative;
  top: -2px;
}

.cap-base-content {
  display: inline-block;
  width: calc(100% - 32px);
}

.cap-base-content>div {
  margin-bottom: 6px;
}