gt-block-icon-grid {
  display: block;
  padding-block: clamp(20px,3vw,40px);
  --gt-icon-grid-columns: 4;
  --gt-icon-grid-gap-x: clamp(18px, 3vw, 45px);
  --gt-icon-grid-gap-y: clamp(28px, 4vw, 60px)
}
gt-block-icon-grid .icon-grid-inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  column-gap: var(--gt-icon-grid-gap-x);
  row-gap: var(--gt-icon-grid-gap-y);
  width: 100%;
  margin: 0 auto
}
gt-block-icon-grid .icon-grid-item {
  --_cols: var(--gt-icon-grid-columns);
  --_gap: var(--gt-icon-grid-gap-x);
  flex: 0 1 calc((100% - (var(--_cols) - 1) * var(--_gap))/ var(--_cols));
  max-width: calc((100% - (var(--_cols) - 1) * var(--_gap))/ var(--_cols));
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 15px
}
gt-block-icon-grid .icon-grid-image {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  height: clamp(60px,8vw,110px);
  width: clamp(60px,8vw,110px)
}
gt-block-icon-grid .icon-grid-image > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
  display: block;
  max-width: 100%;
  max-height: 100%
}
gt-block-icon-grid .icon-grid-text {
  font-family: swiss-721-bt,sans-serif;
  font-weight: 700;
  font-size: clamp(16px, 1.8vw, 20px);
  line-height: 1.2;
  color: var(--color__text-main)
}
@media screen and (max-width:900px) {
  gt-block-icon-grid .icon-grid-item {
    --_cols: min(3, var(--gt-icon-grid-columns))
  }
}
@media screen and (max-width:600px) {
  gt-block-icon-grid .icon-grid-item {
    --_cols: min(2, var(--gt-icon-grid-columns))
  }
}