@media only screen and (min-width: 1600px) {
  section.schwerpunkte .schwerpunktmodul h3, section.beratung .text h3, section.about .text h3, .wrap.smalltext .content h1 {
    font-size: 55px;
  }
  section.schwerpunkte .schwerpunktmodul .descriptions div, section.beratung .text, section.about .text, footer.sitefooter .wrap div, h2.subhead {
    font-size: 22px;
  }
}
@media only screen and (max-width: 720px) {
  .wrap {
    width: 95%;
  }
}
@media only screen and (max-width: 660px) {
  section.schwerpunkte .schwerpunktmodul .descriptions div, section.beratung .text, section.about .text, footer.sitefooter .wrap div {
    hyphens: auto;
    font-size: clamp(17px, 1.3vw, 1.6vw);
  }
  section.schwerpunkte .schwerpunktmodul h3 {
    font-family: 'DM Serif Display';
    font-size: clamp(30px, 3.5vw, 3.5vw);
    font-weight: 400;
    line-height: 1;
  }
  .wrap {
    width: 95%;
  }
  .wrap.welcome {
    margin-top: 80px;
  }
  .wrap.welcome .welcomegraphic {
    width: 100%;
    text-align: center;
    order: 2;
  }
  .wrap.welcome .welcomegraphic img {
    width: 75%;
  }
  .wrap.welcome .statement {
    width: 100%;
    order: 1;
    margin-bottom: 60px;
  }
  .siteheader .wrap .contact {
    font-size: 14px;
  }
  .siteheader .wrap .contact div.phone {
    margin-left: 18px;
  }
  section.schwerpunkte .schwerpunktmodul h3 {
    line-height: 1.5;
  }
}
@media only screen and (max-width: 550px) {
  .siteheader .wrap .contact {
    display: block;
  }
  .siteheader .wrap .contact div.phone {
    margin-left: 0;
  }
  section.beratung .wrap, section.about .flexwrap, section.schwerpunkte .schwerpunktmodul, footer.sitefooter .wrap {
    flex-wrap: wrap;
  }
  section.schwerpunkte .schwerpunktmodul .heads {
    width: 100%;
  }
  section.schwerpunkte .schwerpunktmodul .heads h3 {
    line-height: 1;
  }
  section.schwerpunkte .schwerpunktmodul .descriptions {
    width: 100%;
  }
  section.beratung .first {
    width: 100%;
    order: 2;
  }
  section.beratung .second {
    width: 100%;
    order: 1;
    text-align: center;
  }
  section.beratung .second .text, section.beratung .second .subhead {
    text-align: left;
  }
  section.beratung .second img {
    width: 60%;
    margin-top: 40px;
  }
  section.beratung .first img {
    display: none;
  }
  section.beratung .first .text {
    margin-top: 60px;
    width: 100%;
  }
  section.about .text {
    width: 100%;
    order: 2;
  }
  section.about .image {
    width: 100%;
    text-align: left;
    order: 1;
  }
  section.about .image img {
    max-width: 260px;
    margin-bottom: 20px;
  }
  section.about .text h3, section.beratung .text h3 {
    margin-bottom: 20px;
  }
  footer.sitefooter .wrap > div:first-child {
    width: 60%;
    margin-bottom: 30px;
  }
  footer.sitefooter .wrap > div:nth-child(2) {
    width: 40%;
    text-align: right;
    margin-bottom: 30px;
  }
  footer.sitefooter .wrap > div:nth-child(3) {
    width: 60%;
    max-width: 200px;
  }
  footer.sitefooter .wrap > div:nth-child(4) {
    width: 40%;
  }
}
@media only screen and (max-width: 450px) {
  html, body {
    width: 100vw;
    overflow-x: hidden;
  }
  .wrap {
    width: 90%;
  }
  .siteheader {
    margin-top: 20px;
  }
  .header .kanzleidrfaerber {
    width: 100%;
    text-align: center;
  }
  .header .kanzleidrfaerber h1 {
    font-size: 37px;
  }
  .wrap.welcome {
    margin-top: 60px;
    margin-bottom: 60px;
  }
  .siteheader .wrap .contact {
    display: flex;
    width: 100%;
    justify-content: space-around;
  }
  footer.sitefooter .wrap > div:first-child {
    width: 100%;
    order: 1;
    margin-bottom: 20px;
  }
  footer.sitefooter .wrap > div:nth-child(2) {
    width: 100%;
    text-align: left;
    order: 2;
    margin-bottom: 20px;
  }
  footer.sitefooter .wrap > div:nth-child(4) {
    order: 3;
    text-align: left;
    width: 100%;
    margin-bottom: 20px;
  }
  footer.sitefooter .wrap > div:nth-child(3) {
    order: 4;
  }
  .wrap.welcome .welcomegraphic img, section.beratung .second img {
    width: 85%;
  }
  footer.sitefooter {
    width: 100vw;
  }
}
@media only screen and (min-device-width: 320px) and (max-device-width: 480px) {
  footer.sitefooter .wrap > div:nth-child(3) {
    order: 0;
    max-width: unset;
    width: 100%;
    margin-bottom: 45px;
  }
  footer.sitefooter .wrap > div:first-child {
    margin-bottom: 28px;
  }
}
