.site-footer {
 background: #242422;
 color: #fbfbfb;
 padding: 60px 0;
}

.site-footer__container {
 max-width: 1200px;
 margin: 0 auto;
 padding: 0 24px;
 box-sizing: border-box;
}

.site-footer__grid {
 display: grid;
 grid-template-columns: 1fr 1fr 1.2fr 0.75fr;
 gap: 40px;
 align-items: start;
}

.site-footer__column {
 min-width: 0;
}

.site-footer__column--brand {
 display: flex;
 justify-content: center;
 align-items: flex-start;
}

.site-footer__logo-link {
 display: inline-block;
}

.site-footer__logo {
 display: block;
 width: 122px;
 height: auto;
}

.site-footer__heading {
 margin: 0 0 14px;
 font-size: 1rem;
 line-height: 3.5;
 font-weight: 600;
 color: #fbfbfb;
}

.site-footer__column p {
 margin: 0 0 8px;
 font-size: 0.95rem;
 line-height: 1.5;
 color: #fbfbfb;
}

.site-footer a {
 color: #fbfbfb;
 text-decoration: none;
}

.site-footer a:hover {
 text-decoration: underline;
 color: #0099cc;
}

.site-footer a.site-footer__phone {
  color: #0099cc;
  white-space: nowrap;
  text-decoration: none;
}

.site-footer a.site-footer__phone:hover {
  color: #0099cc;
  text-decoration: underline;
}
.site-footer__fax {
  color: #0099cc;
  white-space: nowrap;
}

/* ab erstem Breakpoint: alles untereinander und zentriert */
@media (max-width: 991px) {
 .site-footer {
   padding: 50px 0;
 }

 .site-footer__grid {
   grid-template-columns: 1fr;
   gap: 28px;
   justify-items: center;
   text-align: center;
 }

 .site-footer__column,
 .site-footer__column--brand {
   width: 100%;
   max-width: 420px;
 }

 .site-footer__column--brand {
   display: flex;
   justify-content: center;
 }

 .site-footer__logo-link {
   display: inline-flex;
   justify-content: center;
 }

 .site-footer__column p,
 .site-footer__heading {
   text-align: center;
 }
}

/* mobile */
@media (max-width: 767px) {
 .site-footer__container {
   padding: 0 16px;
 }

 .site-footer__grid {
   gap: 24px;
 }

 .site-footer__logo {
   width: 110px;
 }

 .site-footer__phone {
   white-space: normal;
 }
}