/* Підвал: контакти, соцмережі, політика. */

.footer {
  padding-block: var(--space-12);
  padding-bottom: calc(env(safe-area-inset-bottom) + var(--space-12));
  border-top: 1px solid var(--c-border);
  background: var(--c-bg-alt);
}

.footer__inner {
  display: grid;
  gap: var(--space-8);
}

.footer__logo-text {
  font-size: var(--fs-lg);
  font-weight: 700;
}

.footer__logo-text .accent {
  margin-left: 4px;
  font-weight: 400;
}

.footer__text {
  margin-top: var(--space-3);
  max-width: 42ch;
  color: var(--c-text-secondary);
  font-size: var(--fs-sm);
}

.footer__hours {
  margin: 0;
  color: var(--c-text-secondary);
  font-size: var(--fs-sm);
}

.footer__contacts {
  display: grid;
  gap: var(--space-3);
  justify-items: start;
}

/* inline-flex + 44 px: посилання-рядок інакше дає тач-ціль ~25 px. */
.footer__phone,
.footer__email {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
}

.footer__phone {
  font-size: var(--fs-lg);
  font-weight: 700;
}

.footer__email {
  color: var(--c-text-secondary);
}

.footer__legal {
  display: grid;
  gap: var(--space-3);
  justify-items: start;
  padding-top: var(--space-6);
  border-top: 1px solid var(--c-border);
}

.footer__privacy {
  min-height: 44px;
  color: var(--c-text-secondary);
  text-decoration: underline;
  text-underline-offset: 4px;
}

.footer__meta {
  display: grid;
  gap: var(--space-2);
}

.footer__copy,
.footer__credit {
  margin: 0;
  color: var(--c-text-secondary);
  font-size: var(--fs-sm);
}

.footer__credit-link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: var(--c-text);
  text-decoration: underline;
  text-underline-offset: 4px;
}

@media (hover: hover) and (pointer: fine) {
  .footer__credit-link:hover {
    color: var(--c-accent);
  }
}

@media (min-width: 768px) {
  .footer__inner {
    grid-template-columns: 1fr auto;
    align-items: start;
  }

  .footer__contacts {
    justify-items: end;
  }

  .footer__legal {
    grid-column: 1 / -1;
    grid-template-columns: 1fr auto;
    align-items: center;
  }

  .footer__meta {
    justify-items: end;
    text-align: end;
  }
}

@media (min-width: 1024px) {
  .footer__credit-link {
    min-height: auto;
  }
}
