.wsm-feature-grid{padding:0}
.wsm-grid{
  display:grid;
  gap:var(--wsm-card-gap);
}
.wsm-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.wsm-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.wsm-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}

.wsm-section-title{margin:0 0 14px}
.wsm-section-description{margin:0 0 28px; line-height:1.75}
.wsm-section-description p:first-child{margin-top:0}
.wsm-section-description p:last-child{margin-bottom:0}

.wsm-card-box{
  background:var(--wsm-card-bg);
  border:1px solid var(--wsm-card-border);
  border-radius:var(--wsm-card-radius);
  padding:var(--wsm-card-padding);
  height:100%;
}
.wsm-card-box.align-left{text-align:left}
.wsm-card-box.align-center{text-align:center}
.wsm-card-box.align-right{text-align:right}

.wsm-feature-grid-icon{
  font-size:32px;
  line-height:1;
  color:var(--wsm-icon-color);
  margin-bottom:14px;
}
.wsm-feature-grid-image{
  margin-bottom:14px;
}
.wsm-feature-grid-image img{
  max-width:72px;
  width:72px;
  height:72px;
  object-fit:contain;
  display:inline-block;
}

.wsm-card-box h3{
  margin:0 0 10px;
  color:var(--wsm-title-color);
  font-size:20px;
  line-height:1.3;
}
.wsm-card-box p{
  margin:0;
  color:var(--wsm-text-color);
  line-height:1.7;
}

.wsm-feature-grid-button-wrap{
  margin-top:18px;
}
.wsm-feature-grid-button-wrap.align-left{text-align:left}
.wsm-feature-grid-button-wrap.align-center{text-align:center}
.wsm-feature-grid-button-wrap.align-right{text-align:right}

.wsm-feature-grid-button{
  display:inline-block;
  padding:10px 18px;
  border-radius:6px;
  text-decoration:none;
  background:var(--wsm-btn-bg);
  color:var(--wsm-btn-text);
  font-weight:600;
  transition:background-color .25s ease, color .25s ease, transform .2s ease;
}
.wsm-feature-grid-button:hover,
.wsm-feature-grid-button:focus{
  background:var(--wsm-btn-hover);
  color:var(--wsm-btn-text);
  transform:translateY(-1px);
}

.align-left{text-align:left}
.align-center{text-align:center}
.align-right{text-align:right}

@media(max-width:900px){
  .wsm-grid.cols-3,.wsm-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:640px){
  .wsm-grid.cols-2,.wsm-grid.cols-3,.wsm-grid.cols-4{grid-template-columns:1fr}
}


.wsm-feature-grid-image img{
  border-radius:var(--wsm-img-radius,0);
}
