h1,
.h1 {
  font-family: var(--header-font-family);
  font-weight: var(--header-font-weight);
  margin-top: var(--header-margin-top);
  margin-bottom: var(--header-margin-bottom);
  line-height: var(--header-line-height);
  color: var(--header-color);
  font-size: var(--h1-size-mobile);
}
@media screen and (min-width: 768px) {
  h1,
.h1 {
    font-size: var(--h1-size-desktop);
  }
}

h2,
.h2 {
  font-family: var(--header-font-family);
  font-weight: var(--header-font-weight);
  margin-top: var(--header-margin-top);
  margin-bottom: var(--header-margin-bottom);
  line-height: var(--header-line-height);
  color: var(--header-color);
  font-size: var(--h2-size-mobile);
}
@media screen and (min-width: 768px) {
  h2,
.h2 {
    font-size: var(--h2-size-desktop);
  }
}

h3,
.h3 {
  font-family: var(--header-font-family);
  font-weight: var(--header-font-weight);
  margin-top: var(--header-margin-top);
  margin-bottom: var(--header-margin-bottom);
  line-height: var(--header-line-height);
  color: var(--header-color);
  font-size: var(--h3-size-mobile);
}
@media screen and (min-width: 768px) {
  h3,
.h3 {
    font-size: var(--h3-size-desktop);
  }
}

h4,
.h4 {
  font-family: var(--header-font-family);
  font-weight: var(--header-font-weight);
  margin-top: var(--header-margin-top);
  margin-bottom: var(--header-margin-bottom);
  line-height: var(--header-line-height);
  color: var(--header-color);
  font-size: var(--h4-size-mobile);
}
@media screen and (min-width: 768px) {
  h4,
.h4 {
    font-size: var(--h4-size-desktop);
  }
}

h5,
.h5 {
  font-family: var(--header-font-family);
  font-weight: var(--header-font-weight);
  margin-top: var(--header-margin-top);
  margin-bottom: var(--header-margin-bottom);
  line-height: var(--header-line-height);
  color: var(--header-color);
  font-size: var(--h5-size-mobile);
}
@media screen and (min-width: 768px) {
  h5,
.h5 {
    font-size: var(--h5-size-desktop);
  }
}

p,
span {
  font-family: var(--body-font-family);
  font-weight: var(--body-font-weight);
  font-size: var(--p-size-mobile);
}
@media screen and (min-width: 768px) {
  p,
span {
    font-size: var(--p-size-desktop);
  }
}

b,
strong {
  font-family: var(--body-bold-font-family);
  font-weight: var(--body-bold-font-weight);
  font-size: var(--p-size-mobile);
}
@media screen and (min-width: 768px) {
  b,
strong {
    font-size: var(--p-size-desktop);
  }
}

.modal.modal-component {
  --p-size-desktop: 1rem;
  --p-size-mobile: 1rem;
  line-height: 1.75rem;
  color: var(--color-primary);
}
.modal.modal-component .modal-content {
  border-radius: 0.75rem;
}
.modal.modal-component .close {
  position: absolute;
  z-index: 1;
  right: 0;
  top: 0;
  margin: 1rem;
}
.modal.modal-component .close span {
  font-size: inherit;
}
.modal.modal-component .modal-header {
  border-bottom: 0;
}
.modal.modal-component .modal-body {
  padding: 1rem 2.25rem 1rem 1rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
}
.modal.modal-component img {
  max-width: 100%;
}