.wsm-text-block{
  width:100%;
}

.wsm-text-block__title{
  margin:0;
  font-size:clamp(26px, 4vw, 42px);
  line-height:1.15;
}

.wsm-text-block__title.align-left,
.wsm-text-block__content.align-left,
.wsm-text-block__button-wrap.align-left,
.wsm-text-block__title-group.align-left{
  text-align:left;
}
.wsm-text-block__title.align-center,
.wsm-text-block__content.align-center,
.wsm-text-block__button-wrap.align-center,
.wsm-text-block__title-group.align-center{
  text-align:center;
}
.wsm-text-block__title.align-right,
.wsm-text-block__content.align-right,
.wsm-text-block__button-wrap.align-right,
.wsm-text-block__title-group.align-right{
  text-align:right;
}

.wsm-text-block__title-group{
  display:flex;
  flex-direction:column;
  gap:14px;
  margin-bottom:18px;
}
.wsm-text-block__title-group .wsm-text-block__button-wrap{
  margin-top:0;
}

.wsm-text-block__content{
  font-size:16px;
  line-height:1.75;
}
.wsm-text-block__content p:first-child{margin-top:0}
.wsm-text-block__content p:last-child{margin-bottom:0}
.wsm-text-block__content a{text-decoration:underline}

.wsm-text-block__button-wrap{
  margin-top:20px;
}
.wsm-text-block__button{
  display:inline-block;
  text-decoration:none;
  padding:12px 24px;
  border-radius:6px;
  background:var(--wsm-btn-bg);
  color:var(--wsm-btn-color);
  font-weight:600;
  transition:background-color .25s ease, color .25s ease, transform .2s ease;
}
.wsm-text-block__button:hover,
.wsm-text-block__button:focus{
  background:var(--wsm-btn-hover);
  color:var(--wsm-btn-color);
  transform:translateY(-1px);
}

@media (max-width:768px){
  .wsm-text-block-section{
    padding-left:20px !important;
    padding-right:20px !important;
  }
  .wsm-text-block__title{
    font-size:clamp(24px, 7vw, 34px);
  }
}
