.swan-grid {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0 24.155rpx;
}
.swan-grid.grid-tight {
  padding: 0;
}
.swan-grid .grid-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
  justify-content: center;
  overflow: hidden;
  padding: var(--v-spacing-md, 36.232rpx) 0 42.271rpx;
  position: relative;
}
.swan-grid .grid-item .inner-grid-item {
  width: 100%;
  position: relative;
}
.swan-grid .grid-item .inner-grid-item .wrap-image {
  display: flex;
  justify-content: center;
  align-items: center;
}
.swan-grid .grid-item .inner-grid-item .text-info {
  text-align: center;
  padding: 0 7.246rpx;
}
.swan-grid .grid-item .inner-grid-item .text-info .title {
  display: block;
  font-size: var(--font-size-xs, 25.362rpx);
  height: 30.193rpx;
  line-height: 30.193rpx;
  margin-top: 16.304rpx;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: center;
  color: var(--color-black, #000);
  padding: 0 var(--h-spacing-md, 30.797rpx);
}
.swan-grid .grid-item .inner-grid-item .text-info .desc {
  width: 100%;
  font-size: 23.551rpx;
  height: var(--v-spacing-md, 36.232rpx);
  line-height: var(--v-spacing-md, 36.232rpx);
  color: var(--color-gray-3, #999);
  position: absolute;
  left: 0;
  bottom: -33.213rpx;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  text-align: center;
  box-sizing: border-box;
  padding: 0 7.246rpx;
  margin-top: 7.246rpx;
}
.swan-grid .grid-item-hover {
  opacity: 0.5;
}
.swan-grid-hasline .grid-border-right {
  width: 0;
  height: 100%;
  border-right: 1.812rpx solid var(--color-gray-6, #eee);
  position: absolute;
  right: 0;
  top: 0;
}
.swan-grid-hasline .grid-border-bottom {
  height: 0;
  width: 100%;
  border-bottom: 1.812rpx solid var(--color-gray-6, #eee);
  position: absolute;
  left: 0;
  bottom: 0;
  margin-top: 4.227rpx;
}
