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);
  }
}

.collapsible-container {
  padding: 1rem 1.5rem;
  border-bottom: 1px solid #CBCBCB;
}
.collapsible-container .collapse-btn {
  border: none;
  background: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0;
  width: 100%;
  text-align: left;
  font-weight: 500;
  cursor: pointer;
}
.collapsible-container .collapse-btn .icon {
  position: relative;
  justify-self: flex-end;
  margin-left: auto;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.collapsible-container .collapse-btn .icon::after, .collapsible-container .collapse-btn .icon::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) var(--i-rotate, rotate(0));
          transform: translate(-50%, -50%) var(--i-rotate, rotate(0));
  height: 0.125rem;
  width: 0.75rem;
  background: var(--i-color, #111111);
}
.collapsible-container .collapse-btn .icon::before {
  --i-rotate: rotate(90deg);
  opacity: 1;
}
.collapsible-container .collapse-btn[aria-expanded=true] .icon::before {
  opacity: 0;
}
.collapsible-container .collapsible-content {
  margin-top: 16px;
}