/* Shared footer: aligned contact details and navigation across the site. */
footer.zeno-footer {
  display: block;
  padding: 48px max(24px, 4.3vw) 24px;
  background: #080808;
  color: #c5c5c1;
  border-top: 1px solid #292929;
  font-size: 14px;
  line-height: 1.6;
}
.zeno-footer .footer-main {
  display: grid;
  grid-template-columns: 1.3fr 1fr .7fr;
  gap: 48px;
  max-width: 1440px;
  margin: 0 auto;
  align-items: start;
}
.zeno-footer .footer-brand { display: flex; width: 184px; margin: 0 0 20px; }
.zeno-footer .footer-brand img { display: block; width: 100%; height: auto; }
.zeno-footer address { font: inherit; color: #b3b3af; }
.zeno-footer h2 { margin: 0 0 12px; color: #f4f4ef; font-size: 15px; font-weight: 600; line-height: 1.6; letter-spacing: 0; }
.zeno-footer .footer-links { display: flex; flex-direction: column; align-items: flex-start; gap: 0; }
.zeno-footer a { color: inherit; text-decoration: none; font-size: inherit; overflow-wrap: anywhere; }
.zeno-footer .footer-links a { display: flex; align-items: center; min-height: 40px; padding: 4px 0; }
.zeno-footer a:hover { color: #d5ee53; }
.zeno-footer a:focus-visible { outline: 2px solid #d5ee53; outline-offset: 4px; }
.zeno-footer .footer-bottom { display: flex; justify-content: space-between; align-items: center; gap: 16px; max-width: 1440px; margin: 32px auto 0; padding-top: 20px; border-top: 1px solid #292929; color: #a8a8a3; font-size: 12px; }
.zeno-footer .footer-bottom a { display: inline-flex; align-items: center; min-height: 32px; }
body:has(.zeno-footer) > .mobile-whatsapp { display: none !important; }
@media (max-width: 700px) {
  footer.zeno-footer { padding: 36px 24px 20px; }
  .zeno-footer .footer-main { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 28px 24px; }
  .zeno-footer .footer-identity { grid-column: 1 / -1; }
  .zeno-footer .footer-brand { width: 176px; margin-bottom: 16px; }
  .zeno-footer .footer-links a { min-height: 44px; }
  .zeno-footer .footer-bottom { margin-top: 28px; }
}
@media (max-width: 380px) {
  .zeno-footer .footer-main { grid-template-columns: minmax(0, 1fr); }
  .zeno-footer .footer-bottom { align-items: flex-start; flex-direction: column; gap: 4px; }
}
