.footer {
  overflow: hidden;
  padding-block: clamp(56px, 8vw, 96px) 28px;
  background: var(--c-forest-deep);
  color: var(--c-on-dark-2);
  font-size: var(--fs-md);
}

/* Зелёный дом на тёмно-зелёном фоне не виден — светлая версия логотипа */
.footer .logo {
  --logo-house: var(--c-on-dark);
}

.footer__grid {
  display: grid;
  gap: 40px;
}

.footer__brand p {
  max-width: 300px;
  margin-top: 18px;
}

.footer__title {
  margin-bottom: 6px;
  font-size: var(--fs-xs);
  font-weight: 700;
  letter-spacing: var(--caps-track);
  text-transform: uppercase;
  color: var(--c-brass-light);
}

.footer__nav,
.footer__contact {
  display: grid;
  gap: 10px;
  align-content: start;
  justify-items: start;
}

.footer a:not(.btn):hover {
  color: var(--c-on-dark);
}

.footer__contact .btn {
  margin-top: 8px;
}

.footer__wordmark {
  margin: clamp(48px, 7vw, 88px) 0 0;
  font-family: var(--font-serif);
  font-size: clamp(56px, 15.5vw, 230px);
  font-weight: var(--fw-display);
  line-height: 0.8;
  letter-spacing: -0.03em;
  white-space: nowrap;
  text-align: center;
  color: rgb(243 239 230 / 0.07);
  user-select: none;
}

.footer__bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid var(--c-line-dark);
  font-size: var(--fs-sm);
}

@media (min-width: 760px) {
  .footer__grid {
    grid-template-columns: 1.4fr 1fr 1fr;
  }
}

/* ---------- WhatsApp FAB ---------- */

.wa-fab {
  position: fixed;
  right: max(16px, env(safe-area-inset-right));
  bottom: max(16px, env(safe-area-inset-bottom));
  z-index: 40;
  display: flex;
  align-items: center;
  height: 58px;
  padding: 0 16px;
  border-radius: 999px;
  background: var(--c-wa);
  color: var(--c-wa-ink);
  box-shadow: 0 16px 36px -12px rgb(7 94 84 / 0.6);
  transition:
    opacity 0.5s,
    translate var(--dur-move) var(--ease),
    scale var(--dur-move) var(--ease),
    box-shadow var(--dur-ui);
}

.wa-fab .icon {
  width: 26px;
  height: 26px;
}

.wa-fab__label {
  max-width: 0;
  overflow: hidden;
  font-size: var(--fs-ui);
  font-weight: 700;
  white-space: nowrap;
  transition:
    max-width var(--dur-move) var(--ease),
    margin var(--dur-move) var(--ease);
}

.wa-fab:hover .wa-fab__label,
.wa-fab:focus-visible .wa-fab__label {
  max-width: 140px;
  margin-left: 10px;
}

.wa-fab.is-hidden,
.body-lock .wa-fab {
  opacity: 0;
  translate: 0 16px;
  scale: 0.9;
  pointer-events: none;
}
