.site-footer{background:var(--ink-900);color:rgba(255,255,255,.75);}
.footer-top{padding:4rem 0 2.5rem;display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:2rem;}
.footer-brand .brand{color:#fff;}
.footer-brand p{color:rgba(255,255,255,.65);margin-top:1rem;font-size:var(--fs-14);}
.site-footer h5{color:#fff;font-size:var(--fs-16);margin-bottom:1rem;}
.site-footer ul li{margin-bottom:.6rem;font-size:var(--fs-14);}
.site-footer ul li a:hover{color:var(--amber-600);}
.footer-social{display:flex;gap:.6rem;margin-top:1.1rem;}
.footer-social a{
  width:36px;height:36px;border-radius:50%;border:1px solid rgba(255,255,255,.2);
  display:flex;align-items:center;justify-content:center;
}
.footer-social a:hover{background:var(--green-600);border-color:var(--green-600);}
.footer-contact li{display:flex;gap:.6rem;align-items:flex-start;}
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.12);padding:1.2rem 0;
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:.6rem;font-size:var(--fs-12);
}
@media (max-width:900px){
  .footer-top{grid-template-columns:1fr 1fr;}
}
@media (max-width:600px){
  .footer-top{grid-template-columns:1fr;text-align:left;}
  .footer-bottom{justify-content:center;text-align:center;}
}

.whatsapp-fab{
  position:fixed;right:1.25rem;bottom:1.25rem;z-index:90;
  width:56px;height:56px;border-radius:50%;background:#25D366;color:#fff;
  display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow);font-size:1.4rem;
}
.whatsapp-fab:hover{transform:translateY(-2px);}

.toast-stack{
  position:fixed;top:1.25rem;right:1.25rem;z-index:300;
  display:flex;flex-direction:column;gap:.6rem;max-width:320px;
}
.toast{
  background:var(--ink-900);color:#fff;padding:.9rem 1.1rem;border-radius:var(--radius-sm);
  font-size:var(--fs-14);box-shadow:var(--shadow);border-left:4px solid var(--green-600);
  animation:toast-in .2s ease;
}
.toast.toast-error{border-left-color:var(--danger);}
.toast.toast-success{border-left-color:var(--green-600);}
@keyframes toast-in{from{opacity:0;transform:translateY(-8px);}to{opacity:1;transform:translateY(0);}}
