/* Product artwork includes its own 56px pale background. */
.cf-homepage .cf-service-card {
  grid-template-columns: 56px minmax(0, 1fr) !important;
}

.cf-homepage .cf-service-card__icon {
  width: 56px !important;
  height: 56px !important;
  min-width: 56px !important;
  min-height: 56px !important;
  flex-basis: 56px !important;
  background: #f2f4fa !important;
  border: 0 !important;
  border-radius: 8px !important;
}

/* Keep the original symbols usable where no product artwork was supplied. */
.cf-homepage .cf-service-card__icon img {
  width: 28px !important;
  height: 28px !important;
}

/* Display the complete SVG tile without adding a second layer of padding. */
.cf-homepage .cf-service-card__icon img[src*="/icons/product-"] {
  width: 56px !important;
  height: 56px !important;
}

/* Match the size and pale rounded tile of the supplied Tabler section icons. */
.wy-menu-vertical li.toctree-l1 > a[data-cf-icon]:not([data-cf-tabler-icon])::before,
.wy-menu-vertical li.toctree-l1.current > a[data-cf-icon]:not([data-cf-tabler-icon])::before {
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  flex: 0 0 28px !important;
  border-radius: 5px !important;
  background: #f1f4f9 var(--cf-sidebar-section-icon) center / 17px 17px no-repeat !important;
  -webkit-mask: none !important;
  mask: none !important;
  filter: none !important;
}

@media (min-width: 769px) {
  .cf-portal-navigation.cf-sidebar-is-collapsed .wy-menu-vertical li.toctree-l1 > a[data-cf-icon]:not([data-cf-tabler-icon]) {
    padding: 8px 18px !important;
  }
}
