/* =========================================================
   FOOTER
   ========================================================= */
.site-footer{
  background: var(--black);
  color: #C9BCAC;
  padding: 76px 0 0;
  position: relative;
}
.site-footer::before{
  content:"";
  position:absolute; top:0; left:0; right:0; height:4px;
  background: linear-gradient(90deg, var(--primary-dk), var(--primary), var(--primary-lt), var(--primary));
}
.footer-top{
  display:grid;
  grid-template-columns: 1.3fr 0.8fr 1.1fr;
  gap: 48px;
  padding-bottom: 52px;
  border-bottom: 1px solid var(--line-dark);
}
.footer-brand{ display:flex; flex-direction:column; gap:18px; }
.footer-brand .brand-logo{ height:70px; object-fit:contain; }
.footer-brand .brand-text .b1{ color:#FBF6EF; }
.footer-brand .brand-text .b2{ color: var(--primary-lt); }
.footer-brand p{ font-size: 14.5px; color:#9C8F80; max-width: 300px; }
.footer-socials{ display:flex; gap:10px; margin-top:6px; }
.footer-socials a{
  width:38px; height:38px; border-radius:50%;
  border: 1px solid var(--line-dark);
  display:flex; align-items:center; justify-content:center;
  transition: background .2s var(--ease), border-color .2s var(--ease);
}
.footer-socials a:hover{ background: var(--primary); border-color: var(--primary); }
.footer-socials svg{ width:16px; height:16px; color:#FBF6EF; }

.footer-col h5{
  font-family: var(--font-display); font-size: 15.5px; color: #FBF6EF;
  margin-bottom: 20px; font-weight:600;
}
.footer-col ul li{ margin-bottom: 13px; }
.footer-col a{
  font-size: 14.5px; color: #9C8F80;
  transition: color .2s var(--ease), padding-left .2s var(--ease);
}
.footer-col a:hover{ color:#FBF6EF; padding-left:3px; }

.footer-contact li{
  display:flex; gap: 12px; align-items:flex-start;
  font-size: 14.5px; color: #C9BCAC; margin-bottom: 18px;
}
.footer-contact svg{ width:17px; height:17px; color: var(--primary-lt); flex-shrink:0; margin-top:2px; }
.footer-contact a:hover{ color:#FBF6EF; }

.footer-bottom{
  display:flex; align-items:center; justify-content:space-between;
  gap: 20px; flex-wrap: wrap;
  padding: 24px 0; font-size: 13px; color: #7A6E60;
}
.footer-badge{ display:inline-flex; align-items:center; gap:6px; color: #A79A8A; }
.footer-badge svg{ width:13px; height:13px; color: var(--primary-lt); }

@media (max-width: 900px){
  .footer-top{ grid-template-columns: 1fr 1fr; }
}
@media (max-width: 600px){
  .footer-top{ grid-template-columns: 1fr; }
  .footer-bottom{ flex-direction:column; align-items:flex-start; }
}
