.home-message-heading {
  justify-content: center;
  padding-right: 32px;
}

.home-message-heading h3 {
  align-self: stretch;
  text-align: center;
  font-size: clamp(36px, 4.3vw, 50px);
  line-height: 1.35;
  letter-spacing: .035em;
}

.home-message-heading h3::after {
  width: 100%;
  height: 1px;
  margin-top: 20px;
  background: linear-gradient(90deg, transparent, rgba(255,106,40,.22) 15%, var(--orange) 50%, rgba(255,106,40,.22) 85%, transparent);
  box-shadow: 0 0 12px rgba(255,106,40,.14);
}

.home-message-heading > span {
  position: relative;
  left: auto;
  bottom: auto;
  align-self: center;
  margin-top: 22px;
  padding: 0;
  color: var(--orange);
  font: 700 clamp(17px, 1.8vw, 22px)/1 var(--en);
  letter-spacing: .2em;
}

@media (max-width: 900px) {
  .home-message-heading {
    min-height: auto;
    flex-direction: row;
    align-items: baseline;
    justify-content: space-between;
    gap: 24px;
    padding: 0 0 20px;
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.15);
  }

  .home-message-heading h3 {
    align-self: flex-start;
    flex: 1;
    font-size: clamp(30px, 4vw, 42px);
  }

  .home-message-heading h3::after {
    margin-top: 12px;
  }

  .home-message-heading > span {
    align-self: auto;
    margin: 0 0 3px auto;
    font-size: clamp(17px, 2vw, 21px);
    white-space: nowrap;
  }
}

@media (max-width: 650px) {
  .home-message-heading {
    min-height: auto;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    padding-bottom: 18px;
  }

  .home-message-heading h3 {
    align-self: stretch;
    flex: initial;
    font-size: 30px;
  }

  .home-message-heading > span {
    align-self: center;
    margin: 13px 0 0;
    font-size: 16px;
  }
}
