/* =====================================================================
   AESTH — footer.css
   Newsletter, footer columns, floating WhatsApp button.
   ===================================================================== */

/* ---------- Newsletter ---------- */
.newsletter {
  position: relative;
  background: var(--blush-200);
  padding-block: var(--space-7);
  overflow: hidden;
}
.newsletter__inner {
  display: grid;
  gap: var(--space-5);
  align-items: center;
}
.newsletter__title { font-size: var(--fs-xl); }
.newsletter__copy p { margin-top: var(--space-2); color: var(--ink-soft); }

.newsletter__form {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-2);
}
.newsletter__form input {
  flex: 1 1 220px;
  height: 54px;
  padding: 0 1.3rem;
  border: 1px solid transparent;
  border-radius: var(--r-pill);
  background: var(--white);
  font-size: var(--fs-base);
}
.newsletter__form input:focus { outline: none; border-color: var(--rose-600); }
.newsletter__form .btn { min-height: 54px; padding-inline: 1.8rem; }
.newsletter__msg { flex-basis: 100%; min-height: 1.4em; font-size: var(--fs-sm); font-weight: 700; color: var(--sage-700); }
.newsletter__msg.is-error { color: var(--rose-700); }

@media (min-width: 900px) {
  .newsletter__inner { grid-template-columns: 1fr 1fr; gap: var(--space-8); }
}

/* ---------- Footer ---------- */
.site-footer {
  background: var(--paper);
  padding-top: var(--space-8);
  font-size: var(--fs-sm);
}
.site-footer__grid {
  display: grid;
  gap: var(--space-7) var(--space-6);
  grid-template-columns: 1fr 1fr;
}
.site-footer__brand { grid-column: 1 / -1; max-width: 340px; }
.site-footer__logo img { width: 150px; height: auto; margin-bottom: var(--space-4); }
.site-footer__brand p { color: var(--ink-soft); }
.site-footer__social { display: flex; gap: var(--space-2); margin-top: var(--space-4); }
.site-footer__social .icon { width: 20px; height: 20px; }

.site-footer__col h3 {
  font-size: var(--fs-md);
  margin-bottom: var(--space-4);
}
.site-footer__col ul { display: grid; gap: .65rem; }
.site-footer__col a { color: var(--ink-soft); transition: color .2s; }
.site-footer__col a:hover { color: var(--rose-700); }

.site-footer__contact li { display: flex; align-items: center; gap: .6rem; }
.site-footer__contact .icon { width: 18px; height: 18px; color: var(--rose-600); }
.site-footer__contact a { word-break: break-word; }
.site-footer__address { color: var(--ink-soft); display: block !important; }

.site-footer__bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: var(--space-2) var(--space-6);
  margin-top: var(--space-7);
  padding-block: var(--space-5) calc(var(--space-5) + 64px);
  border-top: 1px solid var(--line);
  color: var(--ink-soft);
  font-size: var(--fs-xs);
}

@media (min-width: 900px) {
  .site-footer__grid { grid-template-columns: 1.4fr 1fr 1fr 1.3fr; }
  .site-footer__brand { grid-column: auto; }
  .site-footer__bottom { padding-bottom: var(--space-5); }
}

/* ---------- Floating WhatsApp ---------- */
.wa-float {
  position: fixed;
  right: calc(1rem + env(safe-area-inset-right, 0px));
  bottom: calc(1rem + env(safe-area-inset-bottom, 0px));
  z-index: 90;
  display: grid;
  place-items: center;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #1F8F55;
  color: #fff;
  box-shadow: 0 14px 30px -12px rgba(31, 143, 85, .7);
  transition: transform .2s var(--ease);
}
.wa-float:hover { transform: scale(1.06); }
.wa-float .icon { width: 28px; height: 28px; }
