/* =============================================
   FOOTER MODULE
   Fest am unteren Bildschirmrand
   ============================================= */

.footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: var(--footer-height);
  background: var(--green-dark);
  color: rgba(255, 255, 255, 0.8);
  z-index: 900;
  font-size: var(--font-size-xs);
}

.footer__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  height: 100%;
  flex-wrap: wrap;
}

.footer__brand {
  font-weight: 600;
  color: #fff;
  white-space: nowrap;
}

.footer__phone {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  color: var(--copper-light);
  text-decoration: none;
  white-space: nowrap;
  transition: color var(--transition-fast);
}

.footer__phone:hover {
  color: var(--copper);
}

.footer__links {
  display: flex;
  gap: 1rem;
}

.footer__links a {
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: color var(--transition-fast);
  white-space: nowrap;
}

.footer__links a:hover {
  color: var(--copper-light);
}

.footer__copy {
  color: rgba(255, 255, 255, 0.4);
  white-space: nowrap;
}

/* Separator dots between items */
.footer__brand::after,
.footer__phone::after {
  content: '·';
  margin-left: 1.5rem;
  color: rgba(255, 255, 255, 0.3);
}

/* === MOBILE === */
@media (max-width: 767px) {
  .footer {
    height: auto;
    min-height: var(--footer-height);
    padding: 0.75rem 0;
  }

  .footer__inner {
    flex-direction: column;
    gap: 0.4rem;
  }

  .footer__brand::after,
  .footer__phone::after {
    display: none;
  }

  .footer__links {
    gap: 0.75rem;
  }

  /* Body padding muss für mobile angepasst werden */
  body {
    padding-bottom: 110px;
  }
}

/* === TABLET === */
@media (min-width: 768px) and (max-width: 1199px) {
  .footer__inner {
    gap: 1rem;
  }
}
