.Text {
  width: 100%;
  font-family: var(--font-copy);
  font-size: var(--font-size-sm);
  font-weight: 400;
  line-height: var(--font-line-height-sm);
  text-align: inherit;
  color: currentColor;
  color: var(--text-color, currentColor);
}

@media screen and (min-width: 769px) {

.Text {
    font-size: var(--font-size-md);
    line-height: var(--font-line-height-md);
}
  }

.Text p {
    margin: 0;
    text-wrap: pretty;
  }

.Text {

  a {
    position: relative;
    display: inline-block;
    text-decoration: underline;
    color: var(--clr-black);
  }

    a:hover {
      text-decoration: none;
      color: var(--clr-primary-02);
    }
}

.Text * ~ p,
  .Text * ~ h1,
  .Text * ~ h2,
  .Text * ~ h3,
  .Text * ~ h4 {
    margin: 1em 0 0;
  }

.Text h4 ~ p {
    margin: 0.5em 0 0;
  }

.Text ul {
    margin: 10px 0 0;
    padding: 0 0 0 40px;
    list-style: none;
  }

.Text ul li {
      position: relative;
      margin-bottom: 8px;
      padding: 0 0 0 0.7em;
      list-style: disc;
    }

.Text ol {
    padding: 0 0 0 20px;
    counter-reset: item;
    list-style: none;
  }

.Text ol li {
      position: relative;
      padding: 0 0 0 1.77em;
      counter-increment: item;
    }

.Text ol li + li {
        padding-top: 0.44em;
      }

.Text ol li li {
      padding-top: 0.44em;
      padding-left: 3.22em;
    }

.Text ol li li li {
      padding-top: 0.44em;
      padding-left: 4.55em;
    }

.Text ol li::before {
      content: counters(item, '.') '.';
      position: absolute;
      left: 0;
      color: var(--clr-primary-02);
    }

.Text strong {
    font-weight: 800;
  }

.Text .link-phone,
  .Text .link-fax,
  .Text .link-mail,
  .Text .link-website {
    display: flex;
    align-items: center;
    text-decoration: none;
  }

.Text .link-phone::before, .Text .link-fax::before, .Text .link-mail::before, .Text .link-website::before {
      content: '';
      display: inline-block;
      min-width: 19px;
      height: 19px;
      margin-right: 6px;
      background-repeat: no-repeat;
      background-size: contain;
    }

.Text .link-phone::before path, .Text .link-fax::before path, .Text .link-mail::before path, .Text .link-website::before path {
        fill: #ffffff;
      }

.Text .link-phone::before {
    background-image: url('../Images/default/link-phone.svg');
  }

.Text .link-fax::before {
    background-image: url('../Images/default/link-fax.svg');
  }

.Text .link-mail::before {
    background-image: url('../Images/default/link-mail.svg');
  }

.Text .link-website::before {
    background-image: url('../Images/default/link-website.svg');
  }

.Text--center {
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

[dir="ltr"] .Text--left {
  margin-left: 0;
  margin-right: auto;
}

[dir="rtl"] .Text--left {
  margin-right: 0;
  margin-left: auto;
}

.Text--left {
  text-align: left;
}

[dir="ltr"] .Text--right {
  margin-left: auto;
  margin-right: 0;
}

[dir="rtl"] .Text--right {
  margin-right: auto;
  margin-left: 0;
}

.Text--right {
  text-align: right;
}

.Text--w-50 {
  width: 100%;
}

@media screen and (min-width: 601px) {

.Text--w-50 {
    width: 50%;
}
  }

.Text--w-66 {
  width: 100%;
}

@media screen and (min-width: 601px) {

.Text--w-66 {
    max-width: 696px;
}
  }

.Text--w-100 {
  width: 100%;
}

.Text--s-small {
  font-size: var(--font-size-small);
}

.Headline + .Text,
.Text + .Text,
.DownloadablesContainer + .Text,
div[data-modal='true'] + .Text {
  margin-top: var(--margin-s);
}

@media screen and (max-width: 768px) {

.Headline + .Text,
.Text + .Text,
.DownloadablesContainer + .Text,
div[data-modal='true'] + .Text {
    margin-top: var(--margin-s--mobile);
}
  }

.Headline.h3 + .Text {
  margin-top: var(--margin-xs);
}

@media screen and (max-width: 768px) {

.Headline.h3 + .Text {
    margin-top: var(--margin-xs--mobile);
}
  }
