.tm-block-heading {
  width: 100%;
  margin-top: var(--tm-heading-margin-top, 0);
  margin-bottom: var(--tm-heading-margin-bottom, 16px);
}

.tm-block-heading--align-left {
  text-align: left;
}

.tm-block-heading--align-center {
  text-align: center;
}

.tm-block-heading--align-right {
  text-align: right;
}

.tm-block-heading__title {
  width: min(100%, var(--tm-heading-max-width, 100%));
  max-width: 100%;
  margin: 0;
  color: var(--tm-heading-color, inherit);
  font-weight: var(--tm-heading-weight, 700);
  text-transform: var(--tm-heading-transform, none);
}

.tm-block-heading--align-left .tm-block-heading__title {
  margin-left: 0;
  margin-right: auto;
}

.tm-block-heading--align-center .tm-block-heading__title {
  margin-left: auto;
  margin-right: auto;
}

.tm-block-heading--align-right .tm-block-heading__title {
  margin-left: auto;
  margin-right: 0;
}

.tm-block-heading--color-default .tm-block-heading__title {
  color: inherit;
}

.tm-block-heading--color-accent .tm-block-heading__title {
  color: var(--tm-accent);
}

.tm-block-heading--color-muted .tm-block-heading__title {
  color: #64748b;
}

.tm-block-heading--color-light .tm-block-heading__title {
  color: #ffffff;
}

.tm-block-heading--color-dark .tm-block-heading__title {
  color: #0f172a;
}

[style*="--tm-heading-size"] .tm-block-heading__title {
  font-size: var(--tm-heading-size);
}
