.public-company-contact-item a {
  color: inherit;
  text-decoration: none;
}

.public-company-contact-item a:hover {
  text-decoration: underline;
}

.footer-column .footer-legal-extra {
  font-size: 13px;
  opacity: .85;
  margin-top: 10px;
}

.footer-column a[href^="tel:"],
.footer-column a[href^="mailto:"] {
  color: inherit;
  text-decoration: none;
}

.footer-column a[href^="tel:"]:hover,
.footer-column a[href^="mailto:"]:hover {
  text-decoration: underline;
}

/* Mobile/Tablet: In der obersten Headerzeile nur Login-/Bereichsbuttons anzeigen.
   Telefon, E-Mail und Adresse bleiben im Footer sichtbar. */
@media (max-width: 980px) {
  .topbar .public-company-contact-item,
  .topbar-inner > .public-company-contact-item,
  .topbar-inner > span.public-company-contact-item,
  .topbar-inner > a[href^="tel:"],
  .topbar-inner > a[href^="mailto:"] {
    display: none !important;
  }

  .topbar .login-status-area,
  .topbar .topbar-right.login-status-area,
  .topbar-inner > .login-status-area {
    width: 100% !important;
    margin-left: 0 !important;
    display: flex !important;
    justify-content: center !important;
    gap: 8px !important;
    flex-wrap: wrap !important;
  }

  .topbar .login-status-area a {
    margin-left: 0 !important;
  }
}

@media (max-width: 680px) {
  .topbar-inner {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    min-height: 40px !important;
  }

  .topbar .login-status-area {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-width: 420px !important;
  }

  .topbar .login-status-area a {
    background: rgba(255,255,255,.12);
    padding: 7px 8px;
    border-radius: 6px;
    text-align: center;
  }

  .topbar .login-status-area a:only-child {
    grid-column: 1 / -1;
  }
}

/* Hotfix 2026-06-27: Mobile Header wirklich nur mit Login-/Bereichsbuttons.
   Die Kontaktdaten bleiben im Footer/Desktop, werden mobil aber komplett unterdrückt. */
@media (max-width: 1200px) {
  body .topbar .topbar-contact-strip,
  body .topbar .topbar-contact-strip *,
  body .topbar .public-company-contact-item,
  body .topbar .public-company-contact-item *,
  body .topbar-inner > .public-company-contact-item,
  body .topbar-inner > span.public-company-contact-item,
  body .topbar-inner > a[href^="tel:"],
  body .topbar-inner > a[href^="mailto:"],
  body .topbar-inner > *:not(.login-status-area):not(.topbar-right) {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    max-width: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
  }

  body .topbar,
  body .topbar .topbar-inner {
    min-height: 38px !important;
  }

  body .topbar .topbar-inner {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 0 !important;
    padding-top: 6px !important;
    padding-bottom: 6px !important;
  }

  body .topbar .topbar-right.login-status-area,
  body .topbar .login-status-area,
  body .topbar-inner > .topbar-right.login-status-area {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
    margin-left: 0 !important;
    gap: 8px !important;
  }

  body .topbar .login-status-area a {
    margin: 0 !important;
  }
}

@media (max-width: 680px) {
  body .topbar .topbar-right.login-status-area,
  body .topbar .login-status-area {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    max-width: 420px !important;
  }

  body .topbar .login-status-area a {
    background: rgba(255,255,255,.12) !important;
    padding: 7px 8px !important;
    border-radius: 6px !important;
    text-align: center !important;
  }
}

/* Hotfix 2026-07-07: Desktop-Kontaktzeile sauber trennen.
   Verhindert Ausgaben wie: info@ivd-hausservice.deDeller Str. 21 */
.topbar .topbar-contact-strip {
  display: inline-flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0 18px;
}

.topbar .topbar-contact-strip .public-company-contact-item {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}

.topbar .topbar-contact-strip .public-company-contact-item a {
  margin-left: 0 !important;
}

@media (min-width: 1201px) {
  .topbar .topbar-contact-strip .public-company-contact-item + .public-company-contact-item::before {
    content: "·";
    opacity: .75;
    margin-right: 18px;
  }
}
