/* Footer — charcoal, brand statement, four link columns, payments, legal line. */
.sg-footer { background: var(--sg-ink); color: var(--sg-on-dark-muted); font-size: .92rem; }
.sg-footer a { color: var(--sg-on-dark); text-decoration: none; }
.sg-footer a:hover { color: #fff; text-decoration: underline; text-decoration-color: var(--sg-accent); }
.sg-footer__top { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1.95fr); gap: clamp(40px, 6vw, 110px); padding-block: clamp(64px, 8vw, 104px) 56px; }
.sg-footer .hm-logo__name { color: #fff; font-size: 2rem; }
.sg-footer .hm-logo__mark rect { fill: rgba(255, 255, 255, .07); stroke: rgba(255, 255, 255, .22); }
.sg-footer .hm-logo__tag { color: color-mix(in srgb, var(--sg-accent) 70%, #fff); }
.sg-footer__pitch { margin: 26px 0 30px; max-width: 42ch; font: 400 1.18rem/1.55 var(--sg-serif); color: var(--sg-on-dark); }
.sg-footer__contact { list-style: none; margin: 0 0 28px; padding: 0; display: grid; border-top: 1px solid rgba(255, 255, 255, .1); }
.sg-footer__contact li { display: grid; grid-template-columns: 140px 1fr; gap: 12px; padding: 12px 0; border-bottom: 1px solid rgba(255, 255, 255, .1); }
.sg-footer__contact li > span:first-child { font: 600 .66rem/1.8 var(--hm-font); letter-spacing: .18em; text-transform: uppercase; color: var(--sg-on-dark-muted); }
.sg-footer__cols { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) minmax(0, 1.2fr); gap: 32px; }
.sg-footer__title { white-space: nowrap; font: 600 .68rem/1.2 var(--hm-font); letter-spacing: .16em; text-transform: uppercase; color: color-mix(in srgb, var(--sg-accent) 70%, #fff); margin: 8px 0 22px; }
.hm-footer__links { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.hm-footer__links + .hm-footer__links { margin-top: 12px; }
.hm-footer__withdraw { display: inline-flex !important; align-items: center; gap: 8px; padding: 8px 12px; border: 1px solid rgba(255, 255, 255, .25); font-weight: 500; }
.hm-footer__withdraw svg { width: 15px; height: 15px; }
.hm-social { display: flex; gap: 10px; list-style: none; margin: 0; padding: 0; }
.hm-social a { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .2); color: #fff; }
.hm-social a:hover { background: var(--sg-accent); border-color: var(--sg-accent); }
.hm-social svg { width: 17px; height: 17px; }
.sg-footer__payments { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 22px; padding-block: 26px; background: linear-gradient(rgba(255, 255, 255, .1), rgba(255, 255, 255, .1)) center top / calc(100% - 2 * var(--hm-gutter)) 1px no-repeat; }
.sg-footer__logos { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.sg-footer__label { font: 600 .66rem/1 var(--hm-font); letter-spacing: .18em; text-transform: uppercase; }
.sg-footer__trust { display: flex; flex-wrap: wrap; gap: 26px; list-style: none; margin: 0; padding: 0; font-size: .82rem; }
.sg-footer__trust li { display: inline-flex; align-items: center; gap: 8px; }
.sg-footer__trust svg { width: 16px; height: 16px; color: var(--sg-accent); }
.sg-footer__bottom { border-top: 1px solid rgba(255, 255, 255, .1); font-size: .78rem; }
.sg-footer__bottom-inner { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; padding-block: 20px; }
.sg-footer__bottom p { margin: 0; }

@media (max-width: 1100px) {
  .sg-footer__top { grid-template-columns: 1fr; }
  .sg-footer__cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .sg-footer__cols { gap: 36px 20px; }
  .sg-footer__payments { flex-direction: column; align-items: flex-start; }
  .sg-footer__contact li { grid-template-columns: 1fr; gap: 2px; }
}
