.site-footer {
  margin: 0;
  padding: 58px max(5vw,24px) 20px;
  background: #082f2d;
  color: #fff;
  border-top: 4px solid #d8f06b;
}

.footer-inner {
  width: min(1180px,100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.65fr 1fr 1.15fr 1.15fr;
  gap: clamp(32px,5vw,70px);
}

.footer-about { max-width: 310px; }
.footer-brand { margin-bottom: 18px; color: #fff; }
.footer-about > p { margin: 0; color: #a9bfbb; font-size: 12px; line-height: 1.7; }
.footer-trust { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 20px; }
.footer-trust span { padding: 6px 8px; border-radius: 15px; background: rgba(216,240,107,.09); color: #d8f06b; font-size: 9px; }

.footer-column { display: flex; flex-direction: column; align-items: flex-start; gap: 11px; }
.footer-column > b { margin-bottom: 7px; color: #fff; font-size: 12px; letter-spacing: .4px; }
.footer-column > a { color: #9fb5b1; font-size: 11px; transition: color .2s, transform .2s; }
.footer-column > a:hover { color: #d8f06b; transform: translateX(3px); }
.support-note { margin-top: 5px; color: #758f8a; font-size: 9px; line-height: 1.5; word-break: break-word; }

.footer-bottom {
  width: min(1180px,100%);
  margin: 46px auto 0;
  padding-top: 18px;
  display: flex;
  justify-content: space-between;
  gap: 20px;
  border-top: 1px solid rgba(255,255,255,.10);
  color: #76908b;
  font-size: 9px;
}

@media (max-width: 850px) {
  .footer-inner { grid-template-columns: 1.4fr 1fr 1fr; }
  .footer-about { grid-column: 1 / -1; max-width: none; }
}

@media (max-width: 570px) {
  .site-footer { padding: 42px 22px 18px; }
  .footer-inner { grid-template-columns: 1fr 1fr; gap: 34px 24px; }
  .footer-about { grid-column: 1 / -1; }
  .footer-bottom { margin-top: 35px; flex-direction: column; gap: 7px; }
}
